Browse Source

[feat]销售管理

新增销售订单加上通过销售单选择的含税不含税,分别判断销售订单物料的不含税单价美元和不含税单价人民币是否填写了,没填写不可提交
dev
liuxiaoxu 3 months ago
parent
commit
780e206fbb
  1. 23
      ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesOrderServiceImpl.java

23
ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesOrderServiceImpl.java

@ -318,7 +318,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
List<SysSalesOrderChild> sysSalesOrderChildList = sysSalesOrder.getSysSalesOrderChildList();
// 校验子表数据
checkSysSalesOrderChildList(sysSalesOrderChildList);
checkSysSalesOrderChildList(sysSalesOrder,sysSalesOrderChildList);
for (int i = 0; i < s ;i++) {
SysSalesOrderChild sysSalesOrderChild = sysSalesOrder.getSysSalesOrderChildList().get(i);
@ -331,7 +331,24 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
//自定义校验
private void checkSysSalesOrderChildList(List<SysSalesOrderChild> sysSalesOrderChildList) {
private void checkSysSalesOrderChildList(SysSalesOrder sysSalesOrder,List<SysSalesOrderChild> 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 anyMaterialNum = sysSalesOrderChildList.stream()
.anyMatch(sysSalesOrderChild -> sysSalesOrderChild.getMaterialNum() == null);
@ -353,7 +370,7 @@ public class SysSalesOrderServiceImpl implements ISysSalesOrderService
throw new BusinessException("质保天数不能为空");
}
}
}
/**
* 修改销售订单

Loading…
Cancel
Save