Quellcode durchsuchen

对接新增作业分页当前作业节点数据展示

车车 vor 4 Monaten
Ursprung
Commit
097bfd85ff

+ 2 - 4
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowwork/WorkflowWorkController.java

@@ -2,12 +2,10 @@ package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowwork;
 
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowwork.vo.*;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo.ApprovalNodeReqVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo.StartWorkVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo.WorkflowWorkNodeRespVO;
-import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkDO;
 import cn.iocoder.yudao.module.iscs.service.workdesign.WorkflowWorkService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
@@ -69,8 +67,8 @@ public class WorkflowWorkController {
     @Operation(summary = "获得作业分页")
     @PreAuthorize("@ss.hasPermission('iscs:workflow-work:query')")
     public CommonResult<PageResult<WorkflowWorkRespVO>> getWorkflowWorkPage(@Valid WorkflowWorkPageReqVO pageReqVO) {
-        PageResult<WorkflowWorkDO> pageResult = workflowWorkService.getWorkflowWorkPage(pageReqVO);
-        return success(BeanUtils.toBean(pageResult, WorkflowWorkRespVO.class));
+        PageResult<WorkflowWorkRespVO> pageResult = workflowWorkService.getWorkflowWorkPage(pageReqVO);
+        return success(pageResult);
     }
 
     @GetMapping("/checkWorkById")

+ 2 - 2
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowworknode/vo/WorkflowWorkNodeRespVO.java

@@ -1,6 +1,6 @@
 package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo;
 
-import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkNodeUserDO;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknodeuser.vo.WorkflowWorkNodeUserRespVO;
 import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
 import com.alibaba.excel.annotation.ExcelProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
@@ -133,7 +133,7 @@ public class WorkflowWorkNodeRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "节点人员数据")
-    private List<WorkflowWorkNodeUserDO> nodeUserList;
+    private List<WorkflowWorkNodeUserRespVO> nodeUserList;
 
 
 

+ 20 - 4
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowworknodeuser/vo/WorkflowWorkNodeUserRespVO.java

@@ -1,11 +1,11 @@
 package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknodeuser.vo;
 
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.*;
-import java.util.*;
-import org.springframework.format.annotation.DateTimeFormat;
+import lombok.Data;
+
 import java.time.LocalDateTime;
-import com.alibaba.excel.annotation.*;
 
 @Schema(description = "管理后台 - 作业节点人员关联 Response VO")
 @Data
@@ -36,4 +36,20 @@ public class WorkflowWorkNodeUserRespVO {
     @ExcelProperty("创建时间")
     private LocalDateTime createTime;
 
+    @Schema(description = "username", example = "14222")
+    @ExcelProperty("username")
+    private String username;
+
+    @Schema(description = "nickname", example = "14222")
+    @ExcelProperty("nickname")
+    private String nickname;
+
+    @Schema(description = "mobile", example = "14222")
+    @ExcelProperty("mobile")
+    private String mobile;
+
+    @Schema(description = "avatar", example = "14222")
+    @ExcelProperty("avatar")
+    private String avatar;
+
 }

+ 1 - 1
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/service/workdesign/WorkflowWorkService.java

@@ -62,7 +62,7 @@ public interface WorkflowWorkService extends IService<WorkflowWorkDO> {
      * @param pageReqVO 分页查询
      * @return 作业分页
      */
-    PageResult<WorkflowWorkDO> getWorkflowWorkPage(WorkflowWorkPageReqVO pageReqVO);
+    PageResult<WorkflowWorkRespVO> getWorkflowWorkPage(WorkflowWorkPageReqVO pageReqVO);
 
     /**
      * 发布时检查作业

+ 32 - 4
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/service/workdesign/WorkflowWorkServiceImpl.java

@@ -5,11 +5,12 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.framework.security.core.LoginUser;
 import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
+import cn.iocoder.yudao.module.iscs.controller.admin.android.vo.AppHomeVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowwork.vo.*;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo.ApprovalNodeReqVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo.StartWorkVO;
 import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknode.vo.WorkflowWorkNodeRespVO;
-import cn.iocoder.yudao.module.iscs.controller.admin.android.vo.AppHomeVO;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworknodeuser.vo.WorkflowWorkNodeUserRespVO;
 import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowDesignDO;
 import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkDO;
 import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkNodeDO;
@@ -161,7 +162,7 @@ public class WorkflowWorkServiceImpl extends ServiceImpl<WorkflowWorkMapper, Wor
                         .in(WorkflowWorkNodeUserDO::getNodeId, nodeIds));
                 for (WorkflowWorkNodeRespVO vo : nodeRespVOS) {
                     List<WorkflowWorkNodeUserDO> nodeUserDOS = nodeUserDOList.stream().filter(o -> o.getNodeId().equals(vo.getId())).toList();
-                    vo.setNodeUserList(nodeUserDOS);
+                    vo.setNodeUserList(BeanUtils.toBean(nodeUserDOS, WorkflowWorkNodeUserRespVO.class));
                 }
             }
         }
@@ -169,8 +170,20 @@ public class WorkflowWorkServiceImpl extends ServiceImpl<WorkflowWorkMapper, Wor
     }
 
     @Override
-    public PageResult<WorkflowWorkDO> getWorkflowWorkPage(WorkflowWorkPageReqVO pageReqVO) {
-        return workflowWorkMapper.selectPage(pageReqVO);
+    public PageResult<WorkflowWorkRespVO> getWorkflowWorkPage(WorkflowWorkPageReqVO pageReqVO) {
+        PageResult<WorkflowWorkDO> workflowWorkDOPageResult = workflowWorkMapper.selectPage(pageReqVO);
+        PageResult<WorkflowWorkRespVO> bean = BeanUtils.toBean(workflowWorkDOPageResult, WorkflowWorkRespVO.class);
+        // 查询当前节点
+        for (WorkflowWorkRespVO workflowWorkRespVO : bean.getList()) {
+            List<WorkflowWorkNodeDO> list = workflowWorkNodeService.list(Wrappers.<WorkflowWorkNodeDO>lambdaQuery()
+                    .eq(WorkflowWorkNodeDO::getWorkId, workflowWorkRespVO.getId())
+                    .eq(WorkflowWorkNodeDO::getApprovalStatus, "running"));
+            if (!list.isEmpty()) {
+                String currentNodeName = list.stream().filter(o -> StringUtils.isNotBlank(o.getNodeName())).map(WorkflowWorkNodeDO::getNodeName).collect(Collectors.joining(","));
+                workflowWorkRespVO.setCurrentNodeName(currentNodeName);
+            }
+        }
+        return bean;
     }
 
     @Override
@@ -269,6 +282,21 @@ public class WorkflowWorkServiceImpl extends ServiceImpl<WorkflowWorkMapper, Wor
             phone = "(" + user.getMobile() + ")";
         }
         bean.setInitiatorName(workflowWorkDO.getInitiatorName() + phone);
+        // 获取人员信息
+        List<WorkflowWorkNodeUserDO> nodeUserDOList = workflowWorkNodeUserService.list(Wrappers.<WorkflowWorkNodeUserDO>lambdaQuery()
+                .eq(WorkflowWorkNodeUserDO::getNodeId, nodeId));
+        if (!nodeUserDOList.isEmpty()) {
+            List<WorkflowWorkNodeUserRespVO> nodeUserRespVOList = BeanUtils.toBean(nodeUserDOList, WorkflowWorkNodeUserRespVO.class);
+            for (WorkflowWorkNodeUserRespVO workflowWorkNodeUserRespVO : nodeUserRespVOList) {
+                AdminUserDO adminUserDO = adminUserService.getUser(workflowWorkNodeUserRespVO.getUserId());
+                if (adminUserDO != null) {
+                    workflowWorkNodeUserRespVO.setUsername(adminUserDO.getUsername());
+                    workflowWorkNodeUserRespVO.setNickname(adminUserDO.getNickname());
+                    workflowWorkNodeUserRespVO.setMobile(adminUserDO.getMobile());
+                    workflowWorkNodeUserRespVO.setAvatar(adminUserDO.getAvatar());
+                }
+            }
+        }
         return bean;
     }