| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- <?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.welampiot.dao.UserDao">
- <select id="getUserByUserName" resultType="com.welampiot.dto.UserDTO" parameterType="com.welampiot.vo.LoginVO">
- select username,privilege_list privilegeList from user where username=#{username,jdbcType=VARCHAR}
- and password=#{password,jdbcType=VARCHAR} and status=1
- </select>
- <select id="loadUserByUsername" resultType="com.welampiot.dto.UserDTO">
- select username,password,status,privilege_list privilegeList from user where username=#{username,jdbcType=VARCHAR}
- </select>
- <select id="findUserByUserName" resultType="com.welampiot.dto.UserDTO">
- select id,username,role,status,privilege_list privilegeList,zone_list zoneList,
- (select name from company c where c.id = u.company_id) as company,address from user u where u.username=#{username,jdbcType=VARCHAR}
- </select>
- <select id="getListByParentId" resultType="com.welampiot.dto.UserDTO">
- select id,username
- from user
- <if test="parentId != null and parentId != ''">
- where parent_id=#{parent_id}
- </if>
- </select>
- <select id="queryMenuList" parameterType="list" resultType="com.welampiot.dto.MenuDTO">
- <!--select id,parentid parentId,name,en_name enName,ru_name ruName,level,action from privilnode where status=1
- and id in
- <foreach collection="list" item="id" separator="," open="(" close=")">
- id
- </foreach>-->
- SELECT
- p.id,
- p.parentid parentId,
- p.`level`,
- p.`name`,
- p.en_name enName,
- p.ru_name
- FROM
- user u
- LEFT JOIN t_user_role_relation ur ON u.id = ur.user_id
- LEFT JOIN t_role_menu_relation rm ON ur.role_id = rm.role_id
- LEFT JOIN privilnode p ON rm.menu_id = p.id
- WHERE
- u.username=#{username,jdbcType=VARCHAR}
- </select>
- <select id="queryUserGrantUrl" resultType="com.welampiot.dto.PathDTO">
- SELECT
- r.url,
- r.description
- FROM
- user u
- LEFT JOIN t_user_role_relation ur ON u.id = ur.user_id
- LEFT JOIN t_role_menu_relation rm ON ur.role_id = rm.role_id
- LEFT JOIN t_menu_path_relation mp ON rm.menu_id = mp.menu_id
- LEFT JOIN t_request_path r ON mp.path_id = r.id
- WHERE
- u.username=#{username,jdbcType=VARCHAR}
- </select>
- <select id="queryUserRole" resultType="com.welampiot.dto.RoleDTO">
- SELECT
- r.role_name roleName,
- r.role_description roleDescription
- FROM
- user u
- LEFT JOIN t_user_role_relation ur ON u.id = ur.user_id
- LEFT JOIN t_role r ON ur.role_id = r.id
- WHERE
- u.username = #{username,jdbcType=VARCHAR};
- </select>
-
- <select id="getUserInfoById" resultType="UserDTO">
- select u.id,u.avatar,u.name,u.username,u.company,u.company_id companyId,u.role,
- u.email,u.sex,u.remark,u.status,u.department,u.mobile as phone,u.address,u.zone_list zoneList
- from user u
- where u.id = #{id}
- </select>
- <!-- role为1查询所有用户的数量 -->
- <select id="getUserCount" resultType="Integer">
- select count(u.id)
- from user u
- </select>
- <!-- role为2查询下级账号数量 -->
- <select id="getUserCountByParentId" resultType="Integer">
- select count(u.id)
- from user u
- where u.parent_id = #{id}
- </select>
- <!-- 查询用户的区域权限数量 -->
- <select id="getSectionCountByZoneList" resultType="Integer">
- select count(*)
- from section s
- <if test="zoneList != null and !zoneList.isEmpty()">
- where s.id in
- <foreach collection="zoneList" item="item" open="(" separator="," close=")">
- #{item}
- </foreach>
- </if>
- </select>
- <!-- role为2时查询下级子账户 -->
- <select id="getUserListByUserDTO" resultType="com.welampiot.dto.UserDTO">
- select u.id,u.name,u.avatar,u.username,u.company,u.role,u.department,u.privilege_list as privilegeList
- from user u
- where u.parent_id = #{id}
- <if test="keyword != null and keyword != ''">
- and u.username like '%${keyword}%'
- </if>
- <if test="companyId != 0">
- and u.company_id = #{companyId}
- </if>
- <choose>
- <when test="role == 1">
- and u.role = 1
- </when>
- <when test="role == 2">
- and u.role = 2
- </when>
- <when test="role == 3">
- and u.role = 3
- </when>
- </choose>
- <choose>
- <when test="department == 1">
- and u.department = 1
- </when>
- <when test="department == 2">
- and u.department = 2
- </when>
- <when test="department == 3">
- and u.department = 3
- </when>
- <when test="department == 4">
- and u.department = 4
- </when>
- <when test="department == 5">
- and u.department = 5
- </when>
- <when test="department == 6">
- and u.department = 6
- </when>
- <when test="department == 7">
- and u.department = 7
- </when>
- <when test="department == 8">
- and u.department = 8
- </when>
- <when test="department == 9">
- and u.department = 9
- </when>
- </choose>
- order by u.id desc
- <if test="page >= 0 and count > 0">
- limit #{page},#{count}
- </if>
- </select>
- <!-- role为1时查询所有用户 -->
- <select id="getAllUserListByUserDTO" resultType="com.welampiot.dto.UserDTO">
- select u.id,u.name,u.avatar,u.username,u.company,u.department,u.privilege_list as privilegeList
- from user u
- where 1=1
- <if test="keyword != null and keyword != ''">
- and u.username like '%${keyword}%'
- </if>
- <if test="companyId != 0">
- and u.company_id = #{companyId}
- </if>
- <choose>
- <when test="role == 1">
- and u.role = 1
- </when>
- <when test="role == 2">
- and u.role = 2
- </when>
- <when test="role == 3">
- and u.role = 3
- </when>
- </choose>
- <choose>
- <when test="department == 1">
- and u.department = 1
- </when>
- <when test="department == 2">
- and u.department = 2
- </when>
- <when test="department == 3">
- and u.department = 3
- </when>
- <when test="department == 4">
- and u.department = 4
- </when>
- <when test="department == 5">
- and u.department = 5
- </when>
- <when test="department == 6">
- and u.department = 6
- </when>
- <when test="department == 7">
- and u.department = 7
- </when>
- <when test="department == 8">
- and u.department = 8
- </when>
- <when test="department == 9">
- and u.department = 9
- </when>
- </choose>
- order by u.id desc
- <if test="page >= 0 and count > 0">
- limit #{page},#{count}
- </if>
- </select>
- <select id="queryUserIdByUsername" resultType="UserDTO">
- select u.id,u.role
- from user u
- where u.username = #{username}
- </select>
-
- </mapper>
|