Selaa lähdekoodia

Merge branch 'dev' of http://192.168.1.220:10080/jiwei/wlyy2.0 into dev

yeshijie 6 vuotta sitten
vanhempi
commit
5c3077ad5e

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

@ -50,6 +50,8 @@ 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";
            public static final String GET_ALL_FACILITIELISTS_COUNT = "/list/getAllFacilitiesCount";
        }
        //设施服务
@ -85,6 +87,8 @@ 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";
            public static final String COUNT_FACILITY_USED_RECORD_BY_USERID = "/countFacilityUsedRecordByUserId";
        }
        //服务评价

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

@ -185,6 +185,9 @@ public class FacilitiesController extends EnvelopRestEndpoint {
            @ApiParam(name = "facilitiesId", value = "设施ID")
            @RequestParam(value = "facilitiesId") String facilitiesId) throws Exception {
        Facility facility = facilityService.findById(facilitiesId);
        if (null == facility) {
            return failed("设施不存在!");
        }
        List<FacilityServerRelation> facilityServerRelationList = facilityServerRelationService.findByField("facilitieCode", facility.getCode());
        //通过设施与服务关系,变更设施服务使用数量
        for (FacilityServerRelation facilityServerRelation : facilityServerRelationList) {
@ -241,7 +244,6 @@ public class FacilitiesController extends EnvelopRestEndpoint {
    }
    @GetMapping("/exportToExcel")
    @ApiOperation(value = "设施列表导出excel")
    public void exportToExcel(
@ -259,7 +261,6 @@ public class FacilitiesController extends EnvelopRestEndpoint {
    }
    @PostMapping(value = "/batchImport")
    @ApiOperation(value = "设施列表导入(经纬度重复的不导入)")
    public ObjEnvelop importData(MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws IOException, ManageException {
@ -279,5 +280,37 @@ public class FacilitiesController extends EnvelopRestEndpoint {
        return ObjEnvelop.getError("导入失败");
    }
    @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);
    }
    @GetMapping(value = HealthyHouseMapping.HealthyHouse.Facilities.GET_ALL_FACILITIELISTS_COUNT)
    @ApiOperation(value = "设施统计-三个统计值")
    public ObjEnvelop<Map> usedFacilityCount() throws Exception {
        Map<String, Long> map = new HashMap<>();
        //今日使用设施数
        long countUsedFacilitieToday = facilityServerRelationService.countDistinctByFacilitieCodeAndCreateTimeBetween();
        map.put("countUsedFacilitieToday",countUsedFacilitieToday);
        long countAllFacilitie = facilityService.getCount("");
        map.put("countAllFacilitie",countAllFacilitie);
        //今日新增设施:false
        String todayStart = DateUtil.getStringDateShort() + " " + "00:00:00";
        String todayEnd = DateUtil.getStringDateShort() + " " + "23:59:59";
        String  filters = "createTime>=" + todayStart + ";createTime<=" + todayEnd;
        long countCreatedFacilitieToday = facilityService.getCount(filters);
        map.put("countCreatedFacilitieToday",countCreatedFacilitieToday);
        return ObjEnvelop.getSuccess("获取成功", map);
    }
}

+ 39 - 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,41 @@ 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);
        }
        int total=(int)facilityUsedRecordService.countPageDistinctByFacilitieCodeAndUserId(userId);
        return success(facilityUsedRecordList, total, page, size);
    }
    @ApiOperation(value = "app-用户使用设施次数", responseContainer = "List")
    @GetMapping(value = HealthyHouseMapping.HealthyHouse.FacilityUsedRecord.COUNT_FACILITY_USED_RECORD_BY_USERID)
    public ObjEnvelop<Long> getFacilityUsedRecords(
            @ApiParam(name = "userId", value = "登录用户id", defaultValue = "")
            @RequestParam(value = "userId") String userId,
            @ApiParam(name = "facilitieCode", value = "设施id", defaultValue = "")
            @RequestParam(value = "facilitieCode", required = false) String facilitieCode) throws Exception {
        StringBuffer stringBuffer = new StringBuffer();
        stringBuffer.append("userId=" + userId + ";");
        if (StringUtils.isNotEmpty(facilitieCode)) {
            stringBuffer.append("facilitieCode=" + facilitieCode);
        }
        String filters = stringBuffer.toString();
        long count = facilityUsedRecordService.getCount(filters);
        return success(count);
    }
}

+ 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);
}

+ 22 - 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,25 @@ 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 countPageDistinctByFacilitieCodeAndUserId(String userId) throws Exception {
        String sql = "select count(DISTINCT facilitie_code )  from facility_used_records  fur WHERE  fur.user_id=? ";
        String count = jdbcTemplate.queryForObject(sql, String.class,userId);
        return Long.parseLong(count);
    }
    public long countByFacilitieCodeAndUserId(String facilitieCode,String userId) {
        return facilityUsedRecordDao.countByFacilitieCodeAndUserId( facilitieCode, userId);
    }
}