Commit ef78f75d33cc6ef77ab52dc241cf0e04349e519b
1 parent
360aae57
fix:1.给应收款和应付款从单个状态设置改为勾选批量状态设置。
2.改为由前端来控制,当填写时间大于Hod时间则对质检信息无法编辑。
Showing
7 changed files
with
52 additions
and
64 deletions
src/main/java/com/order/erp/domain/vo/order/InvoiceBillDeductInfoVO.java
... | ... | @@ -5,6 +5,7 @@ import lombok.experimental.SuperBuilder; |
5 | 5 | |
6 | 6 | import java.io.Serializable; |
7 | 7 | import java.math.BigDecimal; |
8 | +import java.util.List; | |
8 | 9 | |
9 | 10 | /** |
10 | 11 | * 应收款账单 -- 扣款信息 |
... | ... | @@ -22,6 +23,8 @@ public class InvoiceBillDeductInfoVO implements Serializable { |
22 | 23 | |
23 | 24 | private Long id; |
24 | 25 | |
26 | + private List<Long> ids; | |
27 | + | |
25 | 28 | /** |
26 | 29 | * 发票单号 |
27 | 30 | */ | ... | ... |
src/main/java/com/order/erp/domain/vo/order/ProducePaymentCheckBillInvoiceInfoVO.java
... | ... | @@ -4,6 +4,7 @@ import lombok.*; |
4 | 4 | import lombok.experimental.SuperBuilder; |
5 | 5 | |
6 | 6 | import java.io.Serializable; |
7 | +import java.util.List; | |
7 | 8 | |
8 | 9 | /** |
9 | 10 | * 生产科对账单应收账单(ProducePaymentCheckBillOrder)实体类 |
... | ... | @@ -21,6 +22,8 @@ public class ProducePaymentCheckBillInvoiceInfoVO implements Serializable { |
21 | 22 | |
22 | 23 | private Long id; |
23 | 24 | |
25 | + private List<Long> ids; | |
26 | + | |
24 | 27 | /** |
25 | 28 | * 发票url地址 |
26 | 29 | */ | ... | ... |
src/main/java/com/order/erp/service/order/impl/InvoiceBillOrderServiceImpl.java
... | ... | @@ -1715,36 +1715,30 @@ public class InvoiceBillOrderServiceImpl extends ServiceImpl<InvoiceBillOrderMap |
1715 | 1715 | |
1716 | 1716 | @Override |
1717 | 1717 | public ServerResult isFinishStatus(InvoiceBillDeductInfoVO invoiceBillDeductInfoVO) { |
1718 | - if(Objects.isNull(invoiceBillDeductInfoVO.getId())){ | |
1718 | + if(CollectionUtils.isEmpty(invoiceBillDeductInfoVO.getIds())){ | |
1719 | 1719 | throw new BusinessException(ServerResultCode.PARAM_ERROR); |
1720 | 1720 | } |
1721 | - InvoiceBillOrderDO invoiceBillOrderDO = getById(invoiceBillDeductInfoVO.getId()); | |
1722 | - if(Objects.nonNull(invoiceBillOrderDO)){ | |
1723 | - if((!FinanceEnum.RECEIVED_PAYMENT.getStatus().equals(invoiceBillOrderDO.getStatus())) && (!FinanceEnum.OK_PAYMENT.getStatus().equals(invoiceBillOrderDO.getStatus()))){ | |
1724 | - throw new BusinessException("该订单还没有审核通过,你无法设置最终状态为已收款!"); | |
1725 | - } | |
1726 | - List<InvoiceBillOrderDO> invoiceBillOrderDOList = list(new LambdaQueryWrapper<InvoiceBillOrderDO>().eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | |
1727 | - .eq(InvoiceBillOrderDO::getInvoiceNo, invoiceBillOrderDO.getInvoiceNo()) | |
1728 | - //这里没问题的,只会去对已通过审核的invoiceNO进行查询,即使invoiceNo相同,但是它没有通过审核也不会被修改为已手动审核通过的状态。 | |
1729 | - .eq(InvoiceBillOrderDO::getStatus, FinanceEnum.RECEIVED_PAYMENT.getStatus())); | |
1730 | - if(CollectionUtils.isNotEmpty(invoiceBillOrderDOList)){ | |
1731 | - List<InvoiceBillOrderDO> finishSatusList = invoiceBillOrderDOList.stream().map(x -> { | |
1732 | - x.setStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1733 | - return x; | |
1734 | - }).collect(Collectors.toList()); | |
1735 | - //还需要把基础订单的状态也改一下。 | |
1736 | - List<Long> orderIds = invoiceBillOrderDOList.stream().map(InvoiceBillOrderDO::getOrderId).collect(Collectors.toList()); | |
1737 | - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.listByIds(orderIds); | |
1738 | - List<OrderBaseInfoDO> orderBaseInfoDOS = orderBaseInfoDOList.stream().map(order -> { | |
1739 | - order.setInvoiceStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1740 | - return order; | |
1741 | - }).collect(Collectors.toList()); | |
1742 | - transactionHelper.run(() ->{ | |
1743 | - updateBatchById(finishSatusList); | |
1744 | - orderBaseInfoService.updateBatchById(orderBaseInfoDOS); | |
1745 | - }); | |
1721 | + List<InvoiceBillOrderDO> invoiceBillOrderDOS = list(new LambdaQueryWrapper<InvoiceBillOrderDO>() | |
1722 | + .eq(InvoiceBillOrderDO::getStatus, FinanceEnum.RECEIVED_PAYMENT.getStatus()) | |
1723 | + .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | |
1724 | + .in(InvoiceBillOrderDO::getId, invoiceBillDeductInfoVO.getIds())); | |
1725 | + if(CollectionUtils.isNotEmpty(invoiceBillOrderDOS)){ | |
1726 | + List<InvoiceBillOrderDO> finishSatusList = invoiceBillOrderDOS.stream().map(x -> { | |
1727 | + x.setStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1728 | + return x; | |
1729 | + }).collect(Collectors.toList()); | |
1730 | + //还需要把基础订单的状态也改一下。 | |
1731 | + List<Long> orderIds = invoiceBillOrderDOS.stream().map(InvoiceBillOrderDO::getOrderId).collect(Collectors.toList()); | |
1732 | + List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.listByIds(orderIds); | |
1733 | + List<OrderBaseInfoDO> orderBaseInfoDOS = orderBaseInfoDOList.stream().map(order -> { | |
1734 | + order.setInvoiceStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1735 | + return order; | |
1736 | + }).collect(Collectors.toList()); | |
1737 | + transactionHelper.run(() ->{ | |
1738 | + updateBatchById(finishSatusList); | |
1739 | + orderBaseInfoService.updateBatchById(orderBaseInfoDOS); | |
1740 | + }); | |
1746 | 1741 | |
1747 | - } | |
1748 | 1742 | } |
1749 | 1743 | return ServerResult.success(); |
1750 | 1744 | } | ... | ... |
src/main/java/com/order/erp/service/order/impl/OrderBaseInfoServiceImpl.java
... | ... | @@ -2187,14 +2187,6 @@ end |
2187 | 2187 | .eq(OrderInspectionStageDO::getOrderId, updateVO.getOrderId()) |
2188 | 2188 | .last("limit 1")); |
2189 | 2189 | |
2190 | - //对于质检信息,如果填写时间查超过订单的尾期拖货时间并且你的尾期结果不为FAIL,那么你就无法填写,说明你在补数据,而不是实时填写。--start | |
2191 | - String dateStr = orderBaseInfoDo.getProductionDepartmentConsignTime().substring(0, 10); | |
2192 | - LocalDate productionDepartmentConsignTime = LocalDate.parse(dateStr, DateTimeFormatter.ofPattern("yyyy-MM-dd")); | |
2193 | - if(currentDate.isAfter(productionDepartmentConsignTime) && StringUtils.isBlank(inspectionStageDO.getEndCheckResult())){ | |
2194 | - throw new BusinessException("已经过了"+dateStr+"拖货时间,禁止填写质检信息"); | |
2195 | - } | |
2196 | - //上面这段代码始终不行,还是需要前端控制是否填写。不然一直填写不上。因为你不能像前端那样申请字段解锁逻辑,到时候由前端来控制实际否能够填写尾期验货结果,就需要删除这段代码。 -end | |
2197 | - | |
2198 | 2190 | String midCheckResult = inspectionStageInfo.getMidCheckResult(); |
2199 | 2191 | String endCheckResult = inspectionStageInfo.getEndCheckResult(); |
2200 | 2192 | if (Objects.nonNull(inspectionStageDO)) { | ... | ... |
src/main/java/com/order/erp/service/order/impl/ProducePaymentCheckBillOrderServiceImpl.java
... | ... | @@ -1454,33 +1454,29 @@ public class ProducePaymentCheckBillOrderServiceImpl extends ServiceImpl<Produce |
1454 | 1454 | |
1455 | 1455 | @Override |
1456 | 1456 | public ServerResult isFinishStatus(ProducePaymentCheckBillInvoiceInfoVO producePaymentCheckBillInvoiceInfoVO) { |
1457 | - if(Objects.isNull(producePaymentCheckBillInvoiceInfoVO.getId())){ | |
1457 | + if(CollectionUtils.isEmpty(producePaymentCheckBillInvoiceInfoVO.getIds())){ | |
1458 | 1458 | throw new BusinessException(ServerResultCode.PARAM_ERROR); |
1459 | 1459 | } |
1460 | - ProducePaymentCheckBillOrderDO producePaymentCheckBillOrderDO = getById(producePaymentCheckBillInvoiceInfoVO.getId()); | |
1461 | - if(Objects.nonNull(producePaymentCheckBillOrderDO)){ | |
1462 | - if((!FinanceEnum.RECEIVED_PAYMENT.getStatus().equals(producePaymentCheckBillOrderDO.getStatus())) && (!FinanceEnum.OK_PAYMENT.getStatus().equals(producePaymentCheckBillOrderDO.getStatus()))){ | |
1463 | - throw new BusinessException("该订单还没有审核通过,你无法设置最终状态为已付款!"); | |
1464 | - } | |
1465 | - List<ProducePaymentCheckBillOrderDO> producePaymentCheckBillOrderDOList = list(new LambdaQueryWrapper<ProducePaymentCheckBillOrderDO>().eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | |
1466 | - .eq(ProducePaymentCheckBillOrderDO::getStatus, FinanceEnum.RECEIVED_PAYMENT.getStatus()) | |
1467 | - .eq(ProducePaymentCheckBillOrderDO::getCheckNo, producePaymentCheckBillOrderDO.getCheckNo())); | |
1468 | - if(CollectionUtils.isNotEmpty(producePaymentCheckBillOrderDOList)){ | |
1469 | - List<ProducePaymentCheckBillOrderDO> producePaymentCheckBillOrderDOS = producePaymentCheckBillOrderDOList.stream().map(x -> { | |
1470 | - x.setStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1471 | - return x; | |
1472 | - }).collect(Collectors.toList()); | |
1473 | - List<Long> orderIds = producePaymentCheckBillOrderDOList.stream().map(ProducePaymentCheckBillOrderDO::getOrderId).collect(Collectors.toList()); | |
1474 | - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.listByIds(orderIds); | |
1475 | - List<OrderBaseInfoDO> orderBaseInfoDOS = orderBaseInfoDOList.stream().map(order -> { | |
1476 | - order.setCheckStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1477 | - return order; | |
1478 | - }).collect(Collectors.toList()); | |
1479 | - transactionHelper.run(() ->{ | |
1480 | - updateBatchById(producePaymentCheckBillOrderDOS); | |
1481 | - orderBaseInfoService.updateBatchById(orderBaseInfoDOS); | |
1482 | - }); | |
1483 | - } | |
1460 | + List<ProducePaymentCheckBillOrderDO> producePaymentCheckBillOrderDOList = list(new LambdaQueryWrapper<ProducePaymentCheckBillOrderDO>() | |
1461 | + .eq(ProducePaymentCheckBillOrderDO::getStatus, FinanceEnum.RECEIVED_PAYMENT.getStatus()) | |
1462 | + .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | |
1463 | + .in(ProducePaymentCheckBillOrderDO::getId,producePaymentCheckBillInvoiceInfoVO.getIds())); | |
1464 | + if(CollectionUtils.isNotEmpty(producePaymentCheckBillOrderDOList)){ | |
1465 | + List<ProducePaymentCheckBillOrderDO> producePaymentCheckBillOrderDOS = producePaymentCheckBillOrderDOList.stream().map(x -> { | |
1466 | + x.setStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1467 | + return x; | |
1468 | + }).collect(Collectors.toList()); | |
1469 | + | |
1470 | + List<Long> orderIds = producePaymentCheckBillOrderDOS.stream().map(ProducePaymentCheckBillOrderDO::getOrderId).collect(Collectors.toList()); | |
1471 | + List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.listByIds(orderIds); | |
1472 | + List<OrderBaseInfoDO> orderBaseInfoDOS = orderBaseInfoDOList.stream().map(order -> { | |
1473 | + order.setCheckStatus(FinanceEnum.OK_PAYMENT.getStatus()); | |
1474 | + return order; | |
1475 | + }).collect(Collectors.toList()); | |
1476 | + transactionHelper.run(() ->{ | |
1477 | + updateBatchById(producePaymentCheckBillOrderDOS); | |
1478 | + orderBaseInfoService.updateBatchById(orderBaseInfoDOS); | |
1479 | + }); | |
1484 | 1480 | } |
1485 | 1481 | return ServerResult.success(); |
1486 | 1482 | } | ... | ... |
src/main/resources/application-pre-prod.yml
... | ... | @@ -59,7 +59,7 @@ spring: |
59 | 59 | testOnReturn: true |
60 | 60 | password: eJ8(bD6]wN6=gI5= |
61 | 61 | time-between-eviction-runs-millis: 1000 |
62 | - url: jdbc:mysql://47.104.8.35:3307/order-erp-pre-prod?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&useSSL=false&autoReconnect=true&failOverReadOnly=false&maxReconnects=10&allowMultiQueries=true&useAffectedRows=true&autoReconnectForPools=true | |
62 | + url: jdbc:mysql://47.104.8.35:3307/order-erp-prod?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&useSSL=false&autoReconnect=true&failOverReadOnly=false&maxReconnects=10&allowMultiQueries=true&useAffectedRows=true&autoReconnectForPools=true | |
63 | 63 | username: root |
64 | 64 | redis: |
65 | 65 | database: 10 |
... | ... | @@ -80,7 +80,7 @@ spring: |
80 | 80 | host: smtp.163.com |
81 | 81 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 |
82 | 82 | # username: information@alterego.xin |
83 | - username: chenhang4442024@163.com | |
83 | + username: c1henhang4442024@163.com | |
84 | 84 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 |
85 | 85 | # password: AlterEgo1608ITf31 |
86 | 86 | password: WGdg9Fx4za53FXvj | ... | ... |
src/main/resources/application-test.yml
... | ... | @@ -59,7 +59,7 @@ spring: |
59 | 59 | testOnReturn: true |
60 | 60 | password: eJ8(bD6]wN6=gI5= |
61 | 61 | time-between-eviction-runs-millis: 1000 |
62 | - url: jdbc:mysql://47.104.8.35:3307/order-erp?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&useSSL=false&autoReconnect=true&failOverReadOnly=false&maxReconnects=10&allowMultiQueries=true&useAffectedRows=true&autoReconnectForPools=true | |
62 | + url: jdbc:mysql://47.104.8.35:3307/order-erp-test?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&useSSL=false&autoReconnect=true&failOverReadOnly=false&maxReconnects=10&allowMultiQueries=true&useAffectedRows=true&autoReconnectForPools=true | |
63 | 63 | username: root |
64 | 64 | redis: |
65 | 65 | database: 0 |
... | ... | @@ -79,7 +79,7 @@ spring: |
79 | 79 | # host: smtp.mxhichina.com |
80 | 80 | host: smtp.163.com |
81 | 81 | # 发送者邮箱,已开通POP3/SMTP服务的邮箱,也就是你自己的 |
82 | - username: chenhang4442024@163.com | |
82 | + username: c1henhang4442024@163.com | |
83 | 83 | # 配置密码,注意不是真正的密码,而是刚刚申请到的授权码 |
84 | 84 | password: WGdg9Fx4za53FXvj |
85 | 85 | # 邮件接收者 | ... | ... |