From fdbb2b73910384a19e496b85b5b4985c2d218dcc Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 17 五月 2020 14:18:53 +0800
Subject: [PATCH] 调试图片下载bug

---
 CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java |   82 ++++++++++++++++++++++++++++++++++------
 1 files changed, 69 insertions(+), 13 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..82425fa 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,10 @@
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.core.smo.common.IResourceEntryStoreInnerServiceSMO;
+import com.java110.core.smo.purchaseApply.IPurchaseApplyInnerServiceSMO;
+import com.java110.dto.PageDto;
+import com.java110.dto.complaint.ComplaintDto;
+import com.java110.dto.purchaseApply.PurchaseApplyDto;
 import com.java110.dto.resourceStore.ResourceOrderDto;
 import com.java110.entity.audit.AuditUser;
 import org.activiti.engine.ProcessEngine;
@@ -35,6 +39,9 @@
     @Autowired
     private TaskService taskService;
 
+    @Autowired
+    private IPurchaseApplyInnerServiceSMO purchaseApplyInnerServiceSMOImpl;
+
 
     /**
      * 鍚姩娴佺▼
@@ -57,27 +64,76 @@
     }
 
     /**
+     * 鏌ヨ鐢ㄦ埛浠诲姟鏁�
+     *
+     * @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<ResourceOrderDto> resourceOrderDtos = 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);
+        List<Task> list = null;
+        if(user.getPage()  >=1){
+            user.setPage(user.getPage()-1);
         }
-        return resourceOrderDtos;
+        if (user.getPage() != PageDto.DEFAULT_PAGE) {
+            list = query.listPage(user.getPage(), user.getRow());
+        }else{
+            list = query.list();
+        }
+
+//        List<PurchaseApplyDto> purchaseApplyDtos = new ArrayList<>();
+//
+//        for (Task task : list) {
+//            String id = task.getId();
+//            //System.out.println("tasks:" + JSONObject.toJSONString(task));
+//            PurchaseApplyDto purchaseApplyDto = (PurchaseApplyDto) taskService.getVariable(id, "purchaseApplyDto");
+//            purchaseApplyDto.setTaskId(id);
+//            purchaseApplyDto.setProcessInstanceId(task.getProcessInstanceId());
+//            purchaseApplyDtos.add(purchaseApplyDto);
+//        }
+//        return purchaseApplyDtos;
+
+        List<String> applyOrderIds = new ArrayList<>();
+        Map<String, String> taskBusinessKeyMap = new HashMap<>();
+        for (Task task : list) {
+            String processInstanceId = task.getProcessInstanceId();
+            //3.浣跨敤娴佺▼瀹炰緥锛屾煡璇�
+            ProcessInstance pi = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();
+            //4.浣跨敤娴佺▼瀹炰緥瀵硅薄鑾峰彇BusinessKey
+            String business_key = pi.getBusinessKey();
+            applyOrderIds.add(business_key);
+            taskBusinessKeyMap.put(business_key, task.getId());
+        }
+
+        if (applyOrderIds == null || applyOrderIds.size() == 0) {
+            return new ArrayList<>();
+        }
+
+        //鏌ヨ 鎶曡瘔淇℃伅
+        PurchaseApplyDto purchaseApplyDto = new PurchaseApplyDto();
+        purchaseApplyDto.setStoreId(user.getStoreId());
+        purchaseApplyDto.setApplyOrderIds(applyOrderIds.toArray(new String[applyOrderIds.size()]));
+        List<PurchaseApplyDto> tmpPurchaseApplyDtos = purchaseApplyInnerServiceSMOImpl.queryPurchaseApplyAndDetails(purchaseApplyDto);
+
+        for (PurchaseApplyDto tmpPurchaseApplyDto : tmpPurchaseApplyDtos) {
+            tmpPurchaseApplyDto.setTaskId(taskBusinessKeyMap.get(tmpPurchaseApplyDto.getApplyOrderId()));
+        }
+        return tmpPurchaseApplyDtos;
     }
 
     public boolean agreeCompleteTask(@RequestBody ResourceOrderDto resourceOrderDto) {

--
Gitblit v1.8.0