refactor(wms): 移除产品BOM相关模块和采购计划功能模块

- 删除产品BOM(Bill of Materials)相关的控制器、服务、实体类及映射文件
- 移除了WmsProductBomController控制器及相关接口实现
- 清理了IWmsProductBomService服务接口与WmsProductBomServiceImpl实现类
- 移除了WmsProductBom实体类及其对应的BO/VO对象- 删除WmsProductBomMapper接口及XML配置文件
- 更新WmsMaterialCoilServiceImpl依赖注入,移除对IWmsProductBomService的引用
- 调整WmsCoilPendingActionMapper.xml路径从wms目录迁移至klp目录下
- 整理采购计划相关模块代码结构,确保模块清晰分离
This commit is contained in:
2025-11-13 13:24:09 +08:00
parent 1bccfe57d8
commit 9c88669751
28 changed files with 65 additions and 1884 deletions

View File

@@ -15,15 +15,9 @@ import com.klp.domain.WmsRawMaterial;
import com.klp.mapper.WmsRawMaterialMapper;
import com.klp.service.IWmsRawMaterialService;
import com.klp.service.IWmsStockService;
import com.klp.service.IWmsPurchasePlanDetailService;
import com.klp.service.IWmsOrderDetailService;
import com.klp.service.IWmsProductBomService;
import com.klp.service.IWmsOrderService;
import com.klp.domain.bo.WmsPurchasePlanDetailBo;
import com.klp.domain.bo.WmsOrderDetailBo;
import com.klp.domain.bo.WmsProductBomBo;
import com.klp.domain.vo.WmsPurchasePlanDetailVo;
import com.klp.domain.vo.WmsProductBomVo;
import com.klp.domain.vo.WmsOrderDetailVo;
import com.klp.domain.vo.WmsOrderVo;
import com.klp.service.IWmsBomService;
@@ -50,10 +44,7 @@ import java.util.Arrays;
public class WmsRawMaterialServiceImpl implements IWmsRawMaterialService {
private final WmsRawMaterialMapper baseMapper;
private final IWmsStockService stockService;
private final IWmsPurchasePlanDetailService purchasePlanDetailService;
private final IWmsOrderDetailService orderDetailService;
private final IWmsProductBomService productBomService;
private final IWmsOrderService orderService;
private final IWmsBomService wmsBomService;
private final IWmsBomItemService wmsBomItemService;
@@ -133,57 +124,57 @@ public class WmsRawMaterialServiceImpl implements IWmsRawMaterialService {
// }
// }
/**
* 获取在途量
*/
private BigDecimal getOnTheWayQuantity(Long rawMaterialId) {
WmsPurchasePlanDetailBo bo = new WmsPurchasePlanDetailBo();
bo.setRawMaterialId(rawMaterialId);
List<WmsPurchasePlanDetailVo> list = purchasePlanDetailService.queryList(bo);
return list.stream()
.filter(item -> item.getStatus() != null && item.getStatus() == 1) // 在途状态
.map(WmsPurchasePlanDetailVo::getQuantity)
.filter(qty -> qty != null)
.reduce(BigDecimal.ZERO, BigDecimal::add);
}
/**
* 获取需求量
*/
private BigDecimal getDemandQuantity(Long rawMaterialId) {
// 先查询包含该原材料的BOM
WmsProductBomBo bomBo = new WmsProductBomBo();
bomBo.setRawMaterialId(rawMaterialId);
List<WmsProductBomVo> bomList = productBomService.queryList(bomBo);
if (bomList.isEmpty()) {
return BigDecimal.ZERO;
}
// 查询这些产品的订单明细
BigDecimal totalDemand = BigDecimal.ZERO;
for (WmsProductBomVo bom : bomList) {
WmsOrderDetailBo orderDetailBo = new WmsOrderDetailBo();
orderDetailBo.setProductId(bom.getProductId());
List<WmsOrderDetailVo> orderDetails = orderDetailService.queryList(orderDetailBo);
// 逐个查询订单状态,过滤出有效订单的明细
BigDecimal productDemand = BigDecimal.ZERO;
for (WmsOrderDetailVo detail : orderDetails) {
// 查询订单主表状态
WmsOrderVo order = orderService.queryById(detail.getOrderId());
if (order != null && order.getOrderStatus() != null && order.getOrderStatus() < 2) {
// 新建、生产中状态,累加数量
if (detail.getQuantity() != null) {
productDemand = productDemand.add(detail.getQuantity());
}
}
}
// 需求量 = 产品需求量 × BOM用量
if (bom.getQuantity() != null) {
totalDemand = totalDemand.add(productDemand.multiply(bom.getQuantity()));
}
}
return totalDemand;
}
// /**
// * 获取在途量
// */
// private BigDecimal getOnTheWayQuantity(Long rawMaterialId) {
// WmsPurchasePlanDetailBo bo = new WmsPurchasePlanDetailBo();
// bo.setRawMaterialId(rawMaterialId);
// List<WmsPurchasePlanDetailVo> list = purchasePlanDetailService.queryList(bo);
// return list.stream()
// .filter(item -> item.getStatus() != null && item.getStatus() == 1) // 在途状态
// .map(WmsPurchasePlanDetailVo::getQuantity)
// .filter(qty -> qty != null)
// .reduce(BigDecimal.ZERO, BigDecimal::add);
// }
//
// /**
// * 获取需求量
// */
// private BigDecimal getDemandQuantity(Long rawMaterialId) {
// // 先查询包含该原材料的BOM
// WmsProductBomBo bomBo = new WmsProductBomBo();
// bomBo.setRawMaterialId(rawMaterialId);
// List<WmsProductBomVo> bomList = productBomService.queryList(bomBo);
// if (bomList.isEmpty()) {
// return BigDecimal.ZERO;
// }
// // 查询这些产品的订单明细
// BigDecimal totalDemand = BigDecimal.ZERO;
// for (WmsProductBomVo bom : bomList) {
// WmsOrderDetailBo orderDetailBo = new WmsOrderDetailBo();
// orderDetailBo.setProductId(bom.getProductId());
// List<WmsOrderDetailVo> orderDetails = orderDetailService.queryList(orderDetailBo);
// // 逐个查询订单状态,过滤出有效订单的明细
// BigDecimal productDemand = BigDecimal.ZERO;
// for (WmsOrderDetailVo detail : orderDetails) {
// // 查询订单主表状态
// WmsOrderVo order = orderService.queryById(detail.getOrderId());
// if (order != null && order.getOrderStatus() != null && order.getOrderStatus() < 2) {
// // 新建、生产中状态,累加数量
// if (detail.getQuantity() != null) {
// productDemand = productDemand.add(detail.getQuantity());
// }
// }
// }
// // 需求量 = 产品需求量 × BOM用量
// if (bom.getQuantity() != null) {
// totalDemand = totalDemand.add(productDemand.multiply(bom.getQuantity()));
// }
// }
//
// return totalDemand;
// }
private LambdaQueryWrapper<WmsRawMaterial> buildQueryWrapper(WmsRawMaterialBo bo) {
Map<String, Object> params = bo.getParams();