关于用户、角色与数据范围的一种设计方法

实际开发中,遇到这样一种情况:
某一类用户,有特定的角色,用户和数据范围的具体对应关系存在于不同表当中。

例如:
存在用户A,用户B。
用户A拥有角色A,可以管理某些大区、某些地区、某些部门。
用户B拥有角色B,可以管理某些地区、某些地区分公司、某些部门。

其中管理的范围是固定的,有大区、地区、地区分公司、部门。
每种用户可以管理其中的几种。

其中的表有:
1.区域表,包含大区和地区关系。
2.区域分公司关系表,包含大区和地区分公司的关系。
其中和地区、地区分公司是一个级别的。
3.部门表,包含所属大区、地区。
4.地区分公司、部门关联关系表。
5.用户、大区关联关系表。
6.用户、地区关联关系表。
7.用户、地区分公司关系表。
8.用户、部门关系表。

分配管理的范围的时候,可以根据角色,直接分配具体的范围。
如用户A,因为有角色A,所以可以直接分配管理的大区,或者直接分配管理的地区,或者直接分配管理的部门。
用户B,因为有角色B,所以可以直接分配管理的地区,或者直接分配管理的地区分公司,或者直接分配管理的部门。

由于可以直接分配用户和范围的关系,可能存在分配的地区不在分配的大区中,分配的学校不在分配的地区或者地区分公司下。
如:
用户A分配了西北大区,同时分配了一个东北大区下的地区,同时分配了一个西南大区中,X地区下的XX部门。

现在有这样一种业务需求,需要根据选择的大区来查询管理的部门。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值