角色模块的 CRUD + 分配资源

This commit is contained in:
YunaiV
2019-03-01 19:03:13 +08:00
parent 814ca633aa
commit 16d33b25be
26 changed files with 824 additions and 85 deletions

View File

@@ -42,12 +42,14 @@
r.id, r.name, r.type, r.sort, r.display_name,
r.create_time, r.pid, r.handler
FROM resource r, role_resource rr
WHERE r.type = #{type}
AND deleted = 0
WHERE r.deleted = 0
<if test="type != null">
AND r.type = #{type}
</if>
AND rr.role_id IN
<foreach item="roleId" collection="roleIds" separator="," open="(" close=")" index="">
#{roleId}
</foreach>
<foreach item="roleId" collection="roleIds" separator="," open="(" close=")" index="">
#{roleId}
</foreach>
AND r.id = rr.resource_id
</select>
@@ -68,6 +70,17 @@
AND deleted = 0
</select>
<select id="selectListByIds" resultType="ResourceDO">
SELECT
<include refid="FIELDS"/>
FROM resource
WHERE id IN
<foreach item="id" collection="ids" separator="," open="(" close=")" index="">
#{id}
</foreach>
AND deleted = 0
</select>
<select id="selectCountByPid" resultType="int">
SELECT
COUNT(1)

View File

@@ -0,0 +1,57 @@
<?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.iocoder.mall.admin.dao.RoleMapper">
<insert id="insert" parameterType="RoleDO" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
INSERT INTO role (
name, create_time, deleted
) VALUES (
#{name}, #{createTime}, #{deleted}
)
</insert>
<update id="update" parameterType="RoleDO">
UPDATE role
<set>
<if test="name != null">
, name = #{name}
</if>
<if test="deleted != null">
, deleted = #{deleted}
</if>
</set>
WHERE id = #{id}
</update>
<select id="selectById" parameterType="Integer" resultType="RoleDO">
SELECT
id, name, create_time
FROM role
WHERE id = #{id}
AND deleted = 0
</select>
<select id="selectListByNameLike" resultType="RoleDO">
SELECT
id, name, create_time
FROM role
<where>
<if test="name != null">
name LIKE "%"#{name}"%"
</if>
</where>
LIMIT #{offset}, #{limit}
</select>
<select id="selectCountByNameLike" resultType="RoleDO">
SELECT
COUNT(1)
FROM role
<where>
<if test="name != null">
name LIKE "%"#{name}"%"
</if>
</where>
</select>
</mapper>

View File

@@ -41,4 +41,13 @@
AND deleted = 0
</update>
<insert id="insertList">
INSERT INTO role_resource (
resource_id, role_id, create_time, deleted
) VALUES
<foreach collection="roleResources" item="roleResource" separator=",">
(#{roleResource.resourceId}, #{roleResource.roleId}, #{roleResource.createTime}, #{roleResource.deleted})
</foreach>
</insert>
</mapper>