公司-》部门-》岗位
小李是A公司总经理 兼任B公司的副总经理 兼任B公司的研发中心总监 兼任B公司的公关中心 某部门的 经理
一个人可能身兼多个公司的多个部门的的多个岗位,这样的权限和关联怎么设置对合理
ringa_lee2017-04-17 13:25:36
职能部门和岗位不设置天然的关联关系,例如经理权利一定大过副的,不设置这种假设
单独设置权限表,这是一个平行结构,不设置权限之间的上下级别关系。可以分组
设置权限组表或角色表,只保留基本的信息
设置权限组或角色信息和权限的关联关系-》一个用户组有什么样的平行权限
员工表
公司部门表,树形结构
公司岗位表,树形结构
公司岗位和权限组的1对多的关系,也就是某个岗位的默认所在权限组,可以关联多个
员工关联部门和岗位,关联多个岗位,多个职能,
员工和权限组的关联关系,也就一个员工可以拥有其职位拥有的权限之外的权限,可以考虑设置一个有效期
至此一个从一个员工出发,可以知道其供职于哪个部门,担任什么职务,共有那些权限-担任的岗位对应的权限集合的并集
天蓬老师2017-04-17 13:25:36
一个用户只能隶属于一个部门,但可以同时担任多个岗位。
用户、部门、岗位或者角色、用户组都可以是assignee,资源和assignee关联,各种assignee之间设置优先级。当存在高优先级的assignee的权限记录的时候,忽略低优先级的记录。
另外下级部门可以继承上级部门的权限,下级职位不能继承上级职位的权限。这个也要考虑优先级。
PHP中文网2017-04-17 13:25:36
总经理->总监->部分经理 这是很典型的树形结构
职位表:id(岗位id) parent_id(岗位的父级id)
员工表:id(员工id) job_id(拥有的岗位id) 1对多