diff --git a/hangtag-module-oms/hangtag-module-oms-api/src/main/java/cn/hangtag/module/oms/enums/DictTypeConstants.java b/hangtag-module-oms/hangtag-module-oms-api/src/main/java/cn/hangtag/module/oms/enums/DictTypeConstants.java index a3c4b22..00d9b0f 100644 --- a/hangtag-module-oms/hangtag-module-oms-api/src/main/java/cn/hangtag/module/oms/enums/DictTypeConstants.java +++ b/hangtag-module-oms/hangtag-module-oms-api/src/main/java/cn/hangtag/module/oms/enums/DictTypeConstants.java @@ -11,4 +11,8 @@ public interface DictTypeConstants { String BILL_STATUS = "oms_bill_status"; // 单据状态 String ORDER_STATUS = "oms_order_status"; // 订单状态 + + String OMS_CONTRACT_TYPE = "oms_contract_type"; // 合约类型 + + String OMS_CURRENCY_TYPE = "currency_type"; // 结算币种 } diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderRespVO.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderRespVO.java index a96745e..c8a8db7 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderRespVO.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderRespVO.java @@ -40,6 +40,16 @@ public class SaleOrderRespVO { @DictFormat(DictTypeConstants.ORDER_STATUS) private Integer orderStatus; + @Schema(description = "合约类型", example = "2") + @ExcelProperty(value = "合约类型", converter = DictConvert.class) + @DictFormat(DictTypeConstants.OMS_CONTRACT_TYPE) + private String contractType; + + @Schema(description = "结算币种", example = "2") + @ExcelProperty(value = "结算币种", converter = DictConvert.class) + @DictFormat(DictTypeConstants.OMS_CURRENCY_TYPE) + private String currencyType; + @Schema(description = "业务日期") @ExcelProperty("业务日期") private LocalDateTime bizdate; diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderSaveReqVO.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderSaveReqVO.java index 9e10196..e87d3e0 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderSaveReqVO.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/saleorder/vo/SaleOrderSaveReqVO.java @@ -59,6 +59,12 @@ public class SaleOrderSaveReqVO { @Schema(description = "单据状态", example = "2") private String billStatus; + @Schema(description = "合约类型", example = "2") + private String contractType; + + @Schema(description = "结算币种", example = "2") + private String currencyType; + @Schema(description = "订单状态", example = "2") private Integer orderStatus; diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/convert/saleorder/SaleOrderConvert.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/convert/saleorder/SaleOrderConvert.java index 60c4502..e159f86 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/convert/saleorder/SaleOrderConvert.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/convert/saleorder/SaleOrderConvert.java @@ -23,7 +23,9 @@ public interface SaleOrderConvert { @Mapping(source = "invoiceCode", target = "invoiceCode"), @Mapping(source = "invoiceName", target = "invoiceName"), @Mapping(source = "address", target = "address"), - @Mapping(source = "emails", target = "emails") + @Mapping(source = "emails", target = "emails"), + @Mapping(source = "contractType", target = "contractType"), + @Mapping(source = "currencyType", target = "currencyType") }) SaleOrderRespVO convert(SaleOrderDO bean); diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/dal/dataobject/saleorder/SaleOrderDO.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/dal/dataobject/saleorder/SaleOrderDO.java index 89a2ef6..3935385 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/dal/dataobject/saleorder/SaleOrderDO.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/dal/dataobject/saleorder/SaleOrderDO.java @@ -164,6 +164,16 @@ public class SaleOrderDO extends BaseDO { */ private String orderFollowerUser; + /** + * 合约类型 + */ + private String contractType; + + /** + * 结算币种 + */ + private String currencyType; + public SaleOrderDO(CreateSaleOrderDTO dto) { BeanUtil.copyProperties(dto, this,"bizdate","plansenddate"); } diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java index 0b280d2..dbc881b 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/saleorder/SaleOrderServiceImpl.java @@ -322,8 +322,15 @@ public class SaleOrderServiceImpl implements SaleOrderService { case "audit": //审核 for (SaleOrderDO saleOrder : saleOrders) { if (BillStatusEnum.SUBMIT.getValue().equals(saleOrder.getBillStatus())) { - List entrys = getSaleOrderEntryListByParentId(saleOrder.getId()); + String contractType = saleOrder.getContractType(); + String currencyType = saleOrder.getCurrencyType(); + if(StringUtils.isBlank(contractType)){ + throw new ServiceException(001, "合约类型不允许为空!"); + } + if(StringUtils.isBlank(currencyType)){ + throw new ServiceException(001, "结算币种不允许为空!"); + } if (entrys == null || entrys.isEmpty()) { throw new ServiceException(001, "产品明细为空"); } @@ -439,7 +446,7 @@ public class SaleOrderServiceImpl implements SaleOrderService { ProductInfoDO productInfo = productInfoService.getProductInfo(entry.getMaterialId()); ProduceOrderSaveReqVO saveReqVO = new ProduceOrderSaveReqVO(); saveReqVO.setOrderNo(saleOrder.getBillno()); - saveReqVO.setSaleContractNo(saleOrder.getBillno()); + saveReqVO.setSaleContractNo(saleOrder.getContractCode()); saveReqVO.setCustomerId(customer.getId()); saveReqVO.setCustomerCode(customer.getNumber()); saveReqVO.setProductId(entry.getMaterialId()); @@ -978,6 +985,10 @@ public class SaleOrderServiceImpl implements SaleOrderService { if (FuncUtil.isEmpty(billno)) { billno = getNewContractCode2(); } + String contractType = saleOrder.getContractType(); + if(StringUtils.isNotBlank(contractType)){ + billno = billno.replace("XSHY-",contractType+"-"); + } saveReqVO.setBillno(billno); saveReqVO.setCustomerId(saleOrder.getCustomerId()); saveReqVO.setCustomerName(customer.getName()); diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/resources/templates/pdf_template.html b/hangtag-module-oms/hangtag-module-oms-biz/src/main/resources/templates/pdf_template.html index 3eee45b..b42aed2 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/resources/templates/pdf_template.html +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/resources/templates/pdf_template.html @@ -120,7 +120,7 @@ 数量 单位订价RMB 折扣% - 金额RMB + 金额 交货日期 @@ -252,7 +252,7 @@ - RMB + RMB XXXXXXXxXX