From 813b80aeea6829d082d6461da33894a99f07edba Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Tue, 18 May 2021 14:47:49 +0800
Subject: [PATCH] 1.新增根据用户编号查询用户信息接口 2.修复考勤导出信息中考勤类型缺失bug

---
 blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml |   97 ++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 89 insertions(+), 8 deletions(-)

diff --git a/blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml b/blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml
index 70b9d65..45f8c7a 100644
--- a/blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml
+++ b/blade-service/blade-user/src/main/java/org/springblade/system/user/mapper/UserMapper.xml
@@ -26,11 +26,41 @@
         <result column="dept_id" property="deptId"/>
         <result column="post_id" property="postId"/>
         <result column="online_status" property="online_status"/>
-        <result column="channlId" property="channlId"/>
+        <result column="work_status" property="work_status"/>
+    </resultMap>
+
+    <resultMap id="userResultMaps" type="org.springblade.system.user.vo.UserVO">
+        <result column="id" property="id"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="status" property="status"/>
+        <result column="is_deleted" property="isDeleted"/>
+        <result column="code" property="code"/>
+        <result column="user_type" property="userType"/>
+        <result column="account" property="account"/>
+        <result column="password" property="password"/>
+        <result column="name" property="name"/>
+        <result column="real_name" property="realName"/>
+        <result column="email" property="email"/>
+        <result column="phone" property="phone"/>
+        <result column="birthday" property="birthday"/>
+        <result column="sex" property="sex"/>
+        <result column="role_id" property="roleId"/>
+        <result column="dept_id" property="deptId"/>
+        <result column="post_id" property="postId"/>
+        <result column="online_status" property="online_status"/>
+        <result column="work_status" property="work_status"/>
+        <result column="jd" property="jd"/>
+        <result column="wd" property="wd"/>
+        <result column="dept_name" property="deptName"/>
     </resultMap>
 
     <select id="selectUserPage" resultMap="userResultMap">
-        select * from blade_user where is_deleted = 0
+        select *  from blade_user
+        where is_deleted = 0
         <if test="tenantId!=null and tenantId != ''">
             and tenant_id = #{tenantId}
         </if>
@@ -62,6 +92,40 @@
         ORDER BY id
     </select>
 
+    <select id="selectUserPages" resultMap="userResultMaps">
+        select s.*,p.jd,p.wd,ST_ASTEXT ( e.coordinate )  from blade_user s
+        LEFT JOIN jfpt.sys_position p ON p.snumber = s.CODE
+        LEFT JOIN jfpt.sys_enclosure e ON e.anumber = s.CODE
+
+        where s.is_deleted = 0
+        <if test="user.account!=null and user.account != ''">
+            and s.account = #{user.account}
+        </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}
+        </if>
+        <if test="user.userType!=null and user.userType != ''">
+            and s.user_type = #{user.userType}
+        </if>
+        <if test="deptIdList!=null and deptIdList.size>0">
+            and s.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>
+
     <select id="getUser" resultMap="userResultMap">
         SELECT
             *
@@ -76,14 +140,26 @@
     </select>
 
     <!--查询处警人员列表-->
-    <select id="selectSecurityUserPageList" resultType="org.springblade.system.user.vo.UsersVo">
-        SELECT bu.*,p.jd,p.wd FROM blade_user bu
-            LEFT JOIN
+    <select id="selectSecurityUserPageList" resultMap="userResultMaps">
+        SELECT bu.id,bu.name,bu.code,bu.real_name,bu.account,
+            bu.email,bu.phone,bu.birthday,bu.create_time,
+            bu.sex,ifnull(bu.online_status,0) online_status,
+        bd.dept_name,p.jd,p.wd FROM blade_user bu
+        LEFT JOIN
         jfpt.sys_position p
-            on
+        on
         p.snumber=bu.code
-            where
-        role_id = #{user.roleId}
+        left join
+        blade_dept bd
+        on
+        bd.id=bu.dept_id
+        left join
+        blade_role br
+        on
+        bu.role_id=br.id
+        where
+        br.role_alias ='处警员'
+        and bu.is_deleted=0
         <if test="user.realName!=null and user.realName !=''">
             <bind name="realName" value="'%'+user.realName+'%'"/>
             and bu.real_name like #{realName}
@@ -94,4 +170,9 @@
         </if>
         order by bu.code asc
     </select>
+
+    <!--根据用户编号查询用户信息-->
+    <select id="selUserByCode" resultType="org.springblade.system.user.entity.User">
+        select code,dept_id deptId from blade_user where is_deleted = 0 and code=#{code}
+    </select>
 </mapper>

--
Gitblit v1.9.3