From f4c288c55d08c04cd026508b358beebfcdce5fc2 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 22 五月 2026 09:29:09 +0800
Subject: [PATCH] feat(product): 添加产品型号向下复制功能并优化生产报工重量计算 - 在ProductController中新增downCopy接口实现产品型号批量复制功能 - 将ProductionProductMainDto中的bomInputQty字段重命名为inputWeight - 在ProductionProductMainServiceImpl中添加JSON解析逻辑支持从otherData中提取投入重量 - 新增resolveInputWeight、findParameterValue、findFieldValue等工具方法处理复杂参数解析 - 为ProductModelDto添加targetProductId字段用于指定复制目标 - 修复销售台账按调度员ID和姓名分组的SQL查询问题 - 优化库存服务中剩余数量计算的空值处理逻辑 - 完善生产投料数量为空时的默认值处理机制
---
src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java | 76 +++++++++++++++++++++++++++++++++----
1 files changed, 67 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
index 545be5d..d304a54 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
@@ -1,34 +1,92 @@
package com.ruoyi.production.dto;
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.production.pojo.ProductionProductMain;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
-import java.time.LocalDateTime;
+import java.time.LocalDate;
@Data
+@ExcelIgnoreUnannotated
public class ProductionProductMainDto extends ProductionProductMain {
@ApiModelProperty(value = "宸ュ崟缂栧彿")
+ @Excel(name = "宸ュ崟缂栧彿")
private String workOrderNo;
@ApiModelProperty(value = "宸ュ崟鐘舵��")
private String workOrderStatus;
@ApiModelProperty(value = "鎶ュ伐浜哄憳鏄电О")
+ @Excel(name = "鎶ュ伐浜�")
private String nickName;
@ApiModelProperty(value = "鎶ュ伐鏁伴噺")
+ @Excel(name = "鎶ュ伐鏁伴噺")
private BigDecimal quantity;
- @ApiModelProperty(value = "鏄惁鎶ュ伐")
- private boolean reportWork;
+ @ApiModelProperty(value = "鎶ュ簾鏁伴噺")
+ @Excel(name = "鎶ュ簾鏁伴噺")
+ private BigDecimal scrapQty = BigDecimal.ZERO;
- @ApiModelProperty(value = "鎶ュ伐id")
- private Long productMainId;
- @ApiModelProperty(value = "瀹為檯寮�濮嬫椂闂�")
- private LocalDateTime actualStartTime;
+ // 涓嶈壇鏁伴噺
+ @ApiModelProperty(value = "涓嶈壇鏁伴噺")
+ @Excel(name = "涓嶈壇鏁伴噺")
+ private BigDecimal defectiveQuantity = BigDecimal.ZERO;
- @ApiModelProperty(value = "瀹為檯缁撴潫鏃堕棿")
- private LocalDateTime actualEndTime;
+ // 鍚堟牸鏁伴噺
+ @ApiModelProperty(value = "鍚堟牸鏁伴噺")
+ @Excel(name = "鍚堟牸鏁伴噺")
+ private BigDecimal qualifiedQty = BigDecimal.ZERO;
+
+ //浜у搧鍚嶇О
+ @Excel(name = "浜у搧鍚嶇О")
+ private String productName;
+
+ //浜у搧瑙勬牸鍨嬪彿
+ @Excel(name = "浜у搧瑙勬牸鍨嬪彿")
+ private String productModelName;
+ //鏂欏彿
+ @Excel(name = "鏂欏彿")
+ private String materialCode;
+
+ //鍗曚綅
+ @Excel(name = "鍗曚綅")
+ private String unit;
+
+ //閿�鍞悎鍚屽彿
+ @Excel(name = "閿�鍞悎鍚屽彿")
+ private String salesContractNo;
+
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate schedulingDate;
+ private String schedulingUserName;
+ private String customerName;
+ //宸ュ簭
+ @Excel(name = "宸ュ簭")
+ private String process;
+ // 宸ュ簭鍚堟牸鐜�
+ private BigDecimal processQualifiedRate;
+ // 瀹為檯鍚堟牸鐜�
+ private BigDecimal actualQualifiedRate;
+ private BigDecimal workHours;
+ private BigDecimal wages;
+
+ // 鍏朵粬鏁版嵁
+ private String otherData;
+
+ // 涓嶅悎鏍煎鐞嗙粨鏋�
+ @ApiModelProperty(value = "涓嶅悎鏍煎鐞嗙粨鏋�")
+ private String dealResult;
+
+ @ApiModelProperty(value = "鐢熶骇鎵瑰彿")
+ private String batchNo;
+
+ @ApiModelProperty(value = "浜у搧缁撴瀯鎶曞叆鏁伴噺")
+ private BigDecimal inputWeight;
}
--
Gitblit v1.9.3