From 270c0f08cf7ef8266be0916a9a35479e5de8ac61 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 26 四月 2020 23:09:49 +0800
Subject: [PATCH] 优化任务已经结束时查询当前处理人时的报错

---
 CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java |   40 ++++++++++++++++++++++++++++++++--------
 1 files changed, 32 insertions(+), 8 deletions(-)

diff --git a/CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java b/CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java
index e4fcffd..5aa29bb 100644
--- a/CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java
+++ b/CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java
@@ -5,6 +5,8 @@
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.core.smo.common.IResourceEntryStoreInnerServiceSMO;
+import com.java110.dto.PageDto;
+import com.java110.dto.purchaseApply.PurchaseApplyDto;
 import com.java110.dto.resourceStore.ResourceOrderDto;
 import com.java110.entity.audit.AuditUser;
 import org.activiti.engine.ProcessEngine;
@@ -57,27 +59,49 @@
     }
 
     /**
+     * 鏌ヨ鐢ㄦ埛浠诲姟鏁�
+     *
+     * @param user
+     * @return
+     */
+    public long getUserTaskCount(@RequestBody AuditUser user) {
+        TaskService taskService = processEngine.getTaskService();
+        TaskQuery query = taskService.createTaskQuery().processDefinitionKey("resourceEntry");
+        query.taskAssignee(user.getUserId());
+        return query.count();
+    }
+
+    /**
      * 鑾峰彇鐢ㄦ埛浠诲姟
      *
      * @param user 鐢ㄦ埛淇℃伅
      */
-    public List<ResourceOrderDto> getUserTasks(@RequestBody AuditUser user) {
+    public List<PurchaseApplyDto> getUserTasks(@RequestBody AuditUser user) {
         TaskService taskService = processEngine.getTaskService();
-        TaskQuery query = taskService.createTaskQuery();
+        TaskQuery query = taskService.createTaskQuery().processDefinitionKey("resourceEntry");
         query.taskAssignee(user.getUserId());
         query.orderByTaskCreateTime().desc();
-        List<Task> list = query.list();
+        List<Task> list = null;
+        if(user.getPage()  >=1){
+            user.setPage(user.getPage()-1);
+        }
+        if (user.getPage() != PageDto.DEFAULT_PAGE) {
+            list = query.listPage(user.getPage(), user.getRow());
+        }else{
+            list = query.list();
+        }
 
-        List<ResourceOrderDto> resourceOrderDtos = new ArrayList<>();
+        List<PurchaseApplyDto> purchaseApplyDtos = new ArrayList<>();
 
         for (Task task : list) {
             String id = task.getId();
             //System.out.println("tasks:" + JSONObject.toJSONString(task));
-            ResourceOrderDto resourceOrderDto = (ResourceOrderDto) taskService.getVariable(id, "resourceOrderDto");
-            resourceOrderDto.setTaskId(id);
-            resourceOrderDtos.add(resourceOrderDto);
+            PurchaseApplyDto purchaseApplyDto = (PurchaseApplyDto) taskService.getVariable(id, "purchaseApplyDto");
+            purchaseApplyDto.setTaskId(id);
+            purchaseApplyDto.setProcessInstanceId(task.getProcessInstanceId());
+            purchaseApplyDtos.add(purchaseApplyDto);
         }
-        return resourceOrderDtos;
+        return purchaseApplyDtos;
     }
 
     public boolean agreeCompleteTask(@RequestBody ResourceOrderDto resourceOrderDto) {

--
Gitblit v1.8.0