cjl
2023-09-27 c5db1b5a99d9e7bdec54b2dbf2fb43ba30c503db
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
<?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"/>
        <result column="unit_id" property="unitId"/>
    </resultMap>
 
    <resultMap id="userInfoMap" type="com.moral.api.pojo.bo.UserBO" extends="BaseResultMap">
        <!--用户组织-->
        <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_code" property="locationLevelCode"/>
            <result column="org_expire_time" property="expireTime"/>
        </association>
        <!--用户组-->
        <association property="group" javaType="com.moral.api.entity.Group">
            <id column="group_id" property="id" jdbcType="INTEGER"/>
            <result column="group_name" property="groupName" jdbcType="VARCHAR"/>
        </association>
    </resultMap>
 
    <!--查询用户信息,包含组织,角色-->
    <select id="selectUserInfo" resultMap="userInfoMap">
        SELECT u.id, u.account, u.password, u.user_name, u.email, u.mobile, u.wechat ,u.organization_id, u.expire_time, u.is_delete,u.is_Admin,
        o.name, o.location_level_code, o.expire_time org_expire_time,
        a.id group_id , a.group_name,u.unit_id
        FROM `user` u
        LEFT JOIN
            (SELECT ug.user_id,g.id,g.group_name FROM `user_group` ug ,`group` g WHERE ug.group_id=g.id   AND g.is_delete = 0
            AND ug.is_delete = '0') a
        ON a.user_id=u.id
        LEFT JOIN `organization` o ON o.id=u.organization_id
        WHERE u.account = #{account}
        AND u.is_delete = '0'
    </select>
 
</mapper>