<?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="pwc.taxtech.atms.dao.UserRoleMapper"> <resultMap id="UserRoleQuery" type="pwc.taxtech.atms.dpo.UserRoleQuery"> <id column="ID" jdbcType="VARCHAR" property="id"/> <result column="USER_ID" jdbcType="VARCHAR" property="userId"/> <result column="USER_NAME" jdbcType="VARCHAR" property="userName"/> <result column="ROLE_ID" jdbcType="VARCHAR" property="roleId"/> <result column="ROLE_NAME" jdbcType="VARCHAR" property="roleName"/> <result column="SERVICE_TYPE_NAME" jdbcType="VARCHAR" property="serviceTypeName"/> <result column="SERVICE_TYPE_ID" jdbcType="VARCHAR" property="serviceTypeId"/> <result column="ROLE_CATEGORY_ID" jdbcType="VARCHAR" property="roleCategoryId"/> <result column="ROLE_CATETORY_NAME" jdbcType="VARCHAR" property="roleCatetoryName"/> <result column="ORG_ID" jdbcType="VARCHAR" property="orgId"/> <result column="ORG_NAME" jdbcType="VARCHAR" property="orgName"/> <result column="EMAIL" jdbcType="VARCHAR" property="email"/> <result column="STATUS" jdbcType="INTEGER" property="status"/> </resultMap> <select id="selectUserRoleQueryByServiceTypeId" parameterType="java.lang.String" resultMap="UserRoleQuery"> SELECT UR.id AS ID, U.id AS USER_ID, U.user_name AS USER_NAME, UR.role_id AS ROLE_ID, R.name AS ROLE_NAME, S.name AS SERVICE_TYPE_NAME, S.id AS SERVICE_TYPE_ID, RC.id AS ROLE_CATEGORY_ID, RC.name AS ROLE_CATETORY_NAME, ORG.id AS ORG_ID, ORG.name AS ORG_NAME, U.email AS EMAIL, U.status AS STATUS FROM user U LEFT JOIN user_role UR ON U.id = UR.user_id LEFT JOIN role R ON UR.role_id = R.id LEFT JOIN service_type S ON S.id = R.service_type_id AND S.is_active = 1 AND S.id = #{serviceTypeID} LEFT JOIN role_category RC ON RC.id = R.role_category_id AND RC.is_active = 1 LEFT JOIN organization ORG ON U.organization_id = ORG.id WHERE U.status = 1 AND U.is_super_admin = 0 ORDER BY user_name </select> <resultMap id="UserOrgRoleDto" type="pwc.taxtech.atms.dpo.UserOrgRoleDto"> <id column="ID" jdbcType="VARCHAR" property="id"/> <result column="USER_ID" jdbcType="VARCHAR" property="userId"/> <result column="ROLE_ID" jdbcType="VARCHAR" property="roleId"/> <result column="ROLE_NAME" jdbcType="VARCHAR" property="roleName"/> </resultMap> <select id="getOriginalRoleList" resultMap="UserOrgRoleDto"> SELECT UR.user_id AS USER_ID, R.id AS ROLE_ID, R.name AS ROLE_NAME FROM user_role UR JOIN role R ON UR.role_id = R.id </select> </mapper>