xy 7 часов назад
Родитель
Сommit
f4b37a5da5

+ 109 - 48
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/controller/admin/taskordernontaxrecord/vo/TaskOrderNonTaxRecordRespVO.java

@@ -19,19 +19,24 @@ import com.alibaba.excel.annotation.*;
 public class TaskOrderNonTaxRecordRespVO {
 
     @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "8583")
-    @ExcelProperty("ID")
     private String id;
 
+    @Schema
+    @ExcelProperty("开单人")
+    private String handledByName;
+
+    @Schema(description = "开单日期")
+    @ExcelProperty("开单时间")
+    private LocalDateTime openDate;
+
     @Schema(description = "付款人")
-    @ExcelProperty("付款人")
+    @ExcelProperty("缴费单位(个人)")
     private String payer;
 
     @Schema(description = "联系电话")
-    @ExcelProperty("联系电话")
     private String contactPhone;
 
-    @Schema(description = "利息人邮箱")
-    @ExcelProperty("利息人邮箱")
+    @Schema(description = "联系人邮箱")
     private String email;
 
     @Schema(description = "缴费金额")
@@ -43,139 +48,183 @@ public class TaskOrderNonTaxRecordRespVO {
     private BigDecimal actualAmount;
 
     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("创建时间")
     private LocalDateTime createTime;
 
     @Schema(description = "备注", example = "随便")
-    @ExcelProperty("备注")
     private String remark;
 
     @Schema(description = "付款账号", example = "3225")
-    @ExcelProperty("付款账号")
     private String payAccount;
 
     @Schema(description = "付款银行")
-    @ExcelProperty("付款银行")
     private String payBank;
 
     @Schema(description = "收款人")
-    @ExcelProperty("收款人")
     private String recipient;
 
     @Schema(description = "收款银行")
-    @ExcelProperty("收款银行")
     private String recipientBank;
 
     @Schema(description = "收款账号", example = "21056")
-    @ExcelProperty("收款账号")
     private String recipientAccount;
 
     @Schema(description = "截止日期")
-    @ExcelProperty("截止日期")
     private LocalDate deadline;
 
     @Schema(description = "经办人")
-    @ExcelProperty("经办人")
     private String handledBy;
 
-    @Schema(description = "开单日期")
-    @ExcelProperty("开单日期")
-    private LocalDateTime openDate;
-
     @Schema(description = "审核状态  100 待审核  200 审核通过 300 已拒绝", example = "1")
-    @ExcelProperty("审核状态  100 待审核  200 审核通过 300 已拒绝")
     private Integer status;
 
     @Schema(description = "付款状态 100 待缴费 200 已缴费  300 已作废", example = "2")
-    @ExcelProperty("付款状态 100 待缴费 200 已缴费  300 已作废")
     private Integer payStatus;
 
+    @Schema(description = "付款状态名称")
+    @ExcelProperty("付款状态")
+    private String payStatusName;
+
+    /**
+     * 设置付款状态时,自动更新付款状态名称
+     */
+    public void setPayStatus(Integer payStatus) {
+        this.payStatus = payStatus;
+        this.payStatusName = getPayStatusNameByValue(payStatus);
+    }
+
+    /**
+     * 根据付款状态值获取对应的中文名称
+     */
+    private String getPayStatusNameByValue(Integer payStatus) {
+        if (payStatus == null) {
+            return "";
+        }
+        switch (payStatus) {
+            case 100:
+                return "待缴费";
+            case 200:
+                return "已缴费";
+            case 300:
+                return "已作废";
+            default:
+                return "";
+        }
+    }
+
     @Schema(description = "缴费通知书")
     @ExcelProperty("缴费通知书")
     private String paymentInstructionNo;
 
+    @Schema(description = "任务单号列表")
+    private List<String> orderNos;
+
+    @Schema(description = "任务单号(导出用)")
+    @ExcelProperty("任务单号")
+    private String orderNosStr;
+
     @Schema(description = "部门", example = "25182")
-    @ExcelProperty("部门")
     private String deptId;
 
     @Schema(description = "付款日期")
-    @ExcelProperty("付款日期")
     private LocalDateTime payDate;
 
     @Schema(description = "票据编号")
-    @ExcelProperty("票据编号")
     private String billNumber;
 
     @Schema(description = "缴费通知书")
-    @ExcelProperty("缴费通知书")
     private String paymentInstruction;
 
     @Schema(description = "流程id", example = "5700")
-    @ExcelProperty("流程id")
     private String processInstanceId;
 
     @Schema(description = "检验日期")
-    @ExcelProperty("检验日期")
     private LocalDate checkDate;
 
     @Schema(description = "单位名称", example = "张三")
-    @ExcelProperty("单位名称")
     private String unitName;
 
     @Schema(description = "使用单位名称", example = "张三")
-    @ExcelProperty("使用单位名称")
     private String useUnitName;
 
     @Schema(description = "设备类型 200锅炉 300管道", example = "1")
-    @ExcelProperty("设备类型 200锅炉 300管道")
     private Integer equipMainType;
 
+    @Schema(description = "设备类型名称")
+    @ExcelProperty("设备类型")
+    private String equipMainTypeName;
+
+    /**
+     * 设置设备类型时,自动更新设备类型名称
+     */
+    public void setEquipMainType(Integer equipMainType) {
+        this.equipMainType = equipMainType;
+        this.equipMainTypeName = getEquipMainTypeNameByValue(equipMainType);
+    }
+
+    /**
+     * 根据设备类型值获取对应的中文名称
+     */
+    private String getEquipMainTypeNameByValue(Integer equipMainType) {
+        if (equipMainType == null) {
+            return "";
+        }
+        switch (equipMainType) {
+            case 200:
+                return "锅炉";
+            case 300:
+                return "压力管道";
+            default:
+                return "";
+        }
+    }
+
     @Schema(description = "付款截止日期")
-    @ExcelProperty("付款截止日期")
     private LocalDate payDeadline;
 
     @Schema(description = "报告接收电话")
-    @ExcelProperty("报告接收电话")
     private String recipientPhone;
 
     @Schema(description = "委托单位名称")
-    @ExcelProperty("委托单位名称")
     private String clientUnit;
 
     @Schema(description = "委托单位编码")
-    @ExcelProperty("委托单位编码")
     private String clientUnitCode;
 
     @Schema(description = "收费项目编码")
-    @ExcelProperty("收费项目编码")
     private String chargeItemCode;
 
     @Schema(description = "收费项目名称", example = "王五")
-    @ExcelProperty("收费项目名称")
     private String chargeItemName;
 
     @Schema(description = "数量")
-    @ExcelProperty("数量")
     private Integer num;
 
     @Schema(description = "收费标准")
-    @ExcelProperty("收费标准")
     private String pricing;
 
     @Schema(description = "缴费通知书", example = "https://www.iocoder.cn")
-    @ExcelProperty("缴费通知书")
     private String impUrl;
 
     @Schema(description = "缴费通知书PDF文件URL", example = "https://www.iocoder.cn")
-    @ExcelProperty("缴费通知书PDF文件URL")
     private String noticePdfUrl;
 
-    @Schema
-    @ExcelProperty("开单人")
-    private String handledByName;
-
-    @ExcelProperty("缴费状态")
-    private String payStatusName;
+    /**
+     * 设置任务单号列表时,自动更新任务单号字符串(用于导出)
+     */
+    public void setOrderNos(List<String> orderNos) {
+        this.orderNos = orderNos;
+        this.orderNosStr = convertListToString(orderNos);
+    }
+
+    /**
+     * 将 List 转换为逗号分隔的字符串
+     */
+    private String convertListToString(List<String> list) {
+        if (list == null || list.isEmpty()) {
+            return "";
+        }
+        return String.join(",", list);
+    }
 
     @Schema(description = "部门名称")
     private DeptRespDTO dept;
@@ -195,12 +244,24 @@ public class TaskOrderNonTaxRecordRespVO {
     @Schema(description = "设备数量")
     private Long equipNum;
 
-    @Schema(description = "任务单号列表")
-    private List<String> orderNos;
-
     @Schema(description = "电子报告接收人邮箱")
     private String recipientEmail;
 
     private String orderId;
 
+    /**
+     * 设置付款状态时,自动更新付款状态名称
+     */
+    public void setCreatorUser(AdminUserRespDTO userRespDTO) {
+        this.creatorUser = userRespDTO;
+        this.handledByName = getHandledByName(userRespDTO);
+    }
+
+    private String getHandledByName(AdminUserRespDTO userRespDTO) {
+        if (userRespDTO != null) {
+            return userRespDTO.getNickname();
+        }
+        return "";
+    }
+
 }

+ 1 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/dal/mysql/taskordernontaxrecord/TaskOrderNonTaxRecordMapper.java

@@ -71,6 +71,7 @@ public interface TaskOrderNonTaxRecordMapper extends BaseMapperX<TaskOrderNonTax
         recordDOMPJLambdaWrapper = (MPJLambdaWrapperX<TaskOrderNonTaxRecordDO>)recordDOMPJLambdaWrapper.
                 selectAll(TaskOrderNonTaxRecordDO.class).
                 selectAs(TaskOrderNonTaxRecordDO::getEquipMainType, TaskOrderNonTaxRecordRespVO::getEquipMainType).
+                selectAs(BoilerTaskOrderDO::getId, TaskOrderNonTaxRecordRespVO::getOrderId).
                 leftJoin(TaskOrderNonTaxRecordItemDO.class, TaskOrderNonTaxRecordItemDO::getRecordId, TaskOrderNonTaxRecordDO::getId).
                 leftJoin(BoilerTaskOrderDO.class, BoilerTaskOrderDO::getId, TaskOrderNonTaxRecordItemDO::getOrderId).
                 leftJoin(TaskOrderNonTaxApplyDO.class, TaskOrderNonTaxApplyDO::getOrderId, BoilerTaskOrderDO::getId).

+ 6 - 3
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/taskordernontaxrecord/TaskOrderNonTaxRecordServiceImpl.java

@@ -257,9 +257,9 @@ public class TaskOrderNonTaxRecordServiceImpl extends ServiceImpl<TaskOrderNonTa
         bean.setDept(data);
         List<BoilerTaskOrderDO> taskOrderDOS = taskOrderNonTaxRecordItemMapper.selectTaskOrder(id);
         bean.setTaskOrders(taskOrderDOS);
-//        if(taskOrderDOS != null){
-//            bean.setOrderNos(taskOrderDOS.stream().map(TaskOrderDO::getOrderNo).toList());
-//        }
+        if(!taskOrderDOS.isEmpty()){
+            bean.setOrderNos(taskOrderDOS.stream().map(BoilerTaskOrderDO::getOrderNo).toList());
+        }
         return bean;
     }
 
@@ -305,6 +305,9 @@ public class TaskOrderNonTaxRecordServiceImpl extends ServiceImpl<TaskOrderNonTa
 
             List<BoilerTaskOrderDO> taskOrderDOS = taskOrderNonTaxRecordItemMapper.selectTaskOrder(item.getId());
             item.setTaskOrders(taskOrderDOS);
+            if(!taskOrderDOS.isEmpty()){
+                item.setOrderNos(taskOrderDOS.stream().map(BoilerTaskOrderDO::getOrderNo).toList());
+            }
 
             //设备数量
             if (item.getEquipMainType() == 200){