From dd4284136cb12dc3c2e498e0f0ff002d553763af Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期二, 25 八月 2026 15:35:41 +0800
Subject: [PATCH] feat:feat:新增降点损 赊销业务均使用代储

---
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
index 2a7809e..a5b26da 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java
@@ -50,6 +50,12 @@
 	@Value("${dept.smj}")
 	private String smj;
 
+	@Value("${dept.smjsc}")
+	private String smjsc;
+
+	@Value("${dept.smjzt}")
+	private String smjzt;
+
 	@Value("${dept.sgb}")
 	private String sgb;
 
@@ -102,7 +108,8 @@
 		//鍑哄簱
 		addDTO.getSubjectMatterList().stream().forEach(outSubjectMatterAddDTO -> {
 			OutBound outBound = BeanUtil.copyProperties(outSubjectMatterAddDTO, OutBound.class);
-			if (StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smj)){
+			if (StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smj)||StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smjsc)||
+					StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smjzt)){
 				outBound.setBatchNumber(generateSMJContractCKNo());
 			}
 			if (StrUtil.equals(SecurityUtils.getUser().getCompId()+"",sgb)){
@@ -398,7 +405,8 @@
 						//褰撳墠涓哄悎鍚屾渶鍚庨樁娈�
 						PaymentConfirm lastNewConfirm = paymentConfirmMapper.selectOne(Wrappers.<PaymentConfirm>lambdaQuery().eq(PaymentConfirm::getContractId, contract.getId())
 								.orderByDesc(PaymentConfirm::getCreateTime).last("limit 1"));
-						if (lastNewConfirm.getTotalAmount().compareTo(new BigDecimal("0")) >= 0) {
+						if (lastNewConfirm.getTotalAmount().compareTo(new BigDecimal("0")) >= 0
+								&&contract.getBillingAmout().compareTo(contract.getAmount())==0) {
 							//鏈夐浠樹笖瓒呰繃搴旀敹 鍏抽棴鍚堝悓鐘舵��
 							contract.setContractStatus(3);
 							contractMapper.updateById(contract);
@@ -545,7 +553,8 @@
 			contractSubjectMatterMapper.updateById(subjectMatter);
 			//
 			OutBound outBound = new OutBound();
-			if (StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smj)){
+			if (StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smj)||StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smjsc)||
+					StrUtil.equals(SecurityUtils.getUser().getCompId()+"",smjzt)){
 				outBound.setBatchNumber(generateSMJContractCKNo());
 			}
 			if (StrUtil.equals(SecurityUtils.getUser().getCompId()+"",sgb)){
@@ -728,7 +737,8 @@
 				//褰撳墠涓哄悎鍚屾渶鍚庨樁娈�
 				PaymentConfirm lastNewConfirm = paymentConfirmMapper.selectOne(Wrappers.<PaymentConfirm>lambdaQuery().eq(PaymentConfirm::getContractId, contract.getId())
 						.orderByDesc(PaymentConfirm::getCreateTime).last("limit 1"));
-				if (lastNewConfirm.getTotalAmount().compareTo(new BigDecimal("0")) >= 0) {
+				if (lastNewConfirm.getTotalAmount().compareTo(new BigDecimal("0")) >= 0
+						&&contract.getBillingAmout().compareTo(contract.getAmount())==0) {
 					//鏈夐浠樹笖瓒呰繃搴旀敹 鍏抽棴鍚堝悓鐘舵��
 					contract.setContractStatus(3);
 					contractMapper.updateById(contract);

--
Gitblit v1.9.1