|
@@ -16,6 +16,7 @@ import cn.iocoder.yudao.module.pms.controller.admin.iotrhdailyreport.vo.IotRhDai
|
|
import cn.iocoder.yudao.module.pms.controller.admin.iotrhdailyreport.vo.IotRhDailyReportSaveReqVO;
|
|
import cn.iocoder.yudao.module.pms.controller.admin.iotrhdailyreport.vo.IotRhDailyReportSaveReqVO;
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotprojectinfo.IotProjectInfoDO;
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotprojectinfo.IotProjectInfoDO;
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotprojecttask.IotProjectTaskDO;
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotprojecttask.IotProjectTaskDO;
|
|
|
|
+import cn.iocoder.yudao.module.pms.dal.dataobject.iotprojecttaskattrs.IotTaskAttrModelProperty;
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotrhdailyreport.IotRhDailyReportDO;
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotrhdailyreport.IotRhDailyReportDO;
|
|
import cn.iocoder.yudao.module.pms.service.iotprojectinfo.IotProjectInfoService;
|
|
import cn.iocoder.yudao.module.pms.service.iotprojectinfo.IotProjectInfoService;
|
|
import cn.iocoder.yudao.module.pms.service.iotprojecttask.IotProjectTaskService;
|
|
import cn.iocoder.yudao.module.pms.service.iotprojecttask.IotProjectTaskService;
|
|
@@ -113,8 +114,12 @@ public class IotRhDailyReportController {
|
|
}
|
|
}
|
|
// 设备部门信息
|
|
// 设备部门信息
|
|
Map<Long, DeptDO> deptMap = deptService.getDeptMap(convertList(reports, IotRhDailyReportDO::getDeptId));
|
|
Map<Long, DeptDO> deptMap = deptService.getDeptMap(convertList(reports, IotRhDailyReportDO::getDeptId));
|
|
|
|
+ // key项目id value项目合同号
|
|
Map<Long, String> projectPair = new HashMap<>();
|
|
Map<Long, String> projectPair = new HashMap<>();
|
|
|
|
+ // key任务id value任务井号-施工区域
|
|
Map<Long, String> taskPair = new HashMap<>();
|
|
Map<Long, String> taskPair = new HashMap<>();
|
|
|
|
+ // key任务id value设计注气量
|
|
|
|
+ Map<Long, String> taskExtPropertyPair = new HashMap<>();
|
|
DataPermissionUtils.executeIgnore(() -> {
|
|
DataPermissionUtils.executeIgnore(() -> {
|
|
// 查询日报关联的项目信息
|
|
// 查询日报关联的项目信息
|
|
IotProjectInfoPageReqVO reqVO = new IotProjectInfoPageReqVO();
|
|
IotProjectInfoPageReqVO reqVO = new IotProjectInfoPageReqVO();
|
|
@@ -132,8 +137,21 @@ public class IotRhDailyReportController {
|
|
if (CollUtil.isNotEmpty(tasks)) {
|
|
if (CollUtil.isNotEmpty(tasks)) {
|
|
tasks.forEach(task -> {
|
|
tasks.forEach(task -> {
|
|
taskPair.put(task.getId(), StrUtil.join(" - ", task.getWellName(), task.getLocation()));
|
|
taskPair.put(task.getId(), StrUtil.join(" - ", task.getWellName(), task.getLocation()));
|
|
|
|
+ if (CollUtil.isNotEmpty(task.getExtProperty())) {
|
|
|
|
+ List<IotTaskAttrModelProperty> taskAttrs = task.getExtProperty();
|
|
|
|
+ if (CollUtil.isNotEmpty(taskAttrs)) {
|
|
|
|
+ // 找到 设计注气量 属性 对应的值
|
|
|
|
+ taskAttrs.forEach(attr -> {
|
|
|
|
+ if ("设计注气量".equals(attr.getName()) && StrUtil.isNotBlank(attr.getActualValue())) {
|
|
|
|
+ taskExtPropertyPair.put(task.getId(), attr.getActualValue());
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ }
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
+ // 查询任务中维护的 设计注气量
|
|
|
|
+
|
|
});
|
|
});
|
|
// 2. 拼接数据
|
|
// 2. 拼接数据
|
|
return BeanUtils.toBean(reports, IotRhDailyReportRespVO.class, (reportVO) -> {
|
|
return BeanUtils.toBean(reports, IotRhDailyReportRespVO.class, (reportVO) -> {
|
|
@@ -143,6 +161,8 @@ public class IotRhDailyReportController {
|
|
findAndThen(projectPair, reportVO.getProjectId(), contractName -> reportVO.setContractName(contractName));
|
|
findAndThen(projectPair, reportVO.getProjectId(), contractName -> reportVO.setContractName(contractName));
|
|
// 2.3 日报关联的任务信息
|
|
// 2.3 日报关联的任务信息
|
|
findAndThen(taskPair, reportVO.getTaskId(), taskName -> reportVO.setTaskName(taskName));
|
|
findAndThen(taskPair, reportVO.getTaskId(), taskName -> reportVO.setTaskName(taskName));
|
|
|
|
+ // 2.4 设计注气量
|
|
|
|
+ findAndThen(taskExtPropertyPair, reportVO.getTaskId(), designInjection -> reportVO.setDesignInjection(designInjection));
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
|