From cc057177b2fb17aee9a173a6adbabdc578fd74c7 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 06 Dec 2021 10:30:44 +0800
Subject: [PATCH] 1.许可

---
 src/main/java/org/springblade/modules/system/mapper/UserMapper.xml |  155 ++++++++++++++++++++++++++++++++-------------------
 1 files changed, 97 insertions(+), 58 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 d61feb3..8c7cf03 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -47,6 +47,7 @@
         <result column="birthtime" property="birthtime"/>
         <result column="healstats" property="healstats"/>
         <result column="soil" property="soil"/>
+        <result column="reason_for_leav" property="reasonForLeav"/>
     </resultMap>
 
     <!--带坐标-->
@@ -66,6 +67,10 @@
         on
         si.departmentid = bd.id
         left join
+        sys_jurisdiction sj
+        on
+        sj.id = si.jurisdiction
+        left join
         sys_live_location sll
         on
         sll.worker_id = bu.id
@@ -76,7 +81,7 @@
         where
         bu.is_deleted = 0
         <if test="user.account!=null and user.account != ''">
-            and bu.account = #{user.account}
+            and bu.account like concat('%', #{user.account},'%')
         </if>
         <if test="user.hold!=null and user.hold != ''">
             and bu.hold = #{user.hold}
@@ -93,8 +98,8 @@
         <if test="user.status!=null and user.status != ''">
             and bu.status = #{user.status}
         </if>
-        <if test="user.jurisdiction!=null and user.jurisdiction != '' and user.jurisdiction!='1123598813738675201'">
-            and si.jurisdiction = #{user.jurisdiction}
+        <if test="user.jurisdiction!=null and user.jurisdiction != '' and user.jurisdiction!='1372091709474910209'">
+            and (sj.id = #{user.jurisdiction} or sj.parent_id = #{user.jurisdiction})
         </if>
         <if test="user.realName!=null and user.realName != ''">
             and bu.real_name like concat('%', #{user.realName},'%')
@@ -111,7 +116,10 @@
         <if test="user.cardid!=null and user.cardid != ''">
             and bu.cardid like concat('%', #{user.cardid},'%')
         </if>
-        <if test="user.examinationType!=null and user.examinationType != ''">
+        <if test="user.examinationType==0">
+            and (bu.examination_type = #{user.examinationType} or bu.examination_type is null or bu.examination_type="")
+        </if>
+        <if test="user.examinationType==1">
             and bu.examination_type = #{user.examinationType}
         </if>
         ORDER BY bu.id
@@ -123,7 +131,7 @@
             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 like concat(concat('%', #{user.realName}),'%')
@@ -153,19 +161,6 @@
         </if>
         <if test="user.examinationType!=null and user.examinationType != ''">
             and examination_type = #{user.examinationType}
-        </if>
-        <if test="deptIdList!=null and deptIdList.size>0">
-            and id in (
-            SELECT
-            user_id
-            FROM
-            blade_user_dept
-            WHERE
-            dept_id IN
-            <foreach collection="deptIdList" index="index" item="item" open="(" separator="," close=")">
-                #{item}
-            </foreach>
-            )
         </if>
         ORDER BY id
     </select>
@@ -200,6 +195,8 @@
         SELECT id, name, real_name RealName
         FROM blade_user
         where cardid = #{param1}
+        and is_deleted = 0
+        and status = 1
     </select>
 
 
@@ -213,10 +210,13 @@
         blade_dept bd
         on
         bu.dept_id = bd.id
+        left join
+        blade_role br
+        on
+        br.id = bu.role_id
         where
         bu.is_deleted = 0
-        and
-        bd.dept_category = 1
+        and role_alias = '保安'
         <if test="user.realName!=null and user.realName != ''">
             and bu.real_name like concat(concat('%', #{user.realName}),'%')
         </if>
@@ -243,9 +243,6 @@
         <if test="user.status!=null and user.status != ''">
             and bu.status = #{user.status}
         </if>
-        <if test="user.hold!=null and user.hold != ''">
-            and bu.hold = #{user.hold}
-        </if>
         <if test="user.jurisdiction!=null and user.jurisdiction != ''">
             and bu.jurisdiction = #{user.jurisdiction}
         </if>
@@ -268,14 +265,12 @@
         where
         bu.is_deleted = 0
         and
-        bd.dept_category = 1
-        and
         (hold = 2 or hold = 3)
         <if test="user.deptId!=null and user.deptId != ''">
             and bu.dept_id = #{user.deptId}
         </if>
         <if test="user.isApply!=null">
-            and sa.is_apply = #{user.isApply}
+            and bu.is_apply = #{user.isApply}
         </if>
         <if test="user.roleId!=null and user.roleId != ''">
             and bu.role_id = #{user.roleId}
@@ -297,32 +292,73 @@
 
 
     <!--保安员列表树 安员列表树,帅选无保安证,下拉tree-->
+<!--    <select id="getSecurityApplyTree" resultType="org.springblade.modules.system.node.TreeNode">-->
+<!--        (-->
+<!--            select #{user.deptId} as id,-->
+<!--                bd2.dept_name as name,-->
+<!--                0 as parentId-->
+<!--                from blade_user bu2-->
+<!--                left join-->
+<!--                blade_dept bd2-->
+<!--                on -->
+<!--                bu2.dept_id = bd2.id-->
+<!--        )-->
+
+<!--        union all-->
+
+<!--        (-->
+<!--            select-->
+<!--                distinct-->
+<!--                bu.id,-->
+<!--                bu.real_name as name,-->
+<!--                #{user.deptId} parentId-->
+<!--            from-->
+<!--                blade_user bu-->
+<!--            left join-->
+<!--            blade_dept bd-->
+<!--            on-->
+<!--            bu.dept_id = bd.id-->
+<!--            where-->
+<!--            bu.is_deleted = 0-->
+<!--            and bu.status = 1-->
+<!--            and bu.examination_type != 1-->
+<!--            and (hold = 2 or hold = 3)-->
+<!--            and bd.id = #{user.deptId}-->
+<!--            <if test="user.examType==1">-->
+<!--                and bu.is_apply != 1-->
+<!--            </if>-->
+<!--            <if test="user.examType==2">-->
+<!--                and bu.is_train != 1-->
+<!--            </if>-->
+<!--        )-->
+<!--    </select>    -->
+
+
+    <!--保安员列表树 安员列表树,帅选无保安证,下拉tree-->
     <select id="getSecurityApplyTree" resultType="org.springblade.modules.system.node.TreeNode">
-        (select #{user.deptId} as id,
-            '全部' as name,
-            0 as parentId
-            from blade_user)
-
-        union all
-
-        (select
-            bu.id,
-            bu.real_name as name,
-            #{user.deptId} parentId
-        from
-            blade_user bu
-        left join
-        blade_dept bd
-        on
-        bu.dept_id = bd.id
-        where
-        bu.is_deleted = 0
-        and
-        bd.dept_category = 1
-        and
-        (hold = 2 or hold = 3)
-        and bd.id = #{user.deptId}
-        )
+            select
+                distinct
+                bu.id,
+                bu.real_name as name,
+                #{user.deptId} parentId
+            from
+                blade_user bu
+            left join
+            blade_dept bd
+            on
+            bu.dept_id = bd.id
+            where
+            bu.is_deleted = 0
+            and bu.status = 1
+            and bu.examination_type != 1
+            and (hold = 2 or hold = 3)
+            and bd.id = #{user.deptId}
+            <if test="user.examType==1">
+                and bu.is_apply != 1
+            </if>
+            <if test="user.examType==2">
+                and bu.is_train != 1
+            </if>
     </select>
 
 
@@ -366,12 +402,8 @@
     <!--根据保安员编码查询保安信息-->
     <select id="getUserInfoBySecurityNumber" resultType="org.springblade.modules.system.vo.UserVO">
         select
-        bu.id,
-        bu.avatar,
-        bu.securitynumber securityNumber,
-        ifnull(TIMESTAMPDIFF(YEAR, bu.birthday, CURDATE()),0) age,
-        bu.real_name realName,
-        bu.sex,
+        bu.*,
+        ifnull(DATE_FORMAT(NOW(), '%Y') - SUBSTRING( cardid,7,4),0) age,
         bd.dept_name deptName
          from
          blade_user bu
@@ -391,6 +423,7 @@
     <select id="getUserDetails" resultType="org.springblade.modules.system.vo.UserVO">
         select
         bu.*,
+        ifnull(DATE_FORMAT(NOW(), '%Y') - SUBSTRING( cardid,7,4),0) age,
         bd.dept_name deptName
          from
         blade_user bu
@@ -398,7 +431,9 @@
         blade_dept bd
         on
         bu.dept_id = bd.id
-        where bu.id = #{user.id}
+        where
+        1=1
+        and bu.id = #{user.id}
     </select>
 
     <!--获取派遣信息-->
@@ -483,4 +518,8 @@
         and sd.status = 0
     </select>
 
+    <!--查询账号相同的数量-->
+    <select id="selectCountAccount" resultType="java.lang.Integer">
+        select count(*) from blade_user where account = #{account}
+    </select>
 </mapper>

--
Gitblit v1.9.3