diff --git a/src/main/java/com/biutag/supervision/controller/datav/DataVSupervisionNotifyController.java b/src/main/java/com/biutag/supervision/controller/datav/DataVSupervisionNotifyController.java index 57cbed4..8bc4835 100644 --- a/src/main/java/com/biutag/supervision/controller/datav/DataVSupervisionNotifyController.java +++ b/src/main/java/com/biutag/supervision/controller/datav/DataVSupervisionNotifyController.java @@ -65,6 +65,13 @@ public class DataVSupervisionNotifyController { } + @Operation(summary = "获取现场专项地图数据") + @PostMapping("/getSupervisionNotifyMap") + public Result getSupervisionNotifyMap(@RequestBody DataVRequest request) { + return datavService.getSupervisionNotifyMap(request); + } + + /** * 地图小卡片 diff --git a/src/main/java/com/biutag/supervision/mapper/NegativeMapper.java b/src/main/java/com/biutag/supervision/mapper/NegativeMapper.java index 86f985d..e86de11 100644 --- a/src/main/java/com/biutag/supervision/mapper/NegativeMapper.java +++ b/src/main/java/com/biutag/supervision/mapper/NegativeMapper.java @@ -1083,5 +1083,12 @@ public interface NegativeMapper extends BaseMapper { List getChangedRank(String id, Date beginTime, Date endTime); + List getNegativeListData( + @Param("id") String id, + @Param("beginTime") Date beginTime, + @Param("endTime") Date endTime, + @Param("codes") List codes + ); + // endregion } diff --git a/src/main/java/com/biutag/supervision/service/datav/DatavService.java b/src/main/java/com/biutag/supervision/service/datav/DatavService.java index c95ad56..9bb5ab2 100644 --- a/src/main/java/com/biutag/supervision/service/datav/DatavService.java +++ b/src/main/java/com/biutag/supervision/service/datav/DatavService.java @@ -228,4 +228,11 @@ public interface DatavService { * @return */ Result getSupervisionNotifyCount(DataVRequest request); + + /** + * 现场专项地图 + * @param request + * @return + */ + Result getSupervisionNotifyMap(DataVRequest request); } diff --git a/src/main/java/com/biutag/supervision/service/datav/DatavServiceImpl.java b/src/main/java/com/biutag/supervision/service/datav/DatavServiceImpl.java index 5259697..9c9834b 100644 --- a/src/main/java/com/biutag/supervision/service/datav/DatavServiceImpl.java +++ b/src/main/java/com/biutag/supervision/service/datav/DatavServiceImpl.java @@ -1216,16 +1216,16 @@ public class DatavServiceImpl implements DatavService { List processingList = negatives.stream().filter(item -> ProcessingStatusEnum.processing.name().equals(item.getProcessingStatus())).toList(); LambdaQueryWrapper superviseReportLambdaQueryWrapper = new LambdaQueryWrapper<>(); - UserAuth user = UserContextHolder.getCurrentUser(); - // 权限 - if (!AppConstants.USER_TYPE_SUPER.equals(user.getUserType()) && !user.getRoleCodes().contains(RoleCodeEnum.FIRST_ADMIN.getCode())) { - if (user.getAuthDepartIds().isEmpty() || user.getRoleCodes().isEmpty()) { - //特殊处理 - overView.setReportNumber(0L); - } - List orgIds = supDepartService.getAllNodeIds(user.getAuthDepartIds()); - superviseReportLambdaQueryWrapper.in(SuperviseReport::getCrtDepartId, orgIds); - } +// UserAuth user = UserContextHolder.getCurrentUser(); +// // 权限 +// if (!AppConstants.USER_TYPE_SUPER.equals(user.getUserType()) && !user.getRoleCodes().contains(RoleCodeEnum.FIRST_ADMIN.getCode())) { +// if (user.getAuthDepartIds().isEmpty() || user.getRoleCodes().isEmpty()) { +// //特殊处理 +// overView.setReportNumber(0L); +// } +// List orgIds = supDepartService.getAllNodeIds(user.getAuthDepartIds()); +// superviseReportLambdaQueryWrapper.in(SuperviseReport::getCrtDepartId, orgIds); +// } superviseReportLambdaQueryWrapper.between(SuperviseReport::getCrtTime, request.getBeginTime(), request.getEndTime()); superviseReportLambdaQueryWrapper.eq(SuperviseReport::getType, "1"); List superviseReportList = superviseReportService.list(superviseReportLambdaQueryWrapper); @@ -1262,6 +1262,57 @@ public class DatavServiceImpl implements DatavService { return Result.success(overView); } + @Override + public Result getSupervisionNotifyMap(DataVRequest request) { + List superviseTempMapVoList = new ArrayList<>(); + SupDepartQueryParam supDepartQueryParam = new SupDepartQueryParam(); + supDepartQueryParam.setStatisticsGroupId(DepartGroupEnum.COUNTY_CITY_BUREAUS.getId()); + List fxsjDw = supDepartResourceService.query(supDepartQueryParam); + List proCode = List.of(XCDC.getValue(), LMGZ.getValue(), ZXDC.getValue()); + + for (SupDepart fxsj : fxsjDw) { + SuperviseMapIconVo superviseMapIconVo = new SuperviseMapIconVo(); + + List negatives = negativeMapper.getNegativeListData(fxsj.getId(), request.getBeginTime(), request.getEndTime(), proCode); + List completedList = negatives.stream().filter(item -> ProcessingStatusEnum.completed.name().equals(item.getProcessingStatus())).toList(); + List processingList = negatives.stream().filter(item -> ProcessingStatusEnum.processing.name().equals(item.getProcessingStatus())).toList(); + // 暂不用通报期数 +// LambdaQueryWrapper superviseReportLambdaQueryWrapper = new LambdaQueryWrapper<>(); +// superviseReportLambdaQueryWrapper.between(SuperviseReport::getCrtTime, request.getBeginTime(), request.getEndTime()); +// superviseReportLambdaQueryWrapper.eq(SuperviseReport::getType, "1"); +// List superviseReportList = superviseReportService.list(superviseReportLambdaQueryWrapper); + List negativeIds = negatives.stream().filter(one -> CheckStatusEnum.TRUE_SET.contains(one.getCheckStatusCode()) || CheckStatusEnum.PART_TRUE_SET.contains(one.getCheckStatusCode())).map(Negative::getId).toList(); + CompletableFuture.allOf( + CompletableFutureUtil.runSyncObject(() -> { + long personNumber = negativeIds.isEmpty() ? 0 : negativeBlameService.count(new LambdaQueryWrapper().in(NegativeBlame::getNegativeId, negativeIds) + .eq(NegativeBlame::getType, "personal") + .isNotNull(NegativeBlame::getBlameName) + .ne(NegativeBlame::getBlameName, "") + .ne(NegativeBlame::getHandleResultName, "不予追责") + .isNotNull(NegativeBlame::getHandleResultName) + .ne(NegativeBlame::getHandleResultName, "")); + superviseMapIconVo.setPersonNum(String.valueOf(personNumber)); + }), + CompletableFutureUtil.runSyncObject(() -> { + long departNumber = negativeIds.isEmpty() ? 0 : negativeBlameService.count(new LambdaQueryWrapper().in(NegativeBlame::getNegativeId, negativeIds) + .eq(NegativeBlame::getType, "department") + .ne(NegativeBlame::getHandleResultName, "不予追责") + .isNotNull(NegativeBlame::getHandleResultName) + .ne(NegativeBlame::getHandleResultName, "")); + superviseMapIconVo.setRelationOrg(String.valueOf(departNumber)); + }) + ).join(); + superviseMapIconVo.setDepartId(fxsj.getId()); + superviseMapIconVo.setName(fxsj.getShortName()); + superviseMapIconVo.setTotalPro(negatives.size()); + superviseMapIconVo.setProcessingNumber(processingList.size()); + superviseMapIconVo.setCompletedNumber(completedList.size()); + superviseTempMapVoList.add(superviseMapIconVo); + } + JSONObject data = new JSONObject().fluentPut("superviseTempMapVoList", superviseTempMapVoList); + return Result.success(data); + } + public Result getSubOneMailMapIcon() { // ✅ 注意:这里的 name 必须和地图 geojson 区域名一致(一般是“xx街道/园区”) diff --git a/src/main/resources/mapper/SupTaskProblemMapper.xml b/src/main/resources/mapper/SupTaskProblemMapper.xml index 5ec3012..e2061b7 100644 --- a/src/main/resources/mapper/SupTaskProblemMapper.xml +++ b/src/main/resources/mapper/SupTaskProblemMapper.xml @@ -122,4 +122,21 @@ + + + +