From 7314b545eabe8449e4e8ab67758ba77ded56bb7f Mon Sep 17 00:00:00 2001 From: wwb <782276617@qq.com> Date: Sat, 14 Dec 2024 15:39:53 +0800 Subject: [PATCH 01/14] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E5=B8=81=E7=A7=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/oms/enums/DictTypeConstants.java | 4 ++++ .../admin/saleorder/vo/SaleOrderRespVO.java | 10 ++++++++++ .../admin/saleorder/vo/SaleOrderSaveReqVO.java | 6 ++++++ .../oms/convert/saleorder/SaleOrderConvert.java | 4 +++- .../oms/dal/dataobject/saleorder/SaleOrderDO.java | 10 ++++++++++ .../service/saleorder/SaleOrderServiceImpl.java | 15 +++++++++++++-- .../main/resources/templates/pdf_template.html | 4 ++-- 7 files changed, 48 insertions(+), 5 deletions(-) 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 From 359df015f109e6469661071aa6c68487ee77bd77 Mon Sep 17 00:00:00 2001 From: wwb <782276617@qq.com> Date: Sat, 14 Dec 2024 15:47:08 +0800 Subject: [PATCH 02/14] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=90=88=E7=BA=A6?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vo/ProduceOrderSaveReqVO.java | 3 + .../produceorder/ProduceOrderServiceImpl.java | 7 +- .../src/api/oms/saleorder/index.ts | 2 + hangtag-ui/hangtag-ui-admin/src/utils/dict.ts | 1 + .../src/views/oms/saleorder/detail/index.vue | 87 +++++++++++++++---- 5 files changed, 82 insertions(+), 18 deletions(-) diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/produceorder/vo/ProduceOrderSaveReqVO.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/produceorder/vo/ProduceOrderSaveReqVO.java index 4caf9f8..a12d153 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/produceorder/vo/ProduceOrderSaveReqVO.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/controller/admin/produceorder/vo/ProduceOrderSaveReqVO.java @@ -77,6 +77,9 @@ public class ProduceOrderSaveReqVO { @Schema(description = "交货数量") private Long deliveryQty; + @Schema(description = "合约类型") + private String contractType; + @Schema(description = "详情") private String details; diff --git a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/produceorder/ProduceOrderServiceImpl.java b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/produceorder/ProduceOrderServiceImpl.java index ed2a762..ee821b4 100644 --- a/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/produceorder/ProduceOrderServiceImpl.java +++ b/hangtag-module-oms/hangtag-module-oms-biz/src/main/java/cn/hangtag/module/oms/service/produceorder/ProduceOrderServiceImpl.java @@ -17,6 +17,7 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import javax.validation.ConstraintViolationException; @@ -59,7 +60,11 @@ public class ProduceOrderServiceImpl implements ProduceOrderService { if(FuncUtil.isNotEmpty(code)){ checkCode(produceOrder.getId(),code); }else { - produceOrder.setBillno(getNewCode()); + String newCode = getNewCode(); + if(StringUtils.isNotBlank(createReqVO.getContractType())){ + newCode = newCode.replace("XSHY-",createReqVO.getContractType()+"-"); + } + produceOrder.setBillno(newCode); } produceOrderMapper.insert(produceOrder); // 返回 diff --git a/hangtag-ui/hangtag-ui-admin/src/api/oms/saleorder/index.ts b/hangtag-ui/hangtag-ui-admin/src/api/oms/saleorder/index.ts index 1b78401..b4ac220 100644 --- a/hangtag-ui/hangtag-ui-admin/src/api/oms/saleorder/index.ts +++ b/hangtag-ui/hangtag-ui-admin/src/api/oms/saleorder/index.ts @@ -16,6 +16,8 @@ export interface SaleOrderVO { address: string // 地址 currency: string // 货币 invoiceRemarks: string // 发票备注 + contractType: string // 合约类型 + currencyType: string // 结算币种 } // 销售订单 API diff --git a/hangtag-ui/hangtag-ui-admin/src/utils/dict.ts b/hangtag-ui/hangtag-ui-admin/src/utils/dict.ts index 75a228e..f7f0ade 100644 --- a/hangtag-ui/hangtag-ui-admin/src/utils/dict.ts +++ b/hangtag-ui/hangtag-ui-admin/src/utils/dict.ts @@ -221,5 +221,6 @@ export enum DICT_TYPE { OMS_ORDER_STATUS = 'oms_order_status',// 订单状态 OMS_PRODUCT_CARE_ITEM_TYPE = 'oms_product_care_item_type', //产品保养项目类型 1.成分说明 2.洗涤说明 3.使用说明 4.尺码 OMS_PRODUCT_CARE_PROCESS_TYPE = 'oms_product_care_process_type', //产品护理过程类型 1洗涤 2漂白 3烘干 4自然干燥 5熨烫 6专业纺织品护理工艺 + OMS_CONTRACT_TYPE = 'oms_contract_type', //合约类型 } diff --git a/hangtag-ui/hangtag-ui-admin/src/views/oms/saleorder/detail/index.vue b/hangtag-ui/hangtag-ui-admin/src/views/oms/saleorder/detail/index.vue index 8f31bfc..6eced01 100644 --- a/hangtag-ui/hangtag-ui-admin/src/views/oms/saleorder/detail/index.vue +++ b/hangtag-ui/hangtag-ui-admin/src/views/oms/saleorder/detail/index.vue @@ -21,16 +21,46 @@ @click="remark">备注 - {{ formData.billno }} - {{ formatDate(formData.bizdate,'YYYY-MM-DD') }} - {{ formatDate(formData.confirmdate,'YYYY-MM-DD') }} - {{ formatDate(formData.plansenddate,'YYYY-MM-DD') }} + {{ formData.billno }} + + + + + + {{ formatDate(formData.bizdate,'YYYY-MM-DD') }} + {{ formatDate(formData.confirmdate,'YYYY-MM-DD') }} + {{ formatDate(formData.plansenddate,'YYYY-MM-DD') }} {{ formData.phone }} {{ formData.fax }} {{ formData.emails }} {{ formData?.customer?.number }} {{ formData?.customer?.name }} {{ formData?.customer?.company }} + + + + + {{ formData.remark }} @@ -149,19 +179,19 @@ - {{ formData.invoiceCode }} - {{ formData.invoiceName }} - {{ formData.currency }} - {{ formData.invoiceRemarks }} + {{ formData.invoiceCode }} + {{ formData.invoiceName }} + {{ formData.address }} + {{ formData.invoiceRemarks }} - {{ formatDate(formData.createTime) }} - {{ formData.updaterName }} - {{ formatDate(formData.updateTime) }} + {{ formatDate(formData.createTime) }} + {{ formData.updaterName }} + {{ formatDate(formData.updateTime) }} {{ formData.auditorName }} {{ formatDate(formData.auditorTime) }} @@ -172,8 +202,8 @@