有一些系统对权限的需求比较复杂,比如法制方面的系统,一个审批表被多用户拥有,但每个用户对该表的表项有着不同的权限,有些是只读的,有些是可编写的, 而且随着业务流程的转变,表项的状态针对每个用户也发生变化,比如审批前与审批后,提交审批的人和审批人对表项的操作都要发生变化,提交前提交人可以修改 的表项,在提交后就不能修改。
为了应对这种情况,我们有必要以职能为核心设计权限。所谓职能就是职务与相关业务的结合,反映了一个职务所能实现的业务,我们将表看为父对象,表项及提交 按钮等看作子对象,两种对象都放在“操作对象表”中,当加载页面时,我们可以通过父对象状态(提交审核、未提交、审核已通过等)和此用户的职能来确定当前 子对象(表项、按钮等)的状态(只读、可编辑、激活、隐藏)。由于此结构图类似龙型,所以取名龙式权限数据库设计模式
页面存在
为了应对这种情况,我们有必要以职能为核心设计权限。所谓职能就是职务与相关业务的结合,反映了一个职务所能实现的业务,我们将表看为父对象,表项及提交 按钮等看作子对象,两种对象都放在“操作对象表”中,当加载页面时,我们可以通过父对象状态(提交审核、未提交、审核已通过等)和此用户的职能来确定当前 子对象(表项、按钮等)的状态(只读、可编辑、激活、隐藏)。由于此结构图类似龙型,所以取名龙式权限数据库设计模式
页面存在
