From 4ffde981d9f5a643888e85b9fde6515a9e29b020 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Thu, 16 Nov 2023 20:12:05 +0800
Subject: [PATCH] 住户管理代码

---
 src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml |   84 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 81 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml b/src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml
index c70c3f1..851e4af 100644
--- a/src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml
+++ b/src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml
@@ -31,6 +31,29 @@
         </collection>
     </resultMap>
 
+
+    <sql id="selectHouseRental">
+        select
+            id,
+            house_code,
+            tenant_relationship,
+            rental_time,
+            due_time,
+            termination_time,
+            house_status,
+            rental_use,
+            audit_status,
+            file_urls,
+            create_user,
+            create_time,
+            update_user,
+            update_time,
+            remark,
+            is_deleted
+        from
+            jczz_house_rental
+    </sql>
+
     <!--自定义列表查询-->
     <select id="selectHouseRentalPage" resultType="org.springblade.modules.house.vo.HouseRentalTenantVO">
         SELECT jhr.*,jda.address_name as houseName,b.tenantName,b.phone
@@ -50,8 +73,11 @@
         ) b ON b.housing_rental_id = jhr.id
         WHERE jhr.is_deleted = 0
         <if test="vo.auditStatus != null and vo.auditStatus != ''">
-            <if test="vo.auditStatus ==0 || vo.auditStatus ==1">
-                AND jhr.audit_status  = #{vo.auditStatus}
+            <if test="vo.auditStatus ==1">
+                AND jhr.audit_status  = 1
+            </if>
+            <if test="vo.auditStatus ==2">
+                AND jhr.audit_status  = 0
             </if>
             <if test="vo.auditStatus ==10">
                 AND date_format(jhr.due_time,'%Y-%m-%d')&gt;= date_format(now(),'%Y-%m-%d')
@@ -81,6 +107,7 @@
                 AND TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )&lt;4
             </if>
         </if>
+        <include refid="filterHouseGrid"/>
     </select>
 
     <!--查询房屋出租情况-->
@@ -96,20 +123,42 @@
         and house_code = #{code}
     </select>
 
+    <sql id="filterHouseGrid">
+        <if test="vo.roleName!=null and vo.roleName!=''">
+            <if test="vo.roleName=='网格员'">
+                <choose>
+                    <when test="list != null and list.size()>0">
+                        and jda.address_code in
+                        <foreach collection="list" item="houseCode" separator ="," open="("  close=")">
+                            #{houseCode}
+                        </foreach>
+                    </when>
+                    <otherwise>
+                        and jda.address_code in ('')
+                    </otherwise>
+                </choose>
+            </if>
+        </if>
+    </sql>
+
     <select id="getStatistics" resultType="org.springblade.modules.house.vo.HouseRentalStatistics">
             SELECT
             'longTerm' as term,count(1) total,ifnull(sum(num),0) as personNum
             FROM jczz_house_rental jhr
             LEFT JOIN
             (
-                select housing_rental_id,count(*) num from jczz_house_tenant where is_deleted = 0 GROUP BY housing_rental_id
+                select housing_rental_id,count(*) num from jczz_house_tenant
+                where is_deleted = 0
+                GROUP BY housing_rental_id
             ) jht
             ON jht.housing_rental_id = jhr.id
+            LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jhr.house_code
             WHERE jhr.is_deleted = 0
             AND TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )>= 8
             <if test="vo.auditStatus != null and vo.auditStatus != '' or vo.auditStatus == 0 ">
                 AND jhr.audit_status  = #{vo.auditStatus}
             </if>
+            <include refid="filterHouseGrid"/>
 
             UNION ALL
 
@@ -120,11 +169,13 @@
             select housing_rental_id,count(*) num from jczz_house_tenant where is_deleted = 0 GROUP BY housing_rental_id
             ) jht
             ON jht.housing_rental_id = jhr.id
+            LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jhr.house_code
             WHERE jhr.is_deleted = 0
             AND  4 &lt;= TIMESTAMPDIFF( MONTH, rental_time, due_time ) AND TIMESTAMPDIFF( MONTH, rental_time, due_time )&lt;=8
             <if test="vo.auditStatus != null and vo.auditStatus != '' or vo.auditStatus == 0 ">
                 AND jhr.audit_status  = #{vo.auditStatus}
             </if>
+            <include refid="filterHouseGrid"/>
 
             UNION ALL
 
@@ -135,11 +186,38 @@
             select housing_rental_id,count(*) num from jczz_house_tenant where is_deleted = 0 GROUP BY housing_rental_id
             ) jht
             ON jht.housing_rental_id = jhr.id
+            LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jhr.house_code
             WHERE jhr.is_deleted = 0
             AND TIMESTAMPDIFF( MONTH, rental_time, due_time )&lt;4
             <if test="vo.auditStatus != null and vo.auditStatus != '' or vo.auditStatus == 0 ">
                 AND jhr.audit_status  = #{vo.auditStatus}
             </if>
+            <include refid="filterHouseGrid"/>
+    </select>
+
+
+    <select id="export" resultType="org.springblade.modules.system.excel.HouseRentalExcel">
+
+        <include refid="selectHouseRental"/>
+        <where>
+            <if test="id != null "> and id = #{id}</if>
+            <if test="houseCode != null  and houseCode != ''"> and house_code = #{houseCode}</if>
+            <if test="tenantRelationship != null "> and tenant_relationship = #{tenantRelationship}</if>
+            <if test="rentalTime != null "> and rental_time = #{rentalTime}</if>
+            <if test="dueTime != null "> and due_time = #{dueTime}</if>
+            <if test="terminationTime != null "> and termination_time = #{terminationTime}</if>
+            <if test="houseStatus != null "> and house_status = #{houseStatus}</if>
+            <if test="rentalUse != null "> and rental_use = #{rentalUse}</if>
+            <if test="auditStatus != null "> and audit_status = #{auditStatus}</if>
+            <if test="fileUrls != null  and fileUrls != ''"> and file_urls = #{fileUrls}</if>
+            <if test="createUser != null "> and create_user = #{createUser}</if>
+            <if test="createTime != null "> and create_time = #{createTime}</if>
+            <if test="updateUser != null "> and update_user = #{updateUser}</if>
+            <if test="updateTime != null "> and update_time = #{updateTime}</if>
+            <if test="remark != null  and remark != ''"> and remark = #{remark}</if>
+            <if test="isDeleted != null "> and is_deleted = #{isDeleted}</if>
+        </where>
+
     </select>
 
 

--
Gitblit v1.9.3