feat(wms): 继承BaseEntity并优化BOM默认属性创建逻辑

- WmsMaterialCoilVo类继承BaseEntity以支持基础字段
- 合并产品和原料的厚度、宽度为规格字段
- 调整默认BOM属性创建方法中的字段组合方式
- 清理冗余空行,优化代码结构可读性
This commit is contained in:
2025-10-31 11:30:30 +08:00
parent 70cb16618c
commit 4f0a246f0f
3 changed files with 18 additions and 21 deletions

View File

@@ -211,10 +211,10 @@ public class WmsRawMaterialServiceImpl implements IWmsRawMaterialService {
bomBo.setBomName("原材料BOM" + System.currentTimeMillis());
bomBo.setIsEnabled(1);
bomBo.setRemark("原材料创建时自动生成的BOM");
WmsBomBo savedBom = wmsBomService.insertByBo(bomBo);
Long bomId = savedBom.getBomId();
// 2. 创建原材料并关联BOM
WmsRawMaterial add = BeanUtil.toBean(bo, WmsRawMaterial.class);
add.setBomId(bomId);
@@ -222,37 +222,35 @@ public class WmsRawMaterialServiceImpl implements IWmsRawMaterialService {
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setRawMaterialId(add.getRawMaterialId());
// 3. 创建默认的BOM明细项根据截图的默认属性
createDefaultBomItems(bomId, "原料");
}
return bo;
}
/**
* 创建默认的BOM明细项
*/
private void createDefaultBomItems(Long bomId, String type) {
List<String[]> defaultAttrs;
if ("产品".equals(type)) {
// 产品默认属性(根据截图)
defaultAttrs = Arrays.asList(
new String[]{"厚度", "0.6"},
new String[]{"宽度", "1250"},
new String[]{"规格", "1250 * 0.6"},
new String[]{"材质", "SPCC"},
new String[]{"表面处理", "涂油"}
);
} else {
// 原料默认属性(根据截图)
defaultAttrs = Arrays.asList(
new String[]{"宽度", "1265"},
new String[]{"厚度", "4"},
new String[]{"规格", "1265 * 4"},
new String[]{"材质", "Q195L"},
new String[]{"厂家", "天铁"}
);
}
for (String[] attr : defaultAttrs) {
WmsBomItemBo itemBo = new WmsBomItemBo();
itemBo.setBomId(bomId);