XiaoRuby
2023-08-25 b0b77110b22827d453e9a1580906b3f53add19f9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yuanchu.limslaboratory.mapper.UserMapper">
    <select id="selectUserByUserId" parameterType="int" resultType="Map">
        SELECT u.account    account,
               u.name       uname,
               u.phone,
               u.email,
               u.info,
               e.byname     e_byname,
               e.`name`     e_name,
               e.link_name  e_link_name,
               e.link_phone e_phone
        FROM enterprise e,
             `user` u
        WHERE e.`id` = u.`enterprise_id`
          AND u.id = #{userId}
    </select>
 
    <resultMap id="PagePersonnelVoMap" type="com.yuanchu.limslaboratory.pojo.vo.PagePersonnelVo">
        <result property="id" column="id"/>
        <result property="username" column="username"/>
        <result property="roleName" column="roleName"/>
        <result property="createTime" column="create_time"/>
        <result property="age" column="age"/>
        <result property="phone" column="phone"/>
        <result property="email" column="email"/>
        <result property="jobState" column="job_state"/>
        <result property="department" column="department"/>
    </resultMap>
    <select id="getNewPersonnelPage" resultMap="PagePersonnelVoMap">
        SELECT u.`id`, u.`name` username, r.`name` roleName, u.`create_time`, u.`age`,
        u.`phone`, u.`email`, u.`job_state`, o.`department`
        FROM `user` u
        LEFT JOIN role r
        ON u.`role_id` = r.`id` AND r.`state` = 1
        LEFT JOIN organizational o
        ON u.`organization_id` = o.`id` AND o.`state` = 1
        WHERE u.`state` = 1
        <if test="name != null and name != ''">
            AND u.`name` LIKE CONCAT('%',#{name}, '%')
        </if>
        <if test="status != null">
            AND u.`job_state` in (#{status})
        </if>
        ORDER BY u.`create_time` DESC
    </select>
 
    <select id="selectUser" resultType="Map">
        select id, name
        from lims_laboratory.user
        where job_state!=0
    </select>
</mapper>