目录

测试

给普通用户设置数据权限范围

 新建部门,设置对应dept_id

代码生成

设置普通用户所属部门 

后端更改service层和mapper.xml代码 

验证 

超级管理员修改设备数据

​编辑

普通用户登录

总结 


测试

给普通用户设置数据权限范围

本部门数据权限

 新建部门,设置对应dept_id

 dept_id为201

代码生成

设备信息管理

 

设置普通用户所属部门 

后端更改service层和mapper.xml代码 

serviceImpl

 @Override
    @DataScope(deptAlias = "d",userAlias = "u")
    public List<Myworkshop> selectMyworkshopList(Myworkshop myworkshop)
    {
        return myworkshopMapper.selectMyworkshopList(myworkshop);
    }

 给selectMyworkshopList添加注释,d和u分别为部门数据表别称,用户数据表别称。

mapper.xml

代码修改为以下代码

<sql id="selectMyworkshopVo">
        select l.id, l.name, l.temp, l.dept_id from myworkshop l left join sys_dept d on l.dept_id=d.dept_id where l.id is not null

    </sql>

    <select id="selectMyworkshopList" parameterType="Myworkshop" resultMap="MyworkshopResult">
        <include refid="selectMyworkshopVo"/>
        <where>  
            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
            <if test="temp != null  and temp != ''"> and temp = #{temp}</if>
            <if test="deptId != null "> and dept_id = #{deptId}</if>


        </where>
        ${params.dataScope}
    </select>

更改为select l.id, l.name, l.temp, l.dept_id from myworkshop l left join sys_dept d on l.dept_id=d.dept_id where l.id is not null 

where下面添加${params.dataScope}

验证 

超级管理员修改设备数据

 (第三个所属部门编号为新建部门编号)

普通用户登录

只能看见自己所属部门数据

总结 

通过更改数据的所属部门,并给普通用户设置所属部门以及数据权限范围,可以对用户能够查看到的信息加以限制

Logo

快速构建 Web 应用程序

更多推荐