黄资权 1 anno fa
parent
commit
e44c078f5f

+ 6 - 0
approve-api/src/main/java/com/dragonsoft/dcuc/approve/model/resp/ApproveTaskClassDetailRespVO.java

@@ -48,6 +48,12 @@ public class ApproveTaskClassDetailRespVO {
     @ApiModelProperty(value = "来源应用代码")
     private String sourceAppCode;
 
+    /**
+     * 来源应用名称
+     */
+    @ApiModelProperty(value = "来源应用名称")
+    private String sourceAppName;
+
     /**
      * 创建人
      */

+ 46 - 2
approve-core-service/src/main/java/com/dragonsoft/dcuc/approve/facade/ApproveTaskClassFacade.java

@@ -1,5 +1,9 @@
 package com.dragonsoft.dcuc.approve.facade;
 
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.dragoninfo.dcuc.app.entity.ApplyInfo;
+import com.dragoninfo.dcuc.app.facade.IApplyInfoFacade;
 import com.dragoninfo.dcuc.common.utils.ResponseUtil;
 import com.dragonsoft.dcuc.approve.model.ApproveTaskClass;
 import com.dragonsoft.dcuc.approve.model.req.ApproveTaskClassAddReqVO;
@@ -11,8 +15,12 @@ import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
 import com.dragonsoft.duceap.core.search.Searchable;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageImpl;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 /**
  * <p>
  *
@@ -26,6 +34,13 @@ public class ApproveTaskClassFacade implements IApproveTaskClassFacade {
 
     private IApproveTaskClassService approveTaskClassService;
 
+    private IApplyInfoFacade applyInfoFacade;
+
+    @Autowired
+    public void setApplyInfoFacade(IApplyInfoFacade applyInfoFacade) {
+        this.applyInfoFacade = applyInfoFacade;
+    }
+
     @Autowired
     public void setApproveTaskClassService(IApproveTaskClassService approveTaskClassService) {
         this.approveTaskClassService = approveTaskClassService;
@@ -33,7 +48,11 @@ public class ApproveTaskClassFacade implements IApproveTaskClassFacade {
 
     @Override
     public Page<ApproveTaskClassDetailRespVO> page(Searchable searchable) {
-        return approveTaskClassService.page(searchable);
+        Page<ApproveTaskClassDetailRespVO> page = approveTaskClassService.page(searchable);
+        List<ApproveTaskClassDetailRespVO> newLit = page.stream().map(this::fillNowAppName)
+                .collect(Collectors.toList());
+
+        return new PageImpl<>(newLit, page.getPageable(), page.getTotalElements());
     }
 
     @Override
@@ -63,6 +82,31 @@ public class ApproveTaskClassFacade implements IApproveTaskClassFacade {
 
     @Override
     public ResponseDTO<ApproveTaskClassDetailRespVO> detail(String id) {
-        return approveTaskClassService.detail(id);
+        ResponseDTO<ApproveTaskClassDetailRespVO> responseDTO = approveTaskClassService.detail(id);
+        if (ResponseUtil.isFail(responseDTO)) {
+            return responseDTO;
+        }
+        ApproveTaskClassDetailRespVO approveTaskClassDetailRespVO = fillNowAppName(ResponseUtil.getResult(responseDTO));
+        return ResponseUtil.newInstance(approveTaskClassDetailRespVO);
     }
+
+    /**
+     * 填充最新的应用名称
+     * 1、如果应用代码存在使用最新的应用名称
+     * 2、如果查不到就用旧的应用名称
+     *
+     * @param approveTaskClassDetailRespVO 任务类型详情
+     * @return 填充后的任务类型详情
+     */
+    protected ApproveTaskClassDetailRespVO fillNowAppName(ApproveTaskClassDetailRespVO approveTaskClassDetailRespVO) {
+        String sourceAppCode = approveTaskClassDetailRespVO.getSourceAppCode();
+        if (StrUtil.isNotBlank(sourceAppCode)) {
+            ApplyInfo applyInfo = applyInfoFacade.getAppByCode(sourceAppCode);
+            if (ObjectUtil.isNotNull(applyInfo)) {
+                approveTaskClassDetailRespVO.setSourceAppName(applyInfo.getApplyName());
+            }
+        }
+        return approveTaskClassDetailRespVO;
+    }
+
 }

+ 5 - 0
approve-core-service/src/main/java/com/dragonsoft/dcuc/approve/model/ApproveTaskClass.java

@@ -52,6 +52,11 @@ public class ApproveTaskClass {
      */
     private String sourceAppCode;
 
+    /**
+     * 来源应用代码
+     */
+    private String sourceAppName;
+
     /**
      * 是否删除
      */

+ 2 - 0
approve-core-service/src/main/resources/config/mysql/V1_1_0021__add_task_class_app_name.sql

@@ -0,0 +1,2 @@
+alter table t_approve_task_class
+    add source_app_name varchar(256) null comment '来源应用名称' after source_app_code;