From f14c50cb0036d3ddd655ce4e34732ba396a836c4 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 30 五月 2023 12:42:03 +0800
Subject: [PATCH] optimize 统计
---
java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml | 220 ++++++++++++++++++++++---------------------------------
1 files changed, 88 insertions(+), 132 deletions(-)
diff --git a/java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml
index b299091..89f6622 100755
--- a/java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/community/RoomServiceDaoImplMapper.xml
@@ -1,20 +1,17 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="roomServiceDaoImpl">
<!-- 淇濆瓨灏忓尯鎴垮眿淇℃伅 add by wuxw 2018-07-03 -->
<insert id="saveBusinessRoomInfo" parameterType="Map">
- insert into business_building_room(
- fee_coefficient,section,remark,user_id,room_id,layer,built_up_area,operate,room_num,unit_id,b_id,apartment,state,community_id,
- room_type,room_sub_type,room_rent,room_area,start_time,end_time
- ) values (
- #{feeCoefficient},#{section},#{remark},#{userId},#{roomId},#{layer},#{builtUpArea},#{operate},#{roomNum},#{unitId},#{bId},#{apartment},#{state},
- #{communityId},#{roomType},#{roomSubType},#{roomRent},#{roomArea},#{startTime},#{endTime}
- )
+ insert into business_building_room(fee_coefficient, section, remark, user_id, room_id, layer, built_up_area,
+ operate, room_num, unit_id, b_id, apartment, state, community_id,
+ room_type, room_sub_type, room_rent, room_area)
+ values (#{feeCoefficient}, #{section}, #{remark}, #{userId}, #{roomId}, #{layer}, #{builtUpArea}, #{operate},
+ #{roomNum}, #{unitId}, #{bId}, #{apartment}, #{state},
+ #{communityId}, #{roomType}, #{roomSubType}, #{roomRent}, #{roomArea})
</insert>
-
<!-- 鏌ヨ灏忓尯鎴垮眿淇℃伅锛圔usiness锛� add by wuxw 2018-07-03 -->
<select id="getBusinessRoomInfo" parameterType="Map" resultType="Map">
@@ -24,7 +21,7 @@
roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,t.community_id,t.community_id
communityId,t.room_type,t.room_type roomType,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type
roomSubType,
- t.room_rent roomRent,t.room_area roomArea,t.start_time,t.start_time startTime,t.end_time,t.end_time endTime
+ t.room_rent roomRent,t.room_area roomArea
from business_building_room t
where 1 =1
<if test="feeCoefficient !=null and feeCoefficient != ''">
@@ -35,9 +32,6 @@
</if>
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
- </if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
</if>
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
@@ -75,23 +69,16 @@
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
</if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
- </if>
</select>
-
<!-- 淇濆瓨灏忓尯鎴垮眿淇℃伅鑷� instance琛ㄤ腑 add by wuxw 2018-07-03 -->
<insert id="saveRoomInfoInstance" parameterType="Map">
insert into building_room(
fee_coefficient,section,status_cd,remark,user_id,room_id,layer,built_up_area,room_num,unit_id,b_id,apartment,state,community_id,
- room_type,room_sub_type,room_rent,room_area,start_time,end_time
+ room_type,room_sub_type,room_rent,room_area
) select
t.fee_coefficient,t.section,'0',t.remark,t.user_id,t.room_id,t.layer,t.built_up_area,t.room_num,t.unit_id,t.b_id,t.apartment,t.state,t.community_id,
- t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.start_time,t.end_time
+ t.room_type,t.room_sub_type,t.room_rent,t.room_area
from business_building_room t where 1=1
<if test="feeCoefficient !=null and feeCoefficient != ''">
and t.fee_coefficient= #{feeCoefficient}
@@ -101,9 +88,6 @@
</if>
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
- </if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
</if>
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
@@ -139,12 +123,6 @@
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
</if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
- </if>
</insert>
<!-- 鏌ヨ灏忓尯鎴垮眿淇℃伅 add by wuxw 2018-07-03 -->
@@ -153,8 +131,7 @@
statusCd,t.remark,t.user_id,t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area
builtUpArea,t.room_num,t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id
bId,t.apartment,t.state,t.community_id,t.community_id communityId,t.room_type,t.room_type roomType,
- t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea,
- t.start_time,t.start_time startTime,t.end_time,t.end_time endTime
+ t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
from building_room t
where 1 =1
<if test="feeCoefficient !=null and feeCoefficient != ''">
@@ -169,9 +146,7 @@
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
</if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
- </if>
+
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
</if>
@@ -193,6 +168,12 @@
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
</if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
+ </if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
</if>
@@ -210,12 +191,6 @@
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
- </if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
</if>
order by t.create_time desc
<if test="page != -1 and page != null">
@@ -268,12 +243,6 @@
<if test="roomArea !=null and roomArea != ''">
, t.room_area= #{roomArea}
</if>
- <if test="startTime !=null">
- , t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- , t.end_time= #{endTime}
- </if>
where 1=1
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
@@ -303,9 +272,6 @@
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
</if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
- </if>
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
</if>
@@ -320,6 +286,12 @@
</if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -338,12 +310,6 @@
</if>
<if test="roomSubType !=null and roomSubType != ''">
and t.room_sub_type= #{roomSubType}
- </if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
</if>
</select>
@@ -385,8 +351,17 @@
<if test="roomNum !=null and roomNum != ''">
and t.room_num= #{roomNum}
</if>
+ <if test="roomNumLike !=null and roomNumLike != ''">
+ and t.`room_num` like concat('%', #{roomNumLike},'%')
+ </if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -418,12 +393,6 @@
<if test="unitNum !=null and unitNum != ''">
and u.unit_num= #{unitNum}
</if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
- </if>
</select>
<!-- 鏌ヨ灏忓尯鎴垮眿鏁伴噺 add by wuxw 2018-07-03 -->
@@ -453,9 +422,6 @@
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
</if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
- </if>
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
</if>
@@ -470,6 +436,12 @@
</if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -488,12 +460,6 @@
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
- </if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
</if>
and borr.`room_id` is null
</select>
@@ -525,9 +491,6 @@
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
</if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
- </if>
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
</if>
@@ -542,6 +505,12 @@
</if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -561,12 +530,6 @@
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
</if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
- </if>
AND borr.`room_id` is not null
</select>
@@ -578,7 +541,7 @@
t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num`
unitNum,f.floor_num floorNum
,t.room_type roomType,t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type
- roomSubType,t.room_rent roomRent,t.room_area roomArea,t.start_time,t.start_time startTime,t.end_time,t.end_time endTime
+ roomSubType,t.room_rent roomRent,t.room_area roomArea
FROM
building_room t
INNER JOIN building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
@@ -602,9 +565,7 @@
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
</if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
- </if>
+
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
</if>
@@ -619,6 +580,12 @@
</if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -637,12 +604,6 @@
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
- </if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
</if>
and borr.`room_id` is null
<if test="page != -1 and page != null">
@@ -657,7 +618,7 @@
t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.room_num,
t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num` unitNum,
t.room_type roomType,t.room_type,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent
- roomRent,t.room_area roomArea,t.start_time,t.start_time startTime,t.end_time,t.end_time endTime
+ roomRent,t.room_area roomArea
FROM
building_room t
INNER JOIN building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
@@ -681,9 +642,7 @@
<if test="remark !=null and remark != ''">
and t.remark= #{remark}
</if>
- <if test="userId !=null and userId != ''">
- and t.user_id= #{userId}
- </if>
+
<if test="roomId !=null and roomId != ''">
and t.room_id= #{roomId}
</if>
@@ -698,6 +657,12 @@
</if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="bId !=null and bId != ''">
and t.b_id= #{bId}
@@ -716,12 +681,6 @@
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
- </if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
</if>
AND borr.`room_id` is not null
<if test="page != -1 and page != null">
@@ -738,7 +697,7 @@
u.unit_id unitId,f.floor_id floorId,f.floor_num floorNum,f.floor_area floorArea,u.unit_area unitArea,td.name
stateName,t.room_type roomType,t.room_type,t.`community_id` communityId,td1.`name` roomSubTypeName
,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea,
- t.start_time,t.start_time startTime,t.end_time,t.end_time endTime
+ concat(f.floor_num,'-',u.unit_num,'-',t.room_num) roomName
FROM building_room t
inner join building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
inner JOIN f_floor f on u.`floor_id` = f.`floor_id` AND f.`community_id` = t.`community_id` AND f.`status_cd` =
@@ -792,8 +751,17 @@
<if test="roomNum !=null and roomNum != ''">
and t.room_num= #{roomNum}
</if>
+ <if test="roomNumLike !=null and roomNumLike != ''">
+ and t.`room_num` like concat('%', #{roomNumLike},'%')
+ </if>
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
+ </if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
</if>
<if test="unitNum !=null and unitNum != ''">
and u.unit_num= #{unitNum}
@@ -822,13 +790,7 @@
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
</if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
- </if>
- order by f.floor_num ,u.unit_num,t.room_num
+ order by f.seq ,u.unit_num,CONVERT(t.layer,SIGNED),CONVERT(t.room_num,SIGNED) asc
<if test="page != -1 and page != null">
limit #{page},#{row}
</if>
@@ -842,8 +804,8 @@
t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.room_num,
t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num`
unitNum,f.`floor_num` floorNum,t.room_type roomType,t.room_type,f.floor_id floorId
- ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea,
- t.start_time,t.start_time startTime,t.end_time ,t.end_time endTime
+ ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area
+ roomArea,bo.name ownerName
FROM
building_owner bo,building_room t,building_owner_room_rel borr,building_unit u,f_floor f
WHERE
@@ -871,12 +833,15 @@
<if test="name !=null and name != ''">
and bo.name= #{name}
</if>
+ <if test="ownerNameLike !=null and ownerNameLike != ''">
+ and bo.name like concat('%',#{ownerNameLike},'%')
+ </if>
<if test="link !=null and link != ''">
and bo.link= #{link}
</if>
- <!-- <if test="statusCd !=null and statusCd != ''">-->
- <!-- and bo.status_cd= #{statusCd}-->
- <!-- </if>-->
+ <!--<if test="statusCd !=null and statusCd != ''">
+ and bo.status_cd= #{statusCd}
+ </if>-->
<if test="remark !=null and remark != ''">
and bo.remark= #{remark}
</if>
@@ -885,9 +850,6 @@
</if>
<if test="bId !=null and bId != ''">
and bo.b_id= #{bId}
- </if>
- <if test="userId !=null and userId != ''">
- and bo.user_id= #{userId}
</if>
<if test="age !=null and age != ''">
and bo.age= #{age}
@@ -898,12 +860,7 @@
<if test="ownerTypeCd !=null and ownerTypeCd != ''">
and bo.owner_type_cd= #{ownerTypeCd}
</if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
- </if>
+ order by f.floor_num,u.unit_num,t.room_num desc
</select>
<!-- 鏌ヨ灏忓尯鎴垮眿淇℃伅 add by wuxw 2018-07-03 -->
@@ -913,8 +870,7 @@
t.user_id userId,t.room_id,t.room_id roomId,t.layer,t.built_up_area,t.built_up_area builtUpArea,t.room_num,
t.room_num roomNum,t.unit_id,t.unit_id unitId,t.b_id,t.b_id bId,t.apartment,t.state,u.`unit_num` unitNum,
t.room_type roomType,t.room_type,f.floor_num floorNum
- ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea,
- t.start_time,t.start_time startTime,t.end_time,t.end_time endTime
+ ,t.room_sub_type,t.room_rent,t.room_area,t.room_sub_type roomSubType,t.room_rent roomRent,t.room_area roomArea
FROM
building_room t
INNER JOIN building_unit u on t.`unit_id` = u.`unit_id` and u.`status_cd` = '0'
@@ -945,6 +901,12 @@
<if test="unitId !=null and unitId != ''">
and t.unit_id= #{unitId}
</if>
+ <if test="unitIds != null">
+ and t.unit_id in
+ <foreach collection="unitIds" item="item" open="(" close=")" separator=",">
+ #{item}
+ </foreach>
+ </if>
<if test="state !=null and state != ''">
and t.state= #{state}
</if>
@@ -956,12 +918,6 @@
</if>
<if test="communityId !=null and communityId != ''">
and t.community_id= #{communityId}
- </if>
- <if test="startTime !=null">
- and t.start_time= #{startTime}
- </if>
- <if test="endTime !=null">
- and t.end_time= #{endTime}
</if>
<if test="page != -1 and page != null">
limit #{page},#{row}
--
Gitblit v1.8.0