019_公文管理系统
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1 公文管理系统系统设计
1.1 数据库设计与实现
3.1.1 数据库的需求分析
根据系统需求,本系统需要设计9张表。
人员基本信息表:公司人员信息保存在这张表中。
部门信息表:存放部门信息。
公文流转路径信息表:存放制定的公文路径。
公文类别表:存放公文紧急等级信息。
公文委托表:存放公文委托处理的相关信息。
公文信息表:存放公文的详细信息。
角色字典表:存放公文处理的各个角色。
公文流转环节信息表:存放公文流转的各个环节信息。
3.1.2 数据库的逻辑设计
本系统的数据库设计(Database Design)把系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。
设计数据库应该具备数据库的基本知识和数据库设计技术,计算机科学的基础知识和程序设计的方法和技巧及软件工程的原理和方法应用领域的知识。 【买计算机毕业论文就到www.think58.com】
根据公文管理系统系统的一般要求,通过对整个系统运行过程和数据流程分析,得出本系统的实体表:人员基本信息表(WF_User)、公文流转路径信息表(WF_FLOW)、公文类别表(WF_DocClass)、部门信息表(WF_Department)、公文紧急等级表(WF_DocGrade)、公文委托表(WF_DocTrust)、公文信息表(WF_DOCUMENT)、角色字典表(WF_Role)、公文流转环节信息表(WF_WATCHFLWO)。
think58.com
根据公文管理系统的一般要求,通过对整个系统运行过程和数据流程分析,设计出实际的数据库实体,以及他们之间的关系,为后边的数据库逻辑结构设计打基础。
根据对数据项和数据结构的分析以及对实际的数据库实体的设计,使用数据库设计工具ER/Studio设计出数据表以及数据表之间的逻辑关系,如图1。 copyright think58
本文来自think58 [资料来源:http://think58.com]
[资料来源:http://think58.com]
内容来自think58
copyright think58 [版权所有:http://think58.com]
[来源:http://think58.com]内容来自think58
[来源:http://www.think58.com]
copyright think58 [资料来源:http://THINK58.com]
内容来自think58 [资料来源:http://THINK58.com]
think58好,好think58
think58.com [资料来源:http://THINK58.com]
copyright think58 [来源:http://think58.com]
think58好,好think58
图1 数据表与数据表之间的逻辑关系
数据库设计中重要的一环首先就是概念设计,也就是说,要从实际问题出发,排除非本质的东西,抽象出现实的数据结构之客观规律——即画出数据结构图——ER图。这是数据库设计的重点,也是数据库设计的难点。
本系统使用Microsoft SQL Server 2000作为数据库开发工具,设计如下数据项和数据结构:
人员基本信息表
人员基本信息表(WF_User)用来存放人员信息,结构如表1所示。
表1 人员基本信息表
字段名 描述 类型 字段(B) 是否允许为空 是否主键
UserID 用户ID(唯一、自动增加) int 4 否 是
RealUserName 用户真实姓名 nvarchar 30 否 否
UserName 用户登录名 nvarchar 20 否 否
DepID 部门ID号 int 4 否 否
PassWord 用户登录密码 nvarchar 20 否 否
公文流转路径信息表
公文流转路径信息表(WF_FLOW)用来记录公文的流转路径,结构如表2所示。
表2 公文流转路径信息表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
FLOWID 流转路径ID(唯一、自动增加) int 4 否 是
FlowName 流转路径名称 nvarchar 128 否 否
FlowDetails 流转路径详细信息 nvarchar 1000 否 否 本文来自think58 [资料来源:http://think58.com]
FlowType 流转路径类型 int 4 否 否
公文类别表
公文类别表(WF_DocClass)用来保存公文的类别,结构如表3所示。
表3 公文类别表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
ClassID 类别ID号(唯一、自动增加) int 4 否 是
ClassName 类别名称 nvarchar 128 否 否
部门信息表
部门信息表(WF_Department)用来保存部门信息,结果如表4所示。
表4 部门信息表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
DepID 部门ID号(唯一、自动增加) Int 4 否 是
DepName 部门名称 nvarchar 50 否 否
公文紧急等级表
公文紧急等级表(WF_DocGrade)用来保存公文等级信息,结构如表5所示。 think58.com
表5 公文紧急登记表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
DocGradeID 紧急程度ID号(唯一、自动增加) Int 4 否 是
DocGrade 紧急程度 nvrchar 128 否 否
公文委托表
公文委托表(WF_DocTrust)用来保存公文的委托信息,结构如表6所示。 think58好,好think58
copyright think58 [版权所有:http://think58.com]
[来源:http://www.think58.com]
表6 公文委托表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
TrustID 委托事件ID号(唯一、自动增加) int 4 否 是
TrustUser 委托人ID号 int 4 否 否
ByTrustUser 被委托人ID号 int 4 否 否
AddDate 委托日期 datetime 8 否 否
Reason 委托理由 nvrchar 1000 否 否
DocID 委托公文ID号 int 4 否 否
Type 委托类型 int 4 否 否
其中AddDate字段的默认值为“getdate()”,表示默认为当前系统日期;Type字段的默认值为0,表示当前委托还没有被执行。
公文信息表
公文信息表(WF_DOCUMENT)用来保存公文的相关信息,结构如表7所示。
表7 公文信息表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
DocID 公文ID号(唯一、自动增加) int 4 否 是
DocTitle 公文标题 nvrchar 128 否 否
DocSendDep 发往的部门ID号 int 4 否 否
MainSendUnit 主动单位 nvrchar 128 否 否
DocClassID 公文类型ID号 int 4 否 否
WriteUserID 公文起草人ID号 int 4 否 否
OutWord 发文字 nvrchar 50 否 否
OutSerial 发文号 nvrchar 50 否 否
SecureClass 秘密等级 nvrchar 50 否 否 [资料来源:http://www.THINK58.com]
JinjiClass 紧急程度 nvrchar 50 否 否
SaveTime 保留时间 nvrchar 50 是 否
Body 正文内容 text 16 否 否
FlowID 流程ID号 int 4 否 否
Describes 备注 nvrchar 50 是 否
角色表
角色字典表(WF_Role)用来保存公文处理各个环节的角色,结构如表8所示。 copyright think58 [资料来源:http://THINK58.com]
本文来自think58
copyright think58
[来源:http://think58.com]
[资料来源:THINK58.com]表8 角色表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
RoleID 角色ID号(唯一、自动增加) int 4 否 是
RoleName 角色名称 nvrchar 128 否 否
公文流转环节信息表
公文流转环节信息表(WF_WATCHFLWO)用来保存公文流转的各个环节信息,结构如表9所示。
表9 公文流转环节信息表
字段名 描述 类型 长度(B) 是否允许为空 是否主键
WFID 环节ID(唯一、自动增加) int 4 否 是
DocID 文档ID int 4 否 否
UserID 处理用户ID int 4 否 否
Role 环节角色 nvrchar 50 是 否
Type 环节类型 int 是 否
Updatedate 更新日期 datetime 8 是 否
BackReason 审批内容 nvrchar 400 否 否
其中Type字段为审批环节的状态,“0”表示当前状态,“1”表示已处理状态,“2”表示退回状态,“3”表示后续状态。
3.1.3 数据库存储过程
存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。使用存储过程有如下几个优点:
可维护性好。
存储过程在服务器端运行,执行速度快。
存储过程执行一次后,起执行规划就驻留在高速缓冲存储器,在以后的操作中,只需要执行高速缓冲器中已编译好的二进制代码,提高了系统性能。 think58好,好think58 [来源:http://think58.com]
确保数据库的安全。
自动完成需要预先执行的任务。
利用存储过程可以保持应用程序的执行效率并简化数据曾,也可以增加系统设计的灵活性。
本系统充分利用存储过程的优势,实现了很多复杂的数据访问过程。部分存储过程如表10。 think58好,好think58 [资料来源:http://www.THINK58.com]
表10 存储过程
存储过程 描述
WF_USERLOGIN 用户登录
WF_ADDDep 添加部门
WF_AddDoc 保存发送的公文信息
WF_ADDDocClass 添加公文类别
WF_BackDoc 退回公文
WF_DealDoc 审批公文
WF_DelDep 删除部门
WF_GetDepList 获取部门列表
WF_UpdateClassName 更新公文类别名称
1.2 系统模块分析与设计
总体任务是为公文的起草审批等公文流操作提供更便捷的方式。
系统登录
登录模块采用基于标准的MVC架构的开发模式。与一般的登录系统相似,主要是对登录用户的身份进行合法性验证。系统连接后台数据库对身份进行验证,如果出错系统提醒:“Error: 用户名或密码错误!”。如果没有错误系统进入系统正页面。
公文起草
通过公文起草模块,可以创建要流转的文件。文件按照定制好的一个或多个路径选择流转。公文起草中涉及发文字号、发送部门、发送的紧急程度的选择、发送日期、正文及附注等。起草完公文,可以按发送公文,如果格式填写不全,系统提示并且无法发送,当填写完毕后方能发送。
已发公文
通过已发公文模块,可以查看自己发送的公文的详细信息,包括公文现在的所处的节、公文要流转的路径以及公文具体信息。并且可以对已发公文进行删除操作。 内容来自think58
待办公文
通过待办公文模块,可以查看需要自己审批的公文,并对其进行审批。审批不通过可以写上处理意见后退回公文,满意就审批通过。同样可以对公文进行进行删除操作。
已办公文
通过已办公文模块,可以查看自己审批过公文的详细信息,包括公文现在的所处环节、公文要流转以及公文的具体信息。同样可以对公文进行删除操作。
公文委托
通过公文委托模块,如果用户有其他原因不能对公文的内容进行审批,可以交以他人进行动态的公文流传递,由其他用户进行审批。委托他人要填写其他用户的部门和用户的登录名及委托原由,此方能发出。
流程监控
通过流转监控模块、可以查看自己所发公文的名称、创建时间以及所处的环节以及已批环节的审批内容。
类别定制
通过类别定制模块,可以定制公文类别、流程路径、员工角色、部门以及管理员工信息。
退出
所有的系统合法用户登录完成操作后退出系统都要进行“退出”操作、或者进行用户转换也需要进行“退出”操作。
think58 [资料来源:www.THINK58.com]
下一篇:154_邮件收发程序