From a2299a6d4a6f99e9c11132138f5d3e9ec68f03ea Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 06 六月 2025 19:19:34 +0800
Subject: [PATCH] 开发更新

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java |   35 ++++++++++++++++++++++++++++++++---
 1 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
index ec9f16f..31722e2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskServiceImpl.java
@@ -81,7 +81,25 @@
 
     @Override
     public YwPatrolTask findById(Integer id) {
-        return ywPatrolTaskMapper.selectById(id);
+        YwPatrolTask ywPatrolTask = ywPatrolTaskMapper.selectJoinOne(YwPatrolTask.class,new MPJLambdaWrapper<YwPatrolTask>()
+                .selectAll(YwPatrolTask.class)
+                .selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode)
+                .selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle)
+                .selectAs(YwPatrolScheme::getUserIds,YwPatrolTask::getUserIds)
+                .selectAs(SystemUser::getRealname,YwPatrolTask::getUserName)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.ISDELETED = 0  ) ",YwPatrolTask::getPatrolNum)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.STATUS = 1 and ytr.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
+                .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTask::getDealUserId)
+                .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId)
+                .eq(YwPatrolTask::getIsdeleted, Constants.ZERO)
+                .eq(YwPatrolTask::getId,id)
+                .last(" limit 1 "))
+        ;
+        if((Constants.equalsInteger(ywPatrolTask.getStatus(),Constants.ZERO) || Constants.equalsInteger(ywPatrolTask.getStatus(),Constants.ONE) ) &&
+                ywPatrolTask.getEndDate().getTime()<System.currentTimeMillis()){
+            ywPatrolTask.setStatus(Constants.TWO);
+        }
+        return ywPatrolTask;
     }
 
     @Override
@@ -122,18 +140,29 @@
         queryWrapper.selectAll(YwPatrolTask.class)
                 .selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode)
                 .selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle)
+                .selectAs(YwPatrolScheme::getUserIds,YwPatrolTask::getUserIds)
                 .selectAs(SystemUser::getRealname,YwPatrolTask::getUserName)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.ISDELETED = 0  ) ",YwPatrolTask::getPatrolNum)
+                .select(" ( select count(1) from yw_patrol_task_record ytr where ytr.TASK_ID = t.id  and ytr.STATUS = 1 and ytr.ISDELETED = 0) ",YwPatrolTask::getFinishNum)
                 .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTask::getDealUserId)
                 .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId)
                 .eq(YwPatrolTask::getIsdeleted, Constants.ZERO)
+                .eq(Objects.nonNull(model.getStatus()) && !Constants.equalsInteger(model.getStatus(),Constants.TWO),YwPatrolTask::getStatus, model.getStatus())
+                .apply(Objects.nonNull(model.getDealUserId())," find_in_set("+model.getDealUserId()+",t2.USER_IDS) ")
+                .apply(Objects.nonNull(model.getStatus()) && Constants.equalsInteger(model.getStatus(),Constants.TWO)," t.status = 1 and t.END_DATE > now() ")
+                .apply(StringUtils.isNotBlank(model.getQueryStatus())," find_in_set(t.status ,'"+model.getQueryStatus()+"') ")
                 .like(StringUtils.isNotBlank(model.getPlanTitle()),YwPatrolScheme::getTitle,model.getPlanTitle())
-
                 .ge(Objects.nonNull(model.getStartDate()), YwPatrolTask::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()))
                 .le(Objects.nonNull(model.getEndDate()),YwPatrolTask::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()))
-
                 .orderByDesc(YwPatrolTask::getId)
         ;
         IPage<YwPatrolTask> iPage = ywPatrolTaskMapper.selectJoinPage(page,YwPatrolTask.class,queryWrapper);
+        for (YwPatrolTask ywPatrolTask:iPage.getRecords()) {
+            if((Constants.equalsInteger(ywPatrolTask.getStatus(),Constants.ZERO) || Constants.equalsInteger(ywPatrolTask.getStatus(),Constants.ONE) ) &&
+                    ywPatrolTask.getEndDate().getTime()<System.currentTimeMillis()){
+                ywPatrolTask.setStatus(Constants.TWO);
+            }
+        }
         return PageData.from(iPage);
     }
 

--
Gitblit v1.9.3