现需求如下:
1、用户授权:允许用户选择一个代理用户,把自己的工作(访问权限与工作流)代理出去。在代理时,可以设置代理用户代理工作的时间段;
2、接受授权:代理用户登录系统后,选择一位被代理人开始代替执行工作;
3、授权回收:回收代理授权;
4、授权日志:可以查看代理用户所做的工作;
求求好心人帮帮助,这个需求怎么实现,数据库表要怎么去设计?
小弟这里先谢过了!
1、用户授权:允许用户选择一个代理用户,把自己的工作(访问权限与工作流)代理出去。在代理时,可以设置代理用户代理工作的时间段;
2、接受授权:代理用户登录系统后,选择一位被代理人开始代替执行工作;
3、授权回收:回收代理授权;
4、授权日志:可以查看代理用户所做的工作;
求求好心人帮帮助,这个需求怎么实现,数据库表要怎么去设计?
小弟这里先谢过了!
被代理人ID
代理人ID
状态(0有效,1无效)可权限怎么去判断呢?如何在被代理人授权回收时,保留代理人的权限
工作流又怎么去判断?
1、被代理人ID
2、代理人ID
3、状态(有效,无效)
4、开始时间
5、结束时间
以此表来记录两者之间的关系
一、“用户授权”,把“被代理用户”ID与“代理用户”ID以及开始/结束时间放入表中以建立关系
二、“接受授权”,“代理用户”从表中取出“被代理用户”的权限,增加到“代理用户”中
问题1:工作流的权限怎么去判断呢?“代理用户”怎么样得到“被代理用户”的节点呢?
三、“授权回收”,?
问题2:当用户权限部分相同时,如何删除“被代理用户”的权限而保留“代理用户”原本的权限
我的想法:在用户角色关系表中加入字段判断代理的权限,根据代理与用户字段构成联合主键,
这样需要修改数据库了,能不能不与其它的数据表有关系,而实现
例: 序号 用户 角 色 代理
1 张三 总经理 张三
2 李四 会 计 李四
3 李四 总经理 张三
四、“授权日志”,?
问题3:如何把自身工作与代理的工作区分出来?
--根据功能化分
--登陆用户表
user(id,主键--用户ID
name,--用户名
status--代理用户的状态(T--代表没代理可以接受代理,F--在代理别人工作)判断权限还要判断状态符合实际情况
roleid)--角色--角色表
role(roleid,主键--关联用户
rightid)---关联权限--权限说明表
rights(rightid 主键--权限ID
,rightsname保留字段可以为空)--名称--,descright--权限描述 可以为空
,rightstartdate--开始时间 可以为空
,rightenddate--结束时间 可以为空
,rightdate(保留字段可以为空))--相隔时间--角色设置---role表
0--无权限用于权限回收
1--代表管理员
2--代表用户
3---带理用户所有的rights(
代理授权 eg:user(1,1,1)--管理员--;
role(1,12)---有12号权限(代理授权)
rights(12,'代理授权','让员工有代理权限','2009-14-13 12:00:00','2009-14-15 12:00:00','3')代理别人访问权限代理出去,工作流代理出去,可以看日志
-------等等
)
可以交流
自己动手丰衣足食。哈哈。