From c10d6358b9f014375a13821465bc978d0c0da22e Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Wed, 29 May 2024 17:17:08 +0800
Subject: [PATCH] 通过E呼即办数据统计
---
src/main/java/org/springblade/modules/grid/mapper/GridWorkLogMapper.xml | 84 ++++++++++++++++++++++++++++++++----------
1 files changed, 64 insertions(+), 20 deletions(-)
diff --git a/src/main/java/org/springblade/modules/grid/mapper/GridWorkLogMapper.xml b/src/main/java/org/springblade/modules/grid/mapper/GridWorkLogMapper.xml
index bbc4929..4193d35 100644
--- a/src/main/java/org/springblade/modules/grid/mapper/GridWorkLogMapper.xml
+++ b/src/main/java/org/springblade/modules/grid/mapper/GridWorkLogMapper.xml
@@ -7,17 +7,18 @@
select
jgwl.*,
jh.name,jh.phone_number as phone,
- if(jda.id is not null,jda.address_name,jh.current_address) as address,
- jda.town_street_name AS townName,
- jda.nei_name AS neiName,
+ jh.current_address AS address,
+ br.town_name AS townName,
+ br.name AS neiName,
jg.grid_name,
bu.real_name as createUserName
from jczz_grid_work_log jgwl
left join jczz_household jh on jgwl.household_id = jh.id and jh.is_deleted = 0
- LEFT JOIN jczz_doorplate_address jda ON jda.address_code = jh.house_code
- LEFT JOIN jczz_grid_range jgr on jgr.house_code=jda.address_code
- LEFT JOIN jczz_grid jg on jg.id = jgr.grid_id and jg.is_deleted = 0
+ left join jczz_house jhs on jhs.house_code = jh.house_code and jhs.is_deleted = 0
+ LEFT JOIN jczz_grid jg on jhs.grid_code = jg.grid_code and jg.is_deleted = 0
LEFT JOIN blade_user bu on bu.id = jgwl.create_user and bu.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jhs.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ left join blade_region br on br.code = jpag.community_code
where jgwl.is_deleted = 0
<if test="gridWorkLog.type !=null">
and jgwl.type = #{gridWorkLog.type}
@@ -31,9 +32,6 @@
<if test="gridWorkLog.personType !=null">
and jgwl.person_type = #{gridWorkLog.personType}
</if>
- <if test="gridWorkLog.gridId !=null">
- and jgr.grid_id = #{gridWorkLog.gridId}
- </if>
<if test="gridWorkLog.name !=null and gridWorkLog.name!=''">
and jh.name like concat('%',#{gridWorkLog.name},'%')
</if>
@@ -44,21 +42,67 @@
and jh.phone_number like concat('%',#{gridWorkLog.phone},'%')
</if>
<if test="gridWorkLog.townName!=null and gridWorkLog.townName!=''">
- and jda.town_street_name like concat('%',#{gridWorkLog.townName},'%')
+ and br.town_name like concat('%',#{gridWorkLog.townName},'%')
</if>
<if test="gridWorkLog.neiName!=null and gridWorkLog.neiName!=''">
- and jda.nei_name like concat('%',#{gridWorkLog.neiName},'%')
+ and br.name like concat('%',#{gridWorkLog.neiName},'%')
+ </if>
+ <if test="gridWorkLog.gridId !=null">
+ and jg.id = #{gridWorkLog.gridId}
</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}
- </foreach>
+ <when test="gridWorkLog.roleName != null and gridWorkLog.roleName != ''">
+ <if test="gridWorkLog.roleName=='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and jhs.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jhs.grid_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ <if test="gridWorkLog.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>
- and jg.community_code in ('')
+ <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>
+ and
+ (
+ jg.grid_code in ('') or jpag.community_code in ('')
+ )
+ </otherwise>
+ </choose>
</otherwise>
</choose>
</if>
@@ -68,13 +112,13 @@
<select id="getGridWorkCountHandleCount" resultType="java.lang.Integer">
select count(*) from jczz_grid_work_log jgwl
left join jczz_household jh on jgwl.household_id = jh.id and jh.is_deleted = 0
- left join jczz_grid_range jgr on jgr.house_code=jh.house_code
+ left join jczz_house jhs on jhs.house_code=jh.house_code and jhs.is_deleted = 0
where jgwl.is_deleted = 0
<if test="status!=null">
and jgwl.status = #{status}
</if>
- <if test="gridId!=null">
- and jgr.grid_id = #{gridId}
+ <if test="gridCode!=null and gridCode!=''">
+ and jhs.grid_code = #{gridCode}
</if>
</select>
--
Gitblit v1.9.3