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/ComplaintUserInnerServiceSMOImpl.java |   81 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 73 insertions(+), 8 deletions(-)

diff --git a/CommonService/src/main/java/com/java110/common/smo/impl/ComplaintUserInnerServiceSMOImpl.java b/CommonService/src/main/java/com/java110/common/smo/impl/ComplaintUserInnerServiceSMOImpl.java
index 255787d..7b3f9b9 100644
--- a/CommonService/src/main/java/com/java110/common/smo/impl/ComplaintUserInnerServiceSMOImpl.java
+++ b/CommonService/src/main/java/com/java110/common/smo/impl/ComplaintUserInnerServiceSMOImpl.java
@@ -4,21 +4,26 @@
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.core.smo.complaint.IComplaintInnerServiceSMO;
 import com.java110.core.smo.complaintUser.IComplaintUserInnerServiceSMO;
-import com.java110.dto.FeeDto;
+import com.java110.core.smo.user.IUserInnerServiceSMO;
 import com.java110.dto.PageDto;
 import com.java110.dto.auditMessage.AuditMessageDto;
+import com.java110.dto.auditUser.AuditUserDto;
 import com.java110.dto.complaint.ComplaintDto;
+import com.java110.dto.user.UserDto;
 import com.java110.entity.audit.AuditUser;
 import com.java110.utils.util.Assert;
+import com.java110.utils.util.StringUtil;
 import org.activiti.engine.HistoryService;
 import org.activiti.engine.ProcessEngine;
 import org.activiti.engine.RuntimeService;
 import org.activiti.engine.TaskService;
-import org.activiti.engine.history.HistoricActivityInstance;
 import org.activiti.engine.history.HistoricProcessInstance;
 import org.activiti.engine.history.HistoricTaskInstance;
+import org.activiti.engine.history.HistoricTaskInstanceQuery;
 import org.activiti.engine.impl.identity.Authentication;
 import org.activiti.engine.query.Query;
+import org.activiti.engine.runtime.Execution;
+import org.activiti.engine.runtime.ExecutionQuery;
 import org.activiti.engine.runtime.ProcessInstance;
 import org.activiti.engine.task.Comment;
 import org.activiti.engine.task.Task;
@@ -47,6 +52,9 @@
 
     @Autowired
     private IComplaintInnerServiceSMO complaintInnerServiceSMOImpl;
+
+    @Autowired
+    private IUserInnerServiceSMO userInnerServiceSMOImpl;
 
 
     /**
@@ -161,11 +169,23 @@
      */
     public long getUserHistoryTaskCount(@RequestBody AuditUser user) {
         HistoryService historyService = processEngine.getHistoryService();
-        Query query = historyService.createHistoricTaskInstanceQuery()
+//        Query query = historyService.createHistoricTaskInstanceQuery()
+//                .processDefinitionKey("complaint")
+//                .taskAssignee(user.getUserId());
+
+        HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery()
                 .processDefinitionKey("complaint")
                 .taskAssignee(user.getUserId());
+        if (!StringUtil.isEmpty(user.getAuditLink()) && "START".equals(user.getAuditLink())) {
+            historicTaskInstanceQuery.taskName("complaint");
+        } else if (!StringUtil.isEmpty(user.getAuditLink()) && "AUDIT".equals(user.getAuditLink())) {
+            historicTaskInstanceQuery.taskName("complaitDealUser");
+        }
+
+        Query query = historicTaskInstanceQuery;
         return query.count();
     }
+
     /**
      * 鑾峰彇鐢ㄦ埛瀹℃壒鐨勪换鍔�
      *
@@ -173,11 +193,17 @@
      */
     public List<ComplaintDto> getUserHistoryTasks(@RequestBody AuditUser user) {
         HistoryService historyService = processEngine.getHistoryService();
-        Query query = historyService.createHistoricTaskInstanceQuery()
-                                                .processDefinitionKey("complaint")
-                                                .taskAssignee(user.getUserId())
-                                                .orderByHistoricTaskInstanceStartTime()
-                                                .desc();
+
+        HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery()
+                .processDefinitionKey("complaint")
+                .taskAssignee(user.getUserId());
+        if (!StringUtil.isEmpty(user.getAuditLink()) && "START".equals(user.getAuditLink())) {
+            historicTaskInstanceQuery.taskName("complaint");
+        } else if (!StringUtil.isEmpty(user.getAuditLink()) && "AUDIT".equals(user.getAuditLink())) {
+            historicTaskInstanceQuery.taskName("complaitDealUser");
+        }
+
+        Query query = historicTaskInstanceQuery.orderByHistoricTaskInstanceStartTime().desc();
 
         List<HistoricTaskInstance> list = null;
         if (user.getPage() != PageDto.DEFAULT_PAGE) {
@@ -214,6 +240,10 @@
         taskService.addComment(complaintDto.getTaskId(), processInstanceId, complaintDto.getAuditMessage());
         Map<String, Object> variables = new HashMap<String, Object>();
         variables.put("auditCode", complaintDto.getAuditCode());
+        variables.put("currentUserId", complaintDto.getCurrentUserId());
+        //taskService.setAssignee(complaintDto.getTaskId(),complaintDto.getCurrentUserId());
+        //taskService.addCandidateUser(complaintDto.getTaskId(), complaintDto.getCurrentUserId());
+        //taskService.claim(complaintDto.getTaskId(), complaintDto.getCurrentUserId());
         taskService.complete(complaintDto.getTaskId(), variables);
 
         ProcessInstance pi = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();
@@ -244,6 +274,41 @@
         return auditMessageDtos;
     }
 
+    /**
+     * 鑾峰彇浠诲姟褰撳墠澶勭悊浜�
+     *
+     * @param complaintDto
+     * @return
+     */
+    public ComplaintDto getTaskCurrentUser(@RequestBody ComplaintDto complaintDto) {
+
+        TaskService taskService = processEngine.getTaskService();
+        Task task = taskService.createTaskQuery().processInstanceBusinessKey(complaintDto.getComplaintId()).singleResult();
+
+        if (task == null) {
+            complaintDto.setCurrentUserId("");
+            complaintDto.setCurrentUserName("");
+            complaintDto.setCurrentUserTel("");
+            return complaintDto;
+        }
+
+        String userId = task.getAssignee();
+        List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(new String[]{userId});
+
+        if (users == null || users.size() == 0) {
+            complaintDto.setCurrentUserId("");
+            complaintDto.setCurrentUserName("");
+            complaintDto.setCurrentUserTel("");
+            return complaintDto;
+        }
+
+        complaintDto.setCurrentUserId(userId);
+        complaintDto.setCurrentUserName(users.get(0).getName());
+        complaintDto.setCurrentUserTel(users.get(0).getTel());
+        return complaintDto;
+
+    }
+
 
     public ProcessEngine getProcessEngine() {
         return processEngine;

--
Gitblit v1.8.0