Przeglądaj źródła

Merge remote-tracking branch 'origin/dev' into dev

xzc 1 tydzień temu
rodzic
commit
9960985f54
11 zmienionych plików z 68 dodań i 84 usunięć
  1. 10 1
      build-prod/updata.sql
  2. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/boilertaskorder/vo/BoilerOrderItemPageRespVO.java
  3. 3 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/pipetaskorder/vo/PipeOrderItemPageRespVO.java
  4. 6 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/boilertaskorderitemreport/BoilerTaskOrderItemReportDO.java
  5. 5 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/pipetaskorderitemreport/PipeTaskOrderItemReportDO.java
  6. 2 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/mysql/boilertaskorderitem/BoilerTaskOrderItemMapper.java
  7. 2 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/mysql/pipetaskorderitem/PipeTaskOrderItemMapper.java
  8. 11 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/boilertaskorder/BoilerTaskOrderServiceImpl.java
  9. 4 41
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/comm/QC01006_202400OFData.java
  10. 11 42
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/comm/QC01007_202400OFData.java
  11. 11 0
      tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/pipetaskorder/PipeTaskOrderServiceImpl.java

+ 10 - 1
build-prod/updata.sql

@@ -36,4 +36,13 @@ COMMENT ON COLUMN "PRESSURE2_BOILER_TASK_ORDER_ITEM"."SCHEME_ENTER_TIME" IS '检
 COMMENT ON COLUMN "PRESSURE2_BOILER_TASK_ORDER_ITEM"."SCHEME_APPROVAL_TIME" IS '检验方案审核时间';
 COMMENT ON COLUMN "PRESSURE2_BOILER_TASK_ORDER_ITEM"."SCHEME_RATIFY_TIME" IS '检验方案审批时间';
 
---已加
+--已加
+
+--20260629
+ALTER TABLE "PRESSURE2_BOILER_TASK_ORDER_ITEM_REPORT" ADD COLUMN "RECYCLE_EXPIRE_DATE" DATETIME(6);
+COMMENT ON COLUMN "PRESSURE2_BOILER_TASK_ORDER_ITEM_REPORT"."RECYCLE_EXPIRE_DATE" IS '检验意见通知书回收截止时间';
+
+ALTER TABLE "PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT" ADD COLUMN "RECYCLE_EXPIRE_DATE" DATETIME(6);
+COMMENT ON COLUMN "PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT"."RECYCLE_EXPIRE_DATE" IS '检验意见通知书回收截止时间';
+
+--已加

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/boilertaskorder/vo/BoilerOrderItemPageRespVO.java

@@ -414,4 +414,7 @@ public class BoilerOrderItemPageRespVO {
 
     private AdminUserRespDTO ratifyUser;
 
+    @Schema(description = "检验意见通知书回收截止时间")
+    private LocalDateTime recycleExpireDate;
+
 }

+ 3 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/pipetaskorder/vo/PipeOrderItemPageRespVO.java

@@ -417,4 +417,7 @@ public class PipeOrderItemPageRespVO {
     private String securityMan;
 
     private String securityManPhone;
+
+    @Schema(description = "检验意见通知书回收截止时间")
+    private LocalDateTime recycleExpireDate;
 }

+ 6 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/boilertaskorderitemreport/BoilerTaskOrderItemReportDO.java

@@ -397,4 +397,10 @@ public class BoilerTaskOrderItemReportDO extends BaseDO {
      * 记录pdfUrl
      */
     private String enterPdfUrl;
+
+    /**
+     * 检验意见通知书回收截止时间
+     */
+    private LocalDateTime recycleExpireDate;
+    
 }

+ 5 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/dataobject/pipetaskorderitemreport/PipeTaskOrderItemReportDO.java

@@ -393,4 +393,9 @@ public class PipeTaskOrderItemReportDO extends BaseDO {
      * 记录pdfUrl
      */
     private String enterPdfUrl;
+
+    /**
+     * 检验意见通知书回收截止时间
+     */
+    private LocalDateTime recycleExpireDate;
 }

+ 2 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/mysql/boilertaskorderitem/BoilerTaskOrderItemMapper.java

@@ -120,6 +120,8 @@ public interface BoilerTaskOrderItemMapper extends BaseMapperX<BoilerTaskOrderIt
                 selectAs(BoilerTaskOrderItemReportDO::getVideo,BoilerOrderItemPageRespVO::getVideo).
                 selectAs(BoilerTaskOrderItemReportDO::getAttachment,BoilerOrderItemPageRespVO::getAttachment).
 
+                selectAs(BoilerTaskOrderItemReportDO::getRecycleExpireDate,BoilerOrderItemPageRespVO::getRecycleExpireDate).
+
                 // 将JSON字符串映射到临时字符串字段
                 selectAs(OpinionReporterDO::getHandlerId,BoilerOrderItemPageRespVO::getHandlerIdJson).
                 selectAs(OpinionReporterDO::getReporterId,BoilerOrderItemPageRespVO::getReporterIdJson).

+ 2 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/mysql/pipetaskorderitem/PipeTaskOrderItemMapper.java

@@ -129,6 +129,8 @@ public interface PipeTaskOrderItemMapper extends BaseMapperX<PipeTaskOrderItemDO
                 selectAs(PipeTaskOrderItemReportDO::getVideo,PipeOrderItemPageRespVO::getVideo).
                 selectAs(PipeTaskOrderItemReportDO::getAttachment,PipeOrderItemPageRespVO::getAttachment).
 
+                selectAs(PipeTaskOrderItemReportDO::getRecycleExpireDate,PipeOrderItemPageRespVO::getRecycleExpireDate).
+
                 // 将JSON字符串映射到临时字符串字段
                 selectAs(OpinionReporterDO::getHandlerId,PipeOrderItemPageRespVO::getHandlerIdJson).
                 selectAs(OpinionReporterDO::getReporterId,PipeOrderItemPageRespVO::getReporterIdJson).

+ 11 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/boilertaskorder/BoilerTaskOrderServiceImpl.java

@@ -1745,6 +1745,17 @@ public class BoilerTaskOrderServiceImpl extends ServiceImpl<BoilerTaskOrderMappe
                 itemReportDO.setRectificationStatus(0);
                 itemReportDO.setTaskStatus(TaskOrderStatusEnum.FINISH_CONFIRM.getStatus());
 
+                //设置检验意见通知书回收截止时间,审核后的15个工作日后
+                try {
+                    // 从起始日期的下一天开始计算,与原有逻辑保持一致
+                    CommonResult<LocalDate> result = calendarApi.getCalendarDateByParam(LocalDate.now().plusDays(1), 15);
+                    if (result != null && result.getData() != null) {
+                        itemReportDO.setRecycleExpireDate(result.getData().atStartOfDay());
+                    }
+                } catch (Exception e) {
+                    log.warn("调用日历API计算工作日失败 {}", e.getMessage());
+                }
+
                 taskOrderItemReportMapper.updateById(itemReportDO);
                 String reportUrl = null;
                 if (StringUtils.isNotBlank(reportDO.getReportUrl())) {

+ 4 - 41
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/comm/QC01006_202400OFData.java

@@ -144,11 +144,8 @@ public class QC01006_202400OFData implements IDynamicOFData {
                             result.put("checkDate",taskOrderDO.getCheckDate());
                             result.put("zipCode",taskOrderDO.getZipCode());
                         }
-                        if (itemReportDO.getRatifyTime() != null){
-                            // 计算15个工作日后的日期
-                            LocalDate ratifyDate = LocalDate.from(itemReportDO.getRatifyTime());
-                            LocalDate after15WorkDays = addWorkingDays(ratifyDate, 15);
-                            result.put("ExpiryDate", after15WorkDays.format(dateFormat));
+                        if (itemReportDO.getRecycleExpireDate() != null){
+                            result.put("ExpiryDate", itemReportDO.getRecycleExpireDate().format(dateFormat));
                         }
                         result.put("contact",equipBoilerDO.getContact());
                         result.put("contactPhone",equipBoilerDO.getContactPhone());
@@ -192,11 +189,8 @@ public class QC01006_202400OFData implements IDynamicOFData {
                             result.put("equipName","压力管道");
                             result.put("equipInCode","-");
                             result.put("useNo",equipPipeDO.getCertificateNo());
-                            if (itemReportDO.getRatifyTime() != null){
-                                // 计算15个工作日后的日期
-                                LocalDate ratifyDate = LocalDate.from(itemReportDO.getRatifyTime());
-                                LocalDate after15WorkDays = addWorkingDays(ratifyDate, 15);
-                                result.put("ExpiryDate", after15WorkDays.format(dateFormat));
+                            if (itemReportDO.getRecycleExpireDate() != null){
+                                result.put("ExpiryDate", itemReportDO.getRecycleExpireDate().format(dateFormat));
                             }
                             result.put("contact",equipPipeDO.getContact());
                             result.put("contactPhone",equipPipeDO.getContactPhone());
@@ -215,35 +209,4 @@ public class QC01006_202400OFData implements IDynamicOFData {
 
     }
 
-    /**
-     * 计算指定日期后N个工作日的日期(排除周末和节假日)
-     * @param startDate 起始日期
-     * @param workingDays 工作日天数
-     * @return N个工作日后的日期
-     */
-    private LocalDate addWorkingDays(LocalDate startDate, int workingDays) {
-        if (workingDays <= 0) {
-            return startDate;
-        }
-        try {
-            // 从起始日期的下一天开始计算,与原有逻辑保持一致
-            CommonResult<LocalDate> result = calendarApi.getCalendarDateByParam(startDate.plusDays(1), workingDays);
-            if (result != null && result.getData() != null) {
-                return result.getData();
-            }
-        } catch (Exception e) {
-            log.warn("调用日历API计算工作日失败,降级为仅排除周末: {}", e.getMessage());
-        }
-        // 降级逻辑:仅排除周末
-        LocalDate resultDate = startDate;
-        int daysToAdd = workingDays;
-        while (daysToAdd > 0) {
-            resultDate = resultDate.plusDays(1);
-            if (resultDate.getDayOfWeek() != DayOfWeek.SATURDAY &&
-                    resultDate.getDayOfWeek() != DayOfWeek.SUNDAY) {
-                daysToAdd--;
-            }
-        }
-        return resultDate;
-    }
 }

+ 11 - 42
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/dynamicOFData/comm/QC01007_202400OFData.java

@@ -146,11 +146,8 @@ public class QC01007_202400OFData implements IDynamicOFData {
                         result.put("equipInCode",equipBoilerDO.getUnitInternalCode());
                         result.put("useNo",equipBoilerDO.getUseRegisterNo());
                         result.put("equipRegisterCode1",equipBoilerDO.getEquipCode());
-                        if (itemReportDO.getRatifyTime() != null){
-                            // 计算15个工作日后的日期
-                            LocalDate ratifyDate = LocalDate.from(itemReportDO.getRatifyTime());
-                            LocalDate after15WorkDays = addWorkingDays(ratifyDate, 15);
-                            result.put("ExpiryDate", after15WorkDays.format(dateFormat));
+                        if (itemReportDO.getRecycleExpireDate() != null){
+                            result.put("ExpiryDate", itemReportDO.getRecycleExpireDate().format(dateFormat));
                         }
                         result.put("contact",equipBoilerDO.getContact());
                         result.put("contactPhone",equipBoilerDO.getContactPhone());
@@ -199,7 +196,13 @@ public class QC01007_202400OFData implements IDynamicOFData {
                         result.put("checkUnit", boilerTaskOrderSignFileDO.getSignUrl());
                     }
                 }
-                result.put("checkName",itemReportDO.getSignUrl());
+                if (itemReportDO.getEnterId() != null) {
+                    AdminUserRespDTO checkedData = adminUserApi.getUser(itemReportDO.getEnterId()).getCheckedData();
+                    result.put("checkName", checkedData != null ? checkedData.getSignUrl() : null);
+                }else {
+                    AdminUserRespDTO checkedData = adminUserApi.getUser(itemReportDO.getCreator()).getCheckedData();
+                    result.put("checkName", checkedData != null ? checkedData.getSignUrl() : null);
+                }
 
                 if (taskOrderDO != null){
                     result.put("checkDate",taskOrderDO.getCheckDate());
@@ -218,11 +221,8 @@ public class QC01007_202400OFData implements IDynamicOFData {
                             result.put("equipName","压力管道");
                             result.put("equipInCode","-");
                             result.put("useNo",equipPipeDO.getCertificateNo());
-                            if (itemReportDO.getRatifyTime() != null){
-                                // 计算15个工作日后的日期
-                                LocalDate ratifyDate = LocalDate.from(itemReportDO.getRatifyTime());
-                                LocalDate after15WorkDays = addWorkingDays(ratifyDate, 15);
-                                result.put("ExpiryDate", after15WorkDays.format(dateFormat));
+                            if (itemReportDO.getRecycleExpireDate() != null){
+                                result.put("ExpiryDate", itemReportDO.getRecycleExpireDate().format(dateFormat));
                             }
                             result.put("contact",equipPipeDO.getContact());
                             result.put("contactPhone",equipPipeDO.getContactPhone());
@@ -269,35 +269,4 @@ public class QC01007_202400OFData implements IDynamicOFData {
 
     }
 
-    /**
-     * 计算指定日期后N个工作日的日期(排除周末和节假日)
-     * @param startDate 起始日期
-     * @param workingDays 工作日天数
-     * @return N个工作日后的日期
-     */
-    private LocalDate addWorkingDays(LocalDate startDate, int workingDays) {
-        if (workingDays <= 0) {
-            return startDate;
-        }
-        try {
-            // 从起始日期的下一天开始计算,与原有逻辑保持一致
-            CommonResult<LocalDate> result = calendarApi.getCalendarDateByParam(startDate.plusDays(1), workingDays);
-            if (result != null && result.getData() != null) {
-                return result.getData();
-            }
-        } catch (Exception e) {
-            log.warn("调用日历API计算工作日失败,降级为仅排除周末: {}", e.getMessage());
-        }
-        // 降级逻辑:仅排除周末
-        LocalDate resultDate = startDate;
-        int daysToAdd = workingDays;
-        while (daysToAdd > 0) {
-            resultDate = resultDate.plusDays(1);
-            if (resultDate.getDayOfWeek() != DayOfWeek.SATURDAY &&
-                resultDate.getDayOfWeek() != DayOfWeek.SUNDAY) {
-                daysToAdd--;
-            }
-        }
-        return resultDate;
-    }
 }

+ 11 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/pipetaskorder/PipeTaskOrderServiceImpl.java

@@ -4696,6 +4696,17 @@ public class PipeTaskOrderServiceImpl extends ServiceImpl<PipeTaskOrderMapper, P
                 itemReportDO.setRectificationStatus(0);
                 itemReportDO.setTaskStatus(TaskOrderStatusEnum.FINISH_CONFIRM.getStatus());
 
+                //设置检验意见通知书回收截止时间,审核后的15个工作日后
+                try {
+                    // 从起始日期的下一天开始计算,与原有逻辑保持一致
+                    CommonResult<LocalDate> result = calendarApi.getCalendarDateByParam(LocalDate.now().plusDays(1), 15);
+                    if (result != null && result.getData() != null) {
+                        itemReportDO.setRecycleExpireDate(result.getData().atStartOfDay());
+                    }
+                } catch (Exception e) {
+                    log.warn("调用日历API计算工作日失败 {}", e.getMessage());
+                }
+
                 taskOrderItemReportMapper.updateById(itemReportDO);
                 String reportUrl = null;
                 if (StringUtils.isNotBlank(reportDO.getReportUrl())) {