委托加工和回收率管理优化

This commit is contained in:
潘荣晟
2026-02-04 16:28:24 +08:00
parent 7ba5dc2fc3
commit 4a091f54c3
13 changed files with 499 additions and 56 deletions

View File

@@ -13,4 +13,7 @@ public class ErpConstants {
public static final String WAREHOUSE_MMSITYPE_ENT = "ENT";//委托加工
public static final String WAREHOUSE_MMSITYPE_ENTED = "ENTED";//来料加工
public static final String SALES_DOCUMENT_REQUEST_FLAG_U = "U";//更新
public static final String SALES_DOCUMENT_REQUEST_FLAG_D = "D";//删除
public static final String SALES_DOCUMENT_REQUEST_FLAG_I = "I";//插入
}

View File

@@ -199,4 +199,6 @@ public class SalesOrderSaveReqVO {
@ExcelProperty("订单明细")
private List<SalesOrderDetailSaveReqVO> details;
@Schema(description = "系统订单号", requiredMode = Schema.RequiredMode.REQUIRED)
private String systemOrderNumber;
}

View File

@@ -251,7 +251,7 @@ public class SalesOrderDO extends BusinessBaseDO {
private String mtrlTp;
/**
* 订单分类
* 订单分类(字典SALE_ORD_TP)
*
*/
@TableField("SPLY_BSN_TP")

View File

@@ -1560,7 +1560,9 @@ public class ContractServiceImpl implements ContractService {
// 合同状态校验
if (!(DictEnum.BSE_CTRT_STS_WAIT_PUSH.getCode().equals(contractMainDO.getStatus())
|| DictEnum.BSE_CTRT_STS_VOID.getCode().equals(contractMainDO.getStatus())
|| DictEnum.BSE_CTRT_STS_TERMINATED.getCode().equals(contractMainDO.getStatus()))) {
|| DictEnum.BSE_CTRT_STS_TERMINATED.getCode().equals(contractMainDO.getStatus())
|| DictEnum.BSE_CTRT_STS_PUSH_ERROR.getCode().equals(contractMainDO.getStatus())
)) {
throw exception(CONTRACT_STATUS_NOT_SUBMIT_ERP,
DictEnum.getByCodeAndType(contractMainDO.getStatus(), DictTypeConstants.BSE_CTRT_STS).getLabel());

View File

@@ -154,6 +154,7 @@ public class PrchOrdDtlServiceImpl implements PrchOrdDtlService {
@Override
public List<PrchOrdDtlRespVO> batchCreatePrchOrdDtl(List<PrchOrdDtlSaveReqVO> createReqVOS) {
List<PrchOrdDtlDO> prchOrdDtlDOS = BeanUtils.toBean(createReqVOS, PrchOrdDtlDO.class);
prchOrdDtlDOS.forEach(this::setElemInfo);
prchOrdDtlMapper.insertBatch(prchOrdDtlDOS);
log.info("批量创建采购订单明细成功,工插入【{}】条数据", prchOrdDtlDOS.size());
return BeanUtils.toBean(prchOrdDtlDOS, PrchOrdDtlRespVO.class);
@@ -167,6 +168,7 @@ public class PrchOrdDtlServiceImpl implements PrchOrdDtlService {
if (p.getLineNum() == null) {
exitsLineNumber(p);
}
setElemInfo(p);
});
prchOrdDtlMapper.insertOrUpdate(prchOrdDtlDOS);
log.info("批量更新采购订单明细成功,更新【{}】条数据", prchOrdDtlDOS.size());
@@ -207,8 +209,9 @@ public class PrchOrdDtlServiceImpl implements PrchOrdDtlService {
throw exception(PURCHASE_ORDER_DETAIL_NOT_EXISTS);
}
PurchaseOrderDO purchaseOrderDO = SpringUtils.getBean(PurchaseOrderMapper.class).selectById(purchaseOrderDetailsDOS.get(0).getOrdId());
if (purchaseOrderDO == null) {
throw exception(PURCHASE_ORDER_NOT_EXISTS);
if (purchaseOrderDO.getOrderSAPNumber()==null){
log.info("该订单尚未提交erpID{}", purchaseOrderDetailsDOS.get(0).getOrdId());
return;
}
ErpOrderUpdateReqVO erpOrderUpdateReqVO = new ErpOrderUpdateReqVO();

View File

@@ -128,4 +128,11 @@ public interface SalesOrderService {
*
*/
SalesOrderDO getSalesOrderByOrderNo(String orderNo);
/**
* 提交erp092
*
* @param orderId 销售订单更新请求erp
*
*/
// void submitErpUpdate092(String orderId);
}

View File

@@ -128,7 +128,7 @@ public class ErpSalesOrderSaveReqVO {
private BigDecimal target_qty; // 销售数量 QUAN13,3
@Schema(description = "税分类(默认从客户和物料基础数据带出,创建物料销售视图时默认值为1-13%)")
private String tax_class1 = "1"; // 税分类 CHAR1
private String tax_class1; // 税分类 CHAR1
@Schema(description = "项目类别")
private String item_categ; // 项目类别 CHAR4

Some files were not shown because too many files have changed in this diff Show More