资源描述
南京信息职业技术学院毕业设计论文作者 XXX 学号 系部 信息服务学院 专业 计算机应用技术/电子商务 题目 合同管理系统设计与实现 指导教师 XXX 评阅教师 完成时间: 年 月 日 毕业设计中文摘要题 目:合同管理系统设计与实现摘 要:一个公司或者个人都经常需要签订各种大大小小的合同,随着签订的合同的数量的增多,合同的管理必然成为一种负担。在信息化程度越来越高的当今社会,可以使用信息化的手段来管理合同的信息。随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业合同管理势在必行。本系统结合企业合同管理制度,经过实际的需求分析,采用功能强大的Microsoft Visual Studio 2003作为开发工具,而开发出来的企业合同管理系统。整个系统从操作简便、界面友好、灵活、实用、安全的要求出发,可完成合同的添加、删除、搜索全过程,包括合同的的录入、编辑,合同档案的建立、合同档案管理等工作,经使用证明,本文所设计的系统可以满足企业进行合同日常维护和管理方面的需要。关键词:数据库,合同管理系统,Microsoft Visual Studio 2003毕业设计外文摘要Title :The contract management system design and implementation Abstract:A company or individual all frequently needs to sign each kind of contract. Along with contract quantity increasing which signs, the contract management becomes one kind of burden inevitably. Is more and more high in the becoming an information based society degree now the society, may use becoming an information based society the method to manage the contract the information.Along with the computer technology fly development, the calculator is in business enterprise manage applied universality, make use of the management power that the calculator carries out the business enterprise contract at go necessarily .This system combines the business enterprise actual contract management system, analysis through actual need, adopt the function strong Microsoft Visual Studio 2003 conduct and actions development tool, but the business enterprise contract that development come out management system.The whole system from match the operation simple, the interface amity, vivid, practical, the request of the safety set out, completing the contract to increase, delete, search and the data prepare to manage the whole process, including the data to record to go into, edit the managements such as the establishment, the contract management etc. work of the contract file ,Through actual usage certificate, the system that this text design can satisfy usual maintenance and the demand of the managements that the business enterprise carries on the contract.Keywords:Database,The contract management system,Microsoft Visual Studio 2003 目 录1 引言12 知识准备22.1 关键技术22.1.1 C#技术22.2.2 ASP.NET技术22.2 数据库管理系统22.3 系统开发工具及运行环境43 系统设计53.1功能描述53.2系统逻辑结构图64 数据库规划75 详细设计与实现95.1创建系统主功能选择页面95.2员工登录功能模块95.3合同录入功能模块115.4合同会签功能模块136 安全问题分析及解决15结束语17致 谢18参考文献191 引言合同管理是商务运作中极其重要的一部分,其管理的优劣直接影响商务流程的顺畅。目前,人们往往用传统的人工管理方式结合电子表格来进行合同管理,这种管理方式存在着诸多弊端,如:效率低、保密性差、电子表格容量小,关联性差 ,不易于查询、更新和维护等。如果合同的签订、履行、变更、终止等全过程完全靠人工进行跟踪管理,不仅工作量大,而且难度也非常大,特别是合同管理归口到计划管理科。计划管理科既不管资金的收入和支出也不管货物印发出和入库,所以对合同的履行情况计划管理科无法掌握,就更谈不上对合同进行监督和检查。计划管理科只了解合同的签订情况,要了解合同的履行情况非常被动,这种人工管理方式远远不能满足现代化管理的需要。在信息化程度越来越高的当今社会,随着签订合同数量的增多,合同的管理已然成为一种负担。随着计算机的普及和计算机技术的发展,计算机已开始在人类的生活中扮演着越来越重要的角色。计算机正以其速度快,效率高,操作简单等优点,成为很多人和部门的工作离不开的助手,例如:金融,电信,计算机控制,计算机辅助制造等等。而无论是在哪个方面,计算机所做的工作都是负责对数据的采集、处理、输出,因此,我们需要一种能对数据进行各种操作的工具数据库管理系统。我们的目标就是开发一个功能实用、操作方便,简单明了的合同管理系统。经过分析,我们使用 MICROSOFT公司的 Microsoft Visual Studio 2003开发环境,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。2 知识准备2.1 关键技术2.1.1 C#技术Microsoft Visual Studio.NET 框架为开发人员提供了一套完整的解决方案,用来创建应用程序的开发环境。用.NET开发环境所创建的Web应用程序具有安全性、可伸缩性以及高可用性的特点。Microsoft Visual C# 是一种以Visual Studio.NET 作为开发环境的语言。它的应用程序摸板有:Windows应用程序、类库、Windows控件库、ASP.NET Web 应用程序、ASP.NET Web服务等等。C#是从C和C+派生来的一种简单、现代、面向对象和类型安全的编程语言。C#主要是从C/C+编程语言家族移植过来的,C和C+的程序员会马上熟悉它。C#试图结合Visual Basic的快速开发能力和C+的强大灵活的能力。2.2.2 ASP.NET技术 ASP.NET是建立在.NET Framework基础之上的程序设计框架,它用来创建Web应用程序,开发驻留在微软的IIS上并使用诸如HTTP和SOAP等Internet协议的Web应用程序。它是.NET Framework的一部分,可以用任何基于.NET的语言开发 ASP.NET Web应用程序。 ASP.NET Web窗体是ASP.NET Web应用程序的一部分,它为创建动态Web站点提供了简易的方法。ASP.NET Web窗体不依靠客户端脚本,依次它不依赖于客户端浏览器类型或操作系统。这种独立性允许开发独立的Web窗体,这种窗体可以被任何可以访问Internet并具有Web浏览器的设备浏览。 ASP.NET的重要特色有:网页内容和程序代码分离;多语言支持;执行效率更高;面向对象的特性;运行与.NET平台上 ASP.NET的新特色:Web窗体;服务器控件;Web服务;高速缓存;配置的改进。2.2 数据库管理系统SQL Server 2000是一个关系数据库管理系统.其特性有:1. 支持扩展标示语言XML(Extensible Markup Language)2. 新的数据类型SQL Server 2000 中增加了3 种新的数据类型:BIGINT,SQL_VARIANT和TABLE.3. 数据行中的Text类型数据SQL Server 2000 中可以将TEXT 和IMAGE 类型的数据直接存放到表的数据行中,而不是存放到不同的数据页中,这就减少了用于存储TEXT 和IMAGE 类型的空间并相应减少了磁盘处理这类数据的I/O 数量.4. 用户自定义函数SQL Server 2000 扩展了Transact-SQL语言的可编程性,用户可以创建自己的Transact-SQL函数.用户自定义函数可以返回一个数量值或表.5. 索引增强可以在计算列上创建索引,这是一个很大的改进.6. 全文检索增强全文检索中增加了改变跟踪和图形过滤的功能,其中,图形过滤功能允许对存储在IMAGE类型列中的文档数据进行查询和创建索引.7. 索引化视图索引化视图允许在视图上创建索引,这就大大提高了需要频繁进行连接查询的程序的性能.8. 分布式查询增强SQL Server 2000 引入了OPENROWSET()的函数,它可以指定在分布式查询中的一个特定的连接信息,分布式查询优化器的功能有了进一步的提高,授予了OLE DB 数据源更多的SQL 操作权.9. 触发器类型创建触发器时可以通过FOR 子句来指定触发器类型为INSTEAD OF 型或AFTER 型,不同类型的触发器执行的时机不同.10. 级联参考完整性约束级联参考完整性约束可以控制在删除或更新有外键约束的数据时所采取的操作,这种控制是通过在CREATE TABLE 或ALTER TABLE 命令中的REFERENCES 子句中加入ON DELETE 或ON UPDATE 子句来实现的.11. Collation 增进SQL Server 2000 用Collation 来替代Code pages 和Sort Orders,它比以前的版本提供了更多对Collation 的支持,并引入了一个基于Windows Collations 的新的Collation集合,可以指定数据库级或列级的Collation. 此外,SQL Server 2000还提供了一整套的管理工具和实用程序,使用这些工具和程序,可以设置和管理SQL Server 进行数据库管理和备份,并保证数据的安全和一致. 2.3 系统开发工具及运行环境(1)硬件平台:CPU:Pentium41.8GHz内存:256MB以上(2)软件平台:操作系统:Windows XP数据库:Microsoft SQL Sever 2000开发工具:Microsoft Visual Studio 2003开发环境:ASP.NET web 开发语言:C#语言浏览器:IE6.0Web服务器:IIS5.1分辨率:最佳效果1024像素768像素3 系统设计3.1功能描述u 注册新员工功能:注册一个新员工,对员工信息进行管理,如员工编号、部门编号、员工名称、性别、出生年月、E_mail地址、电话和密码等。u 修改密码功能:修改用户的登录密码。u 添加合同功能:添加一份合同。包括会签编号、合同类别、合同等级、合同名称、合同标的、合同金额、合同甲方、合同乙方、合同文本、简要内容等信息。u 浏览合同功能:浏览所有合同的信息。包括会签编号、合同编号、合同名称、合同标的、合同金额、合同乙方等信息。u 编辑合同功能:对合同的信息进行编辑,可以修改,删除合同信息。包括会签编号、送签日期、会签状态、合同编号、生效日期、合同类别、合同等级、合同名称、合同标的、合同金额、合同甲方、合同乙方、合同文本、简要内容、会签意见等信息。u 搜索合同功能:根据不同条件来查询合同的信息。条件如合同编号、合同名称、合同类别、合同等级、会签状态,合同乙方、合同金额等。u 浏览会签功能:浏览所有会签合同的信息,即所有会签没有通过的合同。包括会签编号、送签日期、合同名称、合同标的、合同金额、合同乙方、会签意见等信息。u 会签合同功能:在用户浏览会签合同后,用户从中选择一份合同来进行会签,该页面显示了选定合同的所有信息,如果登录用户没有发表会签意见,该用户可以来填写自己的会签意见。u 修改会签功能:对选定的会签合同的意见进行编辑,可以查看,修改,删除,增加会签意见。显示该合同的所有信息和及其所有会签意见,用户可以修改,删除,增加自己的意见。u 退出功能:确认退出时,就退出系统。如果不确认,返回原来的界面。3.2系统逻辑结构图图1合同管理系统逻辑结构图4 数据库规划利用Microsoft SQL Sever 创建数据库contracts ,具体结构为:1部门表部门表(dept)主要用于保存部门的详细信息,该表的结构如表1所示。序号信息项名称字段名称类型长度采用标准及说明部门编号deptidchar10PRIMARYKEY部门名称deptnamenvarchar50部门领导编号updeptidchar10表1部门表2员工表员工表(employees)主要用于保存员工的详细信息,该表的结构如表2所示。序号信息项名称字段名称类型长度采用标准及说明员工编号empidchar10PRIMARYKEY部门号deptidchar10员工名称empnamenvarchar50Null性别sexnvarchar50Null出生年月birthdaydatetime8NullE_maile_mailnvarchar50Null电话telint4Null密码pwdnvarchar10表2员工表3合同等级表合同等级表(grade)主要用于保存合同等级的详细信息,该表结构如表3所示。序号信息项名称字段名称类型长度采用标准及说明自动编号等级编号gradeidint4PRIMARYKEY等级名称gradenamenvarchar50表3管理员信息表4合同类别表合同类别表(sort)主要用于保存合同的类别的详细信息,该表的结构如表4所示。序号信息项名称字段名称类型长度采用标准及说明自动编号类别编号sortidint4PRIMARYKEY类别名称sortnamenvarchar50表4合同类别表5会签意见表合同意见表(opinions)主要用于保存合同的意见的详细信息,该表结构如表5所示。序号信息项名称字段名称类型长度采用标准及说明会签合同编号hqhtidchar10会签编号manageidnvarchar10会签日期effdatedatetime8Null会签意见opinionnvarchar200Null会签部门sign_deptnvarchar50Null会签人signaturenvarchar50Null表5会签意见表6会签合同表会签你合同表(pact)主要用于保存合同的详细信息,该表的结构如表6所示。序号信息项名称字段名称类型长度采用标准及说明自动编号会签合同编号hqhtidint4PRIMARYKEY会签编号manageidnvarchar50送签日期date_timedatetime8Null会签状态statenvarchar50合同编号pactidnvarchar50Null生效日期effdatedatetime8Null合同类别sortnamenvarchar50Null合同等级gradenamenvarchar50Null合同名称pactnamenvarchar100Null合同标的tagnvarchar100Null合同金额moneysnvarchar50Null合同甲方firsternvarchar100Null合同乙方secondernvarchar100Null简要内容contentnvarchar200Null表6会签合同表5 详细设计与实现5.1创建系统主功能选择页面图2主功能页面该页面上添加了四个超链接按钮,用户可以点击各个超链接按钮进入自己想进入的页面进行操作。该页面中还添加了一个Label控件,用来显示欢迎登录用户。5.2员工登录功能模块图3用户登录页面此页面采用了验证码技术,目的是为了防止用户利用机器人自动注册,登录,灌水。所谓验证码,就是一串随机产生的数字与英文字母组合成的4位字符串。添加了一个Label控件用来显示验证码。图4员工注册页面该页面是用来注册一个新员工,如员工编号、部门编号、员工名称、性别、出生年月、E_mail地址、电话和密码等。其中密码数不能少于6位。图5密码修改页面该页面是用来修改用户登录的密码。用户两次输入的密码要一样。5.3合同录入功能模块图6浏览合同页面该页面添加了一个DataGrid控件,点击“合同录入“,该控件将显示会签合同表里的所有的合同的相关信息。点击“查看”可进入编辑合同页面。图7编辑合同页面该页面对合同的信息进行编辑,可以修改,删除合同信息。包括会签编号、送签日期、会签状态、合同编号、生效日期、合同类别、合同等级、合同名称、合同标的、合同金额、合同甲方、合同乙方、合同文本、简要内容、会签意见等信息。可在合同类别和合同等级的DataList控件中选择合同的类别和等级。图8添加合同页面该页面添加一份合同。包括会签编号、合同类别、合同等级、合同名称、合同标的、合同金额、合同甲方、合同乙方、合同文本、简要内容等信息。页面中的两个DataList控件,均在程序中对它们进行绑定到正确的表中。图9搜索合同页面该页面根据不同条件来查询合同的信息。条件如合同编号、合同名称、合同类别、合同等级、会签状态,合同乙方、合同金额等。用户选择好条件后,在填写好关键字后,点击“搜索”按钮,就会在DataGrid控件中显示去符合条件的合同的相关信息。5.4合同会签功能模块图10浏览会签页面此页面只能浏览会签没有通过的合同。点击DataGrid 控件上的“我来看看“超连接,就可以进入”会签合同.aspx”页面图11修改会签页面该页面对会签合同的意见进行编辑,可以查看,修改,删除,增加会签意见。该页面显示了一个合同的所有信息及该合同的所有会签意见,另外登录用户可以修改或增加自己的意见。此页面分为两个部分,上面部分用来显示合同的详细信息,下面部分用来让用户修改、增加、删除会签意见。如果此会签合同的会签意见为空,就插入会签意见到会签意见表中,如果会签意见不为空,就把修改的值插入到会签意见表中。图12会签合同页面该页面是在用户浏览会签合同后,用户从中选择一份合同来进行会签后显示的,该页面显示了选定合同的所有信息,如果登录用户没有发表会签意见,该用户可以来填写自己的会签意见。本页面分为三个部分,上面部分用来显示合同的详细信息,中间DataGrid控件用来显示登录用户的会签意见,下面部分用来让用户发表会签意见。用户需要填写会签意见时,用户可以通过点击“我来发言”按钮来发表自己对此和同的意见,发表的意见将在ID为dg1 的DataGrid控件中显示出来。6 安全问题分析及解决目前,网站为了防止用户利用注册码算码器自动注册、登录、灌水,多采用验证码技术,所谓验证码,就是一串随机产生的数字和英文字母组合成的4位字符串。本系统验证码界面如图3所示。算法描述:将数字、英文字母存储到字符串变量strchar中,使用String.Split方法以指定的分隔符(逗号)分离字符串strchar,将返回的字符串数组存储到字符串数组变量VcArray中,最后使能够随机类Random成员方法Next(int t=rand.Next(61)),根据返回值t来获取字符串数组VcArray中的字符。详细代码如下:public string RandomNum(int n)stringstrchar=”0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,de,f,g,h,I,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z”;string VcArray=strchar.Spit();/ 字符串(返回包含此实例中由指定Char数组的元数分隔)的String数组string VNum=”;int temp=-1;/记录上次随机数值,尽量避免产生的相连随机数相同/采用一个简单的算法以保证生成的随机数不同Random rand=new Random();for(int i=1;in+1;i+) if(temp!=1)/unchecked关键字用于取消整型算术运算和转换的溢出检查/DateTime.Ticks属性获取表示此实例的日期和时间的刻度数 rand=new Random(i*temp*unchecked(int)DateTime.Now.Ticks);int t=rand.Next(61);/返回一个小于所指定的最大值的非负随机数if(temp!=-1&temp=t) return RandomNum(n);temp=t;VNum+=VcArrayt;return VNum;/返回生成的随机数 结束语经过几个月的设计和开发,合同管理系统基本开发完毕。合同管理系统的目标就是将传统的纸张办公向基于web的在线办公转变,实现在线的合同管理。本系统可以分为两个模块:合同管理模块和会签合同模块。合同管理模块包括添加合同,查看合同,编辑合同,搜索合同等功能;会签合同模块包括会签合同,浏览会签意见,修改会签等功能。员工可以以员工身份和密码进行登录,进入系统后可以添加、查看、编辑、删除合同及会签合同意见等操作,可以高效、有序地管理小型企业合同。本系统曾在江苏普蓝陵信息系统监理咨询有限公司试用。具有流程符合合同管理的基本要求,界面友好、输入信息方便(好多信息,系统自动生成),查询全面等优点;但不足之外也是明显的,存在容错性不高,部分地方设计的不够详细、还有待完善,安全性设计没有考虑良好的用户权限和密码限制等。下一步,考虑可从以下方面继续进行改进:1网上化:系统能支持网上数据传输,数据共享;数据远程访问能自动采取一定的加锁策略。2多媒体化:系统能够支持语音和视频的输入。通过这次毕业设计,我终于明白了自己的真实水平:做一个综合程序设计系统还真不轻松。不过,这次使我在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。但在问题的解决方面还非常薄弱。这三个月的系统开发工作,总结起来那就是,软件的开发是相当辛苦的,但成功以后的喜悦也是非常美妙的,而且我发现:如果你投入的心血越多,成功以后你所获得的快乐与充实感也会更强。致 谢经过几个月的忙碌,很高兴毕业设计终于接近尾声了。在系统设计和论文写作过程中,得到了我的指导老师褚洪彦的亲切关怀和耐心的指导,从课题的选择到项目的最终完成,褚老师都始终给予我细心的帮助和不懈的支持,他严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。我除了敬佩褚老师的专业知识和水平外,他严谨的治学态度和细致的研究精神也是我学习的榜样,并将积极影响我今后的工作和生活,在这里我要衷心的感谢褚老师,要不是老师不时的督促指导,想要按时完成这个设计恐怕很难,在此谨向褚老师致以诚挚的谢意和崇高的敬意。其次,我还要感谢我的毕业实习公司指导老师XXX,正是因为你的指导与帮助,才使我有了这个选题,并按计划开发完成。然后,还要感谢大学四年来所有的老师,为我打下专业知识的基础;同时还要感谢我班的同学们,没有你们借电脑给我,完成毕业设计几乎是不可能的。正是因为有了你们的支持和鼓励,此次毕业设计才会顺利完成。 最后,感谢母校南京信息职业技术学院,通过在学校的学习和生活,使我了解和掌握了许多的专业知识和技能,丰富了我的人生阅历,开拓了我的知识视野。总之,我要特别感谢母校四年来对我的精心培育。参考文献1. 黄明,染旭,李伯林. C#+SQL Server中小型信息系统开发实例精选.北京:机械工业出版社,2007 年4月2. Microsoft. 面向.NET的Web应用程序设计北京:中国高等教育出版社,2004 年2月3. 朱如龙,刘焰.SQL-Server 数据库应用系统开发技术北京:机械工业出版社,2004年1月4. 陈娴.ASP.NET 中型在线系统开发实践北京:中国铁道出版社, 2007年1月5. Microsoft. C# 程序设计语言北京:中国高等教育出版社 ,2003年8月6. 房大伟,苏宇,贯伟红.ASP.NET 网路开发实例自学手册,2008年8月
展开阅读全文