权限设置——太容易了
有一个仓库表,有N个仓库,北京仓库,上海仓库,深圳仓库。。。。。
有一个员工表,员工1,员工2 ,员工3。。。。。
问题:怎样设置仓库管理人员权限?
要求:一个员工可以管理多个仓库
比如员工1,可以管理北京仓库和上海仓库。。。
问题点数:30、回复次数:11Top
1 楼mademelaugh(五朝臣子(以接分为荣,以不结帖为耻))回复于 2005-01-04 13:45:08 得分 0
什么东西啊Top
2 楼airwaterland(波仔)回复于 2005-01-04 13:58:01 得分 0
增加一个表,关系表,把仓库和人员联系起来。Top
3 楼kevin521(蓝电飞雪)回复于 2005-01-04 14:01:20 得分 0
很好,但是怎么设置这个表呢?请指教.Top
4 楼jdhroot(亚亚)回复于 2005-01-04 14:50:33 得分 10
字段是
ID 员工ID 仓库IDTop
5 楼alias88()回复于 2005-01-04 16:01:19 得分 0
假如人员升级了呢?,员工1不做仓管了呢?
一个角色对应一种权限好些吧,员工的职位变了只用改一下人事资料的角色
Top
6 楼zwxrain(Lilo)回复于 2005-01-04 21:56:46 得分 0
應該需要這樣一個表...Top
7 楼gowhcy(gowhcy)回复于 2005-01-04 22:22:52 得分 5
只用一个表就行了
[System.Flags]
enum 权限
{
北京仓库,
上海仓库,
深圳仓库
}
table:
ID 员工 权限Top
8 楼YUAN168(风平浪静真好......)回复于 2005-01-05 08:23:58 得分 5
id ,北京仓库,上海仓库,深圳仓库
01, 1 ,0 , 1
02, 1 , 1 , 0
03 1 , 0 , 0
-------------------------------------------------
1為可以管理,0 為不可以Top
9 楼wuyazhe(wyz&xyl)回复于 2005-01-05 08:45:45 得分 5
是的,楼上的方法正确,或者你就写binary的方式保存,比如2个byte保存权限,每一位代表一个权限。如下定义:
public enum purview
BeiJjin = 0x1,
ShangHai = 0x2,
ShenZhen = 0x4,
All = BeiJing Or ShangHai Or ShenZhen
end enum
如此类似定义个枚举类型,值分别是:
16进制的:1,2,4,8,10,20
二进制的:00000001
00000010
00000100
00001000
00010000
00100000
01000000
10000000
如果某人具有多种的权限,就执行位与运算就可以了。
00000001 Or 00000010 = 00000011
这样没人给一个值。
例如:
以上定义后,人员类型如下定义:
Structure Emploree
public Name as string
public pur as purview
end structure
如下可以赋值一个管理员:
'这里是管理员赋值
Dim administrator as New Emploree
administrator.Name = "Oh,yeah"
administrator.pur = purview.all
'这里是一般员工,只有管理北京仓库的
dim Emploree1 as New Emploree
Emploree1.Name = "员工1"
Emploree1.pur = purview.BeiJjin
'这里是一般员工,管理上海,深圳仓库的
dim Emploree1 as New Emploree
Emploree1.Name = "员工1"
Emploree1.pur = purview.ShangHai Or purview.ShenZhen
这样,你以二进制保存每个员工的pur就可以了。如果不够,就用2个字节每位对应一个权限,通过结果判断是具有哪种权限,为简化数字,那个枚举类型比较好。
参考一下吧。最近看vc里常用的方法。
Top
10 楼xingbing(葡萄酒)回复于 2005-01-05 08:57:46 得分 5
增加一个权限表:
员工代码 仓库代码 可进行那些操作
主键:员工代码 仓库代码
//说明:员工代码--》对应多个仓库代码
//记录中没有的仓库代码 说明该员工不能管理这些仓库
//可进行哪些操作:查询、增加、修改等权限控制
********************
以上仅供参考
Top
11 楼kevin521(蓝电飞雪)回复于 2005-01-07 09:47:17 得分 0
不错,收藏,晚上给分Top




