From 424d9748add1a2ade5ca33e8981e5bc4e7a03ab6 Mon Sep 17 00:00:00 2001
From: sen <sen@qq.com>
Date: 星期一, 18 八月 2025 09:27:15 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/yagwly_fa_master' into yagwly_fa_master
---
service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java b/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java
index b0718c1..45c4a2b 100644
--- a/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java
+++ b/service/src/main/java/com/ruoyi/cwgl/service/impl/EstimatedReceivableBillServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.cwgl.service.impl;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -215,11 +216,11 @@
Integer id = estimatedReceivableBill.getId();
EstimatedReceivableBill oldData = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(id);
//搴旂粨绠楅噾棰�
- Long totalAmount = oldData.getTotalAmount()==null?0L:oldData.getTotalAmount();
+ BigDecimal totalAmount = oldData.getTotalAmount()==null?BigDecimal.ZERO:oldData.getTotalAmount();
//宸茬粨绠楅噾棰�
- Long settledAmount = oldData.getSettledAmount()==null?0L:oldData.getSettledAmount();
+ BigDecimal settledAmount = oldData.getSettledAmount()==null?BigDecimal.ZERO:oldData.getSettledAmount();
//褰撳墠鎻愪氦閲戦
- Long settlementAmount = estimatedReceivableBill.getSettlementAmount();
+ BigDecimal settlementAmount = estimatedReceivableBill.getSettlementAmount();
EstimatedReceivableBillLog estimatedReceivableBillLog = new EstimatedReceivableBillLog();
estimatedReceivableBill.setSettledAmount(settlementAmount);
@@ -227,10 +228,16 @@
estimatedReceivableBillLog.setBillId(estimatedReceivableBill.getId());
estimatedReceivableBillLog.setCreateBy(SecurityUtils.getUsername());
estimatedReceivableBillLog.setOperation("鏈鎻愪氦閲戦"+ settlementAmount);
+ estimatedReceivableBillLog.setFileName(estimatedReceivableBill.getAttachment());
logService.insertEstimatedReceivableBillLog(estimatedReceivableBillLog);
- settledAmount = settledAmount+settlementAmount;
+ settledAmount = settledAmount.add(settlementAmount);
List<String>dispatchNos =pendingSettlementBusinessMapper.selectPendingSettlementBusinessDispatchNos(estimatedReceivableBill.getId());
- if (settledAmount>totalAmount){
+ // 妫�鏌ュ綋鍓嶆彁浜ら噾棰�+宸茬粨绠楅噾棰濇槸鍚﹁秴杩囧簲缁撶畻閲戦
+ if (settlementAmount.add(settledAmount).compareTo(totalAmount) > 0) {
+ // 瓒呰繃搴旂粨绠楅噾棰濓紝鎶涘嚭寮傚父鎴栧鐞嗛敊璇�
+ throw new RuntimeException("褰撳墠鎻愪氦閲戦鍔犱笂宸茬粨绠楅噾棰濅笉鑳借秴杩囧簲缁撶畻閲戦");
+ }
+ if (settlementAmount.add(settledAmount).compareTo(totalAmount) == 0) {
//宸茬粨绠楀ぇ浜庡簲璁$畻閲戦涓哄凡缁撶畻
estimatedReceivableBill.setStatus(2);
estimatedReceivableMapper.updateEstimatedReceivableBillStatus(dispatchNos,3);
@@ -252,8 +259,8 @@
EstimatedReceivableBill estimatedReceivableBill = estimatedReceivableBillMapper.selectEstimatedReceivableBillById(billId);
estimatedReceivableBill.setDispatchCount(estimatedReceivableBill.getDispatchCount()-1);
//搴旂粨绠楅噾棰濅慨鏀�
- Long totalAmount = estimatedReceivableBill.getTotalAmount();
- estimatedReceivableBill.setTotalAmount(totalAmount-pendingSettlementBusiness.getEstimatedTotalIncome());
+ BigDecimal totalAmount = estimatedReceivableBill.getTotalAmount();
+ estimatedReceivableBill.setTotalAmount(totalAmount.subtract(pendingSettlementBusiness.getEstimatedTotalIncome()));
EstimatedReceivableBillLog estimatedReceivableBillLog = new EstimatedReceivableBillLog();
estimatedReceivableBillLog.setCreateTime(new Date());
estimatedReceivableBillLog.setBillId(billId);
--
Gitblit v1.8.0