From 5fa6e6f8410ef9d057174bcff2a3c5038c54a551 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期日, 27 四月 2025 18:41:20 +0800
Subject: [PATCH] bug修改

---
 ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml |  126 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 123 insertions(+), 3 deletions(-)

diff --git a/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml
index fa1131b..81dc703 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TContractMapper.xml
@@ -9,12 +9,11 @@
         <result column="contract_name" property="contractName" />
         <result column="start_time" property="startTime" />
         <result column="end_time" property="endTime" />
-        <result column="total_rent" property="totalRent" />
         <result column="deposit" property="deposit" />
         <result column="pay_type" property="payType" />
         <result column="first_pay_time" property="firstPayTime" />
         <result column="isIncreasing" property="isIncreasing" />
-        <result column="isIncreasing_deposit" property="isincreasingDeposit" />
+        <result column="isIncreasing_deposit" property="isIncreasingDeposit" />
         <result column="proportion" property="proportion" />
         <result column="house_id" property="houseId" />
         <result column="party_one_name" property="partyOneName" />
@@ -32,11 +31,18 @@
         <result column="create_by" property="createBy" />
         <result column="update_by" property="updateBy" />
         <result column="disabled" property="disabled" />
+        <result column="memory" property="memory" />
+        <result column="contract_file_name" property="contractFileName" />
+        <result column="signature" property="signature" />
+        <result column="terminate_remark" property="terminateRemark" />
+        <result column="total_year" property="totalYear" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, contract_number, contract_name, start_time, end_time, total_rent, deposit, pay_type, first_pay_time, isIncreasing, isIncreasing_deposit, proportion, house_id, party_one_name, party_one_person, party_one_phone, tenant_id, party_two_name, party_two_person, party_two_phone, contract_file, remark, status, create_time, update_time, create_by, update_by, disabled
+        id, contract_number, contract_name, start_time, end_time, deposit, pay_type, first_pay_time, isIncreasing, isIncreasing_deposit,
+            proportion, house_id, party_one_name, party_one_person, party_one_phone, tenant_id, party_two_name, party_two_person, party_two_phone,
+            memory, contract_file_name, signature, terminate_remark, total_year,status
     </sql>
     <select id="contractList" resultType="com.ruoyi.system.model.TContract">
         select t1.* from t_contract t1
@@ -53,9 +59,123 @@
             <if test="query.status != null">
                 and t1.status = #{query.status}
             </if>
+            <if test="query.tenantId != null">
+                and t1.tenant_id = #{query.tenantId}
+            </if>
+            <if test="query.statuses != null and query.statuses.size()>0">
+                and t1.status in
+                <foreach collection="query.statuses" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="businessDeptId!=null and businessDeptId !='' and businessDeptId != 0">
+                and t1.business_dept_id = #{businessDeptId}
+            </if>
+            AND t1.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+        </where>
+        order by t1.create_time desc
+    </select>
+    <select id="contractAppletList" resultType="com.ruoyi.system.model.TContract">
+        select t1.* from t_contract t1
+        <where>
+            <if test="query.status != null">
+                and t1.status = #{query.status}
+            </if>
+            <if test="query.tenantId != null">
+                and t1.tenant_id = #{query.tenantId}
+            </if>
+            and (t1.status=3 or t1.status=4)
+            AND t1.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+        </where>
+    </select>
+    <select id="contractBillList" resultType="com.ruoyi.system.vo.BillVO">
+        select t1.*,t2.contract_number as contractNumber,t3.resident_name as residentName,t3.phone as phone
+        from t_bill t1
+        left join t_contract t2 on t1.contract_id = t2.id
+        left join t_tenant t3 on t2.tenant_id = t3.id
+        where t2.id = #{query.id}
+        and (t1.pay_fees_status = 1 or t1.pay_fees_status = 4)
+        AND t1.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+        AND t2.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+        AND t3.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+    </select>
+    <select id="contractExportList" resultType="com.ruoyi.system.model.TContract">
+        select t1.* from t_contract t1
+        <where>
+            <if test="query.ids != null and query.ids.size()>0">
+                AND t1.id IN
+                <foreach collection="query.ids" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="query.ids == null or query.ids.size()==0">
+                <if test="query.partyTwoName != null and query.partyTwoName != ''">
+                    and t1.party_two_name like concat('%',#{query.partyTwoName},'%')
+                </if>
+                <if test="query.contractNumber != null and query.contractNumber != ''">
+                    and t1.contract_number like concat('%',#{query.contractNumber},'%')
+                </if>
+                <if test="query.contractName != null and query.contractName != ''">
+                    and t1.contract_name like concat('%',#{query.contractName},'%')
+                </if>
+                <if test="query.status != null">
+                    and t1.status = #{query.status}
+                </if>
+            </if>
+
             AND t1.disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
 
         </where>
     </select>
+    <select id="getCurrentMonthRentCount" resultType="java.lang.Integer">
+        SELECT COUNT(DISTINCT tc.tenant_id) AS new_tenant_count
+        FROM t_contract tc
+        <where>
+            -- 筛选本月签订的合同
+            DATE_FORMAT(tc.sign_time, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m') AND tc.status IN ("4", "5", "6", "7", "8", "9") AND tc.pay_type = 2
+            -- 且租户在本月前从未签订过任何合同
+            AND NOT EXISTS (
+            SELECT 1
+            FROM t_contract tc_hist
+            WHERE tc_hist.tenant_id = tc.tenant_id
+            AND tc_hist.sign_time <![CDATA[ < ]]> DATE_FORMAT(CURDATE(), '%Y-%m-01') AND tc_hist.status IN ("4", "5", "6", "7", "8", "9")
+            )
+            <if test="businessDeptId!=0">
+                AND tc.business_dept_id = #{businessDeptId}
+            </if>
+        </where>
 
+    </select>
+
+    <select id="page" resultType="com.ruoyi.system.model.TContract">
+        select * from t_contract
+        <where>
+            <if test="query.partyTwoName != null and query.partyTwoName != ''">
+                and party_two_name like concat('%',#{query.partyTwoName},'%')
+            </if>
+            <if test="query.contractNumber != null and query.contractNumber != ''">
+                and contract_number like concat('%',#{query.contractNumber},'%')
+            </if>
+            <if test="query.contractName != null and query.contractName != ''">
+                and contract_name like concat('%',#{query.contractName},'%')
+            </if>
+            <if test="query.status != null">
+                and status = #{query.status}
+            </if>
+            <if test="query.tenantId != null">
+                and tenant_id = #{query.tenantId}
+            </if>
+            <if test="query.statuses != null and query.statuses.size()>0">
+                and status in
+                <foreach collection="query.statuses" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test='query.businessDeptId!=null and query.businessDeptId !="" and query.businessDeptId != "0"'>
+                and business_dept_id = #{query.businessDeptId}
+            </if>
+            AND disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
+        </where>
+        order by create_time desc
+    </select>
 </mapper>

--
Gitblit v1.7.1