委托加工更新提交erp优化

This commit is contained in:
潘荣晟
2026-02-12 15:37:06 +08:00
parent 9c3e7b0651
commit 2dfb9b4c10
6 changed files with 26 additions and 7 deletions

View File

@@ -25,4 +25,5 @@ public interface ErrorCodeConstants {
ErrorCode PURCHASE_ORDER_ID_IS_NULL = new ErrorCode(1_008_000_070, "订单ID不能为空"); ErrorCode PURCHASE_ORDER_ID_IS_NULL = new ErrorCode(1_008_000_070, "订单ID不能为空");
ErrorCode PURCHASE_ORDER_ID_IS_EMPTY = new ErrorCode(1_008_000_080, "业务订单类型非法请参考字典SPLY_BSN_TP"); ErrorCode PURCHASE_ORDER_ID_IS_EMPTY = new ErrorCode(1_008_000_080, "业务订单类型非法请参考字典SPLY_BSN_TP");
ErrorCode PURCHASE_ORDER_NOT_ALLOW_BIND = new ErrorCode(1_008_000_090, "来料销售加工订单不允许绑定订单"); ErrorCode PURCHASE_ORDER_NOT_ALLOW_BIND = new ErrorCode(1_008_000_090, "来料销售加工订单不允许绑定订单");
ErrorCode ORDER_ALREADY_SUBMIT = new ErrorCode(1_008_000_100, "不允许重复提交erp");
} }

View File

@@ -162,12 +162,12 @@ public class OriginalMaterialProcessingController {
originalMaterialProcessingService.closeOrder(ids); originalMaterialProcessingService.closeOrder(ids);
return success(true); return success(true);
} }
//来料采购提交erp061 //来料采购提交erp
@PostMapping("/submit-to-erp061") @PostMapping("/submit-to-erp")
@Operation(summary = "来料采购提交erp061") @Operation(summary = "来料采购提交erp")
@PreAuthorize("@ss.hasAnyPermissions('base:original-material-processing-order:update')") @PreAuthorize("@ss.hasAnyPermissions('base:original-material-processing-order:update')")
public CommonResult<Boolean> submitToErp061(@RequestParam("id") Long id) { public CommonResult<Boolean> submitToErp061(@RequestParam("id") Long id) {
originalMaterialProcessingService.submitToErp061(id); originalMaterialProcessingService.submitToErp(id);
return success(true); return success(true);
} }
} }

View File

@@ -48,8 +48,7 @@ import static com.zt.plat.module.contractorder.enums.ErpConstants.CONSTANTS_L;
import static com.zt.plat.module.contractorder.enums.ErrorCodeConstants.CONTRACT_ORDER_EXISTS; import static com.zt.plat.module.contractorder.enums.ErrorCodeConstants.CONTRACT_ORDER_EXISTS;
import static com.zt.plat.module.contractorder.enums.entrustorder.ErrorCodeConstants.ENTRUST_ORDER_DETAIL_NOT_EXISTS; import static com.zt.plat.module.contractorder.enums.entrustorder.ErrorCodeConstants.ENTRUST_ORDER_DETAIL_NOT_EXISTS;
import static com.zt.plat.module.contractorder.enums.entrustorder.ErrorCodeConstants.ENTRUST_ORDER_NOT_EXISTS; import static com.zt.plat.module.contractorder.enums.entrustorder.ErrorCodeConstants.ENTRUST_ORDER_NOT_EXISTS;
import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeConstants.MTRL_CODE_NOT_EXISTS; import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeConstants.*;
import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeConstants.PURCHASE_ORDER_NOT_EXISTS;
/** /**
@@ -271,6 +270,9 @@ public class EntrustOrderOrderServiceImplImpl implements EntrustOrderOrderServic
if (entrustOrderOrderDO == null) { if (entrustOrderOrderDO == null) {
throw exception(ENTRUST_ORDER_NOT_EXISTS); throw exception(ENTRUST_ORDER_NOT_EXISTS);
} }
if (entrustOrderOrderDO.getOrderSAPNumber() != null && !entrustOrderOrderDO.getOrderSAPNumber().isEmpty()){
throw exception(ORDER_ALREADY_SUBMIT);
}
log.info("提交订单到ERP【{}】,订单信息:【{}】", id, entrustOrderOrderDO); log.info("提交订单到ERP【{}】,订单信息:【{}】", id, entrustOrderOrderDO);
List<EntrustOrderDetailRespVO> entrustOrderDetailListByOrderId = entrustOrderDetailService.getEntrustOrderDetailListByOrderId(id); List<EntrustOrderDetailRespVO> entrustOrderDetailListByOrderId = entrustOrderDetailService.getEntrustOrderDetailListByOrderId(id);
if (entrustOrderDetailListByOrderId == null || entrustOrderDetailListByOrderId.isEmpty()) { if (entrustOrderDetailListByOrderId == null || entrustOrderDetailListByOrderId.isEmpty()) {

View File

@@ -52,6 +52,7 @@ import static com.zt.plat.module.contractorder.enums.ErrorCodeConstants.CONTRACT
import static com.zt.plat.module.contractorder.enums.entrustorder.ErrorCodeConstants.ENTRUST_ORDER_NOT_EXISTS; import static com.zt.plat.module.contractorder.enums.entrustorder.ErrorCodeConstants.ENTRUST_ORDER_NOT_EXISTS;
import static com.zt.plat.module.contractorder.enums.originalmaterialprocessing.ErrorCodeConstants.*; import static com.zt.plat.module.contractorder.enums.originalmaterialprocessing.ErrorCodeConstants.*;
import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeConstants.MTRL_CODE_NOT_EXISTS; import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeConstants.MTRL_CODE_NOT_EXISTS;
import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeConstants.ORDER_ALREADY_SUBMIT;
/** /**
@@ -410,6 +411,7 @@ public class OriginalMaterialProcessingServiceImplImpl implements OriginalMateri
erpOrderSaveReqVO.setItems(items); erpOrderSaveReqVO.setItems(items);
erpOrderSaveReqVO.setItex(itexes); erpOrderSaveReqVO.setItex(itexes);
} }
public void submitToErp091(Long id) { public void submitToErp091(Long id) {
//获取订单并且判断 //获取订单并且判断
OriginalMaterialProcessingDO originalMaterialProcessingDO OriginalMaterialProcessingDO originalMaterialProcessingDO
@@ -428,6 +430,7 @@ public class OriginalMaterialProcessingServiceImplImpl implements OriginalMateri
String result = erpOrderService.submitOrderToErp091(erpSalesOrderSaveReqVO); String result = erpOrderService.submitOrderToErp091(erpSalesOrderSaveReqVO);
log.info("提交订单结果:{}", result); log.info("提交订单结果:{}", result);
} }
private void build091ReqData(OriginalMaterialProcessingDO salesOrder, List<OriginalMaterialProcessingDetailDO> originalMaterialProcessingDetailDOS, ErpSalesOrderSaveReqVO erpSalesOrderSaveReqVO) { private void build091ReqData(OriginalMaterialProcessingDO salesOrder, List<OriginalMaterialProcessingDetailDO> originalMaterialProcessingDetailDOS, ErpSalesOrderSaveReqVO erpSalesOrderSaveReqVO) {
erpSalesOrderSaveReqVO.setOrderNo(salesOrder.getSystemOrderNumber()); erpSalesOrderSaveReqVO.setOrderNo(salesOrder.getSystemOrderNumber());
erpSalesOrderSaveReqVO.setPartn_es(salesOrder.getPayerNum()); // 供应商编码 erpSalesOrderSaveReqVO.setPartn_es(salesOrder.getPayerNum()); // 供应商编码
@@ -475,14 +478,21 @@ public class OriginalMaterialProcessingServiceImplImpl implements OriginalMateri
//获取订单并且判断 //获取订单并且判断
OriginalMaterialProcessingDO originalMaterialProcessingDO OriginalMaterialProcessingDO originalMaterialProcessingDO
= originalMaterialProcessingMapper.selectById(id); = originalMaterialProcessingMapper.selectById(id);
if (originalMaterialProcessingDO == null) { if (originalMaterialProcessingDO == null) {
throw exception(ORIGINAL_MATERIAL_PROCESSING_DO_NOT_EXISTS); throw exception(ORIGINAL_MATERIAL_PROCESSING_DO_NOT_EXISTS);
} }
if (!originalMaterialProcessingDO.getOrderSAPNumber().isEmpty()) {
throw exception(ORDER_ALREADY_SUBMIT);
}
if (OrderTypeEnum.ENTED_PUR.getCode().equals(originalMaterialProcessingDO.getSplyBsnTp())) { if (OrderTypeEnum.ENTED_PUR.getCode().equals(originalMaterialProcessingDO.getSplyBsnTp())) {
submitToErp061(id); submitToErp061(id);
} else if (OrderTypeEnum.ENTED_SALE.getCode().equals(originalMaterialProcessingDO.getSplyBsnTp())) { } else if (OrderTypeEnum.ENTED_SALE.getCode().equals(originalMaterialProcessingDO.getSplyBsnTp())) {
//销售 //销售
submitToErp091(id); submitToErp091(id);
} else { } else {
throw exception(ORIGINAL_MATERIAL_PROCESSING_NOT_ALLOW_CALL_ERP, originalMaterialProcessingDO.getSplyBsnTp()); throw exception(ORIGINAL_MATERIAL_PROCESSING_NOT_ALLOW_CALL_ERP, originalMaterialProcessingDO.getSplyBsnTp());
} }

View File

@@ -247,6 +247,9 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
if (ObjectUtils.isEmpty(purchaseOrderDO)) { if (ObjectUtils.isEmpty(purchaseOrderDO)) {
throw exception(ORDER_ID_NOT_EXISTS); throw exception(ORDER_ID_NOT_EXISTS);
} }
if (purchaseOrderDO.getOrderSAPNumber() != null){
throw exception(ORDER_ALREADY_SUBMIT);
}
if (purchaseOrderDO.getIsPush() == 0) { if (purchaseOrderDO.getIsPush() == 0) {
throw exception(ORDER_DONT_SUBMIT); throw exception(ORDER_DONT_SUBMIT);
} }

View File

@@ -382,6 +382,9 @@ public class SalesOrderServiceImpl implements SalesOrderService {
if (ObjectUtils.isEmpty(salesOrderDO)) { if (ObjectUtils.isEmpty(salesOrderDO)) {
throw exception(ORDER_ID_NOT_EXISTS); throw exception(ORDER_ID_NOT_EXISTS);
} }
if (salesOrderDO.getOrderSAPNumber() != null && !salesOrderDO.getOrderSAPNumber().isEmpty()) {
throw exception(ORDER_ALREADY_SUBMIT);
}
if (salesOrderDO.getIsPush() == 0) { if (salesOrderDO.getIsPush() == 0) {
throw exception(ORDER_DONT_SUBMIT); throw exception(ORDER_DONT_SUBMIT);
} }