From 5d5cd3ad979a0b85ab8c7034dcad1663fdcf71be Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 01 Dec 2023 14:18:53 +0800
Subject: [PATCH] 文章通过范围查询
---
src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml | 127 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 123 insertions(+), 4 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 93129d7..a6e9c26 100644
--- a/src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml
+++ b/src/main/java/org/springblade/modules/house/mapper/HouseRentalMapper.xml
@@ -31,11 +31,39 @@
</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
+ SELECT jhr.*,jda.address_name as houseName,b.tenantName,b.phone,
+ concat(jh.district_name," ",jh.building," ",unit," ",room) as address,
+ case when TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )>= 8 then 1
+ when TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )<4 then 3
+ else 2 end as dldType
FROM jczz_house_rental jhr
- LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jhr.house_code
+ JOIN jczz_doorplate_address jda ON jda.address_code = jhr.house_code
+ JOIN jczz_house jh ON jh.house_code = jhr.house_code
LEFT JOIN (
SELECT jht.housing_rental_id,jht.name as tenantName,jht.phone
FROM jczz_house_tenant jht RIGHT JOIN (
@@ -69,8 +97,14 @@
<if test="vo.tenantName != null and vo.tenantName != ''">
AND b.tenantName LIKE CONCAT('%',#{vo.tenantName},'%')
</if>
- <if test="vo.tenantName != null and vo.tenantName != ''">
- AND b.tenantName LIKE CONCAT('%',#{vo.tenantName},'%')
+ <if test="vo.tenantRelationship != null">
+ AND jhr.tenant_relationship = #{vo.tenantRelationship}
+ </if>
+ <if test="vo.houseStatus != null">
+ AND jhr.house_status = #{vo.houseStatus}
+ </if>
+ <if test="vo.rentalUse != null">
+ AND jhr.rental_use = #{vo.rentalUse}
</if>
<if test="vo.dldType != null">
<if test="vo.dldType ==1 ">
@@ -172,5 +206,90 @@
<include refid="filterHouseGrid"/>
</select>
+ <!--导出租赁信息-->
+ <select id="export" resultType="org.springblade.modules.house.excel.HouseRentalExcel">
+ SELECT
+ jhr.tenant_relationship,jhr.rental_time,jhr.due_time,jhr.house_status,
+ jhr.rental_use,jhr.audit_status,jhr.remark,
+ jda.address_name as houseName,b.tenantName,b.phone,
+ concat(jh.district_name," ",jh.building," ",unit," ",room) as address,
+ case when TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )>= 8 then 1
+ when TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )<4 then 3
+ else 2 end as dldType
+ FROM jczz_house_rental jhr
+ JOIN jczz_doorplate_address jda ON jda.address_code = jhr.house_code
+ JOIN jczz_house jh ON jh.house_code = jhr.house_code and jh.is_deleted = 0
+ LEFT JOIN (
+ SELECT jht.housing_rental_id,jht.name as tenantName,jht.phone
+ FROM jczz_house_tenant jht RIGHT JOIN (
+ SELECT MAX(ID) as id,housing_rental_id
+ FROM jczz_house_tenant
+ WHERE is_deleted = 0
+ <if test="vo.tenantName != null and vo.tenantName != ''">
+ AND name LIKE CONCAT('%',#{vo.tenantName},'%')
+ </if>
+ GROUP BY housing_rental_id
+ ) a ON a.id = jht.id
+ ) 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 ==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')>= date_format(now(),'%Y-%m-%d')
+ </if>
+ <if test="vo.auditStatus ==20">
+ AND TIMESTAMPDIFF( day, now(), jhr.due_time )<30
+ </if>
+ <if test="vo.auditStatus ==30">
+ AND date_format(jhr.due_time,'%Y-%m-%d')< date_format(now(),'%Y-%m-%d')
+ </if>
+ </if>
+ <if test="vo.tenantName != null and vo.tenantName != ''">
+ AND b.tenantName LIKE CONCAT('%',#{vo.tenantName},'%')
+ </if>
+ <if test="vo.tenantRelationship != null">
+ AND jhr.tenant_relationship = #{vo.tenantRelationship}
+ </if>
+ <if test="vo.houseStatus != null">
+ AND jhr.house_status = #{vo.houseStatus}
+ </if>
+ <if test="vo.rentalUse != null">
+ AND jhr.rental_use = #{vo.rentalUse}
+ </if>
+ <if test="vo.dldType != null">
+ <if test="vo.dldType ==1 ">
+ AND TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )>= 8
+ </if>
+ <if test="vo.dldType ==2 ">
+ AND 4 <= TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )
+ AND TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )<=8
+ </if>
+ <if test="vo.dldType ==3 ">
+ AND TIMESTAMPDIFF( MONTH, jhr.rental_time, jhr.due_time )<4
+ </if>
+ </if>
+ <include refid="filterHouseGrid"/>
+ </select>
+
+
+ <select id="getStatisticsCount" resultType="java.lang.Integer">
+ SELECT
+ count(1)
+ FROM
+ jczz_grid_range jgr
+ LEFT JOIN jczz_grid jg ON jg.id = jgr.grid_id
+ LEFT JOIN jczz_house_rental jhr on jhr.house_code=jgr.house_code
+ WHERE
+ jg.is_deleted = 0
+ and jhr.audit_status = 0
+ AND jg.user_id = #{userId}
+
+ </select>
+
</mapper>
--
Gitblit v1.9.3