From 69b10ab2a3e171e6f30091ee54d8957cf4987809 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 26 六月 2025 10:54:43 +0800
Subject: [PATCH] 保洁巡检本周代码

---
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java |   23 +++++++++++++++++++----
 1 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java
index f36c4c0..9f1ab42 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TUserController.java
@@ -150,11 +150,26 @@
         List<TTask> finishTask = taskCleanerService.lambdaQuery().eq(TTask::getPatrolInspector, userId)
                 .ge(TTask::getImplementTime, startOfMonth)
                 .le(TTask::getImplementTime, endOfMonth).list();
+        List<String> taskIds = finishTask.stream().map(TTask::getId).collect(Collectors.toList());
+        List<TTaskDetail> taskDetails = taskDetailService.lambdaQuery()
+                .eq(TTaskDetail::getAuditStatus,1).in(TTaskDetail::getTaskId, taskIds)
+                .isNotNull(TTaskDetail::getClearStatus)
+                .groupBy(TTaskDetail::getTaskId)
+                .orderByDesc(TTaskDetail::getCreateTime).list();
+
         int size = (int) finishTask.stream().filter(e -> e.getStatus() == 5 || e.getStatus() == 6).count();
         userIndexVO.setFinishCount(size);
-        BigDecimal divide = new BigDecimal(size).divide(new BigDecimal(finishTask.size()), 2, BigDecimal.ROUND_DOWN);
-        userIndexVO.setRate(divide);
-//        userIndexVO.setRanking();
+        List<TTaskDetail> status1 = taskDetails.stream().filter(e -> e.getClearStatus() == 1).collect(Collectors.toList());
+        List<TTaskDetail> status2 = taskDetails.stream().filter(e -> e.getClearStatus() == 2).collect(Collectors.toList());
+        if (status1.size()+status2.size()!=0){
+            BigDecimal divide = new BigDecimal(status1.size()+status2.size())
+                    .divide(new BigDecimal(status1.size()), 2, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100));
+            userIndexVO.setRate(divide);
+        }else{
+            userIndexVO.setRate(new BigDecimal(0));
+        }
+        // todo 月排名
+        userIndexVO.setRanking(0);
         return R.ok(userIndexVO);
     }
     @ApiOperation(value = "任务记录分页列表")
@@ -267,7 +282,7 @@
     @ApiOperation(value = "上传督察任务")
     @PostMapping(value = "/addInspector")
     public R<Boolean> addInspector(@RequestBody InspectorAddDTO dto) {
-        dto.setCommit_person(tokenService.getLoginUser().getUserId()+"");
+        dto.setCommitPerson(tokenService.getLoginUser().getUserId()+"");
         if (dto.getClearStatus()==1){
             dto.setStatus(4);
         }else{

--
Gitblit v1.7.1