From 016e47ea961d84a186db0bbd45cd6d7eaaa57bc3 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Fri, 26 Jan 2024 16:30:20 +0800
Subject: [PATCH] 文章添加小区id 字段

---
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml |  176 ++++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 158 insertions(+), 18 deletions(-)

diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
index b9040d7..0f0be63 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -14,6 +14,7 @@
         <result column="update_time" property="updateTime"/>
         <result column="update_user" property="updateUser"/>
         <result column="status" property="status"/>
+        <result column="source" property="source"/>
         <result column="is_deleted" property="isDeleted"/>
         <result column="house_code" property="houseCode"/>
         <result column="report_type" property="reportType"/>
@@ -23,12 +24,12 @@
     <select id="selectTaskPage" resultMap="taskResultMap">
         SELECT
         IFNULL( jda.address_name, jp.location ) AS address_name,
-        jgr.district_code aoiCode,
+        IFNULL( jgr.district_code, ' ' ) aoiCode,
         jda.region_code,
         jg.community_code neiCode,
         jc.street_code streetCode,
-        bu.name realName,
-        bu.phone,
+        jp.principal as realName,
+        jp.principal_phone as phone,
         jt.id,
         jt.NAME,
         jt.type,
@@ -39,19 +40,18 @@
         jt.update_time,
         jt.update_user,
         jt.STATUS,
-        jt.tenant_id,
-        jt.create_dept,
+        jt.source,
         jt.is_deleted,
         jt.house_code,
         jt.report_type
         FROM
         jczz_task jt
         LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jt.house_code
-        LEFT JOIN jczz_place jp ON jp.house_code = jt.house_code
-        LEFT JOIN blade_user bu on bu.id = jt.create_user
+        LEFT JOIN jczz_place jp ON locate(jt.house_code,jp.house_code)>0 and jp.is_deleted = 0
+        LEFT JOIN blade_user bu on bu.id = jt.create_user and bu.is_deleted = 0
         LEFT JOIN jczz_grid_range jgr on jgr.house_code= jt.house_code
-        LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id
-        LEFT JOIN jczz_community jc on jc.`code`= jg.community_code
+        LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+        LEFT JOIN jczz_community jc on jc.`code`= jg.community_code and jc.is_deleted = 0
         <where>
             <if test="task.userId != null and task.userId != ''">
                 AND jt.house_code IN (
@@ -63,8 +63,18 @@
                 LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
                 WHERE
                 jg.is_deleted = 0
-                <if test="task.communityCode != null and task.communityCode != ''">
-                    and jg.community_code = #{task.communityCode}
+                <if test="isAdministrator==2">
+                    <choose>
+                        <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                            and jg.community_code in
+                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                #{code}
+                            </foreach>
+                        </when>
+                        <otherwise>
+                            and jg.community_code in ('')
+                        </otherwise>
+                    </choose>
                 </if>
                 AND jgm.user_id = #{task.userId} )
             </if>
@@ -81,16 +91,28 @@
                 and jg.community_code = #{task.neiCode}
             </if>
 
+            <if test="task.communityName != null and task.communityName != null">
+                and jc.name like concat('%', #{task.communityName}, '%')
+            </if>
+
             <if test="task.streetCode != null and task.streetCode != null">
                 and jc.street_code = #{task.streetCode}
             </if>
 
             <if test="task.realName != null and task.realName != null">
-                and bu.name = like concat('%', #{task.realName}, '%')
+                and bu.name like concat('%', #{task.realName}, '%')
             </if>
 
             <if test="task.phone != null and task.phone != null">
-                and bu.phone = like concat('%', #{task.phone}, '%')
+                and bu.phone like concat('%', #{task.phone}, '%')
+            </if>
+
+            <if test="task.communityName != null and task.communityName != null">
+                and jc.name like concat('%', #{task.communityName}, '%')
+            </if>
+
+            <if test="task.districtName != null and task.districtName != null">
+                and jgr.district_name like concat('%', #{task.districtName}, '%')
             </if>
 
             <if test="task.frequency != null and task.frequency != ''">
@@ -106,8 +128,6 @@
             <if test="task.createUser != null ">and jt.create_user = #{task.createUser}</if>
             <if test="task.updateTime != null ">and jt.update_time = #{task.updateTime}</if>
             <if test="task.updateUser != null ">and jt.update_user = #{task.updateUser}</if>
-            <if test="task.tenantId != null  and task.tenantId != ''">and jt.tenant_id = #{task.tenantId}</if>
-            <if test="task.createDept != null ">and jt.create_dept = #{task.createDept}</if>
             <if test="task.isDeleted != null ">and jt.is_deleted = #{task.isDeleted}</if>
             <if test="task.houseCode != null  and task.houseCode != ''">and jt.house_code = #{task.houseCode}</if>
             <if test="task.startTime != null and task.startTime != '' and task.endTime != null and task.endTime != '' ">
@@ -175,13 +195,11 @@
                 AND jgm.user_id = #{userId} )
             </if>
         </where>
-
         order by jt.create_time desc
     </select>
 
 
     <select id="selectTaskPageBy" resultType="org.springblade.modules.task.vo.TaskVO">
-
         SELECT
         jt.* ,
         jda.address_name
@@ -198,11 +216,133 @@
                 AND jt.report_type in (2,3,6)
             </if>
             <if test="task.userId != null and task.userId != ''">
-                AND jc.res_police_user_id = #{task.userId}
+                AND jc.res_police_user_id like concat('%',#{task.userId},'%')
+            </if>
+            <if test="isAdministrator==2">
+                <choose>
+                    <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                        and jc.code in
+                        <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                            #{code}
+                        </foreach>
+                    </when>
+                    <otherwise>
+                        and jc.code in ('')
+                    </otherwise>
+                </choose>
             </if>
         </where>
+    </select>
 
+    <select id="getBailReportingPage" resultType="org.springblade.modules.task.vo.TaskVO">
+        SELECT
+        IFNULL( jda.address_name, jp.location ) AS address_name,
+        jtbre.apply_name,
+        jgr.district_code aoiCode,
+        jda.region_code,
+        jg.community_code neiCode,
+        jc.street_code streetCode,
+        bu.name realName,
+        bu.phone,
+        jt.id,
+        jt.NAME,
+        jt.type,
+        jt.frequency,
+        jt.remark,
+        jt.create_time,
+        jt.create_user,
+        jt.update_time,
+        jt.update_user,
+        jt.STATUS,
+        jt.source,
+        jt.is_deleted,
+        jt.house_code,
+        jt.report_type
+        FROM
+        jczz_task jt
+        LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jt.house_code
+        LEFT JOIN jczz_place jp ON locate(jt.house_code,jp.house_code)>0 and jp.is_deleted = 0
+        LEFT JOIN blade_user bu on bu.id = jt.create_user and bu.is_deleted = 0
+        LEFT JOIN jczz_grid_range jgr on jgr.house_code= jt.house_code
+        LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+        LEFT JOIN jczz_community jc on jc.`code`= jg.community_code and jc.is_deleted = 0
+        LEFT JOIN jczz_task_bail_reporting_event jtbre on jtbre.task_id = jt.id and jtbre.is_deleted = 0
+        <where>
+            <if test="task.userId != null and task.userId != ''">
+                AND jt.house_code IN (
+                SELECT
+                jgr.house_code
+                FROM
+                jczz_grid_range jgr
+                LEFT JOIN jczz_grid jg ON jg.id = jgr.grid_id
+                LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
+                WHERE
+                jg.is_deleted = 0
+                <if test="task.communityCode != null and task.communityCode != ''">
+                    and jg.community_code = #{task.communityCode}
+                </if>
+                AND jgm.user_id = #{task.userId} )
+            </if>
 
+            <if test="task.status != null and task.status != null">
+                and jt.status = #{task.status}
+            </if>
+
+            <if test="task.aoiCode != null and task.aoiCode != null">
+                and jgr.district_code = #{task.aoiCode}
+            </if>
+
+            <if test="task.neiCode != null and task.neiCode != null">
+                and jg.community_code = #{task.neiCode}
+            </if>
+
+            <if test="task.streetCode != null and task.streetCode != null">
+                and jc.street_code = #{task.streetCode}
+            </if>
+
+            <if test="task.realName != null and task.realName != null">
+                and bu.name like concat('%', #{task.realName}, '%')
+            </if>
+
+            <if test="task.phone != null and task.phone != null">
+                and bu.phone like concat('%', #{task.phone}, '%')
+            </if>
+
+            <if test="task.communityName != null and task.communityName != null">
+                and jc.name like concat('%', #{task.communityName}, '%')
+            </if>
+
+            <if test="task.districtName != null and task.districtName != null">
+                and jgr.district_name like concat('%', #{task.districtName}, '%')
+            </if>
+
+            <if test="task.frequency != null and task.frequency != ''">
+                and jt.frequency = #{task.frequency}
+            </if>
+            <if test="task.name != null and task.name != ''">
+                and jt.name like concat('%', #{task.name}, '%')
+            </if>
+            <if test="task.id != null ">and jt.id = #{task.id}</if>
+            <if test="task.type != null ">and jt.type = #{task.type}</if>
+            <if test="task.remark != null  and task.remark != ''">and jt.remark = #{task.remark}</if>
+            <if test="task.createTime != null ">and jt.create_time = #{task.createTime}</if>
+            <if test="task.createUser != null ">and jt.create_user = #{task.createUser}</if>
+            <if test="task.updateTime != null ">and jt.update_time = #{task.updateTime}</if>
+            <if test="task.updateUser != null ">and jt.update_user = #{task.updateUser}</if>
+            <if test="task.isDeleted != null ">and jt.is_deleted = #{task.isDeleted}</if>
+            <if test="task.houseCode != null  and task.houseCode != ''">and jt.house_code = #{task.houseCode}</if>
+            <if test="task.startTime != null and task.startTime != '' and task.endTime != null and task.endTime != '' ">
+                AND jt.create_time BETWEEN #{task.startTime} and #{task.endTime}
+            </if>
+            <!-- 取保候审 或 报事报修 -->
+            <if test="task.reportType != null and task.reportType != 2 ">
+                and jt.report_type = #{task.reportType}
+            </if>
+
+            and jt.is_deleted = 0
+            and jt.house_code is not null
+            order by jt.create_time desc
+        </where>
     </select>
 
 

--
Gitblit v1.9.3