From 9f8f9d13c42ca8cdccbf351069082a5fdccef2e4 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Mon, 25 Mar 2024 17:30:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml | 177 ++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 127 insertions(+), 50 deletions(-)
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
index 3037f1a..ab0c9fc 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
@@ -41,6 +41,7 @@
<result property="lat" column="lat"/>
<result property="address" column="address"/>
<result property="viewType" column="view_type"/>
+ <result property="houseFlag" column="house_flag"/>
<collection property="taskRepairStepList" column="id" select="selectTaskRepairStepList"
@@ -122,7 +123,8 @@
lng,
lat,
address,
- view_type
+ view_type,
+ house_flag
from jczz_task_report_for_repairs
</sql>
@@ -152,16 +154,38 @@
jtrfr.lat,
jtrfr.address,
jtrfr.view_type,
+ jtrfr.house_flag,
+ br.town_name streetName,
+ jg.grid_name,
+ jda.aoi_name,
+ br.village_name communityName,
jda.address_name as addressName
from jczz_task_report_for_repairs jtrfr
left join jczz_doorplate_address jda on jda.address_code = jtrfr.address_code
- left join jczz_grid_range jgr on jgr.house_code = jtrfr.address_code
- left join jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+ LEFT JOIN jczz_house jh on jh.house_code=jtrfr.address_code
+ 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_place jp on jtrfr.address_code = jp.house_code and jp.is_deleted = 0
where jtrfr.is_deleted = 0
<if test="vo.createUser != null and vo.createUser != ''">
AND jtrfr.create_user = #{vo.createUser}
</if>
+
+ <if test="vo.streetName != null and vo.streetName != ''">
+ AND br.town_name like concat('%',#{vo.streetName},'%')
+ </if>
+ <if test="vo.communityName != null and vo.communityName != ''">
+ AND br.village_name like concat('%',#{vo.communityName},'%')
+ </if>
+
+ <if test="vo.gridName != null and vo.gridName != ''">
+ AND jg.grid_name like concat('%',#{vo.gridName},'%')
+ </if>
+
+ <if test="vo.aoiName != null and vo.aoiName != ''">
+ AND jda.aoi_name like concat('%',#{vo.aoiName},'%')
+ </if>
+
<if test="vo.type != null">
AND jtrfr.type = #{vo.type}
</if>
@@ -188,33 +212,68 @@
AND jtrfr.create_time BETWEEN #{vo.startTime} and #{vo.endTime}
</if>
<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}
+ <!-- 物业和居民 -->
+ <if test="vo.roleType !=null and (vo.roleType == 'wy' or vo.roleType == 'inhabitant')">
+ <if test="aoiCodeList!=null and aoiCodeList.size()>0">
+ and (
+ jda.aoi_code in
+ <foreach collection="aoiCodeList" item="item" separator="," open="(" close=")">
+ #{item}
</foreach>
- </when>
- <otherwise>
- and jg.community_code in ('')
- </otherwise>
- </choose>
- </if>
- <if test="vo.roleName!=null and vo.roleName!=''">
- <if test="vo.roleName=='网格员'">
+ or
+ jp.aoi_code in
+ <foreach collection="aoiCodeList" item="item" separator="," open="(" close=")">
+ #{item}
+ </foreach>
+ )
+ </if>
+
+ <if test="vo.roleType == 'wy' and vo.confirmUserId != null ">
+ or jtrfr.confirm_user_id = #{vo.confirmUserId}
+ </if>
+ </if>
+ <!-- 其他 -->
+ <if test="vo.roleType ==null">
<choose>
- <when test="list != null and list.size()>0">
- and (jda.address_code in
- <foreach collection="list" item="houseCode" separator="," open="(" close=")">
- #{houseCode}
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and (
+ jg.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
</foreach>
- or jtrfr.confirm_user_id = #{vo.confirmUserId})
+ or
+ jp.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </when>
+ </choose>
+ </if>
+ <!-- 网格员 -->
+ <if test="vo.roleName =='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and (
+ jg.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ or
+ jp.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
</when>
<otherwise>
- and (jda.address_code in ('')
- or jtrfr.confirm_user_id = #{vo.confirmUserId})
+ and jg.grid_code in ('')
</otherwise>
</choose>
+
+ <if test="vo.confirmUserId != null ">
+ or jtrfr.confirm_user_id = #{vo.confirmUserId}
+ </if>
</if>
</if>
ORDER BY jtrfr.create_time DESC
@@ -258,7 +317,7 @@
jczz_doorplate_address jda
LEFT JOIN jczz_community jc ON jc.CODE = jda.nei_code
WHERE
- jc.res_police_user_id = #{userId})
+ jc.res_police_user_id like concat('%',#{userId},'%'))
)
</if>
</select>
@@ -278,19 +337,7 @@
<if test="houseCode != null and houseCode != ''">
and jtrfr.address_code = #{houseCode}
</if>
- <if test="isAdministrator==2">
- <choose>
- <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
- and jda.nei_code in
- <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
- #{code}
- </foreach>
- </when>
- <otherwise>
- and jda.nei_code in ('')
- </otherwise>
- </choose>
- </if>
+
</select>
@@ -299,28 +346,58 @@
count( 1 )
FROM
jczz_task_report_for_repairs jtr
- LEFT JOIN jczz_doorplate_address jda ON jtr.address_code = jda.address_code
+ LEFT JOIN jczz_house jh ON jh.house_code = jtr.address_code
+ LEFT JOIN jczz_place jp ON jtr.address_code = jp.house_code
<where>
+ and jtr.is_deleted = 0
+ and jtr.confirm_flag = 1
- <if test="neiCode != null and neiCode != ''">
- and jda.nei_code = #{neiCode}
- </if>
- <if test="userId != null">
- AND jtr.address_code IN (
+ <if test="userId != null and roleName == 'wgy'" >
+ AND (
+ jp.grid_code IN (
SELECT
- jgr.house_code
+ jg.grid_code
FROM
- jczz_grid_range jgr
- LEFT JOIN jczz_grid jg ON jg.id = jgr.grid_id
+ jczz_grid jg
LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
WHERE
jg.is_deleted = 0
- AND jgm.user_id = #{userId} )
+ AND jgm.user_id = #{userId}
+ )
+ OR jh.grid_code IN (
+ SELECT
+ jg.grid_code
+ FROM
+ jczz_grid jg
+ LEFT JOIN jczz_gridman jgm ON jg.id = jgm.grid_id
+ WHERE
+ jg.is_deleted = 0
+ AND jgm.user_id = #{userId}
+ ))
</if>
- and jtr.is_deleted = 0
- and jtr.confirm_flag = 1
- </where>
+ <if test="userId != null and roleName == 'mj'">
+ AND (
+ jp.jw_grid_code IN (
+ SELECT
+ jpag.jw_grid_code
+ FROM
+ jczz_police_affairs_grid jpag
+ WHERE
+ jpag.is_deleted = 0
+ AND jpag.police_user_id = #{userId}
+ )
+ OR jh.jw_grid_code IN (
+ SELECT
+ jpag.jw_grid_code
+ FROM
+ jczz_police_affairs_grid jpag
+ WHERE
+ jpag.is_deleted = 0
+ AND jpag.police_user_id = #{userId}
+ ))
+ </if>
+ </where>
</select>
--
Gitblit v1.9.3