From 2535346464dec2b661e79857ebba335355911552 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Wed, 21 Feb 2024 13:52:34 +0800
Subject: [PATCH] 自查+物业项目经理查询优化

---
 src/main/java/org/springblade/modules/taskPlaceSelfCheck/mapper/TaskPlaceSelfCheckMapper.xml |  146 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 125 insertions(+), 21 deletions(-)

diff --git a/src/main/java/org/springblade/modules/taskPlaceSelfCheck/mapper/TaskPlaceSelfCheckMapper.xml b/src/main/java/org/springblade/modules/taskPlaceSelfCheck/mapper/TaskPlaceSelfCheckMapper.xml
index 07c967b..ee56add 100644
--- a/src/main/java/org/springblade/modules/taskPlaceSelfCheck/mapper/TaskPlaceSelfCheckMapper.xml
+++ b/src/main/java/org/springblade/modules/taskPlaceSelfCheck/mapper/TaskPlaceSelfCheckMapper.xml
@@ -4,40 +4,144 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="taskPlaceSelfCheckResultMap"
-               type="org.springblade.modules.taskPlaceSelfCheck.entity.TaskPlaceSelfCheckEntity">
+               type="org.springblade.modules.taskPlaceSelfCheck.vo.TaskPlaceSelfCheckVO">
+        <result property="id" column="id"/>
+        <result property="taskId" column="task_id"/>
+        <result property="taskName" column="task_name"/>
+        <result property="placeName" column="place_name"/>
+        <result property="remark" column="remark"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="createTime" column="create_time"/>
+        <result property="houseCode" column="house_code"/>
+        <result property="rectificationEndTime" column="rectification_end_time"/>
+        <result property="rectificationCompleteTime" column="rectification_complete_time"/>
+        <result property="rectificationFlag" column="rectification_flag"/>
+        <result property="policeStation" column="police_station"/>
+        <result property="rectificationNoticeImgUrl" column="rectification_notice_img_url"/>
+        <result property="signaturePath" column="signature_path"/>
+        <result property="createUser" column="create_user"/>
+        <result property="imageUrls" column="image_urls"/>
+        <result property="status" column="status"/>
+        <result property="deleteFlag" column="delete_flag"/>
+
+        <collection property="placePoiLabelVOList" column="jpid" javaType="java.util.List"
+                    select="selectPlacePoiLabelList"
+                    ofType="org.springblade.modules.place.vo.PlacePoiLabelVO"
+                    autoMapping="true">
+        </collection>
+
+        <collection property="taskPlaceRecordVOList" column="id" select="selectPatrolRecordList"
+                    javaType="java.util.List" ofType="org.springblade.modules.taskPlaceRecord.vo.TaskPlaceRecordVO"
+                    autoMapping="true">
+        </collection>
     </resultMap>
 
 
     <select id="selectTaskPlaceSelfCheckPage" resultMap="taskPlaceSelfCheckResultMap">
-        select * from jczz_task_place_self_check
+        select jpc.*,
+        jp.id jpid,
+        jp.place_name,
+        jp.location,
+        jg.grid_name,
+        jp.principal,
+        jp.principal_phone,
+        jp.nine_type,
+        jp.is_nine,
+        br.town_name,
+        br.village_name,
+        bu.`name`,
+        jpe.legal_tel,
+        jpe.legal_person
+        FROM jczz_task_place_self_check jpc
+        LEFT JOIN jczz_place jp ON jpc.house_code = jp.house_code and jp.is_deleted = 0
+        LEFT JOIN jczz_grid jg ON jg.grid_code = jp.grid_code and jg.is_deleted = 0
+        LEFT JOIN blade_region br ON br.`code` = jg.community_code
+        LEFT JOIN jczz_place_ext jpe ON jpe.place_id = jp.id and jpe.is_deleted = 0
+        LEFT JOIN blade_user bu ON bu.id = jpc.create_user and bu.is_deleted = 0
+        LEFT JOIN jczz_police_affairs_grid jpag on jp.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
         <where>
-            <if test="palce.id != null ">and id = #{palce.id}</if>
-            <if test="palce.taskId != null ">and task_id = #{palce.taskId}</if>
-            <if test="palce.taskName != null  and palce.taskName != ''">and task_name = #{palce.taskName}</if>
-            <if test="palce.placeName != null  and palce.placeName != ''">and place_name = #{palce.placeName}</if>
-            <if test="palce.remark != null  and palce.remark != ''">and remark = #{palce.remark}</if>
-            <if test="palce.updateTime != null ">and update_time = #{palce.updateTime}</if>
-            <if test="palce.createTime != null ">and create_time = #{palce.createTime}</if>
-            <if test="palce.houseCode != null  and palce.houseCode != ''">and house_code = #{palce.houseCode}</if>
-            <if test="palce.rectificationEndTime != null ">and rectification_end_time = #{palce.rectificationEndTime}
+            <if test="palce.id != null ">and jpc.id = #{palce.id}</if>
+            <if test="palce.taskId != null ">and jpc.task_id = #{palce.taskId}</if>
+            <if test="palce.taskName != null  and palce.taskName != ''">and jpc.task_name = #{palce.taskName}</if>
+            <if test="palce.placeName != null  and palce.placeName != ''">and jpc.place_name = #{palce.placeName}</if>
+            <if test="palce.remark != null  and palce.remark != ''">and jpc.remark = #{palce.remark}</if>
+            <if test="palce.updateTime != null ">and jpc.update_time = #{palce.updateTime}</if>
+            <if test="palce.createTime != null ">and jpc.create_time = #{palce.createTime}</if>
+            <if test="palce.houseCode != null  and palce.houseCode != ''">and jpc.house_code = #{palce.houseCode}</if>
+            <if test="palce.rectificationEndTime != null ">and jpc.rectification_end_time =
+                #{palce.rectificationEndTime}
             </if>
-            <if test="palce.rectificationCompleteTime != null ">and rectification_complete_time =
+            <if test="palce.rectificationCompleteTime != null ">and jpc.rectification_complete_time =
                 #{palce.rectificationCompleteTime}
             </if>
-            <if test="palce.rectificationFlag != null ">and rectification_flag = #{palce.rectificationFlag}</if>
-            <if test="palce.policeStation != null  and palce.policeStation != ''">and police_station =
+            <if test="palce.rectificationFlag != null ">and jpc.rectification_flag = #{palce.rectificationFlag}</if>
+            <if test="palce.policeStation != null  and palce.policeStation != ''">and jpc.police_station =
                 #{palce.policeStation}
             </if>
             <if test="palce.rectificationNoticeImgUrl != null  and palce.rectificationNoticeImgUrl != ''">and
-                rectification_notice_img_url = #{palce.rectificationNoticeImgUrl}
+                jpc.rectification_notice_img_url = #{palce.rectificationNoticeImgUrl}
             </if>
-            <if test="palce.signaturePath != null  and palce.signaturePath != ''">and signature_path =
+            <if test="palce.signaturePath != null  and palce.signaturePath != ''">and jpc.signature_path =
                 #{palce.signaturePath}
             </if>
-            <if test="palce.createUser != null ">and create_user = #{palce.createUser}</if>
-            <if test="palce.imageUrls != null  and palce.imageUrls != ''">and image_urls = #{palce.imageUrls}</if>
-            <if test="palce.status != null ">and status = #{palce.status}</if>
-            <if test="palce.deleteFlag != null ">and delete_flag = #{palce.deleteFlag}</if>
+            <if test="palce.createUser != null ">and jpc.create_user = #{palce.createUser}</if>
+            <if test="palce.imageUrls != null  and palce.imageUrls != ''">and jpc.image_urls = #{palce.imageUrls}</if>
+            <if test="palce.status != null ">and jpc.status = #{palce.status}</if>
+            <if test="palce.deleteFlag != null ">and jpc.delete_flag = #{palce.deleteFlag}</if>
+            <if test="isAdministrator==2">
+                <choose>
+                    <when test="palce.roleName != null and palce.roleName != ''">
+                        <if test="palce.roleName=='wgy'">
+                            <choose>
+                                <when test="gridCodeList !=null and gridCodeList.size()>0">
+                                    and jp.grid_code in
+                                    <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+                                        #{code}
+                                    </foreach>
+                                </when>
+                                <otherwise>
+                                    and jp.grid_code in ('')
+                                </otherwise>
+                            </choose>
+                        </if>
+                        <if test="palce.roleName=='mj'">
+                            <choose>
+                                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                                    and jpag.community_code in
+                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")"
+                                             separator=",">
+                                        #{code}
+                                    </foreach>
+                                </when>
+                                <otherwise>
+                                    and jpag.community_code in ('')
+                                </otherwise>
+                            </choose>
+                        </if>
+                    </when>
+                    <otherwise>
+                        <choose>
+                            <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                                and
+                                (
+                                jg.grid_code in
+                                <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                    #{code}
+                                </foreach>
+                                or
+                                jpag.community_code in
+                                <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                    #{code}
+                                </foreach>
+                                )
+                            </when>
+                            <otherwise>
+
+                            </otherwise>
+                        </choose>
+                    </otherwise>
+                </choose>
+            </if>
         </where>
     </select>
 
@@ -95,7 +199,7 @@
 
 
     <select id="selectPatrolRecordList" parameterType="Long"
-            resultType="org.springblade.modules.patrol.vo.PatrolRecordVO">
+            resultType="org.springblade.modules.taskPlaceRecord.vo.TaskPlaceRecordVO">
             select
 	        jpr.id,
 	        jpr.item_id,

--
Gitblit v1.9.3