kaiyu
2021-03-18 333065f8d9b599b048668a0686ba2ee58944b0e4
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
55
56
57
58
59
60
61
<?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.moral.api.mapper.UserMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.moral.api.entity.User">
        <id column="id" property="id"/>
        <result column="is_admin" property="isAdmin"/>
        <result column="account" property="account"/>
        <result column="password" property="password"/>
        <result column="user_name" property="userName"/>
        <result column="organization_id" property="organizationId"/>
        <result column="email" property="email"/>
        <result column="mobile" property="mobile"/>
        <result column="wechat" property="wechat"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
        <result column="expire_time" property="expireTime"/>
        <result column="is_delete" property="isDelete"/>
        <!--用户组织-->
        <association property="organization" javaType="com.moral.api.entity.Organization">
            <result column="id" property="id" jdbcType="INTEGER"/>
            <result column="name" property="name" jdbcType="VARCHAR"/>
            <result column="location_level" property="locationLevel"/>
        </association>
        <!--用户组-->
        <collection property="groups" ofType="com.moral.api.entity.Group" javaType = "java.util.ArrayList">
            <id column="groupId" property="id" jdbcType="INTEGER"/>
            <result column="group_name" property="groupName" jdbcType="VARCHAR"/>
        </collection>
 
    </resultMap>
 
 
    <select id="selectUserInfo" resultMap="BaseResultMap">
        SELECT u.id,u.account,u.password,u.user_name,u.organization_id,u.expire_time,u.is_delete,
        o.name,u.is_admin,o.location_level,
        g.id groupId,g.group_name
        FROM `user` u,
        `organization` o,
        `user_group` ug,
        `group` g
        WHERE u.account = #{account}
        AND u.organization_id=o.id
        AND  u.id = ug.user_id
        AND ug.group_id = g.id
        AND g.is_delete = 0
        AND ug.is_delete = 0
    </select>
 
 
    <select id="selectUsers" resultType="java.util.Map">
        SELECT id,account,user_name userName,email,mobile,wechat FROM `user` WHERE
        <if test="orgId!=null">
            organization_id = #{orgId}
        </if>
        <if test="userId!=null">
            id = #{userId}
        </if>
    </select>
</mapper>