204 lines
6.6 KiB
XML
204 lines
6.6 KiB
XML
|
|
<?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="cn.feast.coding.mapper.system.UserMapper">
|
||
|
|
<!-- Result Map -->
|
||
|
|
<resultMap id="baseResultMap" type="cn.feast.coding.model.system.User">
|
||
|
|
<result column="id" property="id"/>
|
||
|
|
<result column="user_name" property="userName"/>
|
||
|
|
<result column="user_pass" property="userPass"/>
|
||
|
|
<result column="user_salt" property="userSalt"/>
|
||
|
|
<result column="user_real" property="userReal"/>
|
||
|
|
<result column="user_gender" property="userGender"/>
|
||
|
|
<result column="user_phone" property="userPhone"/>
|
||
|
|
<result column="user_email" property="userEmail"/>
|
||
|
|
</resultMap>
|
||
|
|
|
||
|
|
<!-- Role Result Map -->
|
||
|
|
<resultMap id="roleResultMap" type="cn.feast.coding.model.system.Role">
|
||
|
|
<result column="id" property="id"/>
|
||
|
|
<result column="role" property="role"/>
|
||
|
|
<result column="description" property="description"/>
|
||
|
|
</resultMap>
|
||
|
|
|
||
|
|
<!-- Permission Result Map -->
|
||
|
|
<resultMap id="permissionResultMap" type="cn.feast.coding.model.system.Permission">
|
||
|
|
<result column="id" property="id"/>
|
||
|
|
<result column="name" property="name"/>
|
||
|
|
<result column="type" property="type"/>
|
||
|
|
<result column="url" property="url"/>
|
||
|
|
<result column="permission" property="permission"/>
|
||
|
|
</resultMap>
|
||
|
|
|
||
|
|
|
||
|
|
<!-- table name -->
|
||
|
|
<sql id="table_name">
|
||
|
|
t_user
|
||
|
|
</sql>
|
||
|
|
<!-- property table all fields -->
|
||
|
|
<sql id="base_column_list">
|
||
|
|
id,
|
||
|
|
user_name,
|
||
|
|
user_pass,
|
||
|
|
user_salt,
|
||
|
|
user_real,
|
||
|
|
user_gender,
|
||
|
|
user_phone,
|
||
|
|
user_email
|
||
|
|
</sql>
|
||
|
|
<sql id="update_clause">
|
||
|
|
<trim suffixOverrides=",">
|
||
|
|
<if test="userName != null and userName !=''">
|
||
|
|
user_name=#{userName},
|
||
|
|
</if>
|
||
|
|
<if test="userPass != null and userPass !=''">
|
||
|
|
user_pass=#{userPass},
|
||
|
|
</if>
|
||
|
|
<if test="userSalt != null and userSalt !=''">
|
||
|
|
user_salt=#{userSalt},
|
||
|
|
</if>
|
||
|
|
<if test="userReal != null and userReal !=''">
|
||
|
|
user_real=#{userReal},
|
||
|
|
</if>
|
||
|
|
<if test="userGender != null">
|
||
|
|
user_gender=#{userGender},
|
||
|
|
</if>
|
||
|
|
<if test="userPhone != null and userPhone !=''">
|
||
|
|
user_phone=#{userPhone},
|
||
|
|
</if>
|
||
|
|
<if test="userEmail != null and userEmail !=''">
|
||
|
|
user_email=#{userEmail},
|
||
|
|
</if>
|
||
|
|
</trim>
|
||
|
|
</sql>
|
||
|
|
<sql id="query_where_clause">
|
||
|
|
where 1=1
|
||
|
|
<trim suffixOverrides=",">
|
||
|
|
<if test="id != null">
|
||
|
|
and id=#{id}
|
||
|
|
</if>
|
||
|
|
<if test="userName != null and userName !=''">
|
||
|
|
and user_name=#{userName}
|
||
|
|
</if>
|
||
|
|
<if test="userPass != null and userPass !=''">
|
||
|
|
and user_pass=#{userPass}
|
||
|
|
</if>
|
||
|
|
<if test="userSalt != null and userSalt !=''">
|
||
|
|
and user_salt=#{userSalt}
|
||
|
|
</if>
|
||
|
|
<if test="userReal != null and userReal !=''">
|
||
|
|
and user_real like concat(concat("%",#{userReal}),"%")
|
||
|
|
</if>
|
||
|
|
<if test="userGender != null">
|
||
|
|
and user_gender=#{userGender}
|
||
|
|
</if>
|
||
|
|
<if test="userPhone != null and userPhone !=''">
|
||
|
|
and user_phone=#{userPhone}
|
||
|
|
</if>
|
||
|
|
<if test="userEmail != null and userEmail !=''">
|
||
|
|
and user_email=#{userEmail}
|
||
|
|
</if>
|
||
|
|
</trim>
|
||
|
|
</sql>
|
||
|
|
<insert id="save" parameterType="Object" >
|
||
|
|
<selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="id">
|
||
|
|
SELECT LAST_INSERT_ID() AS id
|
||
|
|
</selectKey>
|
||
|
|
insert into
|
||
|
|
<include refid="table_name" />
|
||
|
|
(
|
||
|
|
user_name,
|
||
|
|
user_pass,
|
||
|
|
user_salt,
|
||
|
|
user_real,
|
||
|
|
user_gender,
|
||
|
|
user_phone,
|
||
|
|
user_email
|
||
|
|
)
|
||
|
|
values
|
||
|
|
(
|
||
|
|
#{userName},
|
||
|
|
#{userPass},
|
||
|
|
#{userSalt},
|
||
|
|
#{userReal},
|
||
|
|
#{userGender},
|
||
|
|
#{userPhone},
|
||
|
|
#{userEmail}
|
||
|
|
)
|
||
|
|
</insert>
|
||
|
|
|
||
|
|
<select id="queryById" resultMap="baseResultMap" parameterType="Object">
|
||
|
|
select
|
||
|
|
<include refid="base_column_list" />
|
||
|
|
from <include refid="table_name" /> where id = #{id}
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="findByUsername" resultMap="baseResultMap" parameterType="Object">
|
||
|
|
select
|
||
|
|
<include refid="base_column_list" />
|
||
|
|
from <include refid="table_name" /> where user_name = #{username}
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="findRoles" resultMap="roleResultMap" parameterType="Object">
|
||
|
|
select
|
||
|
|
r.id as id, r.role as role, r.description as description
|
||
|
|
from
|
||
|
|
t_user u, t_role r, t_user_role ur
|
||
|
|
where ur.userid = u.id
|
||
|
|
AND ur.roleid = r.id
|
||
|
|
AND u.user_name = #{username}
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="findPermissions" resultMap="permissionResultMap" parameterType="Object">
|
||
|
|
select
|
||
|
|
p.id as id, p.name as name, p.type as type, p.url as url, p.permission as permission
|
||
|
|
from
|
||
|
|
t_user u, t_role r, t_user_role ur, t_permission p, t_role_permission rp
|
||
|
|
where
|
||
|
|
u.id = ur.userid
|
||
|
|
and r.id = ur.roleid
|
||
|
|
and rp.roleid = r.id
|
||
|
|
and rp.permissionid = p.id
|
||
|
|
and u.user_name = #{username}
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="queryByCount" resultType="java.lang.Integer" parameterType="Object">
|
||
|
|
select count(1) from
|
||
|
|
<include refid="table_name" />
|
||
|
|
<include refid="query_where_clause" />
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="queryByList" resultMap="baseResultMap" parameterType="Object">
|
||
|
|
select
|
||
|
|
<include refid="base_column_list"/>
|
||
|
|
from
|
||
|
|
<include refid="table_name" />
|
||
|
|
<include refid="query_where_clause"/>
|
||
|
|
order by id desc
|
||
|
|
${pageQueryCondition}
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<select id="queryByUser" resultMap="baseResultMap" parameterType="Object">
|
||
|
|
select
|
||
|
|
<include refid="base_column_list"/>
|
||
|
|
from
|
||
|
|
<include refid="table_name" />
|
||
|
|
<include refid="query_where_clause"/>
|
||
|
|
order by id desc
|
||
|
|
</select>
|
||
|
|
|
||
|
|
<update id="update" parameterType="Object" >
|
||
|
|
update <include refid="table_name" /> set <include refid="update_clause" /> where id = #{id}
|
||
|
|
</update>
|
||
|
|
|
||
|
|
<update id="updateResult" parameterType="Object" >
|
||
|
|
update <include refid="table_name" /> set <include refid="update_clause" /> where id = #{id}
|
||
|
|
</update>
|
||
|
|
|
||
|
|
<delete id="deleteById" parameterType="Object">
|
||
|
|
delete from <include refid="table_name" /> where id = #{id}
|
||
|
|
</delete>
|
||
|
|
|
||
|
|
</mapper>
|