绝大部分内部管理系统都需要实现各种复杂的操作权限限制,而不是单纯的把所有数据都共享出来,特别当涉及到一些机密的商业数据或者财务数据时,都需要进行严格管控,当遇到类似的需求时往往需要一个可以灵活配置数据集权限的管理工具来实现客户的实际需要,同时需要有相应的公开的API函数可以过滤数据,提高我们的建设内部管理系统的工作效率。
当然实现一个这样的权限管理系统,也不是很难的事情,可能1个人花费几个个月时间也可以做好了,但是做好的系统由于是匆忙赶工的,很可能会导致以下几个问题。
1:考虑不够充分,没有扩展性,想修改个啥功能很难。
2:由于没有足够的开发时间,可能代码质量,数据库设计等都没严格检查,将来维护起来也闹心一些。
3:虽然现在是有精力做一个,但是没精力一直维护下去,因为手上需要做会越来越多,根本顾不来这个了。
4:没经过几年的实战,程序经不起折腾,往往遇到一个问题或用到其他某个项目里,需要修改的地方很多。
5:由于程序是从慢赶工的,很多东西都没能确定下来,导致不断的修正,影响了其之上开发的应用,三天两头变。
6:可能只考虑了功能,没考虑客户的易用性,操作起来不方便。
7:虽然程序是好用了,但是没配套的文档,没数据库设计文档,没操作手册,只是一个半成品。
接下来我们讲解如何现基于组织机构的数据集权限系统
01:首先我们需要实现公司的组织机构管理,公司从整体上划分了哪些职能部门等。
02:其次是我们需要管理用户,这些用户又是属于哪个公司、哪个部门、哪个工作组等,这些是会登录到系统的用户账户,我们先不去管角色、用户组什么的,那个另外谈,相对简单的东西,我们先把整体思路理顺好。
03: 我们系统里需要定义好操作权限,系统里到底需要管理控制哪些权限? 这些权限都可以灵活设置,那就比较理想了,往往很多系统这一步控制得不是很好,定义权限不够灵活,不好扩展,不好整合。
04: 接着就是哪个用户有哪些操作权限的问题,看下面的画面。
05: 有后台权限管理的权限,但是不是对所有的数据有管理权限,只对一部分数据有管理权限?那我们怎么来设置权限管理条件呢?看下图
06: 我们看看快速设置数据库权限的效果图
07: 若以上设置,还不能满足要求,那就可以进行更详细的设置,点明细按钮会出来下面的设置界面
08: 我们在看看相应的数据库里的数据保存效果
09: 相应的数据设计文档如下效果下
将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。