新增库位绑定Feign接口与合并采购销售订单

This commit is contained in:
潘荣晟
2026-01-30 14:17:55 +08:00
parent 37714cafb9
commit 99f82629da
4 changed files with 15 additions and 10 deletions

View File

@@ -4,8 +4,13 @@ package com.zt.plat.module.contractorder.enums;
* ERP相关常量类 * ERP相关常量类
*/ */
public class ErpConstants { public class ErpConstants {
public static final String PO_WAREHOUSE_TYPE = "into"; public static final String WAREHOUSE_TYPE_MOVE = "MOVE";//移库
public static final String PO_WAREHOUSE_MMSITYPE = "PUR"; public static final String WAREHOUSE_TYPE_RECEIVING = "RECEIVING";// 入库
public static final String SALE_WAREHOUSE_TYPE = "out"; public static final String WAREHOUSE_TYPE_SHIPPING = "SHIPPING";// 出库
public static final String SALE_WAREHOUSE_MMSITYPE = "SALE";
public static final String WAREHOUSE_MMSITYPE_PUR = "PUR";//采购
public static final String WAREHOUSE_MMSITYPE_SALE = "SALE"; //销售
public static final String WAREHOUSE_MMSITYPE_ENT = "ENT";//委托加工
public static final String WAREHOUSE_MMSITYPE_ENTED = "ENTED";//来料加工
} }

View File

@@ -203,7 +203,7 @@ public class OrderApiImpl implements OrderApi {
} }
PrchOrdDtlMapper prchOrdDtlMapper = SpringUtil.getBean(PrchOrdDtlMapper.class); PrchOrdDtlMapper prchOrdDtlMapper = SpringUtil.getBean(PrchOrdDtlMapper.class);
List<Long> orderIds = orderDTOS.stream().map(OrderDTO::getId).toList(); List<Long> orderIds = orderDTOS.stream().map(OrderDTO::getId).toList();
List<PrchOrdDtlDO> prchOrdDtlDOS = prchOrdDtlMapper.selectList(PrchOrdDtlDO::getOrdId, orderIds); List<PrchOrdDtlDO> prchOrdDtlDOS = prchOrdDtlMapper.selectList(PrchOrdDtlDO::getOrdId, orderIds, PrchOrdDtlDO::getIsEnb, 1);
orderDTOS.forEach(o -> { orderDTOS.forEach(o -> {
List<OrdDtlDTO> ordDtlDTOS = new ArrayList<>(); List<OrdDtlDTO> ordDtlDTOS = new ArrayList<>();
prchOrdDtlDOS.forEach(p -> { prchOrdDtlDOS.forEach(p -> {
@@ -226,7 +226,7 @@ public class OrderApiImpl implements OrderApi {
} }
SalesOrderDetailMapper salesOrderDetailMapper = SpringUtil.getBean(SalesOrderDetailMapper.class); SalesOrderDetailMapper salesOrderDetailMapper = SpringUtil.getBean(SalesOrderDetailMapper.class);
List<Long> orderIds = orderDTOS.stream().map(OrderDTO::getId).toList(); List<Long> orderIds = orderDTOS.stream().map(OrderDTO::getId).toList();
List<SalesOrderDetailDO> salesOrderDetailDOS = salesOrderDetailMapper.selectList(SalesOrderDetailDO::getOrderId, orderIds); List<SalesOrderDetailDO> salesOrderDetailDOS = salesOrderDetailMapper.selectList(SalesOrderDetailDO::getOrderId, orderIds, SalesOrderDetailDO::getIsEnable, 1);
orderDTOS.forEach(o -> { orderDTOS.forEach(o -> {
List<OrdDtlDTO> salesOrdDtlDTOS = new ArrayList<>(); List<OrdDtlDTO> salesOrdDtlDTOS = new ArrayList<>();
salesOrderDetailDOS.forEach(s -> { salesOrderDetailDOS.forEach(s -> {

View File

@@ -881,8 +881,8 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
return warehouseFactoryService.getWarehouseFactoryByMainId(String.valueOf(internalWarehouseDO.getId())) return warehouseFactoryService.getWarehouseFactoryByMainId(String.valueOf(internalWarehouseDO.getId()))
.stream() .stream()
// 过滤条件MMSI类型+操作类型匹配ERP常量 // 过滤条件MMSI类型+操作类型匹配ERP常量
.filter(vo -> ErpConstants.PO_WAREHOUSE_MMSITYPE.equals(vo.getMmsiType()) .filter(vo -> ErpConstants.WAREHOUSE_MMSITYPE_PUR.equals(vo.getMmsiType())
&& ErpConstants.PO_WAREHOUSE_TYPE.equals(vo.getOperationType())) && ErpConstants.WAREHOUSE_TYPE_RECEIVING.equals(vo.getOperationType()))
// 取第一个匹配结果(无结果则抛指定异常) // 取第一个匹配结果(无结果则抛指定异常)
.findFirst() .findFirst()
.orElseThrow(() -> exception(WAREHOUSE_CODE_OR_FACTORY_CODE_NOT_EXISTS, .orElseThrow(() -> exception(WAREHOUSE_CODE_OR_FACTORY_CODE_NOT_EXISTS,

View File

@@ -626,8 +626,8 @@ public class SalesOrderServiceImpl implements SalesOrderService {
return warehouseFactoryService.getWarehouseFactoryByMainId(String.valueOf(internalWarehouseDO.getId())) return warehouseFactoryService.getWarehouseFactoryByMainId(String.valueOf(internalWarehouseDO.getId()))
.stream() .stream()
// 过滤条件MMSI类型+操作类型匹配ERP常量 // 过滤条件MMSI类型+操作类型匹配ERP常量
.filter(vo -> ErpConstants.SALE_WAREHOUSE_MMSITYPE.equals(vo.getMmsiType()) .filter(vo -> ErpConstants.WAREHOUSE_MMSITYPE_SALE.equals(vo.getMmsiType())
&& ErpConstants.SALE_WAREHOUSE_TYPE.equals(vo.getOperationType())) && ErpConstants.WAREHOUSE_TYPE_SHIPPING.equals(vo.getOperationType()))
// 取第一个匹配结果(无结果则抛指定异常) // 取第一个匹配结果(无结果则抛指定异常)
.findFirst() .findFirst()
.orElseThrow(() -> exception(WAREHOUSE_CODE_OR_FACTORY_CODE_NOT_EXISTS, .orElseThrow(() -> exception(WAREHOUSE_CODE_OR_FACTORY_CODE_NOT_EXISTS,