《企业办公自动化系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《企业办公自动化系统的设计与实现.docx(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘要当代社会已经进入信息时代,信息技术使社会的各个领域都发生了翻天覆地的变化。如果一个企业想要紧跟时代步伐,就必须加强企业竞争力,提升现代化企业的管理能力,来适应整个社会的发展变化。由于企业对信息管理的需求,计算机、网络技术已经渗透到企业的日常工作中。企业对大量信息的传递与处理的需求,传统的信息交流方式早已不能满足。办公自动化系统(OA)的应用满足了企业的办公自动化、网络化的管理需求,并且规范了公司各个部门的日常业务,提高了企业内部的管理水平,因此中小型企业办公自动化系统的设计是非常有意义的。本系统采用C#语言开发一个中小型企业办公自动化系统,采用B/S架构设计,以Microsoft SQL
2、Server 2005为数据库开发平台,基本的功能有人员管理、考勤管理、站内短信、我的文档管理、公文流转等。关键词:ASP;B/S结构;办公自动化 AbstractContemporary society has entered the information age and information technology makes all areas of society has undergone enormous changes. If an enterprise wants to keep up pace with the times, it is necessary to stren
3、gthen the competitiveness of enterprises, and enhance the ability of modern enterprise management, to adapt to the development of the whole social change. Demand for enterprise information management, computer and network technology has penetrated into the daily work of the enterprise. Traditional e
4、nterprise information exchange already can not meet the demand for rapid transfer of large amounts of information and processing. Office automation system (OA) applications to meet the corporate office networks, automated management needs, and regulate the day-to-day business of the various departme
5、nts of the company to improve the level of the internal management of enterprises,so small and medium enterprises office automation system design is very meaningful.The system uses C # Language developed a small and medium enterprise office automation system, the B / S architecture design to Microso
6、ft SQL Server 2005 database development platform, the basic function of personnel management, attendance management, private message, my document management, documents circulation.Keywords: ASP; B / S structure; office automation 目 录摘要IAbstractII第一章 引言11.1选题背景以及意义11.2系统介绍1第二章 系统开发的关键技术22.1 A技术22.2 C
7、#语言的特点22.3页面布局与运行环境3第三章 需求分析43.1 功能需求分析43.2 可行性分析5第四章 总体设计64.1功能结构设计64.2数据库设计74.2.1概念结构设计74.2.2逻辑结构设计9第五章 详细设计155.1登录界面的实现155.2人员管理模块的设计155.3考勤管理模块的实现165.4权限管理模块的实现175.5站内短信模块的实现185.6请假信息管理模块的实现195.7我的联系人模块的实现205.8部门与职位管理模块的实现215.9我的文档模块的实现215.10公文流转模块的实现22 第六章 软件测试24结束语26谢 辞27参考文献28V咸阳师范学院2013届本科毕业
8、设计(论文)第1章 引言1.1选题背景以及意义很多中小型企业自成立以来,都是以传统的办公模式来运作,主要是以纸质为主1,而在这个信息发展的时代,是远远不能满足企业员工办公的需要,那么,如何提高企业员工办公的效率呢?怎样才能让企业紧跟时代的步伐?怎样加强企业的竞争能力呢?因此如何实现信息的自动化和办公的无纸化成了每个企业应该重视的问题。虽然科学技术在不断提高、计算机技术在不断发展,但人们已经渐渐地认识并掌握了计算机的强大功能。各个企业都使用计算机来满足员工工作的需要。虽然这样可以提高员工的办公效率,但是要提高企业办公的整体效率,就必须建设一个安全、可靠的办公自动化系统2,用此办公自动化系统为企业
9、提供现代化的办公条件和综合的信息服务,这与传统的办公模式比起来,有着检索非常迅速、查找非常方便、可靠性高等优点,这样能够大大地提高企业办公的效率和管理水平,并且能够规范公司各个部门的日常业务,为企业在信息管理上节省了很大一笔开支3。1.2系统介绍本系统利用计算机技术和网络技术,使企业的办公管理工作能够信息化和规范化,并且大限度地提高企业员工的办公效率、改善办公质量、缩短员工的办公周期4。在设计过程中,本系统有两种角色:超级管理员、普通员工,在添加了角色后,可以对各个角色分配相应的操作。超级管理员和普通员工登录进去的界面是不一样的,因为超级管理员要对人事进行管理5。超级管理员的权限最大,能够对员
10、工的信息,部门的信息进行增加、修改和删除,普通员工登录后的界面上没有员工管理和部门管理的树节点,因此不能对其进行操作。系统主要涉及的模块有人员管理模块、考勤管理模块、权限管理模块、站内短信模块、请假信息管理模块、我的联系人模块、部门与职位管理模块、我的文档管理模块、公文流转模块。本系统使用A技术、B/S架构、SQL Server2005数据库实现。企业只需在客户端安装WEB浏览器,通过WEB页面提供统一的界面,对企业用户来说操作非常简单,特别方便6。第2章 系统开发的关键技术2.1 A技术ASP.Net是建立在公共语言运行库上的编程框架。其与以前的开发模型相比,提供了很多重要的优点,比如:它可
11、以支持多种脚本语言的开发,这样开发人员就可以选择自己喜欢的语言来编写代码7。此外,ASP.Net技术用一些控件,如:用户自定控件、自定义控件、组件等方法将程序的结构与执行代码分离开,从而使程序的结构对开发人员来说一目了然,提高了团队开发的效率8。ASP.Net主要包括两种编程模型:WebForm、WebService。WebForm为用户提供建立功能强大并且外观丰富的可编程Web页面。WebService通过对HTTP、XML等Internet标准支持提供在异构网络环境下获取远程服务,就是可以接收从Internet上的其它系统传递过来的请求并作处理。通过对它的使用,开发的应用程序在网上发布后,
12、全世界的开发人员都可以查询并绑定使用9。2.2 C#语言的特点C#是一种强类型语言,它是由C和C+衍生出来的编程语言,是面向对象的语言。它继承C语言的语法风格,同时又继承了C+的面向对象特性。它不再支持指针类型,从而使得程序不能随便访问内存地址空间;C#也不再支持多重继承,避免了类层次结构中由于多重继承带来的可怕后果。(1)语言的简洁性C#语言拥有简洁的语法,取消了指针的使用,因为有限的指令、修饰符和操作符的使用,使得它在语法上几乎不会存在冗余,初学者很容易就能掌握。(2)面向对象设计 因为C#是面向对象的,因此具有封装、继承与多态性三大特性。在C#中,只允许单继承,即一个类不会有多个基类。C
13、#以类为基础构建所有的类型,通过命名空间对代码进行层次化的管理,从而减少了命名冲突的可能性。(3)与Web的结合因为借助了Web服务框架,从而使网络开发和本地开发同样的简单。(4)安全性与错误处理完整C#不但符合通用类型系统的类型安全性的要求,而且用公共语言进行时提供的所有代码访问系统安全特性。除此之外,开发人员不需要再担负内存管理的任务,因为垃圾收集机制能自动管理对象的生命周期。(5)版本处理技术 由于C#提供内置的版本支持来减少开发费用,因此使用C#将会使开发人员更加轻易地开发和维护各种商业用户。(6)灵活性与兼容性 虽然C#简化了语法,但它并没有失去灵活性。正是由于其灵活性,不但API可
14、以进行交互操作,而且DLL的任何入口点都可以在程序中进行访问。C#遵守.NET公用语言规范,从而就保证了C#组件与其它语言组件间的互操作性10。(7)C#使用范围大,可移植性好 C#有一个非常突出的优点就是可适用于多种操作系统,如DOS、UNIX,也可使用于多 种机型。 2.3页面布局与运行环境 本系统采用CSS+DIV的页面布局技术,对页面进行整体布局,使得页面布局美观,完美呈现。本系统的使用的开发工具是Microsoft Visual Studio 2010,服务器为IIS,开发语言为C#,采用A技术,系统使用数据库为SQL Server 2005。第3章 需求分析3.1 功能需求分析随着
15、信息时代的到来,企业想要紧跟时代的步伐,就必须提高办公效率和自身的管理水平,因此,在调查了企业的办公需求并且查阅了相关资料之后,总结出了中小型企业办公自动化系统所需要的基本功能11-12。中小型企业办公自动化系统需要的基本功能如下:(1)员工管理:包括添加员工、管理用户、个人用户、修改密码等。此功能模块普通用户登录进去后只有个人用户和修改密码两个功能。(2)考勤管理:普通用户只能上下班签到,查看自己的出勤信息,超级管理员可以设置考勤,并且进行考勤统计。(3)角色管理:超级管理员可以进行角色管理、分配角色。(4)站内短信:可以发信息,也可以查看自己的收信箱和发信箱,并对其做相应的操作。(5)请假
16、信息管理:可以添加假条,并查看上级领导对请假条的批复情况。 (6)我的联系人:可以添加联系人,查看联系人。(7)部门与职位管理:可以对部门与职位进行增加、修改、删除等操作,此功能只有超级管理员有权限。(8)我的文档:可以上传文档、下载文档,对文档进行管理等操作。(9)公文流转:可以发送公文,并且查看自己的公文。本系统的数据流图如下:图3.1 顶层数据流图3.2 可行性分析可行性分析建立在系统需求分析的基础之上。可行性分析研究系统的开发是是否具备一定的开发必要性和可做性,我们要从经济、技术、运行的方面对新系统进行分析和研究。避免不必要的投资,是新系统开发成功所要做的必要分析。可行性研究的目的是以
17、最小的投入、最短的时间、完成可做的任务13。1.经济可行性经济可行性,就是对项目进行成本效益分析,并且评估开发成本,从而估算开发成本是否会超过项目预期的全部利润。对于此系统而言,开发所需要的各种资源比较小,能为企业带来很大的效益。此系统有着以下优点: (1)此系统是一个综合性的信息管理系统,它包含了人员管理、部门与职位管理、我的文档管理、站内短信管理、权限管理、我的联系人管理、请假信息管理、公文流转等模块。 (2)此系统的开发耗费的资源少,能提高企业的办公效率和管理水平。2.技术可行性从目前的技术发展分析,开发办公自动化系统采用A是比较理想的14。本系统采用B/S模式,它利用目前成熟的浏览器技
18、术实现所要求的功能,在B/S结构下,用户界面是完全通过WEB浏览器来实现的,客户端主要实现的是简单的事务逻辑,服务器端主要实现的是主要的事务逻辑。如果采用此模式开发系统,就可以减少开发成本,并且减轻管理员维护的难度,对用户来说,操作与上网一致,从而使得系统具有易操作性15。3.运行可行性如今,随着信息化和计算机技术的高度发展,越来越多的企业意识到要提高管理效率必须提高信息化。企业人员深知现代化的管理方法对企业的重要性,因此企业都在寻找适合自己的办公系统。本系统采用B/S架构,在客户端只需安装WEB浏览器就可使用,目前各个安装企业的个人操作系统大多数为WINDOWS,故本系统在运行方面是可行的。
19、第4章 总体设计4.1功能结构设计中小型企业办公自动化系统的设计与实现采用A技术实现。此系统的主要模块包含人员管理模块、考勤管理模块、权限管理模块、站内短信模块、请假信息管理模块、我的联系人模块、部门与职位管理模块、我的文档模块、公文流转模块。主要模块具体实现的功能如下所示:(1) 人员管理模块:该模块主要实现的功能包括添加员工、管理用户、个人用户、修改密码,其中普通用户只有个人用户和修改密码两个功能,超级管理员可以进行员工信息的增加、修改、查看、删除等操作。(2) 考勤管理模块:该模块主要实现的功能包括用户考勤、查看考勤、考勤设置、考勤统计等,其中普通员工只能进行上班的签到和查看自己的出勤信
20、息,超级管理员可以进行考勤时间的设置和考勤的统计。(3) 权限管理模块:该模块实现的主要功能包括角色管理和分配角色。此功能模块只有超级管理员可以进行操作。(4) 站内短信模块:该模块主要实现的功能包括写信息、发信箱和收信箱,员工可以进行发信息,并且查看自己的收信箱和发信箱。(5) 请假信息管理管理模块:该模块主要实现的功能包括写请假条、查看审批、审核请假。需要请假的员工可以写请假条交给领导,领导查看后并批复。(6) 我的联系人模块:该模块主要实现的功能包括查看联系人、添加联系人、分类管理等。员工可以添加并查看自己经常联系的人,也可以对联系人进行分类管理。(7) 部门与职位管理模块:该模块主要实
21、现的功能包括添加部门、部门管理、添加职位、职位管理。只有超级管理员才有此权限。(8) 我的文档模块:该模块主要实现的功能包括上传文档、下载文档、文档管理。普通用户可以上传文档和下载文档,超级管理员可以进行文档管理。(9) 公文流转模块:该模块主要实现的功能包括公文发送、公文查收。用户可以向其他人员发送公文,也可以查看自己的公文。该系统的功能结构图如下:图4.1系统功能结构图4.2数据库设计数据库的设计对于一个系统来说意义重大,因为数据库设计是基础,同时也是系统的核心。经过对用户需求的分析和所需功能的设计,查阅并参考了相关材料后,此系统决定采用数据库SQLServer 2005,从而更好因为地管
22、理数据16-17。4.2.1概念结构设计在概念结构设计中,对主要的表进行了E-R图设计,实体与属性之间的关系进行了详细的设计,下图是文档的E-R图:图4.4 文档E-R图对于系和部门,管理员可以增加、修改、删除部门。管理员的基本属性有用户编号、用户名称、密码、性别、部门编号(外键)、角色编号、民族、出生日期等属性。部门的基本属性有部门编号、部门名称、备注。下图是管理员与部门之间的实体联系图。图4.5管理-部门E-R图 在下面的E-R图中,主要是对员工和联系人类型之间的关系做了实体联系图,员工可以对联系人类型进行增加、删除等操作。其中联系人类型的基本属性有联系人类型编号、名称、备注等,用户的基本
23、属性有用户编号、用户名称、密码、性别、部门编号(外键)、角色编号等,下图是用户操作联系人类型的实体联系图。图4.6用户联系人类型E-R图对于考勤时间的设置,只有管理员才有权限。实体有管理员和考勤时间设置表,其中考勤时间设置表的基本属性有考勤开始日期、考勤结束日期、考勤上班时间、考勤下班时间等。下图是实体联系图。图4.7管理员-考勤时间设置E-R图4.2.2逻辑结构设计经过认真分析并且查阅资料后,本系统采用SQL Server 2005数据库,数据库名称为“OAOffice”。在数据库OAOffice中主要表结构如下所示:(1) 员工信息表员工信息表是用来存放企业员工的基本信息,员工信息表的结构
24、如表4.1所示。表4.1 Staff(员工信息表)字段名称数据类型是否空说明s_idInt 否员工编号s_passwordVarchar(16)否员工密码s_nameVarchar(50)否员工姓名s_sexVarchar(10)否性别s_nationVarchar(20)是民族s_birthdayDatetime是出生日期s_collageVarchar(100)是毕业院校s_eduVarchar(50)是学历s_phoneVarchar(15)是固定电话s_mobileVarchar(15)是移动电话s_emailVarchar(50)是邮箱s_departmentVarchar(50)否
25、部门名称s_departmentidint否部门编号s_positionVarchar(50)否职位名称s_positionidint否职位编号s_statusint否状态s_registerDateDatetime否录入时间r_nameVarchar(50)否角色(2) 部门信息表部门信息表主要是用来保存部门的基本信息,部门信息表的结构如表4.2所示。表4.2 Department(部门信息表)字段名称数据类型是否空说明d_idInt 否部门编号d_nameVarchar(50)否部门名称d_contentText是备注(3) 考勤时间设置表考勤时间设置表主要是用来存放考勤的时间,考勤时间设
26、置表的结构如表4.3所示。表4.3 AttendanceSetting(考勤时间设置表)字段名称数据类型是否空说明onStateTimeVarchar(20)否考勤开始日期onEndTimeVarchar(20)否考勤结束日期ondutytimeVarchar(20)否考勤上班时间offdutytimeVarchar(20)否考勤下班时间(4) 文档信息表文档信息表主要是用来保存文档的主要信息,文档信息表的结构如表4.4所示。表4.4 Docfile(文档信息表)字段名称数据类型是否空说明df_idInt 否文档编号s_idInt 否操作者编号df_nameVarchar(50)否文档名df_
27、typeVarchar(20)否文档类型df_lengthInt否文档名长度df_explainText否文档说明df_timeDatetime否操作时间(5) 公文信息表公文信息表主要是用来存放公文的基本信息,公文信息表的结构如表4.5所示。表4.5 DocFlow(公文信息表)字段名称数据类型是否空说明doc_idInt否公文编号Send_sidInt 否发送者编号Send_nameVarchar(50) 否发送者名称receive_sidInt否接收者编号doc_nameVarchar(200)否公文名称doc_fileVarchar(100)否文件名称doc_explainText是公
28、文说明doc_timeDatetime否传送时间(6) 联系人类型表联系人类型表主要是用来存放联系人所有的类型的信息,联系人类型表的结构如表4.6所示。表4.6 Friendtype(联系人类型表)字段名称数据类型是否空说明t_idInt 否类型编号s_idInt 否创建者编号t_nameVarchar(100)否类型名称(7) 联系人信息表联系人信息表主要是用来存放用户添加的联系人的相关信息,联系人信息表的结构如表4.7所示。表4.7 Myfriend(联系人信息表)字段名称数据类型是否空说明f_idInt 否联系人编号s_idVarchar(50)否用户编号f_typeVarchar(50
29、)否联系人类型t_idint否联系类型编号f_nameVarchar(50)否联系人名称f_mobileVarchar(20)是移动电话f_cphomeVarchar(20)是办公电话f_hphomeVarchar(20)是家庭电话f_emailVarchar(30)是邮箱f_haddressText是家庭地址f_caddressText是公司地址f_numVarchar(20)是邮编号码f_messageText是备注(8) 信息接收表信息接收表主要是用来存放接收的短信的基本信息,信息接收送表的结构如表4.8所示。表4.8 Receive_messages(信息接收表)字段名称数据类型是否空
30、说明r_idInt 否信息接收编号r_SendVarchar(50)否发信人编号r_receiveVarchar(50)否收信人名称r_receiveidInt 否收信人编号r_subjectText否主题r_ContentText否内容r_importantVarchar(20)否紧急情况r_statesVarchar(20)否状态r_timeDatetime否接收时间(9) 职位信息表职位信息表主要用来存放企业中职位的信息,职位信息表的结构如表4.9所示。表4.9 Position(职位信息表)字段名称数据类型是否空说明p_idInt否职位编号p_nameVarchar(50)否职位名称d
31、_idVarchar(500)否部门编号d_contentText是职位备注(10) 角色表角色表主要用来存放系统中角色的信息,角色表的结构如表4.10所示。表4.10 Roles(角色表)字段名称数据类型是否空说明r_idInt 否角色编号r_nameVarchar(50)否角色名称r_valueInt否角色值(11) 信息发送表信息发送表主要是用来存放发送的短信的基本信息,在员工发送短信息之后,将信息内容保存在此表中,信息发送表的结构如表4.11所示。表4.11 Send_messages(信息发送表)字段名称数据类型是否空说明s_idInt 否信息发送编号s_SendidVarchar(
32、50)否发信人编号s_receiveVarchar(50)否收信人名称r_subjectText否主题r_ContentText否内容r_timeDatetime否接收时间(12) 请假信息表请假信息表是用来存放企业员工请假的基本信息,请假信息表的结构如表4.12所示。表4.12 Vacation(请假信息表)字段名称数据类型是否空说明v_idInt 否请假编号s_idInt否请假人编号s_nameVarchar(50)否请假人姓名v_nameVarchar(20)否请假类型v_causeText否请假理由v_datanumInt否请假天数v_starttimeDatetime否请假开始时间v
33、_endtimeDatetime否请假结束时间v_SendTimeDatetime否假条发送时间v_statusVarchar(20)否假条状态v_RepalyPeopleVarchar(50)否回复人v_RepalyText否回复说明v_replaytimeDatetime否回复时间第5章 详细设计5.1登录界面的实现在此系统中,用户可以通过输入正确的用户名、密码和验证密码登录。当用户名没输入或密码为空时,系统将给予提示信息,提示用户输入不能为空。如果输入信息正确无误,则进入相应的系统主页面。登录流程图如图所示:图5.1用户登录流程图5.2人员管理模块的设计 在此模块中,管理员和普通用户看到
34、的界面是不一样的,管理员具有添加员工和管理用户的操作。管理员可对员工信息进行查看、增加、修改、删除等操作,普通用户可以进行个人密码的修改。当管理员点击添加员工时,出现添加员工的界面,管理员输入要添加的信息,并点击添加按钮,然后系统先检查输入信息的正确与否,如果有错误,则提醒管理员,如果正确,则将输入的信息保存在可按需动态添加的数组ArrayList中,再通过数据库语句将员工的信息添加在员工信息表中。员工的修改和删除是用同样的方法实现。普通用户修改密码时,则直接用数据库语句实现即可。普通用户也可以查看自己的信息。对于该系统中的增加、修改、删除等功能,实现的方法是类似的,下文中不再重复。管理员登录
35、进去的流程图如下: 图5.2 管理用户流程图查询员工的流程图如下所示:图5.3查询员工流程图5.3考勤管理模块的实现在考勤管理模块,管理员与普通员工看到的界面是不一样的,普通用户能进行上下班的签到、签退,并且能够查询自己在当月的出勤情况。管理员可以进行考勤时间的设置和考勤的统计。在考勤设置的功能中,管理员输入考勤的开始时间、结束时间、上班时间和下班时间后,系统会读取输入的信息保存在ArrayList中,然后打开数据库连接,打开SqlCommand对象,利用存储过程将考勤设置的信息添加在考勤时间设置表当中,从而实现对考勤时间的设置。对于员工的上下班签到退,当员工点击上班按钮后,系统首先会根据员工
36、的状态判断该员工是否已经签到、退了,如果是,则给出提示信息,如果不是,系统会将当时的时间和设置的时间做以比较,如果当时的时间大于设置的时间,则为迟到,反之为早退。如果员工没有在工作时间内点击上下班按钮,则为旷工,否则为正常上下班。在考勤统计模块中,根据逻辑情况判断出员工的考勤情况,然后将其绑定在GridView中,管理员还可以根据员工编号和月份对员工的出勤情况进行搜索。员工签到或签退的流程图如下图所示:图5.4考勤管理流程图其中考勤信息的删除和人员管理、部门的删除是类似的,就不画图说明了。5.4权限管理模块的实现在权限管理模块中,实现了对角色的添加和角色的分配两个功能。企业可以根据自身的需要来
37、添加角色。在角色分配当中,管理员可以通过部门来选择员工,并为员工分配权限。界面上的下拉列表都是通过数据库读取绑定上的。此功能的流程图如下:图5.5 权限分配流程图5.5站内短信模块的实现为了员工与员工之间方便的交流,本系统设计了站内短信这个功能。在此模块中,员工可以向其他员工发送新信息,也可以查看自己的收件箱和发件箱。界面上有三个图标,分别表示发信息、收件箱和发件箱。点击不同的图标,则出现相应的界面。在发信息中,如果输入的信息不正确或者没有输入,则系统会给出相应的提示。如果输入的信息都符合,则系统读取输入的信息,并将它添加在数据库表中,并显示发送成功。只有发信时,选中保存到复选框的CheckB
38、ox,才能将发送的短信保存在发件箱中,否则发件箱中没有此记录。如果选中复选框,系统将发送的信息保存在发件箱中。在收件箱和发件箱中,员工可以将不用的信息删除,可以多选、全选进行删除。在删除时,首先要循环遍历每个复选框,得到每行的员工编号,根据员工编号来删除员工。发送短信流程图如下图所示:图5.6 发送短信流程图删除信息的部分代码如下:for (int i = 0; i = this.sendboxview.Rows.Count - 1; i+) /得到所有的复选框 CheckBox check = (CheckBox)this.sendboxview.Rowsi.FindControl(chec
39、kdel); if (check.Checked = true)/如果复选框选择为true /得到复选框所在行的信息编号 int s_id = Convert.ToInt32(sendboxview.DataKeysi.Value.ToString(); /删除信息 message del_sendbox = new message(); del_sendbox.del_sendbox(s_id); 5.6请假信息管理模块的实现在请假信息管理模块中,有写请假条、查看审批、审核请假三个小的功能。要请假的员工可以填写请假条,填完请假条后上交给领导,等待领导的审批,领导审批后可以查看审批。审核请假只
40、有管理员有权限。当员工提交请假条后,管理员进行审核,可以批准或者不批准,从而员工会收到批复,并查看审批。在员工填写请假条后,系统会用验证控件或逻辑代码来判断输入的信息是否正确,如果不正确,则给出相应的提示,如果正确,则将请假条信息保存在数据库表中,并提示员工等待领导的审批。管理员收到请假条后会审核请假条,可以批准或者不批准,批准时,Label控件上的字体是绿色,不批准时,是红色的。实现颜色变化的代码如下:If (Convert.ToString(dvv_status) = 不批准)/如果不批准 /控件颜色为红色(Label)e.Row.FindControl(lab).BackColor=Sy
41、stem.Drawing.Color.Red;员工请假流程图如下:图5.7员工请假流程图5.7我的联系人模块的实现在我的联系人模块中,实现了查看联系人、添加联系人、分类管理三个小的功能。当员工点击查看联系人时,系统会从数据库中读取联系人的相关信息并绑定在GridView列表中,员工也可以编辑联系人的相关信息,修改后的联系人信息也将保存在数据库当中。在此界面上,员工也可以通过联系人的分类和姓名来搜索联系人。在添加联系人时,如果联系人分类下拉列表中没有需要的分类,则可以点击添加分类,输入分类名称,然后再输入要添加的联系人的信息,并将其保存在数据库表中。在分类管理中,可以修改和删除联系人的分类。此模
42、块的功能流程图如下:图5.8我的联系人流程图添加联系人流程图如下图所示: 图5.9 添加联系人流程图5.8部门与职位管理模块的实现在部门与职位管理模块中,实现了添加部门、管理部门、添加职位、管理职位四个小的功能。此功能模块只有管理员可以操作,普通员工没有权限。管理员可以对部门和职位进行添加、修改、删除等操作。此部分的实现和人员管理的实现是类似的。5.9我的文档模块的实现在我的文档模块中,实现了上传文档、下载文档和文档管理三个小的功能。在上传文档功能中,用FileUpload控件来实现,首先要获取文档的名称和路径,如果文档太大,则提示用户文档太大,不能上传,如果文档不大,则获得文档的类型,然后将
43、文档保存在MapPath中,并显示文档上传成功。在下载文档功能中,首先要获取所下载文档的ID号,然后读取要下载文档的名称、下载文档的地址等信息,添加下载文档的头信息,最后输出文档。在文档管理模块中,可对文档进进行删除。可以逐个删除也可以多选删除。上传文档流程图如下图所示:图5.10 上传文档流程图下载文档的部分代码如下所示:int df_id = Convert.ToInt32(e.CommandArgument.ToString();/得到下载文件的编号file f = new file();/创建文件类SqlDataReader dr=f.downfileInfo(df_id);strin
44、g fname = drdf_name.ToString();/读取要下载文件的名称 string filepath = Server.MapPath(UploadFile + fname);/获取下载文件的地址 Response.AddHeader(Content-Disposition,attachment;filename=HttpUtility.UrlEncode(fname, System.Text.Encoding.UTF8);/添加下载文件的信息5.10公文流转模块的实现在公文流转模块中,实现了发送公文和公文查收两个小的功能。在发送公文功能中,员工可以输入相关的信息,上传文件后并点击发送,如果信息都正确,则成功发送公文。在公文查收功能中,系统会用列表的形式将所有的公文都展现出来,如果想查看某行公文的话,则点击公文名称,系统会获取文件名,然后将虚拟路径转换为物理路径,保存下来,然后判断文件是否