瀏覽代碼

报表调整

xy 6 天之前
父節點
當前提交
006febcb8b

+ 36 - 6
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/boiler/QC10033_202400ReportOFData.java

@@ -27,6 +27,7 @@ import org.springframework.stereotype.Service;
 import java.time.format.DateTimeFormatter;
 import java.util.List;
 import java.util.Objects;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
 
 /**
@@ -111,15 +112,44 @@ public class QC10033_202400ReportOFData implements IDynamicOFData {
 
             //检验员信息
             List<BoilerTaskOrderUserDO> checkUserList = boilerTaskOrderUserMapper.selectList(BoilerTaskOrderUserDO::getOrderId,itemReportDO.getOrderId());
+            // 如果mainChecker不为空且不在checkUserList中,则添加
+            if (itemDO.getMainChecker() != null){
+                boolean hasMainChecker = checkUserList.stream()
+                        .anyMatch(user -> itemDO.getMainChecker().equals(user.getUserId()));
+                if (!hasMainChecker) {
+                    BoilerTaskOrderUserDO mainCheckerUser = new BoilerTaskOrderUserDO();
+                    mainCheckerUser.setUserId(itemDO.getMainChecker());
+                    mainCheckerUser.setOrderId(itemReportDO.getOrderId());
+                    checkUserList.add(mainCheckerUser);
+                }
+            }
             if (!checkUserList.isEmpty()){
                 List<AdminUserRespDTO> userList = adminUserApi.getUserList(checkUserList.stream().map(BoilerTaskOrderUserDO::getUserId).toList()).getData();
                 if (!userList.isEmpty()){
-                    String checkNames = userList.stream()
-                            .map(AdminUserRespDTO::getSignUrl)
-                            .filter(Objects::nonNull) // 过滤掉null值
-                            .filter(signUrl -> !signUrl.isEmpty()) // 过滤掉空字符串
-                            .collect(Collectors.joining(","));
-                    result.put("checkNames",checkNames);
+                    // 将mainChecker对应的用户排在第一个
+                    if (itemDO.getMainChecker() != null) {
+                        userList.sort((u1, u2) -> {
+                            if (itemDO.getMainChecker().equals(u1.getId())) {
+                                return -1;
+                            } else if (itemDO.getMainChecker().equals(u2.getId())) {
+                                return 1;
+                            }
+                            return 0;
+                        });
+                    }
+                    AtomicInteger number = new AtomicInteger(1);
+                    for (AdminUserRespDTO adminUserRespDTO : userList) {
+                        if (adminUserRespDTO.getSignUrl() != null && !adminUserRespDTO.getSignUrl().isEmpty()){
+                            result.put("checkName_" + number.get(), adminUserRespDTO.getSignUrl());
+                            number.getAndIncrement();
+                        }
+                    }
+                    // 如果个数小于7,将后面的checkName都改成空白
+                    if (number.get() < 7){
+                        for (int i = number.get(); i <= 7; i++) {
+                            result.put("checkName_" + i, " ");
+                        }
+                    }
                 }
             }
 

+ 36 - 6
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/boiler/QC10035_202401ReportOFData.java

@@ -21,6 +21,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.List;
 import java.util.Objects;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
 
 /**
@@ -76,15 +77,44 @@ public class QC10035_202401ReportOFData implements IDynamicOFData {
             }
 
             List<BoilerTaskOrderUserDO> checkUserList = boilerTaskOrderUserMapper.selectList(BoilerTaskOrderUserDO::getOrderId,itemReportDO.getOrderId());
+            // 如果mainChecker不为空且不在checkUserList中,则添加
+            if (itemDO.getMainChecker() != null){
+                boolean hasMainChecker = checkUserList.stream()
+                    .anyMatch(user -> itemDO.getMainChecker().equals(user.getUserId()));
+                if (!hasMainChecker) {
+                    BoilerTaskOrderUserDO mainCheckerUser = new BoilerTaskOrderUserDO();
+                    mainCheckerUser.setUserId(itemDO.getMainChecker());
+                    mainCheckerUser.setOrderId(itemReportDO.getOrderId());
+                    checkUserList.add(mainCheckerUser);
+                }
+            }
             if (!checkUserList.isEmpty()){
                 List<AdminUserRespDTO> userList = adminUserApi.getUserList(checkUserList.stream().map(BoilerTaskOrderUserDO::getUserId).toList()).getData();
                 if (!userList.isEmpty()){
-                    String checkNames = userList.stream()
-                            .map(AdminUserRespDTO::getSignUrl)
-                            .filter(Objects::nonNull) // 过滤掉null值
-                            .filter(signUrl -> !signUrl.isEmpty()) // 过滤掉空字符串
-                            .collect(Collectors.joining(","));
-                    result.put("checkNames",checkNames);
+                    // 将mainChecker对应的用户排在第一个
+                    if (itemDO.getMainChecker() != null) {
+                        userList.sort((u1, u2) -> {
+                            if (itemDO.getMainChecker().equals(u1.getId())) {
+                                return -1;
+                            } else if (itemDO.getMainChecker().equals(u2.getId())) {
+                                return 1;
+                            }
+                            return 0;
+                        });
+                    }
+                    AtomicInteger number = new AtomicInteger(1);
+                    for (AdminUserRespDTO adminUserRespDTO : userList) {
+                        if (adminUserRespDTO.getSignUrl() != null && !adminUserRespDTO.getSignUrl().isEmpty()){
+                            result.put("checkName_" + number.get(), adminUserRespDTO.getSignUrl());
+                            number.getAndIncrement();
+                        }
+                    }
+                    // 如果个数小于7,将后面的checkName都改成空白
+                    if (number.get() < 7){
+                        for (int i = number.get(); i <= 7; i++) {
+                            result.put("checkName_" + i, " ");
+                        }
+                    }
                 }
             }
 

+ 6 - 6
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/boiler/QC10098_202400RecordOFData.java

@@ -108,13 +108,13 @@ public class QC10098_202400RecordOFData implements IDynamicOFData {
                 result.put("buringMethod",equipBoilerDO.getBuringMethod());
                 result.put("ratedOutput",equipBoilerDO.getRatedOutput());
                 //上次内检日期
-                if (equipBoilerDO.getLastAllDate() != null){
-                    result.put("nextInCheckDate",equipBoilerDO.getLastAllDate().format(dateFormat));
-                }
+//                if (equipBoilerDO.getLastAllDate() != null){
+//                    result.put("nextInCheckDate",equipBoilerDO.getLastAllDate().format(dateFormat));
+//                }
                 //上次外检日期
-                if (equipBoilerDO.getLastYearDate() != null){
-                    result.put("nextOutCheckDate",equipBoilerDO.getLastYearDate().format(dateFormat));
-                }
+//                if (equipBoilerDO.getLastYearDate() != null){
+//                    result.put("nextOutCheckDate",equipBoilerDO.getLastYearDate().format(dateFormat));
+//                }
                 //上次耐压日期
                 if (equipBoilerDO.getLastPressureDate() != null){
                     result.put("nextPressureCheckDate",equipBoilerDO.getLastPressureDate().format(dateFormat));

+ 10 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/pipe/QC12184_202401ReportOFData.java

@@ -12,6 +12,7 @@ import cn.start.tz.module.pressure2.service.dynamicOFData.util.GenerateReportJso
 import cn.start.tz.module.pressure2.service.dynamictbcol.DynamicTbColService;
 import cn.start.tz.module.pressure2.service.dynamictbval.DynamicTbValService;
 import cn.start.tz.module.system.api.user.AdminUserApi;
+import cn.start.tz.module.system.api.user.dto.AdminUserRespDTO;
 import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import jakarta.annotation.Resource;
@@ -85,6 +86,15 @@ public class QC12184_202401ReportOFData implements IDynamicOFData {
 
             result.put("reportNo",itemReportDO.getReportNo());
 
+            //审核人员信息
+            AdminUserRespDTO userInfo = adminUserApi.getUser(itemReportDO.getApprovalId()).getData();
+            if (userInfo != null) {
+                result.put("approvalName", userInfo.getSignUrl() != null ? userInfo.getSignUrl() : itemReportDO.getApprovalName());
+            }
+            if (itemReportDO.getApprovalTime() != null) {
+                result.put("approvalTime", itemReportDO.getApprovalTime().format(dateFormat));
+            }
+
         }
 
         return result;

+ 1 - 1
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/util/JsonConvertUtil.java

@@ -116,7 +116,7 @@ public class JsonConvertUtil {
         }
         // 已经是字符串类型
         else if (value instanceof String) {
-            if (StrUtil.isBlank((String) value) || "null".equals(value)) {
+            if (StrUtil.isEmpty((String) value) || "null".equals(value)) {
                 return "-";
             }
             return (String) value;