From 6bbed1ea6b36af4eb0b234bec9d6e42d56f0cd00 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期三, 30 九月 2026 16:12:49 +0800
Subject: [PATCH] feat:合同新增关联单位  开票可根据甲方或关联单位选择开票单位  收款去掉强制确认 收款只关联合同甲方或关联单位

---
 platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml |   40 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml b/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
index 0e416cd..39e243c 100644
--- a/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
+++ b/platformx-business-finance-biz/src/main/resources/mapper/ContractMapper.xml
@@ -74,8 +74,8 @@
 		<if test="queryDTO.partyA !=null and queryDTO.partyA !=''">
 			and t.party_a LIKE CONCAT('%', #{queryDTO.partyA}, '%')
 		</if>
-		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
-			AND t1.class_id =  #{queryDTO.queryArea}
+		<if test="queryDTO.queryProvince !=null and queryDTO.queryProvince !=''">
+			AND t1.province =  #{queryDTO.queryProvince}
 		</if>
 		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
 			AND t1.export_service_attr =  #{queryDTO.queryServiceAttr}
@@ -168,6 +168,33 @@
 		<foreach collection="compIds" item="id" open="(" close=")" separator=",">
 			#{id}
 		</foreach>
+		GROUP BY party_b_id, party_b
+
+		UNION ALL
+
+		SELECT
+		'鐭崇叅鏈哄叕鍙�' AS party_b_name,
+		SUM(CASE WHEN MONTH(sign_date) = 1 THEN amount ELSE 0 END) AS m01,
+		SUM(CASE WHEN MONTH(sign_date) = 2 THEN amount ELSE 0 END) AS m02,
+		SUM(CASE WHEN MONTH(sign_date) = 3 THEN amount ELSE 0 END) AS m03,
+		SUM(CASE WHEN MONTH(sign_date) = 4 THEN amount ELSE 0 END) AS m04,
+		SUM(CASE WHEN MONTH(sign_date) = 5 THEN amount ELSE 0 END) AS m05,
+		SUM(CASE WHEN MONTH(sign_date) = 6 THEN amount ELSE 0 END) AS m06,
+		SUM(CASE WHEN MONTH(sign_date) = 7 THEN amount ELSE 0 END) AS m07,
+		SUM(CASE WHEN MONTH(sign_date) = 8 THEN amount ELSE 0 END) AS m08,
+		SUM(CASE WHEN MONTH(sign_date) = 9 THEN amount ELSE 0 END) AS m09,
+		SUM(CASE WHEN MONTH(sign_date) = 10 THEN amount ELSE 0 END) AS m10,
+		SUM(CASE WHEN MONTH(sign_date) = 11 THEN amount ELSE 0 END) AS m11,
+		SUM(CASE WHEN MONTH(sign_date) = 12 THEN amount ELSE 0 END) AS m12,
+		SUM(amount) AS total_amt
+		FROM contract
+		WHERE
+		del_flag = '0'
+		AND amount IS NOT NULL
+		AND sign_date IS NOT NULL
+		AND YEAR(sign_date) = #{queryDTO.year}
+		AND	party_b_id IN (2089995177814495234,2089996921978040321,2089997578009128962)
+
 		GROUP BY party_b_id, party_b
 
 		UNION ALL
@@ -1068,6 +1095,7 @@
 			c.party_a,
 			c.party_b_id,
 			c.party_b,
+			c.party_c_id,
 			c.amount,
 			c.contract_type,
 			c.supply_attribute,
@@ -1095,6 +1123,7 @@
 		    c.warranty_schedule_id,
 			c.comp_id,
 			c.center_push_flag,
+			c.last_attachment_url,
 			(select sum(delivered_quantity*unit_price) from contract_subject_matter csm where csm.contract_id = c.id) outAmount
 			FROM
 		contract c,
@@ -1106,6 +1135,9 @@
 		<if test="queryDTO.contractName !=null and queryDTO.contractName !=''">
 			AND contract_name LIKE CONCAT('%', #{queryDTO.contractName}, '%')
 		</if>
+		<if test="queryDTO.contractNo !=null and queryDTO.contractNo !=''">
+			AND contract_no LIKE CONCAT('%', #{queryDTO.contractNo}, '%')
+		</if>
 		<if test="queryDTO.partyA !=null and queryDTO.partyA !=''">
 			AND party_a LIKE CONCAT('%', #{queryDTO.partyA}, '%')
 		</if>
@@ -1115,8 +1147,8 @@
 		<if test="queryDTO.queryCompId !=null and queryDTO.queryCompId !=''">
 			AND c.comp_id =  #{queryDTO.queryCompId}
 		</if>
-		<if test="queryDTO.queryArea !=null and queryDTO.queryArea !=''">
-			AND bc.class_id =  #{queryDTO.queryArea}
+		<if test="queryDTO.queryProvince !=null and queryDTO.queryProvince !=''">
+			AND bc.province =  #{queryDTO.queryProvince}
 		</if>
 		<if test="queryDTO.queryServiceAttr !=null and queryDTO.queryServiceAttr !=''">
 			AND bc.export_service_attr =  #{queryDTO.queryServiceAttr}

--
Gitblit v1.9.1