本设计以集团用户为假设,在处理不同地域的多个分公司和集团总部为组成的OA业务逻辑性,来如何规划数据库。就OA而言,其数据量一般要远远小于电信、银行业,所以把数据设计重心放在可重用性和便于编码方面。
对于集团总部,也是下设各个部门,所以可把它看作一个特殊的公司,使其默认分公司fid为00开始。
集团总部表:sys_pcom
字段 说明 备注
P_id 主键 varchar(10) 2位长度字符串
P_name 集团名称
P_num 子公司数量 默认值 0
P_is 是否存在子公司 0存在,1不存在。
Sys_time 系统时间 Getdate()
Sys_order 排序用字段
Sys_menu 菜单样式 0默认,无权限则不显示
1 无权限显示为灰色
系统样式表:sys_style
字段 说明 备注
id 主键
P_id 集团名称
P_logo 公司标识
P_index 首页模板
P_list 列表模板
P_cont 内容模板
P_style 使用样式表
分公司表:Sys_fcom
字段 说明 备注
Id 主键 自动编号
F_id 外键 分公司 varchar(10) P_id+两个数字
F_name 分公司名称
F_dept Int 部门数量。
Sys_time 时间 时间
Sys_order Int 排序
Sys_oper 操作人 是谁创建的
对于集团总团,规定它的编号为 00,下属分公司从01开始。
部门表:Sys_dept
字段 说明 备注
Id 主键
Dept_id 部门ID varchar (12) F_id+二位部门表
Dept_num 部门人数 int
Dept_name 部门名称
Sys_time 时间 时间
Sys_order Int 排序
Sys_oper 操作人 是谁创建的
用户表:sys_user
字段 说明 备注
Id 主键
user_id 部门ID varchar (12) Dept_id+”4位”
user_name 用户名 在集团名相同的情况下,不允许重复。
User_pass 用户密码
User_email 邮箱
Act_id 角色id
Act_name 角色名称
Sys_time 时间 时间
Sys_order Int 排序
Sys_oper 操作人 是谁创建的
员工档案:emp_list
字段 说明 备注
Id 主键
user_id
Emp_card 身份证
Emp_name 员工真实姓名
Emp_
Emp_from 户籍
Emp_sex 性别
Emp_pic 照片
Emp_deg 学历
Emp_sch 毕业院校
Emp_eng1 第一外语
Emp_eng2 第二外语
Emp_htel 家庭电话
Emp_hadd 家庭住址
emp_nadd 现在住址
Emp_mtel 手机号
Emp_email 邮箱
Emp_oicq QQ号码
Emp_born 出入职时间生日期
Emp_come
Emp_work 工作简历
Emp_suit 个人特长
Sys_time 时间 时间
Sys_order Int 排序
Sys_oper 操作人 是谁创建的
(考虑:字段允许用户定义)。
新闻:news_list
字段 说明 备注
Id 主键
t_title 标题
t_author 作者
t_hit 点击率
t_class1 父类别id 总公司发布的
t_class2 子类别id 分公司发布的
t_content 内容text
t_index 是否首页显示
t_pic 新闻综图
t_picis 是否为图片新闻
t_see 是否审核 0为已审,1为未审
t_see_user 审核人 varchar
s_id 信息关联字段 管理员发布信息:
分公司列表、部分
1、 p_id的值2位。
2、 f_id的值 4位.
3、 Dept_id的值 6位。
分公司发布:
本部分列表
部门发布:
user_id前6位。
user_id 发表用户id
Sys_time 时间 时间
Sys_order Int 排序
新闻分类:news_sort
字段 说明 备注
Id 主键
p_id 集团关键id 2位”
Sort_big 父类别 varchar
Sort_bid 父类别id
Sort_small 子类别 varchar
Sort_sid 小类别id
Sys_time 时间 时间
Sys_order Int 排序
Sys_oper 操作人 是谁创建的
公告:note_list
字段 说明 备注
Id 主键
T_title 新闻名称
T_author 作者
t_hit 点击率
t_content 内容text
t_index 是否首页显示
t_see 是否审核 0为已审,1为未审
t_see_user 审核人 varchar
s_id 信息关联字段 管理员发布信息:
分公司列表、部分
4、 p_id的值2位。
5、 f_id的值 4位.
6、 Dept_id的值 6位。
分公司发布:
本部分列表
部门发布:
user_id前6位。
user_id 发表用户id
Sys_time 时间 时间
Sys_order Int 排序
一、 员工档案
员工姓名、年纪、学历、身份证号、联系方式(电话、家庭电话、手机号、邮箱、QQ、MSN)、学历、第一外语(语种,级别),第二外语(语种,级别),毕业学校,工作简历、个人特长、职位(下拉框选择)、所以分公司、来到公司时间。
二、 系统日志
包括用户名、时间、IP地址、操作类别(登陆、注销等)。
Sys_log
字段 说明 备注
Id 主键
user_id
user_name 用户名
log_action 操作类别 删除,更改,登陆,注销等。
log_jid 模块 sys_menu2中j_id
log_meno 具体操作
sys_time 时间 时间
三、 讨论组
可分栏目,可发表主题,可回复主题。
BBS_list
字段 说明 备注
B_id 主键
t_title 标题
t_author 作者
t_hit 点击率
t_content 内容text
t_index 是否首页显示(bit / bool)
t_pic 讨论综图
s_id 信息关联字段 管理员发布信息:
分公司列表、部分
7、 p_id的值2位。
8、 f_id的值 4位.
9、 Dept_id的值 6位。
分公司发布:
本部分列表
部门发布:
user_id前6位。
user_id 发表用户id
Sys_time 时间 时间
Sys_order Int 排序
Sub_id 栏目的类别id
分栏讨论:BBS_subject
字段 说明 备注
Sub_id
Sub_class 栏目的类别(名称)
Dept_id 关联讨论id
anonymity 是否可匿名发帖
回复内容:BBS_repay
字段 说明 备注
r_id 主键
B_id 外键关联 发帖id
t_title 标题
r_author 回复人
r_content 回复内容text
user_id 回复用户id
Sys_time 时间 时间
Sys_order Int 排序
四、 系统管理
OA设置:
选择界面风格 P_style
修改集团名称P_list
用户管理:
菜单管理:
父菜单:sys_menu1
id int 4 自动编号
j_name varchar 50 菜单名称
link_id varchar Id 菜单id
link varchar 50 菜单地址
P_id Int 4 集团标识
子菜单:sys_menu2
id int 4 自动编号
j_id Int 4 菜单id
j_big varchar 50 父菜单名称
j_order int 4 排序(不能重复)
j_small varchar 50 子菜单名称
is_big int 4 0表示父菜单
link_id int 4 与menu1关联
link varchar 200 link地址
j_id 从1000开始,以用于在菜单管理中控制。
角色管理:
角色表:Sys_act
字段 说明 备注
Id 主键
p_id 集团关键字id 2位”
Act_name 角色名称
Act_menu 菜单权限控制 Text类型
Act_area 具体权限控制 Text类型
Act_meno 角色说明
Sys_time 时间 时间
Sys_order Int 排序
Sys_oper 操作人 是谁创建的
Act_menu:
Act_area
1、约束:在每个模块的网址前加上?act=<% j_id %>
2、act_area,如果有某个页面权限,查看,删除,修改,j_idsdm,
1000sdm,1001sd,1002sm
