From 8f5aeec641d916806553ef9772d55e17e93db150 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Mon, 15 Jul 2024 18:28:39 +0800
Subject: [PATCH] 代码优化

---
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml |  123 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 123 insertions(+), 0 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 be111d3..363dd84 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -640,4 +640,127 @@
     </select>
 
 
+    <select id="selectTaskPageByPersonCount" resultType="java.lang.Integer">
+        SELECT
+        count(1)
+        FROM
+        jczz_task jt
+        LEFT JOIN jczz_house jh ON jt.house_code=jh.house_code and jh.is_deleted = 0
+        LEFT JOIN blade_user bu on bu.id = jt.create_user and bu.is_deleted = 0
+        LEFT JOIN jczz_grid jg on jg.grid_code = jh.grid_code and jg.is_deleted = 0
+        LEFT JOIN blade_region br on br.code = jg.community_code
+        LEFT JOIN jczz_task_bail_reporting_event jtbre on jtbre.task_id = jt.id
+        <where>
+            <if test="isAdministrator==2">
+                <choose>
+                    <when test="task.roleName != null and task.roleName != ''">
+                        <if test="task.roleName=='wgy'">
+                            <choose>
+                                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                                    and jh.grid_code in
+                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                        #{code}
+                                    </foreach>
+                                </when>
+                                <otherwise>
+                                    and jh.grid_code in ('')
+                                </otherwise>
+                            </choose>
+                        </if>
+                        <if test="task.roleName=='mj' and isAdministrator==2">
+                            <choose>
+                                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                                    and br.village_code in
+                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                        #{code}
+                                    </foreach>
+                                </when>
+                                <otherwise>
+                                    and br.village_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
+                                br.village_code in
+                                <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                    #{code}
+                                </foreach>
+                                )
+                            </when>
+                            <otherwise>
+                                and
+                                (
+                                jg.grid_code in ('') or br.village_code in ('')
+                                )
+                            </otherwise>
+                        </choose>
+                    </otherwise>
+                </choose>
+            </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 jh.district_code = #{task.aoiCode}
+            </if>
+            <if test="task.neiCode != null and task.neiCode != null">
+                and jg.community_code = #{task.neiCode}
+            </if>
+            <if test="task.communityCode != null and task.communityCode != null">
+                and jg.community_code = #{task.communityCode}
+            </if>
+            <if test="task.communityName != null and task.communityName != null">
+                and br.name like concat('%', #{task.communityName}, '%')
+            </if>
+            <if test="task.streetCode != null and task.streetCode != null">
+                and br.town_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.districtName != null and task.districtName != null">
+                and jh.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
+            order by jt.create_time desc
+        </where>
+
+    </select>
+
+
 </mapper>

--
Gitblit v1.9.3