From c05ddf57634572b43869e00d426efe05d2df5077 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期三, 10 六月 2026 08:16:23 +0800
Subject: [PATCH] feat:模版合同加备注、水电房屋租赁执行次数改为合同有效期、合同履约列表新增双方履约、开票新增拟开票数量

---
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/OutBoundServiceImpl.java |    6 ++++--
 1 files changed, 4 insertions(+), 2 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 0ea787b..8782f83 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
@@ -53,6 +53,7 @@
 				.in(ContractSubjectMatter::getMaterialCode, addDTO.getSubjectMatterList().stream().map(item -> item.getSubjectMatterCode()).collect(Collectors.toList()))
 				.exists(Contract.class, contractQuery ->
 						contractQuery.select(ContractSubjectMatter::getId)
+								.eq(Contract::getContractStatus,2)
 								.eq(Contract::getId, ContractSubjectMatter::getContractId)
 								.eq(StrUtil.isNotBlank(addDTO.getBusGuestName()), Contract::getPartyA, addDTO.getBusGuestName())
 								.eq(ObjUtil.isNotNull(addDTO.getBusGuestId()), Contract::getPartyAId, addDTO.getBusGuestId())
@@ -93,7 +94,7 @@
 					if (subjectMatter.getDeliveredQuantity().compareTo(new BigDecimal("0")) > 0) {
 						remainNum = remainNum.subtract(subjectMatter.getRemainingQuantity());
 						//閮ㄥ垎浜や粯鐘舵�佷笅 鍏ㄩ儴鍑哄簱
-						if (remainNum.compareTo(new BigDecimal("0")) >= 0) {
+						if (remainNum.compareTo(new BigDecimal("0")) > 0) {
 							BigDecimal currentOut = subjectMatter.getRemainingQuantity();
 							subjectMatter.setDeliveredQuantity(subjectMatter.getQuantity());
 							subjectMatter.setRemainingQuantity(new BigDecimal("0"));
@@ -121,7 +122,7 @@
 					} else {
 						//鏈氦浠樼姸鎬佷笅
 						remainNum = remainNum.subtract(subjectMatter.getQuantity());
-						if (remainNum.compareTo(new BigDecimal("0")) >= 0) {
+						if (remainNum.compareTo(new BigDecimal("0")) > 0) {
 							subjectMatter.setDeliveredQuantity(subjectMatter.getQuantity());
 							subjectMatter.setRemainingQuantity(new BigDecimal("0"));
 							subjectMatter.setActualDeliveryDate(DateUtil.today());
@@ -385,6 +386,7 @@
 		contractOutBound.setOutBoundAttPaths(addDTO.getOutBoundAttPaths());
 		contractOutBound.setOutBoundId(outBoundId);
 		contractOutBound.setInvoiceStatus("0");
+		contractOutBound.setInvoiceNum(new BigDecimal("0"));
 		contractOutBoundMapper.insert(contractOutBound);
 		if (StrUtil.isEmpty(contract.getContractCategory())){
 			if (DateUtil.compare(addDTO.getOutBoundTime(),contract.getExpirationDate())>0){

--
Gitblit v1.9.1