From 53d014edd19f57125c355abe71ec5b478500e610 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 05 八月 2025 09:57:40 +0800 Subject: [PATCH] 保洁巡检所有代码 --- ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TIndexController.java | 76 ++++++++++++++++++++++---------------- 1 files changed, 44 insertions(+), 32 deletions(-) diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TIndexController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TIndexController.java index 402ceaf..570079d 100644 --- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TIndexController.java +++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TIndexController.java @@ -66,6 +66,8 @@ @Resource private TTaskDetailService taskDetailService; + @Resource + private TInspectorDetailService inspectorDetailService; @Resource @@ -330,6 +332,7 @@ IndexVO res = new IndexVO(); res.setIsNotice(0); Long userId = tokenService.getLoginUserApplet().getUserId(); + List<TLocation> locations = locationService.lambdaQuery().eq(TLocation::getLocationLeader, userId).list(); Long count = noticeService.lambdaQuery().eq(TNotice::getUserId, userId).eq(TNotice::getStatus, 1).count(); if (count>0){ res.setIsNotice(1); @@ -340,6 +343,7 @@ List<TLocationType> locationTypeList = locationTypeService.list(); dto.setUserId(userId); List<TTask> taskAll = taskCleanerService.indexTask(dto); + List<TInspector> inspectorAll = taskCleanerService.indexInspector(dto); // List<TTask> taskAll = taskCleanerService.lambdaQuery().eq(TTask::getPatrolInspector, userId).list(); // 获取今天凌晨00:00:00 和今天23:59:59 类型为LocalDateTime LocalDateTime startOfToday = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); @@ -491,49 +495,57 @@ if (taskDetailsStatus1!=null){ taskTodayVO.setRemark(taskDetailsStatus1.getAuditRemark()); } - // 任务记录ids - List<String> collect = taskAll.stream().map(TTask::getId).collect(Collectors.toList()); - if (!collect.isEmpty()){ - List<TInspector> list1 = inspectorService.lambdaQuery() - .in(TInspector::getTaskId, collect).eq(TInspector::getStatus, 2).list(); - for (TInspector tInspector : list1) { - TaskPendingVO taskTodayVOOne = new TaskPendingVO(); - BeanUtils.copyProperties(tTask, taskTodayVOOne); - taskTodayVOOne.setId(tInspector.getId()); - TLocation tLocationOne = locationList.stream().filter(e -> e.getId().equals(tTask.getLocationId())).findFirst().orElse(null); - if (tLocationOne != null) { - taskTodayVOOne.setLocationAddress(tLocationOne.getLocationAddress()); - taskTodayVOOne.setLocationLon(tLocationOne.getLocationLon()); - taskTodayVOOne.setLocationLat(tLocationOne.getLocationLat()); - taskTodayVOOne.setLocationName(tLocationOne.getLocationName()); - if(StringUtils.hasLength(dto.getLon())){ - taskTodayVO.setDistance(tTask.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)); - }else { - taskTodayVO.setDistance(new BigDecimal("0")); - } - TLocationType tLocationType = locationTypeList.stream().filter(e -> e.getId().equals(tLocationOne.getLocationType())).findFirst().orElse(null); - if (tLocationType != null) { - taskTodayVOOne.setLocationTypeName(tLocationType.getLocationName()); - taskTodayVOOne.setLocationTypeIcon(tLocationType.getLocationIcon()); - } - } - taskTodayVOOne.setStatus(4); - taskTodayVOOne.setRemark(tInspector.getAuditRemark()); - pendingTask.add(taskTodayVOOne); + taskTodayVO.setIsInspector(0); + pendingTask.add(taskTodayVO); + } + // 点位ids + List<String> collect = locations.stream().map(TLocation::getId).collect(Collectors.toList()); + if (collect.isEmpty()){ + collect.add("-1"); + } + List<TInspector> list1 = inspectorAll.stream().filter(e->collect.contains(e.getLocationId())).collect(Collectors.toList()); + for (TInspector tInspector : list1) { + TInspectorDetail taskDetailsStatus1 = inspectorDetailService.lambdaQuery() + .eq(TInspectorDetail::getInspectorId, tInspector.getId()) + .in(TInspectorDetail::getHandleType, Arrays.asList(3,6)) + .orderByDesc(TInspectorDetail::getCreateTime).last("limit 1").one(); + TaskPendingVO taskTodayVOOne = new TaskPendingVO(); + BeanUtils.copyProperties(tInspector, taskTodayVOOne); + taskTodayVOOne.setId(tInspector.getId()); + TLocation tLocationOne = locationList.stream().filter(e -> e.getId().equals(tInspector.getLocationId())).findFirst().orElse(null); + if (tLocationOne != null) { + taskTodayVOOne.setLocationAddress(tLocationOne.getLocationAddress()); + taskTodayVOOne.setLocationLon(tLocationOne.getLocationLon()); + taskTodayVOOne.setLocationLat(tLocationOne.getLocationLat()); + taskTodayVOOne.setLocationName(tLocationOne.getLocationName()); + if(StringUtils.hasLength(dto.getLon())){ + taskTodayVOOne.setDistance(tInspector.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)); + }else { + taskTodayVOOne.setDistance(new BigDecimal("0")); + } + TLocationType tLocationType = locationTypeList.stream().filter(e -> e.getId().equals(tLocationOne.getLocationType())).findFirst().orElse(null); + if (tLocationType != null) { + taskTodayVOOne.setLocationTypeName(tLocationType.getLocationName()); + taskTodayVOOne.setLocationTypeIcon(tLocationType.getLocationIcon()); } } - pendingTask.add(taskTodayVO); + taskTodayVOOne.setStatus(4); + if (taskDetailsStatus1!=null){ + taskTodayVOOne.setRemark(taskDetailsStatus1.getAuditRemark()); + } + taskTodayVOOne.setIsInspector(1); + pendingTask.add(taskTodayVOOne); } // 将pendingTask按照距离 从小到大排序 pendingTask.sort(Comparator.comparing(TaskPendingVO::getDistance)); res.setPendingTask(pendingTask); res.setLeaveList(leaveList); List<TaskTodayVO> todayTask = new ArrayList<>(); - List<String> collect = taskAll.stream().map(TTask::getId).collect(Collectors.toList()); + List<String> tasdids = taskAll.stream().map(TTask::getId).collect(Collectors.toList()); for (TTask tTask : taskToday) { TaskTodayVO taskTodayVO = new TaskTodayVO(); - if(CollectionUtils.isEmpty(collect)){ + if(CollectionUtils.isEmpty(tasdids)){ break; } TTaskDetail taskDetailsStatus1 = taskDetailService.lambdaQuery() -- Gitblit v1.7.1