From b054362aaf616bfe0be0b50ae5dc2137091dbd7d Mon Sep 17 00:00:00 2001
From: zhangback <zhangback@163.com>
Date: 星期二, 09 十二月 2025 14:48:07 +0800
Subject: [PATCH] 提交
---
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java | 67 +++++++++++++++++++++++++++++++++
1 files changed, 67 insertions(+), 0 deletions(-)
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java
index 02aef7d..2940f2f 100644
--- a/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableServiceImpl.java
@@ -128,6 +128,15 @@
estimatedReceivable.setCreateTime(nowDate);
estimatedReceivable.setFeeSystemNo("YF"+datePart+ RandomUtils.random(5));
estimatedReceivable.setFeeType(0);
+ PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
+ if (pendingSettlementBusiness == null){
+ throw new ServiceException("璋冨害鍗曚笉瀛樺湪");
+
+ }
+ Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
+ if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
+ throw new ServiceException("褰撳墠璋冨害鍗曞凡缁撶畻鎴栭儴鍒嗙粨绠楁棤娉曟柊澧炴槑缁�");
+ }
return estimatedReceivableMapper.insertEstimatedReceivable(estimatedReceivable);
}
@@ -244,6 +253,24 @@
throw new ServiceException("鏃犻渶閲嶅纭");
}
+ PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
+ if (pendingSettlementBusiness == null){
+ throw new ServiceException("璋冨害鍗曚笉瀛樺湪");
+
+ }
+ Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
+ if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
+ throw new ServiceException("褰撳墠璋冨害鍗曞凡缁撶畻鎴栭儴鍒嗙粨绠楁棤娉曠‘璁�");
+ }
+ if (pendingSettlementBusiness.getBillId()!=null){
+ EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(pendingSettlementBusiness.getBillId());
+ BigDecimal totalAmount = estimatedReceivableBill.getTotalAmount();
+ estimatedReceivableBill.setTotalAmount(totalAmount.add(estimatedReceivable.getEstimatedAmount()));
+ estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
+ pendingSettlementBusiness.setEstimatedTotalIncome(pendingSettlementBusiness.getEstimatedTotalIncome().add(estimatedReceivable.getEstimatedAmount()));
+ pendingSettlementBusinessMapper.updatePendingSettlementBusiness(pendingSettlementBusiness);
+ estimatedReceivable.setRelatedBillStatus(1);
+ }
String username = SecurityUtils.getUsername();
logService.insertEstimatedReceivableLog("纭搴旀敹",id,username);
@@ -267,10 +294,29 @@
throw new ServiceException("鏃犻渶閲嶅鍙栨秷");
}
+ PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
+ if (pendingSettlementBusiness == null){
+ throw new ServiceException("璋冨害鍗曚笉瀛樺湪");
+
+ }
+ Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
+ if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
+ throw new ServiceException("褰撳墠璋冨害鍗曞凡缁撶畻鎴栭儴鍒嗙粨绠楁棤娉曞彇娑�");
+ }
+ if (pendingSettlementBusiness.getBillId()!=null){
+ EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(pendingSettlementBusiness.getBillId());
+ BigDecimal totalAmount = estimatedReceivableBill.getTotalAmount();
+ estimatedReceivableBill.setTotalAmount(totalAmount.subtract(estimatedReceivable.getEstimatedAmount()));
+ estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
+ pendingSettlementBusiness.setEstimatedTotalIncome(pendingSettlementBusiness.getConfirmedTotalIncome().subtract(estimatedReceivable.getEstimatedAmount()));
+ pendingSettlementBusinessMapper.updatePendingSettlementBusiness(pendingSettlementBusiness);
+ estimatedReceivable.setRelatedBillStatus(0);
+ }
String username = SecurityUtils.getUsername();
logService.insertEstimatedReceivableLog("鍙栨秷搴旀敹",id,username);
estimatedReceivable.setIsConfirmed(0);
+
return estimatedReceivableMapper.updateEstimatedReceivable(estimatedReceivable);
}
@@ -284,6 +330,27 @@
throw new ServiceException("鏃犻渶閲嶅浣滃簾");
}
+ PendingSettlementBusiness pendingSettlementBusiness = pendingSettlementBusinessMapper.selectPendingSettlementBusinessByNo(estimatedReceivable.getDispatchNo());
+ if (pendingSettlementBusiness == null){
+ throw new ServiceException("璋冨害鍗曚笉瀛樺湪");
+
+ }
+ Integer relatedBillStatus = pendingSettlementBusiness.getRelatedBillStatus();
+ if (relatedBillStatus.equals(2)||relatedBillStatus.equals(3)){
+ throw new ServiceException("褰撳墠璋冨害鍗曞凡缁撶畻鎴栭儴鍒嗙粨绠楁棤娉曚綔搴�");
+ }
+ //纭鐘舵�佷笅浣滃簾鎵嶆墽琛�
+ if (estimatedReceivable.getIsConfirmed().equals(1)) {
+ if (pendingSettlementBusiness.getBillId()!=null){
+ EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(pendingSettlementBusiness.getBillId());
+ BigDecimal totalAmount = estimatedReceivableBill.getTotalAmount();
+ estimatedReceivableBill.setTotalAmount(totalAmount.subtract(estimatedReceivable.getEstimatedAmount()));
+ estimatedReceivableBillMapper.updateEstimatedReceivableBill(estimatedReceivableBill);
+ pendingSettlementBusiness.setEstimatedTotalIncome(pendingSettlementBusiness.getConfirmedTotalIncome().subtract(estimatedReceivable.getEstimatedAmount()));
+ pendingSettlementBusinessMapper.updatePendingSettlementBusiness(pendingSettlementBusiness);
+ estimatedReceivable.setRelatedBillStatus(0);
+ }
+ }
String username = SecurityUtils.getUsername();
logService.insertEstimatedReceivableLog("浣滃簾搴旀敹",id,username);
--
Gitblit v1.8.0