Pārlūkot izejas kodu

pms 任务详情返回 合同名称

zhangcl 1 mēnesi atpakaļ
vecāks
revīzija
f2ce877de3

+ 14 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotprojecttask/IotProjectTaskController.java

@@ -367,6 +367,18 @@ public class IotProjectTaskController {
                 }
             });
         }
+        // 找到任务对应的合同信息
+        Map<Long, String> projectPair = new HashMap<>();
+        List<Long> projectIds = convertList(pagedTasks, IotProjectTaskDO::getProjectId);
+        // 查询所有 项目信息
+        IotProjectInfoPageReqVO reqVO = new IotProjectInfoPageReqVO();
+        reqVO.setProjectIds(projectIds);
+        List<IotProjectInfoDO> projects = iotProjectInfoMapper.selectList(reqVO);
+        if (CollUtil.isNotEmpty(projects)) {
+            projects.forEach(project -> {
+                projectPair.put(project.getId(), project.getContractName());
+            });
+        }
         // 2. 拼接数据
         return BeanUtils.toBean(pagedTasks, IotProjectTaskRespVO.class, (taskVO) -> {
             // 拼接平台井信息
@@ -375,6 +387,8 @@ public class IotProjectTaskController {
             findAndThen(attachmentsPair, taskVO.getId(), attachmentRespS -> taskVO.setAttachments(attachmentRespS));
             // 任务已经完成的工作量
             findAndThen(taskFinishedWorkloadPair, taskVO.getId(), workloads -> taskVO.setItems(workloads));
+            // 设置任务的 合同信息
+            findAndThen(projectPair, taskVO.getProjectId(), projectName -> taskVO.setContractName(projectName));
         });
     }