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 31779d3b..f7f350f4 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 @@ -81,8 +81,17 @@ public class SysSalesOrder extends BaseEntity { private String deliveryTime; /*客户收货人*/ private String customerDelivery; + + /*客户收货人(Bill to)*/ + private String customerDeliveryBillto; + + /*客户收货人电话*/ private String deliveryPhone; + + /*客户收货人电话(Bill to)*/ + private String deliveryPhoneBillto; + /* 交货条件*/ @Excel(name = "交货条件") private String deliveryConditions; @@ -92,6 +101,11 @@ public class SysSalesOrder extends BaseEntity { /*交货地点*/ @Excel(name = "交货地点") private String deliveryAddress; + + /*交货地点(Bill to)*/ + private String deliveryAddressBillto; + + /*付款条件*/ @Excel(name = "付款条件") private String paymentTerms; @@ -678,6 +692,31 @@ public class SysSalesOrder extends BaseEntity { this.enterpriseMaterialNo = enterpriseMaterialNo; } + + public String getCustomerDeliveryBillto() { + return customerDeliveryBillto; + } + + public void setCustomerDeliveryBillto(String customerDeliveryBillto) { + this.customerDeliveryBillto = customerDeliveryBillto; + } + + public String getDeliveryPhoneBillto() { + return deliveryPhoneBillto; + } + + public void setDeliveryPhoneBillto(String deliveryPhoneBillto) { + this.deliveryPhoneBillto = deliveryPhoneBillto; + } + + public String getDeliveryAddressBillto() { + return deliveryAddressBillto; + } + + public void setDeliveryAddressBillto(String deliveryAddressBillto) { + this.deliveryAddressBillto = deliveryAddressBillto; + } + @Override public String toString() { return Objects.toStringHelper(this) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java index 4dda8d99..35e8b680 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSalesShippingInform.java @@ -71,17 +71,34 @@ public class SysSalesShippingInform extends BaseEntity private Integer enterpriseSum; /** 收货联系人 */ - @Excel(name = "收货联系人") + @Excel(name = "收货联系人(Ship To)") private String customerContact; /** 联系电话 */ - @Excel(name = "联系电话") + @Excel(name = "收货联系人(Ship To)") private String contactNumber; /** 收货地址 */ - @Excel(name = "收货地址") + @Excel(name = "收货地址(Ship To)") private String customerContactAddress; + + + + /** 收货联系人 */ + @Excel(name = "收货联系人(Bill To)") + private String customerContactBillto; + + /** 联系电话 */ + @Excel(name = "联系电话(Bill To)") + private String contactNumberBillto; + + /** 收货地址 */ + @Excel(name = "收货地址(Bill To)") + private String contactAddressBillto; + + + /** 不含税总价(RMB) */ @Excel(name = "不含税总价", readConverterExp = "R=MB") private BigDecimal allPriceExcludingTaxRmb; @@ -337,6 +354,30 @@ public class SysSalesShippingInform extends BaseEntity this.shippingInformDetailList = shippingInformDetailList; } + public String getCustomerContactBillto() { + return customerContactBillto; + } + + public void setCustomerContactBillto(String customerContactBillto) { + this.customerContactBillto = customerContactBillto; + } + + public String getContactNumberBillto() { + return contactNumberBillto; + } + + public void setContactNumberBillto(String contactNumberBillto) { + this.contactNumberBillto = contactNumberBillto; + } + + public String getContactAddressBillto() { + return contactAddressBillto; + } + + public void setContactAddressBillto(String contactAddressBillto) { + this.contactAddressBillto = contactAddressBillto; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -355,6 +396,9 @@ public class SysSalesShippingInform extends BaseEntity .append("customerContact", getCustomerContact()) .append("contactNumber", getContactNumber()) .append("customerContactAddress", getCustomerContactAddress()) + .append("customerContactBillto", getCustomerContactBillto()) + .append("contactNumberBillto", getContactNumberBillto()) + .append("contactAddressBillto", getContactAddressBillto()) .append("createTime", getCreateTime()) .append("createBy", getCreateBy()) .append("updateBy", getUpdateBy()) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesOrderServiceImpl.java index 47ec5725..628191fc 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesOrderServiceImpl.java @@ -385,7 +385,16 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService sysSalesOrder.setUpdateBy(loginName); sysSalesOrder.setUpdateTime(new Date()); - for (SysSalesOrderChild sysSalesOrderChild : sysSalesOrder.getSysSalesOrderChildList()) { + List sysSalesOrderChildList = sysSalesOrder.getSysSalesOrderChildList(); + + //如果子表中有申请出货数为空的数据,不能提交保存 + boolean applyShippingNumHasNull = sysSalesOrderChildList.stream().anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getApplyShippingNum() == null); + if (applyShippingNumHasNull){ + throw new BusinessException("申请出货数不能为空,请检查"); + } + + + for (SysSalesOrderChild sysSalesOrderChild : sysSalesOrderChildList) { sysSalesOrderChild.setUpdateTime(new Date()); sysSalesOrderChild.setUpdateBy(loginName); 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 302bdbb2..0467d794 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 @@ -207,10 +207,13 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor sysSalesShippingInform.setMaterialSum(Math.toIntExact(sysSalesOrderVo.getMaterialSum())); //更新数量合计 sysSalesShippingInform.setEnterpriseSum(Math.toIntExact(sysSalesOrderVo.getEnterpriseSum())); + sysSalesShippingInform.setCustomerContact(sysSalesOrderVo.getCustomerDelivery()); sysSalesShippingInform.setContactNumber(sysSalesOrderVo.getDeliveryPhone()); sysSalesShippingInform.setCustomerContactAddress(sysSalesOrderVo.getDeliveryAddress()); - + sysSalesShippingInform.setCustomerContactBillto(sysSalesOrder.getCustomerDeliveryBillto()); + sysSalesShippingInform.setContactNumberBillto(sysSalesOrder.getDeliveryPhoneBillto()); + sysSalesShippingInform.setContactAddressBillto(sysSalesOrder.getDeliveryAddressBillto()); //更新销售出库详情数据 diff --git a/ruoyi-admin/src/main/resources/mapper/system/SysSalesShippingInformMapper.xml b/ruoyi-admin/src/main/resources/mapper/system/SysSalesShippingInformMapper.xml index 908a515f..2758e3f7 100644 --- a/ruoyi-admin/src/main/resources/mapper/system/SysSalesShippingInformMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/system/SysSalesShippingInformMapper.xml @@ -20,6 +20,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + @@ -36,7 +39,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select shipping_inform_id, out_order_code, warehouse_out_status, sales_order_code, warehouse_out_type, warehouse_order_type, customer_id, customer_name, business_members, sales_order_number, material_sum, enterprise_sum, customer_contact, contact_number, customer_contact_address, create_time, create_by, update_by, update_time, remark, all_price_excluding_tax_rmb, all_price_excluding_tax_dollar, all_price_includes_tax, planned_delivery_time, acceptance_time, payment_condition, delivery_condition, deliver_time from sys_sales_shipping_inform + select shipping_inform_id, out_order_code, warehouse_out_status, sales_order_code, warehouse_out_type, warehouse_order_type, customer_id, customer_name, business_members, sales_order_number, material_sum, enterprise_sum, customer_contact, contact_number, customer_contact_address, contact_address_billto, customer_contact_billto, contact_number_billto, create_time, create_by, update_by, update_time, remark, all_price_excluding_tax_rmb, all_price_excluding_tax_dollar, all_price_includes_tax, planned_delivery_time, acceptance_time, payment_condition, delivery_condition, deliver_time from sys_sales_shipping_inform +
- +
+ + +
+ +
+ + +
+
+
+ +
+ +
+
+
+ +
+ +
+
+ + +
+ +
@@ -205,6 +233,69 @@ + loadCustomerDeliveryBillto(); + //获取已经选择客户Id相关的生产单号 + function loadCustomerDeliveryBillto() { + const url = ctx + 'system/customer/shippingList'; + const data = { + enterpriseCode: sysSalesOrder.enterpriseCode, + }; + + // 使用 $.ajax 发送请求 + $.ajax({ + type: 'POST', + url: url, + dataType: 'json', + data: data, + success: function(response) { + console.log("response:", response); + + if (response.code === 0 && Array.isArray(response.rows) && response.rows.length > 0) { + const selectElement = $('#customerDeliveryBillto'); + selectElement.empty(); + + // 存储每个客户名称对应的信息 + const customerDataMap = {}; + + // 遍历返回的数据,添加为下拉框的选项并存储数据 + $.each(response.rows, function(index, item) { + const customerName = item.customerName; + customerDataMap[customerName] = item; // 存储数据 + + // 添加选项到下拉框 + selectElement.append($('