zdm 6 lat temu
rodzic
commit
d4f3d1b293

+ 2 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/health/house/HealthyHouseMapping.java

@ -50,6 +50,7 @@ public class HealthyHouseMapping {
            public static final String COUNT_FACILITIES = "/count/facilities";
            public static final String UPDATE_FACILITIE_STATE = "/update/facilitieState";
            public static final String COUNT_FACILITIES_BY_TIME = "/count/facilitiesByTime";
            public static final String GET_FACILITIELIST = "/list/getAppFacilities";
        }
        //设施服务
@ -85,6 +86,7 @@ public class HealthyHouseMapping {
            public static final String GET_FACILITY_USED_RECORD_BY_ID = "/getFacilityUsedRecordById";
            public static final String GET_FACILITY_USED_RECORD_BY_FIELD = "/getFacilityUsedRecordByField";
            public static final String UPDATE_FACILITY_USED_RECORD_BY_ID = "/updateFacilityUsedRecordById";
            public static final String GET_FACILITY_USED_RECORD_AND_COUNT_BY_ID = "/getFacilityUsedRecordAndCountById";
        }
        //服务评价

+ 13 - 0
svr/svr-healthy-house/src/main/java/com/yihu/jw/healthyhouse/controller/facilities/FacilitiesController.java

@ -299,5 +299,18 @@ public class FacilitiesController extends EnvelopRestEndpoint {
        response.flushBuffer();
    }
    @ApiOperation(value = "获取设施列表--不分页(app)", responseContainer = "List")
    @GetMapping(value = HealthyHouseMapping.HealthyHouse.Facilities.GET_FACILITIELIST)
    public ListEnvelop<Facility> getFacilitieLists(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段", defaultValue = "")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器", defaultValue = "")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序", defaultValue = "")
            @RequestParam(value = "sorts", required = false) String sorts) throws Exception {
        List<Facility> facilityList = facilityService.search(fields, filters, sorts);
        return success(facilityList);
    }
}

+ 21 - 2
svr/svr-healthy-house/src/main/java/com/yihu/jw/healthyhouse/controller/user/FacilityUsedRecordController.java

@ -32,7 +32,7 @@ public class FacilityUsedRecordController extends EnvelopRestEndpoint {
    @Autowired
    private FacilityUsedRecordService facilityUsedRecordService;
    @ApiOperation(value = "获取用户使用导航记录列表", responseContainer = "List")
    @ApiOperation(value = "获取用户使用导航记录列表--分页(web)", responseContainer = "List")
    @GetMapping(value = HealthyHouseMapping.HealthyHouse.FacilityUsedRecord.PAGE)
    public PageEnvelop<FacilityUsedRecord> getFacilityUsedRecords(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段", defaultValue = "")
@ -58,7 +58,7 @@ public class FacilityUsedRecordController extends EnvelopRestEndpoint {
        return success(facilityUsedRecord);
    }
    @ApiOperation(value = "获取用户使用导航记录")
    @ApiOperation(value = "获取记录id查找导航记录")
    @GetMapping(value = HealthyHouseMapping.HealthyHouse.FacilityUsedRecord.GET_FACILITY_USED_RECORD_BY_ID)
    public ObjEnvelop<FacilityUsedRecord> getFacilityUsedRecord(
            @ApiParam(name = "id", value = "用户使用导航记录ID", defaultValue = "")
@ -91,4 +91,23 @@ public class FacilityUsedRecordController extends EnvelopRestEndpoint {
        return success("success");
    }
    @ApiOperation(value = "获取用户查找导航记录,包含设施使用次数统计")
    @GetMapping(value = HealthyHouseMapping.HealthyHouse.FacilityUsedRecord.GET_FACILITY_USED_RECORD_AND_COUNT_BY_ID)
    public PageEnvelop<FacilityUsedRecord> getFacilityUsedRecordAndCountById(
            @ApiParam(name = "userId", value = "用户ID", defaultValue = "")
            @RequestParam(value = "userId") String userId,
            @ApiParam(name = "size", value = "分页大小", defaultValue = "15")
            @RequestParam(value = "size", required = false) Integer size,
            @ApiParam(name = "page", value = "页码", defaultValue = "1")
            @RequestParam(value = "page", required = false) Integer page) throws Exception {
        //根据用户id
        List<FacilityUsedRecord> facilityUsedRecordList = facilityUsedRecordService.countDistinctByFacilitieCodeAndUserId(userId,page,size);
        for(FacilityUsedRecord facilityUsedRecord1:facilityUsedRecordList){
         long count=   facilityUsedRecordService.countByFacilitieCodeAndUserId(facilityUsedRecord1.getFacilitieCode(),userId);
            facilityUsedRecord1.setNum((int)count);
        }
        return success(facilityUsedRecordList, (null == facilityUsedRecordList) ? 0 : facilityUsedRecordList.size(), page, size);
    }
}

+ 2 - 0
svr/svr-healthy-house/src/main/java/com/yihu/jw/healthyhouse/dao/user/FacilityUsedRecordDao.java

@ -12,5 +12,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
public interface FacilityUsedRecordDao extends JpaRepository<FacilityUsedRecord, Long> {
    FacilityUsedRecord findById(String id);
    long countByFacilitieCodeAndUserId(String facilitieCode,String userId);
}

+ 16 - 1
svr/svr-healthy-house/src/main/java/com/yihu/jw/healthyhouse/service/user/FacilityUsedRecordService.java

@ -4,9 +4,12 @@ import com.yihu.jw.healthyhouse.dao.user.FacilityUsedRecordDao;
import com.yihu.jw.healthyhouse.model.user.FacilityUsedRecord;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
 * 用户导航记录.
 *
@ -22,7 +25,19 @@ public class FacilityUsedRecordService extends BaseJpaService<FacilityUsedRecord
    private FacilityUsedRecordDao facilityUsedRecordDao;
    public FacilityUsedRecord findById(String id) {
        return  facilityUsedRecordDao.findById(id);
        return facilityUsedRecordDao.findById(id);
    }
    public List<FacilityUsedRecord> countDistinctByFacilitieCodeAndUserId(String userId,Integer page,Integer size) throws Exception {
        Integer pageStart = (page - 1) * size;
        Integer pageEnd = page * size;
        String sql = "select fur.*  from facility_used_records  fur WHERE  fur.user_id=? GROUP BY fur.facilitie_code LIMIT "+pageStart+","+pageEnd;
        List<FacilityUsedRecord> facilityUsedRecords = jdbcTemplate.query(sql, new BeanPropertyRowMapper(FacilityUsedRecord.class), userId);
        return facilityUsedRecords;
    }
    public long countByFacilitieCodeAndUserId(String facilitieCode,String userId) {
        return facilityUsedRecordDao.countByFacilitieCodeAndUserId( facilitieCode, userId);
    }
}