瀏覽代碼

代码优化

wangliang 1 年之前
父節點
當前提交
3ce48d6e6c

+ 2 - 2
sop-business/src/main/java/com/qmth/sop/business/bean/result/TFFlowViewLogResult.java

@@ -42,10 +42,10 @@ public class TFFlowViewLogResult extends BaseFlowData implements Serializable {
     private String pendApproveId;
 
     @ApiModelProperty(value = "待审核人")
-    private String pendApproveUserName;
+    private String pendApproveUserName = "--";
 
     @ApiModelProperty(value = "已审核人")
-    private String approveUserName;
+    private String approveUserName = "--";
 
     @ApiModelProperty(value = "创建时间")
     private Long createTime;

+ 27 - 1
sop-business/src/main/java/com/qmth/sop/business/service/impl/TFFlowLogServiceImpl.java

@@ -1,13 +1,21 @@
 package com.qmth.sop.business.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.sop.business.bean.dto.OrgUserNameDto;
 import com.qmth.sop.business.bean.result.TFFlowLogResult;
 import com.qmth.sop.business.entity.TFFlowLog;
 import com.qmth.sop.business.mapper.TFFlowLogMapper;
+import com.qmth.sop.business.service.SysUserService;
 import com.qmth.sop.business.service.TFFlowLogService;
+import com.qmth.sop.common.contant.SystemConstant;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.Arrays;
 import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -20,6 +28,9 @@ import java.util.List;
 @Service
 public class TFFlowLogServiceImpl extends ServiceImpl<TFFlowLogMapper, TFFlowLog> implements TFFlowLogService {
 
+    @Resource
+    SysUserService sysUserService;
+
     /**
      * 根据实体id查询
      *
@@ -28,7 +39,22 @@ public class TFFlowLogServiceImpl extends ServiceImpl<TFFlowLogMapper, TFFlowLog
      */
     @Override
     public List<TFFlowLogResult> findByObjectId(Long objectId) {
-        return this.baseMapper.findByObjectId(objectId);
+        List<TFFlowLogResult> tfFlowLogResultList = this.baseMapper.findByObjectId(objectId);
+        for (TFFlowLogResult t : tfFlowLogResultList) {
+            TFFlowLog tfFlowLog = this.baseMapper.findByLastFlowLog(t.getFlowId());
+            if (Objects.nonNull(tfFlowLog) && Objects.nonNull(tfFlowLog.getPendApproveId())) {
+                List<String> userList = Arrays.asList(tfFlowLog.getPendApproveId().split(SystemConstant.LIST_JOIN_SPLIT));
+                List<OrgUserNameDto> orgUserNameDtoList = sysUserService.findOrgUserName(userList.stream().map(s -> Long.parseLong(s)).collect(Collectors.toList()));
+                List<String> userName = orgUserNameDtoList.stream().map(s -> s.getOrgUserName()).collect(Collectors.toList());
+                t.setPendApproveUserName(StringUtils.join(userName, SystemConstant.LIST_JOIN_SPLIT));
+            }
+            if (Objects.nonNull(tfFlowLog) && Objects.nonNull(tfFlowLog.getApproveId())) {
+                List<OrgUserNameDto> orgUserNameDtoList = sysUserService.findOrgUserName(Arrays.asList(tfFlowLog.getApproveId()));
+                List<String> userName = orgUserNameDtoList.stream().map(s -> s.getOrgUserName()).collect(Collectors.toList());
+                t.setApproveUserName(StringUtils.join(userName, SystemConstant.LIST_JOIN_SPLIT));
+            }
+        }
+        return tfFlowLogResultList;
     }
 
     /**

+ 23 - 23
sop-business/src/main/resources/mapper/TFFlowLogMapper.xml

@@ -22,29 +22,29 @@
                      so.name as orgName,
                      so.`type` as orgType,
                      (select t.type from t_f_custom_flow t where t.id = tffe.t_f_custom_flow_id) as flowType,
-                     IFNULL((
-                                select
-                                    GROUP_CONCAT(su.real_name, '(', so.name, ')')
-                                from
-                                    sys_user su
-                                        left join sys_org so on so.id = su.org_id
-                                where
-                                    FIND_IN_SET(su.id, tffl.pend_approve_id)),(
-                                select
-                                    GROUP_CONCAT(su.real_name)
-                                from
-                                    sys_user su
-                                where
-                                    FIND_IN_SET(su.id, tffl.pend_approve_id))) as pendApproveUserName,
-                     IFNULL((
-                                select
-                                    CONCAT(su.real_name, '(', so.name, ')')
-                                from
-                                    sys_user su
-                                        left join sys_org so on
-                                        so.id = su.org_id
-                                where
-                                    su.id = tffl.approve_id),su.real_name) as approveUserName,
+--                      IFNULL((
+--                                 select
+--                                     GROUP_CONCAT(su.real_name, '(', so.name, ')')
+--                                 from
+--                                     sys_user su
+--                                         left join sys_org so on so.id = su.org_id
+--                                 where
+--                                     FIND_IN_SET(su.id, tffl.pend_approve_id)),(
+--                                 select
+--                                     GROUP_CONCAT(su.real_name)
+--                                 from
+--                                     sys_user su
+--                                 where
+--                                     FIND_IN_SET(su.id, tffl.pend_approve_id))) as pendApproveUserName,
+--                      IFNULL((
+--                                 select
+--                                     CONCAT(su.real_name, '(', so.name, ')')
+--                                 from
+--                                     sys_user su
+--                                         left join sys_org so on
+--                                         so.id = su.org_id
+--                                 where
+--                                     su.id = tffl.approve_id),su.real_name) as approveUserName,
                      aht.NAME_ as taskName
         from
             t_f_flow_log tffl