From 3dee4f5487f0f6378cd73b8742d5c4c1d695d802 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 17 五月 2020 14:43:58 +0800
Subject: [PATCH] 优化调试内容 图片有的显示有点不显示问题

---
 CommonService/src/main/java/com/java110/common/smo/impl/ResourceEntryStoreInnerServiceSMOImpl.java |   98 ++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 85 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 d47a91e..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,92 @@
     }
 
     /**
+     * 鏌ヨ鐢ㄦ埛浠诲姟鏁�
+     *
+     * @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) {
+        TaskService taskService = processEngine.getTaskService();
+        Map<String, Object> variables = new HashMap<String, Object>();
+        variables.put("auditCode", resourceOrderDto.getAuditCode());
+        taskService.complete(resourceOrderDto.getTaskId(), variables);
+        return true;
+    }
+
+    public boolean refuteCompleteTask(@RequestBody ResourceOrderDto resourceOrderDto) {
+        TaskService taskService = processEngine.getTaskService();
+        Map<String, Object> variables = new HashMap<String, Object>();
+        variables.put("auditCode", resourceOrderDto.getAuditCode());
+        taskService.complete(resourceOrderDto.getTaskId(), variables);
+        return true;
     }
 
     /**

--
Gitblit v1.8.0