Explorar el Código

优化查询 流程处理人

java110 hace 4 años
padre
commit
f025758f59

+ 9 - 0
java110-bean/src/main/java/com/java110/dto/user/UserDto.java

@@ -21,6 +21,7 @@ public class UserDto extends PageDto implements Serializable {
     public static final String LEVEL_CD_USER = "02";//商城用户
 
     private String userId;
+    private String[] userIds;
 
     private String userName;
 
@@ -328,4 +329,12 @@ public class UserDto extends PageDto implements Serializable {
     public void setLevelCds(String[] levelCds) {
         this.levelCds = levelCds;
     }
+
+    public String[] getUserIds() {
+        return userIds;
+    }
+
+    public void setUserIds(String[] userIds) {
+        this.userIds = userIds;
+    }
 }

+ 19 - 0
java110-bean/src/main/java/com/java110/dto/workflow/WorkflowAuditInfoDto.java

@@ -19,6 +19,9 @@ public class WorkflowAuditInfoDto implements Serializable {
 
     private String auditName;
 
+    private String userName;
+    private String orgName;
+
     private String auditTime;
 
     private String duration;
@@ -95,4 +98,20 @@ public class WorkflowAuditInfoDto implements Serializable {
     public void setState(String state) {
         this.state = state;
     }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getOrgName() {
+        return orgName;
+    }
+
+    public void setOrgName(String orgName) {
+        this.orgName = orgName;
+    }
 }

+ 6 - 0
java110-db/src/main/resources/mapper/user/UserServiceDaoImplMapper.xml

@@ -545,6 +545,12 @@
         <if test="bId != null and bId !=''">
             and u.b_id = #{bId}
         </if>
+        <if test="userIds != null and userIds != null">
+            and u.user_id in
+            <foreach collection="userIds" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         order by u.create_time desc
         <if test="page != -1 and page != null ">
             limit #{page}, #{row}

+ 32 - 1
service-api/src/main/java/com/java110/api/listener/workflow/ListWorkflowAuditInfoListener.java

@@ -5,8 +5,10 @@ import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.intf.common.IWorkflowInnerServiceSMO;
+import com.java110.dto.user.UserDto;
 import com.java110.dto.workflow.WorkflowAuditInfoDto;
+import com.java110.intf.common.IWorkflowInnerServiceSMO;
+import com.java110.intf.user.IUserInnerServiceSMO;
 import com.java110.utils.constant.ServiceCodeWorkflowConstant;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -16,6 +18,7 @@ import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -27,6 +30,9 @@ public class ListWorkflowAuditInfoListener extends AbstractServiceApiPlusListene
     @Autowired
     private IWorkflowInnerServiceSMO workflowInnerServiceSMOImpl;
 
+    @Autowired
+    private IUserInnerServiceSMO userInnerServiceSMOImpl;
+
     @Override
     public String getServiceCode() {
         return ServiceCodeWorkflowConstant.LIST_WORKFLOW_AUDIT_INFO;
@@ -58,10 +64,35 @@ public class ListWorkflowAuditInfoListener extends AbstractServiceApiPlusListene
 
         WorkflowAuditInfoDto workflowAuditInfoDto = BeanConvertUtil.covertBean(reqJson, WorkflowAuditInfoDto.class);
         List<WorkflowAuditInfoDto> workflowAuditInfoDtos = workflowInnerServiceSMOImpl.queryWorkflowAuditHistory(workflowAuditInfoDto);
+        freshUserName(workflowAuditInfoDtos);
         ResultVo resultVo = new ResultVo(ResultVo.CODE_OK, ResultVo.MSG_OK, workflowAuditInfoDtos);
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
         context.setResponseEntity(responseEntity);
+    }
+
+    private void freshUserName(List<WorkflowAuditInfoDto> workflowAuditInfoDtos) {
+        if (workflowAuditInfoDtos == null || workflowAuditInfoDtos.size() < 1) {
+            return;
+        }
+
+        List<String> userIds = new ArrayList<>();
+        for (WorkflowAuditInfoDto tmpWorkflowAuditInfoDto:workflowAuditInfoDtos ){
+            userIds.add(tmpWorkflowAuditInfoDto.getUserId());
+        }
+
+        UserDto userDto = new UserDto();
+        userDto.setUserIds(userIds.toArray(new String[userIds.size()]));
+        List<UserDto> userDtos = userInnerServiceSMOImpl.getStaffs(userDto);
+
 
+        for (WorkflowAuditInfoDto tmpWorkflowAuditInfoDto:workflowAuditInfoDtos ){
+            for(UserDto tmpUserDto: userDtos){
+                if (tmpWorkflowAuditInfoDto.getUserId().equals(tmpUserDto.getUserId())){
+                    tmpWorkflowAuditInfoDto.setUserName(tmpUserDto.getUserName());
+                    tmpWorkflowAuditInfoDto.setOrgName(tmpUserDto.getOrgName());
+                }
+            }
+        }
 
     }
 }