From d27ae4c3253c06f27e1e444ada9bf424e9ceaa13 Mon Sep 17 00:00:00 2001
From: liuxiaoxu <1793812695@qq.com>
Date: Thu, 28 Nov 2024 19:46:03 +0800
Subject: [PATCH 1/3] =?UTF-8?q?[fix]=E9=87=87=E8=B4=AD=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=20=E4=BF=AE=E6=94=B9=E9=87=87=E8=B4=AD=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=85=A5=E5=BA=93=E5=8D=95=E5=88=B0=E8=B4=A7?=
=?UTF-8?q?=E6=97=B6=E9=97=B4=E4=B8=BA=E8=BF=99=E9=87=8C=E7=BC=96=E8=BE=91?=
=?UTF-8?q?=20=E4=BF=AE=E5=A4=8D=E5=90=8E=E7=AB=AF=E5=88=9B=E5=BB=BA?=
=?UTF-8?q?=E9=87=87=E8=B4=AD=E5=85=A5=E5=BA=93=E5=8D=95=E7=9A=84=E6=96=B9?=
=?UTF-8?q?=E6=B3=95=EF=BC=8C=E8=A7=A3=E5=86=B3=E5=85=A5=E5=BA=93=E8=AE=A2?=
=?UTF-8?q?=E5=8D=95=E7=B1=BB=E5=9E=8B=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?=
=?UTF-8?q?=20=E4=BF=AE=E5=A4=8D=E4=BF=AE=E6=94=B9=E4=BF=9D=E5=AD=98=20=20?=
=?UTF-8?q?=E5=85=A5=E5=BA=93-=E9=87=87=E8=B4=AD=E5=8D=95(=E9=87=87?=
=?UTF-8?q?=E8=B4=AD=E5=85=A5=E5=BA=93)=E7=9A=84=E6=96=B9=E6=B3=95?=
=?UTF-8?q?=EF=BC=8C=E8=A7=A3=E5=86=B3=E5=B7=B2=E7=BB=8F=E5=85=A5=E5=BA=93?=
=?UTF-8?q?=E6=95=B0=E6=B2=A1=E6=9C=89=E5=80=BC=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java | 4 ++--
.../service/impl/WarehouseStorageOrderServiceImpl.java | 2 ++
.../templates/purchase/purchaseOrder/addPurchaseStorage.html | 3 ++-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java
index f8a2c758..48a4cd3a 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java
@@ -1213,7 +1213,7 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService
PurchaseOrderChild purchaseOrderChild = filterPurchaseOrderChildList.get(0);
purchaseStorage.setWarehouseStorageStatus("0");
- purchaseStorage.setWarehouseStorageType("5");
+ purchaseStorage.setWarehouseStorageType("0");
purchaseStorage.setWarehouseDeptType(purchaseOrderChild.getWarehouseDept());
purchaseStorage.setWarehouseQualityStatus("0");
purchaseStorage.setWarehouseOrderType("0");
@@ -1255,7 +1255,7 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService
WarehouseStorageOrder warehouseStorageOrder = new WarehouseStorageOrder();
warehouseStorageOrder.setWarehouseStorageCode(warehouseStorageCode);
warehouseStorageOrder.setWarehouseStorageStatus("0");
- warehouseStorageOrder.setWarehouseStorageType("5");
+ warehouseStorageOrder.setWarehouseStorageType("0");
warehouseStorageOrder.setWarehouseDeptType(purchaseOrderChild.getWarehouseDept());
warehouseStorageOrder.setWarehouseQualityStatus("0");
warehouseStorageOrder.setWarehouseOrderType("0");
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java
index 3f6b178f..77dc47fa 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseStorageOrderServiceImpl.java
@@ -630,9 +630,11 @@ public class WarehouseStorageOrderServiceImpl implements IWarehouseStorageOrderS
//更新已入库数
hasStorageNum = storageNumDetail;
oldPurchaseOrderChild.setHasStorageNum(hasStorageNum);
+ warehouseStorageOrderDetail.setHasStorageNum(hasStorageNum);
}else{
hasStorageNum = hasStorageNum + storageNumDetail;
oldPurchaseOrderChild.setHasStorageNum(hasStorageNum);
+ warehouseStorageOrderDetail.setHasStorageNum(hasStorageNum);
}
if (temporaryQualifiedNum < hasStorageNum){
diff --git a/ruoyi-admin/src/main/resources/templates/purchase/purchaseOrder/addPurchaseStorage.html b/ruoyi-admin/src/main/resources/templates/purchase/purchaseOrder/addPurchaseStorage.html
index dbab8cb3..10f62209 100644
--- a/ruoyi-admin/src/main/resources/templates/purchase/purchaseOrder/addPurchaseStorage.html
+++ b/ruoyi-admin/src/main/resources/templates/purchase/purchaseOrder/addPurchaseStorage.html
@@ -33,7 +33,7 @@
@@ -114,6 +114,7 @@
"materialPhotourl" : item.materialPhotourl,
"materialType": item.materialType,
"materialDescribe": item.materialDescribe,
+ "materialModel": item.materialModel,
"materialBrand": item.materialBrand,
"materialUnit": item.materialUnit,
"materialProcessMethod": item.materialProcessMethod,
From 780e206fbbdc070432abdbf716a6d0fbf5613c8f Mon Sep 17 00:00:00 2001
From: liuxiaoxu <1793812695@qq.com>
Date: Fri, 29 Nov 2024 09:16:16 +0800
Subject: [PATCH 2/3] =?UTF-8?q?[feat]=E9=94=80=E5=94=AE=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=20=E6=96=B0=E5=A2=9E=E9=94=80=E5=94=AE=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E5=8A=A0=E4=B8=8A=E9=80=9A=E8=BF=87=E9=94=80=E5=94=AE=E5=8D=95?=
=?UTF-8?q?=E9=80=89=E6=8B=A9=E7=9A=84=E5=90=AB=E7=A8=8E=E4=B8=8D=E5=90=AB?=
=?UTF-8?q?=E7=A8=8E=EF=BC=8C=E5=88=86=E5=88=AB=E5=88=A4=E6=96=AD=E9=94=80?=
=?UTF-8?q?=E5=94=AE=E8=AE=A2=E5=8D=95=E7=89=A9=E6=96=99=E7=9A=84=E4=B8=8D?=
=?UTF-8?q?=E5=90=AB=E7=A8=8E=E5=8D=95=E4=BB=B7=E7=BE=8E=E5=85=83=E5=92=8C?=
=?UTF-8?q?=E4=B8=8D=E5=90=AB=E7=A8=8E=E5=8D=95=E4=BB=B7=E4=BA=BA=E6=B0=91?=
=?UTF-8?q?=E5=B8=81=E6=98=AF=E5=90=A6=E5=A1=AB=E5=86=99=E4=BA=86=EF=BC=8C?=
=?UTF-8?q?=E6=B2=A1=E5=A1=AB=E5=86=99=E4=B8=8D=E5=8F=AF=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../impl/SysSalesOrderServiceImpl.java | 57 ++++++++++++-------
1 file changed, 37 insertions(+), 20 deletions(-)
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 ab8b32a7..f086f72a 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
@@ -318,7 +318,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
List sysSalesOrderChildList = sysSalesOrder.getSysSalesOrderChildList();
// 校验子表数据
- checkSysSalesOrderChildList(sysSalesOrderChildList);
+ checkSysSalesOrderChildList(sysSalesOrder,sysSalesOrderChildList);
for (int i = 0; i < s ;i++) {
SysSalesOrderChild sysSalesOrderChild = sysSalesOrder.getSysSalesOrderChildList().get(i);
@@ -331,30 +331,47 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
//自定义校验
- private void checkSysSalesOrderChildList(List sysSalesOrderChildList) {
- // 检查物料数量是否为空
- boolean anyMaterialNum = sysSalesOrderChildList.stream()
- .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getMaterialNum() == null);
- if (anyMaterialNum) {
- throw new BusinessException("物料数量不能为空");
- }
+ private void checkSysSalesOrderChildList(SysSalesOrder sysSalesOrder,List sysSalesOrderChildList) {
+ String commonCurrency = sysSalesOrder.getCommonCurrency();
+ if (RMB.equals(commonCurrency)) {
+ // 检查物料不含税单价RMB是否为空
+ boolean anyMaterialNoRmb = sysSalesOrderChildList.stream()
+ .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getMaterialNoRmb() == null);
+ if (anyMaterialNoRmb) {
+ throw new BusinessException("物料不含税单价RMB不能为空");
+ }
+ } else {
+ // 检查物料不含税单价美元是否为空
+ boolean anyMaterialNoUsd = sysSalesOrderChildList.stream()
+ .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getMaterialNoUsd() == null);
+ if (anyMaterialNoUsd) {
+ throw new BusinessException("物料不含税单价美元不能为空");
+ }
- // 检查计划交付时间是否为空
- boolean anyDeliveryTime = sysSalesOrderChildList.stream()
- .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getDeliveryTime() == null);
- if (anyDeliveryTime) {
- throw new BusinessException("计划交付时间不能为空");
- }
- // 检查质保天数是否为空
- boolean anyExpiryDay = sysSalesOrderChildList.stream()
- .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getExpiryDay() == null);
- if (anyExpiryDay) {
- throw new BusinessException("质保天数不能为空");
+ // 检查物料数量是否为空
+ boolean anyMaterialNum = sysSalesOrderChildList.stream()
+ .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getMaterialNum() == null);
+ if (anyMaterialNum) {
+ throw new BusinessException("物料数量不能为空");
+ }
+
+ // 检查计划交付时间是否为空
+ boolean anyDeliveryTime = sysSalesOrderChildList.stream()
+ .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getDeliveryTime() == null);
+ if (anyDeliveryTime) {
+ throw new BusinessException("计划交付时间不能为空");
+ }
+
+ // 检查质保天数是否为空
+ boolean anyExpiryDay = sysSalesOrderChildList.stream()
+ .anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getExpiryDay() == null);
+ if (anyExpiryDay) {
+ throw new BusinessException("质保天数不能为空");
+ }
}
}
-
/**
* 修改销售订单
*
From a5951f53ca8e05e50c24ade588416861b9769c52 Mon Sep 17 00:00:00 2001
From: liuxiaoxu <1793812695@qq.com>
Date: Fri, 29 Nov 2024 10:49:47 +0800
Subject: [PATCH 3/3] =?UTF-8?q?[feat]=E9=94=80=E5=94=AE=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=20=E9=94=80=E5=94=AE=E5=87=BA=E8=B4=A7=E5=89=8D=E7=AB=AF?=
=?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=96=B0=E5=A2=9E=20=E7=89=A9=E6=96=99?=
=?UTF-8?q?=E7=B1=BB=E5=9E=8B=E3=80=81=E7=89=A9=E6=96=99=E5=8D=95=E4=BD=8D?=
=?UTF-8?q?=E3=80=81=E5=8A=A0=E5=B7=A5=E6=96=B9=E5=BC=8F=E5=8A=A0=E4=B8=8A?=
=?UTF-8?q?=E5=AD=97=E5=85=B8=E5=B1=9E=E6=80=A7=20=E4=BF=AE=E5=A4=8D?=
=?UTF-8?q?=E9=94=80=E5=94=AE=E8=AE=A2=E5=8D=95=E6=96=B0=E5=A2=9E=E6=B2=A1?=
=?UTF-8?q?=E6=9C=89=E7=89=A9=E6=96=99=E5=90=88=E8=AE=A1=E5=92=8C=E6=95=B0?=
=?UTF-8?q?=E9=87=8F=E5=90=88=E8=AE=A1=E7=9A=84=E9=97=AE=E9=A2=98=20?=
=?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=94=80=E5=94=AE=E5=8F=91=E8=B5=B7=E5=87=BA?=
=?UTF-8?q?=E8=B4=A7=E5=87=BA=E8=B4=A7=E9=80=9A=E7=9F=A5=E5=AD=90=E8=A1=A8?=
=?UTF-8?q?=E6=B2=A1=E6=9C=89=E7=89=A9=E6=96=99=E5=9E=8B=E5=8F=B7=E7=9A=84?=
=?UTF-8?q?=E9=97=AE=E9=A2=98=20=E4=BF=AE=E5=A4=8D=E9=94=80=E5=94=AE?=
=?UTF-8?q?=E5=8F=91=E8=B5=B7=E5=87=BA=E8=B4=A7=E4=BB=93=E5=BA=93=E5=87=BA?=
=?UTF-8?q?=E5=BA=93=E5=8D=95=E5=AD=90=E8=A1=A8=E6=B2=A1=E6=9C=89=E7=89=A9?=
=?UTF-8?q?=E6=96=99=E5=9E=8B=E5=8F=B7=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../impl/SysSalesOrderServiceImpl.java | 26 +++++++++++++++----
.../SysSalesShippingInformServiceImpl.java | 1 +
.../impl/WarehouseOutOrderServiceImpl.java | 1 +
.../system/salesOrder/salesDeliverGoods.html | 15 +++++++++++
4 files changed, 38 insertions(+), 5 deletions(-)
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 f086f72a..db199dbf 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
@@ -298,10 +298,28 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
*/
@Override
public int insertSysSalesOrder(SysSalesOrder sysSalesOrder){
+
+
+ List sysSalesOrderChildList = sysSalesOrder.getSysSalesOrderChildList();
+
+ // 校验子表数据
+ checkSysSalesOrderChildList(sysSalesOrder,sysSalesOrderChildList);
+
+
+ //数量合计
+ int sumMaterialNum = sysSalesOrderChildList.stream().mapToInt(SysSalesOrderChild::getMaterialNum).sum();
+ //物料合计
+ int size = sysSalesOrderChildList.size();
+
+
String loginName = ShiroUtils.getLoginName();
sysSalesOrder.setCreateBy(loginName);
sysSalesOrder.setCreateTime(DateUtils.getNowDate());
sysSalesOrder.setSalesOrderCode(getId());
+ sysSalesOrder.setMaterialSum(sumMaterialNum);
+ sysSalesOrder.setEnterpriseSum(size);
+
+
String commonCurrency = sysSalesOrder.getCommonCurrency();
if(RMB.equals(commonCurrency)){
sysSalesOrder.setConfirmTax("1");
@@ -315,10 +333,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
if (s == 0){
return 0;
}
- List sysSalesOrderChildList = sysSalesOrder.getSysSalesOrderChildList();
- // 校验子表数据
- checkSysSalesOrderChildList(sysSalesOrder,sysSalesOrderChildList);
for (int i = 0; i < s ;i++) {
SysSalesOrderChild sysSalesOrderChild = sysSalesOrder.getSysSalesOrderChildList().get(i);
@@ -348,7 +363,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
throw new BusinessException("物料不含税单价美元不能为空");
}
-
+ }
// 检查物料数量是否为空
boolean anyMaterialNum = sysSalesOrderChildList.stream()
.anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getMaterialNum() == null);
@@ -370,7 +385,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
throw new BusinessException("质保天数不能为空");
}
}
- }
+
/**
* 修改销售订单
@@ -592,6 +607,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
if (hasApplyShippingNum == null) {
hasApplyShippingNum = 0; // 确保 hasApplyShippingNum 不为 null
}
+
if (hasApplyShippingNum+oldChild.getApplyShippingNum() > oldChild.getMaterialNum()){
throw new BusinessException("申请出货数与已申请出货数之和不能大于订单数量");
}
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 10da0763..e83ec932 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
@@ -276,6 +276,7 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor
sysSalesShippingInformDetail.setOutOrderCode(outOrderCode);
sysSalesShippingInformDetail.setMaterialNo(sysSalesOrderChild.getMaterialCode());
sysSalesShippingInformDetail.setMaterialName(sysSalesOrderChild.getMaterialName());
+ sysSalesShippingInformDetail.setMaterialModel(sysSalesOrderChild.getMaterialModel());
sysSalesShippingInformDetail.setMaterialType(sysSalesOrderChild.getMaterialType());
sysSalesShippingInformDetail.setMaterialBrand(sysSalesOrderChild.getBrand());
sysSalesShippingInformDetail.setMaterialUnit(sysSalesOrderChild.getUnit());
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java
index 97bd2485..f41ba2a8 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java
@@ -1114,6 +1114,7 @@ public class WarehouseOutOrderServiceImpl implements IWarehouseOutOrderService
warehouseOutOrderDetail.setMaterialNo(sysSalesOrderChild.getMaterialCode());
warehouseOutOrderDetail.setMaterialName(sysSalesOrderChild.getMaterialName());
warehouseOutOrderDetail.setMaterialType(sysSalesOrderChild.getMaterialType());
+ warehouseOutOrderDetail.setMaterialModel(sysSalesOrderChild.getMaterialModel());
warehouseOutOrderDetail.setMaterialBrand(sysSalesOrderChild.getBrand());
warehouseOutOrderDetail.setMaterialUnit(sysSalesOrderChild.getUnit());
warehouseOutOrderDetail.setMaterialDescribe(sysSalesOrderChild.getDescribe());
diff --git a/ruoyi-admin/src/main/resources/templates/system/salesOrder/salesDeliverGoods.html b/ruoyi-admin/src/main/resources/templates/system/salesOrder/salesDeliverGoods.html
index 63c745f6..a156a2e1 100644
--- a/ruoyi-admin/src/main/resources/templates/system/salesOrder/salesDeliverGoods.html
+++ b/ruoyi-admin/src/main/resources/templates/system/salesOrder/salesDeliverGoods.html
@@ -121,6 +121,12 @@
var salesOrderIdList = [[${salesOrderIdList}]];
+ var materialTypeDatas = [[${@category.getChildByCode('materialType')}]];
+ var sysUnitClassDatas = [[${@dict.getType('sys_unit_class')}]];
+ var processMethodDatas = [[${@dict.getType('processMethod')}]];
+
+
+
var prefix = ctx + "system/salesOrder";
$("#form-salesDeliverGoods-edit").validate({
focusCleanup: true
@@ -337,6 +343,9 @@
{
title: '物料类型',
field: 'materialType',
+ formatter: function(value, row, index) {
+ return $.table.selectCategoryLabel(materialTypeDatas, value);
+ }
},
{
title: '描述',
@@ -345,6 +354,9 @@
{
title: '单位',
field: 'unit',
+ formatter: function(value, row, index) {
+ return $.table.selectDictLabel(sysUnitClassDatas, value);
+ }
},
{
title: '型号',
@@ -358,6 +370,9 @@
{
title: '加工方式',
field: 'processMethod',
+ formatter: function(value, row, index) {
+ return $.table.selectDictLabel(processMethodDatas, value);
+ }
},
{
title: '订单数量',