refactor(structural-package): 优化钢构包订单相关数据处理

- 修正了托盘数量及重量累加的缩进格式
- 替换钢构包物料ID获取逻辑,改为使用PackageVO整体对象
- 在订单项中增加包号、包描述和包订单号字段设置
- 订单项中计算并设置托盘总重量字段
- 结构体DTO增加packageOrderNo、packageDesc、workbenchCode和weight字段
- workbenchCode通过modelNo与workbenchNo拼接生成
This commit is contained in:
曹鹏飞 2025-12-01 17:59:00 +08:00
parent 9fbbd6188b
commit 9cb6e1e2c3
2 changed files with 26 additions and 7 deletions

View File

@ -996,15 +996,13 @@ public class StructuralPackageOrderController extends BaseController {
}
}
String materialNo = StrUtil.trim(data.get("钢构包物料*").toString());
Long materialId = null;
PackageVO packageVO = null;
if (StrUtil.isBlank(materialNo)) {
sb.append("钢构包物料不能为空;");
} else {
PackageVO packageVO = structuralPackageService.getCurrent(materialNo);
packageVO = structuralPackageService.getCurrent(materialNo);
if (Objects.isNull(packageVO)) {
sb.append("钢构包物料无效;");
} else {
materialId = packageVO.getId();
}
}
String expectDeliveryDate = StrUtil.trim(data.get("期望交期").toString());
@ -1066,8 +1064,10 @@ public class StructuralPackageOrderController extends BaseController {
.setModelNo(modelNo)
.setWorkbenchId(workbenchId)
.setWorkbenchNo(workbenchNo)
.setPackageId(materialId)
.setMaterialNo(materialNo)
.setPackageOrderNo(packageVO.getOrderNo())
.setPackageId(packageVO.getId())
.setPackageNo(materialNo)
.setPackageDesc(packageVO.getName())
.setDeliveryDate(expectDeliveryDate)
.setExternalOrderNo(poNum)
.setRowNo(rowNo)
@ -1092,6 +1092,7 @@ public class StructuralPackageOrderController extends BaseController {
} else {
list.forEach(item -> {
item.setTray(generateTray(item.getPackageId(), item.getNum(), item.getTransportNum()));
item.setWeight(item.getTray().getItems().stream().map(TrayItemVO::getWeight).reduce(BigDecimal.ZERO, BigDecimal::add));
});
return ApiResult.success(list);
}

View File

@ -10,10 +10,17 @@ import java.math.BigDecimal;
@Accessors(chain = true)
public class StructuralPackageOrderImportDTO {
private String packageOrderNo;
/**
* 钢构包料号
*/
private String materialNo;
private String packageNo;
/**
* 钢构包描述
*/
private String packageDesc;
/**
* 钢构包id
@ -55,6 +62,12 @@ public class StructuralPackageOrderImportDTO {
*/
private String workbenchNo;
private String workbenchCode;
public String getWorkbenchCode() {
return modelNo + workbenchNo;
}
/**
* 期望交期
*/
@ -75,6 +88,11 @@ public class StructuralPackageOrderImportDTO {
*/
private BigDecimal num;
/**
* 总重
*/
private BigDecimal weight;
/**
* 未收货数量
*/