diff --git a/ruoyi-admin/src/main/java/com/ruoyi/sales/domain/SalesShippingInformation.java b/ruoyi-admin/src/main/java/com/ruoyi/sales/domain/SalesShippingInformation.java index 707a3686..b0260a32 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/sales/domain/SalesShippingInformation.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/sales/domain/SalesShippingInformation.java @@ -27,6 +27,11 @@ public class SalesShippingInformation extends BaseEntity @Excel(name = "出货资料单号") private String shippingInformationCode; + + /** 关联单号 */ + @Excel(name = "关联单号") + private String correlationCode; + /** 关联销售订单号 */ @Excel(name = "关联销售订单号") private String salesOrderCode; @@ -76,28 +81,28 @@ public class SalesShippingInformation extends BaseEntity @Excel(name = "单据日期(手动填写)") private String orderDate; - /** 收货联系人(Ship to) */ - @Excel(name = "收货联系人(Ship to)") + /** 收货联系人(Ship To) */ + @Excel(name = "收货联系人(Ship To)") private String customerContact; - /** 联系电话(Ship to) */ - @Excel(name = "联系电话(Ship to)") + /** 联系电话(Ship To) */ + @Excel(name = "联系电话(Ship To)") private String contactNumber; - /** 收货地址(Ship to) */ - @Excel(name = "收货地址(Ship to)") + /** 收货地址(Ship To) */ + @Excel(name = "收货地址(Ship To)") private String customerContactAddress; - /** 收货联系人(Bill to) */ - @Excel(name = "收货联系人(Bill to)") + /** 收货联系人(Bill To) */ + @Excel(name = "收货联系人(Bill To)") private String customerContactBillto; - /** 联系电话(Bill to) */ - @Excel(name = "联系电话(Bill to)") + /** 联系电话(Bill To) */ + @Excel(name = "联系电话(Bill To)") private String contactNumberBillto; - /** 收货地址(Bill to) */ - @Excel(name = "收货地址(Bill to)") + /** 收货地址(Bill To) */ + @Excel(name = "收货地址(Bill To)") private String contactAddressBillto; /** 不含税总价(RMB) */ @@ -140,7 +145,16 @@ public class SalesShippingInformation extends BaseEntity { return shippingInformationCode; } - public void setSalesOrderCode(String salesOrderCode) + + public String getCorrelationCode() { + return correlationCode; + } + + public void setCorrelationCode(String correlationCode) { + this.correlationCode = correlationCode; + } + + public void setSalesOrderCode(String salesOrderCode) { this.salesOrderCode = salesOrderCode; } @@ -361,6 +375,7 @@ public class SalesShippingInformation extends BaseEntity return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("shippingInformationId", getShippingInformationId()) .append("shippingInformationCode", getShippingInformationCode()) + .append("correlationCode",getCorrelationCode()) .append("salesOrderCode", getSalesOrderCode()) .append("makeNo", getMakeNo()) .append("invoiceCode", getInvoiceCode()) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrder.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrder.java index 5b85645c..574dc64e 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrder.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesOrder.java @@ -214,11 +214,11 @@ public class SysSalesOrder extends BaseEntity { - /*交货地点(Bill to)*/ + /*交货地点(Bill To)*/ private String deliveryAddressBillto; - /*客户收货人(Bill to)*/ + /*客户收货人(Bill To)*/ private String customerDeliveryBillto; - /*客户收货人电话(Bill to)*/ + /*客户收货人电话(Bill To)*/ private String deliveryPhoneBillto; public String getBusinessMembersName() { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java index e464d730..a702cb6a 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java @@ -135,4 +135,5 @@ public interface SysMakeOrderMapper * 根据销售单号集合查询生产订单集合 * */ List selectMakeOrderListBySalesOrderCodes(List salesOrderCode); + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java index 1f9a7712..7ddf0579 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java @@ -25,7 +25,10 @@ import com.ruoyi.common.utils.NumberChineseFormatterUtils; import com.ruoyi.common.utils.ShiroUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.file.FileDownloadUtils; +import com.ruoyi.sales.domain.SalesShippingInformation; import com.ruoyi.sales.domain.SalesShippingInformationDetail; +import com.ruoyi.sales.mapper.SalesShippingInformationDetailMapper; +import com.ruoyi.sales.mapper.SalesShippingInformationMapper; import com.ruoyi.system.domain.*; import com.ruoyi.system.domain.Vo.ConfirmReceivingDetailVo; import com.ruoyi.system.domain.Vo.ExportSalesShippingInformDetailVo; @@ -94,6 +97,17 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor @Autowired private ISysRemindService remindService; + + @Autowired + private SysSalesOrderChildMapper sysSalesOrderChildMapper; + + @Autowired + private SalesShippingInformationMapper salesShippingInformationMapper; + + @Autowired + private SalesShippingInformationDetailMapper salesShippingInformationDetailMapper; + + /** * 查询销售出货通知 * @@ -420,6 +434,10 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor // throw new BusinessException("更新销售订单数据失败"); // } + //生成送货单信息 + buildSalesShippingInformationShipping(sysSalesShippingInform); + + int updateWarehouseOutOrderResult = warehouseOutOrderMapper.updateWarehouseOutOrder(warehouseOutOrder); if (updateWarehouseOutOrderResult <= 0){ throw new BusinessException("更新出库单数据失败"); @@ -427,6 +445,71 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor return sysSalesShippingInformMapper.updateSysSalesShippingInformByOutOrderCode(sysSalesShippingInform); } + //生成送货单信息 + private void buildSalesShippingInformationShipping(SysSalesShippingInform sysSalesShippingInform) { + SalesShippingInformation salesShippingInformation = new SalesShippingInformation(); + Long shippingInformId = sysSalesShippingInform.getShippingInformId(); + + SysSalesShippingInform oldSysSalesShippingInform = sysSalesShippingInformMapper.selectSysSalesShippingInformById(shippingInformId); + String loginName = ShiroUtils.getLoginName(); + String salesOrderCode = oldSysSalesShippingInform.getSalesOrderCode(); + List salesOrderCodes = new ArrayList<>(); + if (StringUtils.isNotEmpty(salesOrderCode)){ + String[] splitSalesOrderCode = salesOrderCode.split(","); + salesOrderCodes = Arrays.asList(splitSalesOrderCode); + } + List sysSalesOrders = sysSalesOrderMapper.selectSysSalesOrderListByCodeList(salesOrderCodes); + + + List sysMakeOrders = sysMakeOrderMapper.selectMakeOrderListBySalesOrderCodes(salesOrderCodes); + + String makeNosString = sysMakeOrders.stream().map(SysMakeOrder::getMakeNo).collect(Collectors.joining(",")); + + + String shippingInformationCode = redisCache.generateBillNo("CHZL"); + String shippingCode = redisCache.generateBillNo("SHD"); + + List sysSalesOrderChildren = sysSalesOrderChildMapper.selectBatchOrderChildListBySalesOrderCode(salesOrderCodes); + + List salesShippingInformationDetails = new ArrayList<>(); + + if (!CollectionUtils.isEmpty(sysSalesOrderChildren)){ + + for (SysSalesOrderChild sysSalesOrderChild : sysSalesOrderChildren) { + SalesShippingInformationDetail salesShippingInformationDetail = new SalesShippingInformationDetail(); + salesShippingInformationDetail.setShippingInformationCode(shippingInformationCode); + salesShippingInformationDetail.setMaterialNo(sysSalesOrderChild.getMaterialCode()); + salesShippingInformationDetail.setMaterialName(sysSalesOrderChild.getMaterialName()); + salesShippingInformationDetail.setMaterialDescribe(sysSalesOrderChild.getDescribe()); + salesShippingInformationDetail.setMaterialModel(sysSalesOrderChild.getMaterialModel()); + salesShippingInformationDetail.setMaterialNum(sysSalesOrderChild.getMaterialNum()); + salesShippingInformationDetail.setMaterialUnit(sysSalesOrderChild.getUnit()); + salesShippingInformationDetails.add(salesShippingInformationDetail); + } + int insertDetailResult = salesShippingInformationDetailMapper.insertBatchSalesShippingInformationDetail(salesShippingInformationDetails); + if (insertDetailResult <= 0){ + throw new BusinessException("新增销售出货单明细失败!"); + } + } + salesShippingInformation.setShippingInformationCode(shippingInformationCode); + salesShippingInformation.setShippingCode(shippingCode); + salesShippingInformation.setMakeNo(makeNosString); + salesShippingInformation.setBusinessMembers(loginName); + salesShippingInformation.setShippingInformationType("2");//出货单 + salesShippingInformation.setShippingDate(new Date()); + salesShippingInformation.setCustomerContactBillto(sysSalesShippingInform.getCustomerContactBillto()); + salesShippingInformation.setCustomerContactAddress(sysSalesShippingInform.getCustomerContactAddress()); + salesShippingInformation.setCustomerContact(sysSalesShippingInform.getCustomerContact()); + salesShippingInformation.setContactAddressBillto(sysSalesShippingInform.getContactAddressBillto()); + salesShippingInformation.setCustomerId(sysSalesShippingInform.getCustomerId()); + salesShippingInformation.setCustomerName(sysSalesShippingInform.getCustomerName()); + salesShippingInformation.setSalesOrderNumber(sysSalesShippingInform.getSalesOrderNumber()); + salesShippingInformation.setCorrelationCode(sysSalesShippingInform.getOutOrderCode()); + salesShippingInformation.setCreateTime(new Date()); + salesShippingInformation.setCreateBy(loginName); + salesShippingInformationMapper.insertSalesShippingInformation(salesShippingInformation); + } + /** * 修改保存取消发货 */ @@ -438,7 +521,7 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor String outOrderCode = sysSalesShippingInform.getOutOrderCode(); List sysSalesShippingInformDetails = shippingInformDetailMapper.selectSysSalesShippingInformDetailByCode(outOrderCode); - + SysSalesShippingInform oldSysSalesShippingInform = sysSalesShippingInformMapper.selectSysSalesShippingInformByCode(outOrderCode); for (SysSalesShippingInformDetail sysSalesShippingInformDetail : sysSalesShippingInformDetails) { String materialNo = sysSalesShippingInformDetail.getMaterialNo(); Integer thisShippingNum = sysSalesShippingInformDetail.getThisShippingNum(); @@ -512,6 +595,30 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor if (updateAftersalesOutOrderResult <= 0){ throw new BusinessException("更新售后出库单数据失败"); } + + //去掉销售订单子表的申请出货数数据 + String salesOrderCode = oldSysSalesShippingInform.getSalesOrderCode(); + List salesOrderCodes = new ArrayList<>(); + if (StringUtils.isNotEmpty(salesOrderCode)){ + String[] splitSalesOrderCode = salesOrderCode.split(","); + salesOrderCodes = Arrays.asList(splitSalesOrderCode); + } + List sysSalesOrderChildren = sysSalesOrderChildMapper.selectBatchOrderChildListBySalesOrderCode(salesOrderCodes); + sysSalesOrderChildren.forEach(item->{ + item.setApplyShippingNum(0); + item.setHasApplyShippingNum(0); + item.setUpdateTime(new Date()); + item.setUpdateBy(loginName); + }); + + for (SysSalesOrderChild sysSalesOrderChild : sysSalesOrderChildren) { + int updateSysSalesOrderChildResult = sysSalesOrderChildMapper.updateSysSalesOrderChild(sysSalesOrderChild); + if (updateSysSalesOrderChildResult <= 0){ + throw new BusinessException("更新销售订单子表数据失败"); + } + + } + //取消销售出货通知单 sysSalesShippingInform.setOutOrderCode(outOrderCode); sysSalesShippingInform.setWarehouseOutStatus("8"); diff --git a/ruoyi-admin/src/main/resources/mapper/sales/SalesShippingInformationMapper.xml b/ruoyi-admin/src/main/resources/mapper/sales/SalesShippingInformationMapper.xml index ad8f2017..fd75df4d 100644 --- a/ruoyi-admin/src/main/resources/mapper/sales/SalesShippingInformationMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/sales/SalesShippingInformationMapper.xml @@ -7,6 +7,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -37,7 +38,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select shipping_information_id, shipping_information_code, sales_order_code, make_no, invoice_code, shipping_code, packing_code, shipping_information_type, business_members, customer_id, customer_name, sales_order_number, shipping_date, order_date, customer_contact, contact_number, customer_contact_address, customer_contact_billto, contact_number_billto, contact_address_billto, all_no_tax_rmb, all_no_tax_dollar, origin_country, trade_terms, remarks, create_time, create_by, update_by, update_time from sales_shipping_information + select shipping_information_id, shipping_information_code, correlation_code,sales_order_code, make_no, invoice_code, shipping_code, packing_code, shipping_information_type, business_members, customer_id, customer_name, sales_order_number, shipping_date, order_date, customer_contact, contact_number, customer_contact_address, customer_contact_billto, contact_number_billto, contact_address_billto, all_no_tax_rmb, all_no_tax_dollar, origin_country, trade_terms, remarks, create_time, create_by, update_by, update_time from sales_shipping_information -
- +
+
- +
-
- +
+
- +
-
- +
+
- +
-
- +
+
- +
- +
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/edit.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/edit.html index f4445556..99ef39bd 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/edit.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/edit.html @@ -57,25 +57,25 @@
- +
- +
- +
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/invoiceDetail.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/invoiceDetail.html index 670fdc4d..615db3e3 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/invoiceDetail.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationInvoice/invoiceDetail.html @@ -57,25 +57,25 @@
- +
- +
- +
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/add.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/add.html index b2906392..164e1d06 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/add.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/add.html @@ -41,28 +41,28 @@
-
- +
+
- +
-
- +
+
- +
-
- +
+
- +
-
- +
+
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/packingDetail.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/packingDetail.html index df2af58a..432b5cb7 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/packingDetail.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/packingDetail.html @@ -57,25 +57,25 @@
- +
- +
- +
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/supplementDocument.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/supplementDocument.html index 735b83f8..4335c042 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/supplementDocument.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationPacking/supplementDocument.html @@ -58,25 +58,25 @@
- +
- +
- +
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/add.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/add.html index 2ee783ae..506caf41 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/add.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/add.html @@ -30,39 +30,27 @@
- +
- +
- +
- +
- +
- +
- +
- -
-
-
- -
- -
-
-
- -
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/shippingDetail.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/shippingDetail.html index e7113cdc..9ee88bd1 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/shippingDetail.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/shippingDetail.html @@ -60,25 +60,25 @@
- +
- +
- +
- +
diff --git a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/supplementDocument.html b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/supplementDocument.html index 02c51321..ace087b4 100644 --- a/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/supplementDocument.html +++ b/ruoyi-admin/src/main/resources/templates/sales/salesShippingInformationShipping/supplementDocument.html @@ -61,42 +61,29 @@
- +
- +
- +
- +
-
- -
- -
-
-
- -
- -
-
-
diff --git a/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/confirmShipping.html b/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/confirmShipping.html index 47233d79..35d9cff7 100644 --- a/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/confirmShipping.html +++ b/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/confirmShipping.html @@ -6,15 +6,55 @@
-
- + +
- +
-
- - -
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+ +
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
@@ -39,11 +79,6 @@ $.operate.save(prefix + "/confirmShipping", $('#form-confirmShipping-add').serialize()); } } - $("input[name='deliverTime']").datetimepicker({ - format: "yyyy-mm-dd", - minView: "month", - autoclose: true - }); \ No newline at end of file