找回密码
 立即注册

QQ登录

只需一步,快速开始

successit 悬赏达人认证
银牌会员   /  发表于:2019-7-26 10:04  /   查看:4318  /  回复:5
公司有个需求,所以做了这个模块!中间也思考和想了很久,并做过很多的尝试,最终选了这个办法。
模块应对需求:
1、公司的制度、通知等发布及查阅。
2、要设定查阅权限,分人、分部门、分角色设定。

在设计过程中遇到的难点:
1、发布的查阅权限,不能只跟人走,因为后续还会增加人,跟人走后来的人看不到了;
2、跟部门走,但有时,我只要某个部门下的某些人可以看到,其他人看不到;
3、有的人会身兼多个部门或多个角色;

思考过的应对方案:
1、发布页面中设置权限表,即主子表,子表存权限。(要建三个子表,感觉烦)
2、谢大神的JS,把字符串按照特定符号进行分隔 (研究了大半天,最后没用上)
3、通过视图来实现,有思路,但SQLITE的语法不熟悉。

不过最后,还是确定用视图来解决,可能跟我之前的习惯有关,视图的动态支持效果好,而且数据体量最后也不会很大。
具体设计思路:
1、通过用户信息视图,创建唯一部门、角色视图,用于发布时列表选择;
2、通过用户信息视图,创建用户的部门、角色视图,用于后面的查阅权限关联;
3、把制度对应的人员、部门、角色与用户所属部门、角色分别通过语句进行拆分关联,然后把所有查阅出的内容通过UNION组成唯一。
4、最后视图得出用户ID,制度ID内容 ,即每个用户当前可用查阅的制度ID。然后在列表中进行查询。

image.png479923705.png

image.png210247801.png
image.png901235656.png

image.png490679320.png

工程文件如下:

制度查阅.fgcc (5.36 MB, 下载次数: 67, 售价: 1 金币)

评分

参与人数 1金币 +3000 收起 理由
Simon.hu + 3000

查看全部评分

5 个回复

倒序浏览
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-7-27 17:14:31
沙发
优秀啊!
回复 使用道具 举报
lijetcart悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2019-7-31 19:09:10
板凳
我看了下,有了很多启发,谢谢分享不过有个疑问
如果来了新人...也应该查不到吧,你的查询条件是分配表的用户=当前用户....

回复 使用道具 举报
successit悬赏达人认证
银牌会员   /  发表于:2019-7-31 19:18:52
地板
刚好在。。。
如果来了新人,给了角色或部门,他就能看到所属部门有权限的内容

指定到人的,一般在实操中很少
回复 使用道具 举报
lijetcart悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2019-8-1 10:28:08
5#
看明白了,谢谢
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-8-1 18:40:39
6#
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部