软件项目管理系统:项目资料模块权限分配设计文档

本系统分为三类用户:
1.      项目管理者
2.      项目负责人
3.      项目组成员
第一类用户:项目管理者 :
 ① 可以通过一次查询查看所有项目的所有资料 ( 包括保密和共享的 )
 ② 也可以按项目名称查询具体项目中的所有阶段的全部资料 ( 保密和共享的 )
 ③ 也可以指定具体项目的具体阶段查询该阶段的全部资料 ( 保密和共享的 )
第二类用户:项目负责人 :
 ① 可以通过一次查询查看自己负责项目的所有资料和别人项目中的所有资料 ( 别人负责项目中设定为保密状态的资料除外 )
 ② 也可以按项目名称查询具体项目中的所有阶段的资料
a. 如果是别人负责的项目 , 只能查看非保密状态的资料
b. 如果是自己负责项目 , 则可以查看所有资料
 ③ 也可以指定具体项目的具体阶段查询该阶段的资料
a. 如果是别人负责的项目 , 只能查看指定阶段中的非保密状态的资料
 b. 如果是自己负责项目 , 则可以查看指定阶段中的所有资料
 ④ 有设定资料保密和共享的权限
      a. 可以对自己项目中的资料设定为保密和共享状态 : 默认为共享状态 , 如果资料很重要可以设定为保密 , 同时还可以把保密状态的资料还原为共享。
      b. 对别人项目中的共享资料没有设定为保密状态的权限
第三类用户:项目组成员 :
 ① 可以通过一次查询查看所在项目的所有资料 ( 包括保密和共享的 )
 ② 如果指定项目阶段和名称查询的话查询的结果也会是自己所在项目中的所有资料,即 : 只有查看所在项目的资料的权利
 具体实现思路:
Xm_user :系统用户表
usercode
username
flag
Str1
用户登录编号
用户姓名
用户分类标识
人员编号
Trry:项目投入人员表
Xmbh
Rybh
Ryxm
项目编号
人员编号
人员姓名
Xmzl:项目资料表
xmbh
Str2
Str3
Str4
项目编号
资料流水号
上传者登录编号
共享和保密标识
Xmjlzd:项目经理表
Rybh
Ryxm
Duty
人员编号
项目经理姓名
岗位
Information:项目信息表
code
xmjl
Str2
项目编号
项目经理姓名
项目经理人员编号
 
项目管理者:
根据条件 flag=2 xmzl 进行正常查询
项目负责人:
条件判断 flag=1
登录编号对应到 rybh ,再把 rybh 对应到 information 表中的 str2 ,就可以找出登录用户负责的项目编号,
根据项目编号查询自己所有项目资料:
xmbh = (select  code from information where str2 = '0009')
对于别人项目资料:
(str4<>'1' and xmbh <> (select  code from information where str2 =  '0009'))
二者用 or 连接
项目组成员:
条件判断 flag=0
登录编号对应到 rybh ,再把 rybh 对应到投入人员中的人员编号,如果存在,找到所在项目编号,查询该项目编号的所有资料。
条件: xmbh in (select xmbh from trry where rybh = '0009')
 

本文出自 “IT技术博客” 博客,谢绝转载!

你可能感兴趣的:(职场,权限分配,休闲)