From c276317fa2e695e65efadbbb3204d14986ded733 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期日, 23 二月 2025 13:41:37 +0800
Subject: [PATCH] 首页待办统计分页bug

---
 business/src/main/resources/mapper/ProjectProcessMapper.xml                |    5 +++++
 business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java |   15 +++++++++------
 business/src/main/java/com/ycl/mapper/ProjectProcessMapper.java            |    7 +++++++
 3 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/business/src/main/java/com/ycl/mapper/ProjectProcessMapper.java b/business/src/main/java/com/ycl/mapper/ProjectProcessMapper.java
index 64405b6..5b22dcf 100644
--- a/business/src/main/java/com/ycl/mapper/ProjectProcessMapper.java
+++ b/business/src/main/java/com/ycl/mapper/ProjectProcessMapper.java
@@ -41,4 +41,11 @@
      * @return
      */
     ProjectInfo getProjectInfo(@Param("processInsId") String processInstanceId);
+
+    /**
+     * 鏌ヨ椤圭洰鏈鍒狅紝骞朵笖缁戝畾浜嗘祦绋嬬殑娴佺▼瀹炰緥id
+     *
+     * @return
+     */
+    List<String> getNormalInsIds();
 }
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
index 4f5582e..c68e060 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
@@ -306,9 +306,15 @@
                 .active()
                 .includeProcessVariables()
                 .orderByTaskCreateTime().desc();
-
+        List<String> insIds = baseMapper.getNormalInsIds();
+        if (CollectionUtils.isEmpty(insIds)) {
+            result.data(new ArrayList<>()).total(0L);
+            return;
+        } else {
+            taskQuery.processInstanceIdIn(insIds);
+        }
         if (StringUtils.isNotBlank(taskName)) {
-            taskQuery.processDefinitionNameLike(taskName);
+            taskQuery.taskNameLike(taskName);
         }
         if (!SecurityUtils.getLoginUser().getUser().isAdmin()) {
             taskQuery
@@ -430,9 +436,6 @@
             }
             this.distinctVo(taskVO);
             vos.add(taskVO);
-        }
-        if (vos.size() < pageSize) {
-            result.total(vos.size());
         }
         result.put("taskList", vos);
     }
@@ -827,7 +830,7 @@
                 .desc();
 
         if (StringUtils.isNotBlank(taskName)) {
-            taskQuery.processDefinitionNameLike(taskName);
+            taskQuery.taskNameLike(taskName);
         }
         result.total(taskQuery.count());
         List<Task> taskList = taskQuery.listPage(pageSize * (pageNum - 1), pageSize);
diff --git a/business/src/main/resources/mapper/ProjectProcessMapper.xml b/business/src/main/resources/mapper/ProjectProcessMapper.xml
index 8321fa1..80450e4 100644
--- a/business/src/main/resources/mapper/ProjectProcessMapper.xml
+++ b/business/src/main/resources/mapper/ProjectProcessMapper.xml
@@ -84,4 +84,9 @@
                  INNER JOIN t_project_info PI ON PP.project_id = PI.id AND PI.deleted = 0 AND PP.process_ins_id = #{processInsId}
     </select>
 
+
+    <select id="getNormalInsIds" resultType="string">
+        SELECT TPP.process_ins_id FROM t_project_info TPI INNER JOIN t_project_process TPP ON TPI.id = TPP.project_id AND TPI.deleted = 0
+    </select>
+
 </mapper>

--
Gitblit v1.8.0