From db55c4b35bc881286e8a1c4797127f63bb2f7499 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 26 二月 2021 13:07:35 +0800
Subject: [PATCH] 优化实收计算错误问题

---
 java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml |   70 ++++++++++++++++++++++++++++------
 1 files changed, 57 insertions(+), 13 deletions(-)

diff --git a/java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml b/java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml
index 1cf32c9..bb565db 100644
--- a/java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml
+++ b/java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml
@@ -110,17 +110,21 @@
 
     <!-- 鏌ヨ杞﹁締绠$悊淇℃伅 add by wuxw 2018-07-03 -->
     <select id="getOwnerCarInfo" parameterType="Map" resultType="Map">
-        select t.car_color,t.car_color carColor,t.car_brand,t.car_brand carBrand,t.car_type car_type,t1.name carType,
+        select t.car_color,t.car_color carColor,t.car_brand,t.car_brand carBrand,t.car_type,t.car_type carType,t1.name
+        carTypeName,
         t.car_num,t.car_num carNum,t.ps_id,t.ps_id psId,t.remark,t.status_cd,t.status_cd statusCd,t.owner_id,
         t.owner_id ownerId,t.b_id,t.b_id bId,t.user_id,t.user_id userId,t.car_id,t.car_id carId ,t.create_time
         createTime,t.community_id communityId,bow.name ownerName,bow.id_card idCard,bow.link,t2.name stateName,
         t.start_time,t.start_time startTime,t.end_time,t.end_time endTime,t.state
         from owner_car t
-        left join  t_dict t1  on t.car_type=t1.status_cd and t1.table_name='owner_car' and t1.table_columns = 'car_type'
-        left join  t_dict t2  on t.state=t2.status_cd and t2.table_name='owner_car' and t2.table_columns = 'state'
-        left join building_owner bow on t.owner_id = bow.member_id and bow.status_cd = '0' and bow.community_id = t.community_id
-        where
-        t.status_cd = '0'
+        left join t_dict t1 on t.car_type=t1.status_cd and t1.table_name='owner_car' and t1.table_columns = 'car_type'
+        left join t_dict t2 on t.state=t2.status_cd and t2.table_name='owner_car' and t2.table_columns = 'state'
+        left join building_owner bow on t.owner_id = bow.member_id and bow.status_cd = '0' and bow.community_id =
+        t.community_id
+        where 1=1
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd = #{statusCd}
+        </if>
         <if test="carColor !=null and carColor != ''">
             and t.car_color= #{carColor}
         </if>
@@ -142,6 +146,12 @@
         <if test="psId !=null and psId != ''">
             and t.ps_id= #{psId}
         </if>
+        <if test="psIds !=null">
+            and t.ps_id in
+            <foreach collection="psIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         <if test="remark !=null and remark != ''">
             and t.remark= #{remark}
         </if>
@@ -151,20 +161,29 @@
         <if test="ownerId !=null and ownerId != ''">
             and t.owner_id= #{ownerId}
         </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and bow.name like '%${ownerName}%'
+        </if>
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
         </if>
-        <if test="userId !=null and userId != ''">
-            and t.user_id= #{userId}
-        </if>
         <if test="carId !=null and carId != ''">
             and t.car_id= #{carId}
+        </if>
+        <if test="carIds !=null">
+            and t.car_id in
+            <foreach collection="carIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
         </if>
         <if test="communityId !=null and communityId != ''">
             and t.community_id= #{communityId}
         </if>
         <if test="state !=null and state != ''">
             and t.state= #{state}
+        </if>
+        <if test="valid == '1'">
+            and t.end_time &gt; now()
         </if>
         order by t.create_time desc
         <if test="page != -1 and page != null ">
@@ -210,6 +229,9 @@
         <if test="endTime !=null ">
             , t.end_time= #{endTime}
         </if>
+        <if test="state !=null ">
+            , t.state= #{state}
+        </if>
         where 1=1
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
@@ -227,7 +249,14 @@
     <select id="queryOwnerCarsCount" parameterType="Map" resultType="Map">
         select count(1) count
         from owner_car t
-        where 1 =1
+        left join t_dict t1 on t.car_type=t1.status_cd and t1.table_name='owner_car' and t1.table_columns = 'car_type'
+        left join t_dict t2 on t.state=t2.status_cd and t2.table_name='owner_car' and t2.table_columns = 'state'
+        left join building_owner bow on t.owner_id = bow.member_id and bow.status_cd = '0' and bow.community_id =
+        t.community_id
+        where 1=1
+        <if test="statusCd !=null and statusCd != ''">
+            and t.status_cd = #{statusCd}
+        </if>
         <if test="carColor !=null and carColor != ''">
             and t.car_color= #{carColor}
         </if>
@@ -239,6 +268,12 @@
         </if>
         <if test="carNum !=null and carNum != ''">
             and t.car_num= #{carNum}
+        </if>
+        <if test="carNums !=null">
+            and t.car_num in
+            <foreach collection="carNums" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
         </if>
         <if test="psId !=null and psId != ''">
             and t.ps_id= #{psId}
@@ -252,14 +287,20 @@
         <if test="ownerId !=null and ownerId != ''">
             and t.owner_id= #{ownerId}
         </if>
+        <if test="ownerName !=null and ownerName != ''">
+            and bow.name like '%${ownerName}%'
+        </if>
         <if test="bId !=null and bId != ''">
             and t.b_id= #{bId}
         </if>
-        <if test="userId !=null and userId != ''">
-            and t.user_id= #{userId}
-        </if>
         <if test="carId !=null and carId != ''">
             and t.car_id= #{carId}
+        </if>
+        <if test="carIds !=null">
+            and t.car_id in
+            <foreach collection="carIds" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
         </if>
         <if test="communityId !=null and communityId != ''">
             and t.community_id= #{communityId}
@@ -267,6 +308,9 @@
         <if test="state !=null and state != ''">
             and t.state= #{state}
         </if>
+        <if test="valid == '1'">
+            and t.end_time &gt; now()
+        </if>
 
 
     </select>

--
Gitblit v1.8.0