<?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"/> 
 | 
    </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 
 | 
        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> 
 |