From b39cc2beacc1ec2e37cff349cae42e420105c8a6 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Fri, 05 Nov 2021 14:29:47 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/org/springblade/modules/system/mapper/UserMapper.xml |  142 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 131 insertions(+), 11 deletions(-)

diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
index 71692b9..d23c716 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -29,6 +29,10 @@
         <result column="work_status" property="work_status"/>
         <result column="examination_type" property="examination_type"/>
         <result column="examination_mx" property="examination_mx"/>
+        <result column="audit_time" property="auditTime"/>
+        <result column="cardid" property="cardid"/>
+        <result column="district" property="district"/>
+        <result column="jurisdiction" property="jurisdiction"/>
     </resultMap>
     <resultMap id="userResultMaps" type="org.springblade.modules.system.vo.UsersVo">
         <result column="id" property="id"/>
@@ -59,10 +63,13 @@
         <result column="examination_type" property="examination_type"/>
         <result column="examination_mx" property="examination_mx"/>
         <result column="dept_name" property="deptName"/>
+        <result column="audit_time" property="auditTime"/>
+        <result column="cardid" property="cardid"/>
+        <result column="jurisdiction" property="jurisdiction"/>
     </resultMap>
 
     <select id="selectUserPage" resultMap="userResultMap">
-        select *  from blade_user
+        select * from blade_user
         where is_deleted = 0
         <if test="tenantId!=null and tenantId != ''">
             and tenant_id = #{tenantId}
@@ -71,10 +78,10 @@
             and tenant_id = #{user.tenantId}
         </if>
         <if test="user.account!=null and user.account != ''">
-            and account = #{user.account}
+            and account like concat('%',#{user.account},'%')
         </if>
         <if test="user.realName!=null and user.realName != ''">
-            and real_name = #{user.realName}
+            and real_name like concat('%',#{user.real_name},'%')
         </if>
         <if test="user.userType!=null and user.userType != ''">
             and user_type = #{user.userType}
@@ -94,23 +101,28 @@
         </if>
         ORDER BY id
     </select>
+
+
     <select id="selectUserPages" resultMap="userResultMaps">
-        select s.*,p.jd,p.wd,ST_ASTEXT ( e.coordinate )  from blade_user s
+        select s.*,p.jd,p.wd,ST_ASTEXT ( e.coordinate ) from blade_user s
         LEFT JOIN sys_position p ON p.snumber = s.CODE
         LEFT JOIN sys_enclosure e ON e.anumber = s.CODE
         left join
         blade_role br
         on
         s.role_id=br.id
-        where s.is_deleted = 0 and br.role_alias ='处警员'
+        where s.is_deleted = 0
         <if test="user.account!=null and user.account != ''">
-            and s.account = #{user.account}
+            and s.account like concat('%',#{user.account},'%')
+        </if>
+        <if test="user.cardid!=null and user.cardid != ''">
+            and s.cardid like concat('%',#{user.cardid},'%')
         </if>
         <if test="user.id!=null and user.id != ''">
             and s.id = #{user.id}
         </if>
         <if test="user.realName!=null and user.realName != ''">
-            and s.real_name = #{user.realName}
+            and s.real_name like concat('%',#{user.real_name},'%')
         </if>
         <if test="user.userType!=null and user.userType != ''">
             and s.user_type = #{user.userType}
@@ -131,11 +143,11 @@
             </foreach>
             )
         </if>
-        ORDER BY id
+        ORDER BY id desc
     </select>
 
     <select id="selectUserPagetxl" resultMap="userResultMaps">
-        select s.*,p.jd,p.wd,ST_ASTEXT ( e.coordinate )  from blade_user s
+        select s.*,p.jd,p.wd,ST_ASTEXT ( e.coordinate ) from blade_user s
         LEFT JOIN sys_position p ON p.snumber = s.CODE
         LEFT JOIN sys_enclosure e ON e.anumber = s.CODE
         left join
@@ -210,8 +222,7 @@
         on
         bu.role_id=br.id
         where
-        br.role_alias ='处警员'
-        and bu.is_deleted=0
+        bu.is_deleted=0
         <if test="user.realName!=null and user.realName !=''">
             <bind name="realName" value="'%'+user.realName+'%'"/>
             and bu.real_name like #{realName}
@@ -231,4 +242,113 @@
     <select id="selectUser" resultType="java.util.HashMap">
         select CAST(id AS CHAR) as groupmember,real_name as rname from blade_user
     </select>
+
+    <!--统计用户注册数据-->
+    <select id="getUserRegisterStatisticsData" resultType="org.springblade.modules.system.vo.UserRegisterStatisVO">
+        SELECT
+            br.name as region,
+            count(*) num
+        FROM  blade_user bu
+            left join
+        blade_region br
+            on
+        bu.district = br.code
+            where bu.district is not null
+        group by bu.district
+    </select>
+
+    <!-- 统计六大队伍数量 -->
+    <select id="getUserTypeCount" resultType="org.springblade.modules.system.vo.UserRegisterStatisVO">
+        SELECT
+            '治保会队伍' AS region,
+            count( * ) num
+        FROM
+            blade_user bu
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            dept.id = '1424615693403414529'
+            UNION ALL
+            SELECT
+            '内保干部队伍' AS region,
+            count( * ) num
+        FROM
+            blade_user bu
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            dept.id = '1424615773594312705'
+            UNION ALL
+            SELECT
+            '治安巡防队伍' AS region,
+            count( * ) num
+        FROM
+            blade_user bu
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            dept.id = '1424615835435130881'
+            UNION ALL
+            SELECT
+            '信息员队伍' AS region,
+            count( * ) num
+        FROM
+            blade_user bu
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            dept.id = '1424615909959524354'
+            UNION ALL
+            SELECT
+            '保安员队伍' AS region,
+            count( * ) num
+        FROM
+            blade_user bu
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            dept.id = '1424615972718895106'
+            UNION ALL
+            SELECT
+            '警务辅助队伍' AS region,
+            count( * ) num
+        FROM
+            blade_user bu
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            dept.id = '1424616047083905026'
+    </select>
+
+    <select id="getUserDistrictTypeCount" resultType="org.springblade.modules.system.vo.UserDistrictStatisVO">
+        SELECT
+            br.NAME AS region,
+            count( * ) num ,
+            count( CASE WHEN dept.dept_name = '治保会队伍' THEN 1 END) as zbh,
+            count( CASE WHEN dept.dept_name = '内保干部队伍' THEN 1 END) as nbgb,
+            count( CASE WHEN dept.dept_name = '治安巡防队伍' THEN 1 END) as zaxf,
+            count( CASE WHEN dept.dept_name = '信息员队伍' THEN 1 END) as xxy,
+            count( CASE WHEN dept.dept_name = '保安员队伍' THEN 1 END) as bay,
+            count( CASE WHEN dept.dept_name = '警务辅助队伍' THEN 1 END) as jwfz
+        FROM
+            blade_user bu
+            LEFT JOIN blade_region br ON bu.district = br.CODE
+            LEFT JOIN blade_dept dept ON substring_index( substring_index( bu.dept_id, ',', 3 ), ',',- 1 ) = dept.id
+        WHERE
+            bu.district IS NOT NULL
+        GROUP BY
+            bu.district
+    </select>
+
+
+    <!--查询用户数据,未审核的-->
+    <select id="getNotAuditAllUserList" resultType="org.springblade.modules.system.entity.User">
+        select id, cardid
+        from blade_user
+        where examination_type is null
+    </select>
+
+    <!--查询账号相同的数量-->
+    <select id="selectCountAccount" resultType="java.lang.Integer">
+        select count(*) from blade_user where 1=1
+        and status = 1
+        and is_deleted = 0
+        and account = #{account}
+    </select>
+
+
 </mapper>

--
Gitblit v1.9.3