<?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.gyee.frame.mapper.custom.PermissionDao"> <resultMap id="BaseResultMap" type="com.gyee.frame.model.auto.TsysPermission"> <id column="id" jdbcType="VARCHAR" property="id" /> <result column="name" jdbcType="VARCHAR" property="name" /> <result column="descripion" jdbcType="VARCHAR" property="descripion" /> <result column="url" jdbcType="VARCHAR" property="url" /> <result column="is_blank" jdbcType="INTEGER" property="isBlank" /> <result column="pid" jdbcType="VARCHAR" property="pid" /> <result column="perms" jdbcType="VARCHAR" property="perms" /> <result column="type" jdbcType="INTEGER" property="type" /> <result column="icon" jdbcType="VARCHAR" property="icon" /> <result column="order_num" jdbcType="INTEGER" property="orderNum" /> <result column="visible" jdbcType="INTEGER" property="visible" /> <result column="childcount" jdbcType="INTEGER" property="childCount"/> </resultMap> <sql id="Base_Column_List"> id, name, descripion, url, pid, perms, type, icon, order_num </sql> <select id="findAll" resultMap="BaseResultMap"> select *,(select count(1) from t_sys_permission where pid=a.id) childcount from t_sys_permission a </select> <select id="findByAdminUserId" parameterType="String" resultMap="BaseResultMap"> select distinct p.*,(select count(1) from t_sys_permission where pid=p.id) childcount from t_sys_permission_role spr,t_sys_role_user sru,t_sys_permission p where spr.role_id = sru.sys_role_id AND spr.permission_id = p.id AND sru.sys_user_id=#{userId} ORDER BY order_num ASC,order_num ASC </select> <select id="queryRoleId" parameterType="String" resultMap="BaseResultMap"> select p.* from t_sys_permission p left join t_sys_permission_role pr on p.id=pr.permission_id where pr.role_id=#{roleid} </select> </mapper>