文章目录

  • 前言
  • 一、数据库中创建一张视图表!!!(非常重要)
  • 二、创建自己的表
  • 三、使用jeesite导入表,生成代码
  • 四、在此表生成的,service层中,加上过滤
  • 五、在此表生成的,controller层中查看数据处,加上过滤
  • 六、在此表生成的,Entity层中,加上过滤
  • 六、完成,去jeesite中分配权限
  • 总结

前言

做到这一块的时候,看了看视频,也找了一些相关的文章,但是自己动起手布置的时候,还是会出现很多问题,导致功能实现不了。这是为什么???这是因为好多文章漏了一个很关键的点!!!


一、数据库中创建一张视图表!!!(非常重要)

1.在视图层创建一张新表!!!
表名:自己起
表的SQL语句如下:

select `a`.`user_code` AS `user_code`,`a`.`login_code` AS `login_code`,`a`.`user_name` AS `user_name`,`e`.`office_code` AS `office_code`,`e`.`company_code` AS `company_code`
from (`js_sys_user` `a` left join `js_sys_employee` `e` on(((`e`.`emp_code` = `a`.`ref_code`) and (`a`.`user_type` = 'employee'))))

这张表关联了,user,机构,部门,就像从user的id再去查你关联的机构,再去你关联的部门。

2.使用jeesite框架,生成此表。这个表没必要展示,可可以选择仅生成entity,service表,或其他,可以吧这个表命名为UserEmployee

二、创建自己的表

自己创建一张单表,但必须包含以下字段:

这些字段,可以试试哪些是不需要的,我是没敢试,就直接用了
这些字段的由来:看过jeesite的设计表视频可知,ERmaster上如果创建了这个组(此指DataEntity),示可以保留供选择的,你再建表添加组,选择这张表即可。

三、使用jeesite导入表,生成代码

四、在此表生成的,service层中,加上过滤

/*** 添加数据权限过滤条件*///这里CmsSite 可替换成你这个表单生成的entity层名字public void addDataScopeFilter(CmsSite entity){// 举例4:用户、员工(自己创建的)数据权限根据部门过滤,实体类@Table注解extWhereKeys="dsfOffice"
entity.getSqlMap().getDataScope().addFilter("dsfOffice", "Office","e.office_code", "a.create_by", DataScope.CTRL_PERMI_HAVE);}

这里过滤的条件可从官方文档查看 https://www.jeesite.com/docs/service-datascope/

五、在此表生成的,controller层中查看数据处,加上过滤

/*** 查询列表数据*/@RequiresPermissions("cms:cmsSite:view")@RequestMapping(value = "listData")@ResponseBodypublic Page<CmsSite> listData(CmsSite cmsSite, HttpServletRequest request, HttpServletResponse response) {cmsSite.setPage(new Page<>(request, response));// 在这里添加即可: cmsSiteService可替换成你自己生成的service名字cmsSiteService.addDataScopeFilter(cmsSite);Page<CmsSite> page = cmsSiteService.findPage(cmsSite);return page;}

六、在此表生成的,Entity层中,加上过滤


其中 entity = 要查询的,咱第一步创建的表UserEmployee
dsfoffice 就是 第四步中那个过滤,我们可以把它看成是这个过滤条件的名字

六、完成,去jeesite中分配权限

1.先去用户管理中,给自己的人员分配角色。
2.去角色管理中,给不同角色分配能看到的页面和数据权限。

总结

如果想要会用的话,这样就可以了。

Jeesite框架实用 如何实现本公司内数据权限功能使用相关推荐

  1. 数据权限框架:一个实现数据权限与业务模块完全分离,让数据权限变成独立功能模块的数据权限框架

    meng框架 介绍 meng框架是一个实现了行数据权限和列数据权限的数据权限框架: meng框架能让数据权限变成一个独立的功能模块,与业务模块完全分离,在已经实现的业务逻辑中添加数据权限不需要对原来的 ...

  2. 离线安装python第三方库的实用方法:解决公司内网,服务器/电脑不能上网却需要安装python三方库问题(上:Windows环境中)

    离线安装python第三方库的实用方法:解决公司内网,服务器/电脑不能上网却需要安装python三方库问题(上:Windows环境中) 参考文章: (1)离线安装python第三方库的实用方法:解决公 ...

  3. jeesite 框架的简单应用

    jeesite 框架的简单应用 一个讲解jeesite的网站 https://www.w3cschool.cn/jeesite/ jeesite官网 http://jeesite.com/ 公司项目都 ...

  4. JeeSite 框架学习笔记

    JeeSite 框架学习笔记 目录 JeeSite 框架学习笔记 一.全局配置 1. 获取 Resource资源实际路径 DefaultResourceLoader 2. 配置前端 js css 二. ...

  5. 企业内部控制体系建设路径及启示 ——基于某公司内控建设案例研究

    企业内部控制体系建设路径及启示 --基于某公司内控建设案例研究 来源:新浪博客 作者:马军生 2013-01-25 XY股份有限公司为符合上市公司内控法规要求, 提高企业经营管理水平和风险防范能力,促 ...

  6. 30分钟从工作电脑入侵公司内网!Win11:更新强制要求有TPM2.0,知道为啥了吧?...

    博雯 发自 凹非寺 量子位 报道 | 公众号 QbitAI 工作电脑被偷的30分钟后,公司内网就进人了. 不仅拥有活动目录上的基本特权,还能在内部文件中来去自如! 可我那保护重重的Windows防火墙 ...

  7. 安装zabbix4.0(公司内网)

    写在前面 目前所用的虚拟机没办法访问外网,只能在公司内网环境偷偷摸摸的搞,所以要先配置yum!多多的yum!!! 环境准备 软件包准备 zabbix软件包提取码:3fzg. centos镜像提取码:j ...

  8. linux虚拟机网络设置(本机使用公司内网)

    使用桥接方式 设置: 一开始没有的话可以add 编辑edit 参考公司网络,下图是公司内网地址 然后设置 然后ping就ok了 转载于:https://www.cnblogs.com/dieyaxia ...

  9. 记与公司内网微博的谈话

    谨以此文纪念那些公司内网的交流平台. 论坛,网站,邮件,微博. 可以说这是公司内部员工互动交流的四大天王. 但都出现种种的问题. 下边是我与第一家公司微博平台的对话. 我:看你简洁明了,一定很受欢迎吧 ...

最新文章

  1. C++中嵌套类的使用
  2. Hadoop HDFS copyMergeFromLocal
  3. BPW34F红外光电传感器
  4. Activity创建
  5. 使用Java代码在应用层获取Android系统属性
  6. 【Python】刚刚,Python 3.10 正式发布了!我发现了一个可怕的功能...
  7. 可以公开访问的 SAP gateway demo system ES5/002
  8. ug编程内公差和外公差是什么_干货丨模具工厂CNC加工编程工艺与标准!
  9. Linux常用C函数-接口处理篇(网络通信函数)
  10. (王道408考研数据结构)第三章栈和队列-第二节:队列基本概念、顺序栈和链栈基本操作
  11. jQuery延迟对象deferred的使用
  12. 英特尔玩VR有多认真?看看Project Alloy的细节就知道了
  13. 驻马店远大计算机阳业学院,电力学院
  14. python hasattr内建函数测试
  15. 抖音服务器升级维护时间,抖音服务器升级要多久2021
  16. button按钮的四种监听及实例
  17. 大一高数下册笔记整理_高数下册学习笔记
  18. 笔记本计算机提升性能,如何加快笔记本电脑的运行速度?
  19. php后端学习重点是,后端开发新手/小白学习之-前后端如何交互详解和重点学习...
  20. 前后端交互,密码加密,RSA 实现前端 js 加密,后端 go 解密

热门文章

  1. ajaxsubmit提交两次
  2. 格式塔(Gestalt)原理
  3. [Python 高德地图] API调用学习历程(一)
  4. VS 2005 SP1简体中文版下载地址
  5. 【Semantic segmentation】Scratching the surface
  6. 教材征订管理系统c语言,基于C语言的图书管理系统的设计与实现范文.doc
  7. Ubuntu(Linux)上安装微信(windows应用)
  8. java如何生成二维码
  9. 恶搞,vbs+bat实现随机位置无限弹窗
  10. PM说丨重构系统的需求分析这样做,让你事半功倍!