《基于asp.net的项目申报系统设计与实现 毕业论文.doc》由会员分享,可在线阅读,更多相关《基于asp.net的项目申报系统设计与实现 毕业论文.doc(40页珍藏版)》请在三一办公上搜索。
1、广州大学华软软件学院本科毕业论文论文题目 基于的项目申报系统 设计与实现 专 业 网络工程(设计与管理)班 级 09网络工程 姓 名 学 号 0940217169 指导教师 广州大学华软软件学院网络技术系2013 年 4 月摘 要项目申报系统是一个基于Internet的应用系统,它是一个完全信息自动化的系统。目前高校专业学科分类繁多,科研项目种类多,项目的申报、统计、评审以及汇总等任务量大,采用手工方式进行操作容易出错,且不利于统计,本系统基于上述原因,采用了Microsoft visual studio2010+ Microsoft sql2008、B/S结构、 3.5技术、c#语言开发了项
2、目申报系统,实现了用户可以在线申报,专家在线匿名评审以及后台汇总的功能,极大地简化了项目管理的工作。关键词 B/S结构,C#,信息自动化,项目申报AbstractThe project application system is an application system based on Internet, it is a fully automated information system. The current classification of various professional disciplines in Colleges and universities, scienti
3、fic research project types, project reporting, statistics, review and summary of the manual operation mode, error prone, and not conducive to statistics, the system based on the above reasons, using the Microsoft visual studio2010+ Microsoft sql2008, B/S structure, technology, c# language has develo
4、ped 3.5 project reporting system, the user can online declaration, the expert is online anonymous review and summary of the features of the background, greatly simplifying the project management work.KEY WORDS BS structure;C#;Information automation;project application;目 录第1章 绪论61.1系统的研究现状61.2研究意义61.
5、3系统设计目标7第2章 系统分析72.1 需求分析72.1.1 用户需求分析:82.1.2 专家需求:82.1.3 管理员需求分析92.2 开发环境分析92.2.1数据库选定92.2.2 开发语言选定102.2.3 开发要求:112.2.4相关技术113章 系统设计123.1总体设计123.1.1 系统设计123.1.2 数据设计133.1.3 界面设计143.2详细设计163.2.1安全设计163.2.2 流程设计163.2.3 数据库设计24第4章 系统实现254.1系统功能实现264.1.1 用户登录注册264.1.2 专家评审284.1.3 管理员后台管理294.2页面实现314.2.
6、1 管理员314.2.2 专家334.2.3 申报用户34第5章 总结37参考文献39致谢40第1章 绪论1.1系统的研究现状很多高校一直使用传统人工的方式管理科研档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。作为计算机应用的一部分,使用计算机对科研档案信息进行管理,具有手工管理所无法比拟的优点。所以建立项目管理系统,使科研管理自动化,提高信息处理的速度和准确性十分必要。目前,开发科研管理系统的技术很多,如ASP,JSP,PHP等,可是用ASP.NET开发是非常不错的选择。这里以ASP和ASP.NET做一
7、个比较。ASP是被解释执行的,并不是被编译执行的,所以比较慢;它没有提供一个很好的开发环境;不支持类,很难封装复杂的外理逻辑;可随意加入脚本,很灵活,但也导致了不可维护性等不足。而ASP.NET它是被编译后再执行的,所以效率要比ASP高很多;它有很好的开发环境,如VS.NET 2010更容易调试程式;支持类,支持面向对象,可以使用.NET Framework 更好的进行开发;它使设计和开发分开来,如界面设计放在.aspx文件中,开发则放在.cs 或 .vb等文件中,这样更有利于程序的维护等优点。基于ASP.NET的这些优势,本系统选择ASP.NET开发,使用Visual Studio 2010
8、做为开发工具,并且以SQL Server 2008做为后台数据库。综合来说,本设计选择Microsoft SQL 2008,MS SQL Server在连接数、数据量大小等方面没有限制,图形管理界面相当出色,对使用者没有过高的要求。1.2研究意义项目申报系统的开发意义在于一方面可以提高工作效率和工作质量,同时又便于高校里面各个部门、各个系之间的信息交流,实现了资源共享,有力地推进项目管理和科技服务现代化。在资源节约方面,在不完全统计中,可以从各方面的数据得出,实用项目申报系统以后可以大大地节约了纸张的使用,基本只需在签名的时候打印表格出来签名,环保、节约成本。1.3系统设计目标本系统用户包括后
9、台管理员、普通用户(包括学生和老师)、参与测评项目的专家三大类。管理员登录后台成功后,可以添加删除角色、对项目进行最终评级、普通用户、专家的信息添加删除;专家用户可以对自己的信息进行修改,项目的评定;普通用户可以对自己的信息修改,申报项目,查看项目申报的情况等;最后就是管理员要对项目申报的管理汇总。 第2章 系统分析2.1 需求分析在投放的大量的调查问卷之后,进行了统计,发现对于这个系统,用户们的需求都比较统一,有以下的几点:界面简洁、操作容易统计规范、能够自动生产表格,同时可以在线打印,也希望能够导出文件保存起来。在项目没有确定立项的时候希望数据能够保密,即保密性要好,总体来说是就是这些。根
10、据系统分析,我们需要实现如下功能:实现用户身份验证功能,判断用户权限,将权限信息提供给模块,实现用户登录日志,包括登录成功和登录失败信息,共系统管理员管理使用。完成系统主页面的设计,提供各模块标准统一的显示界面,并提供系统各模块的Web层接口,接口信息从数据库中提取动态生成。完成页面基类的设计,这里会应用vs2010的母版功能(详细看界面设计),提供各页面所必需的公用信息,继承了此基类的页面可以直接调用这些信息和服务,而不用关心实现方法,这样町以大大提高开发效率,另外可以从整体上控制系统的稳定性,提高系统的灵活性,在公用信息需要修改时,只要直接修改基类即可。根据学院情况,创建项目、设计项目进程
11、和项目参与成员,项目系统管理员能对所有项日进行修改。根据项目需要,本系统设置三个角色:管理员、评审专家、申报人。 功能划分如下:浏览功能;查询功能;插入功能;修改功能;删除功能;汇总;分类;申报时间设置。功能描述(1)浏览功能:列出当前数据库文件中单位基本信息、申报项目信息、管理员、菜单的所有记录;可选定一项记录,并提交;(2)查询功能:申报单位记录匹配查询;审专家记录匹配查询;管理员相关匹配查询;(3)插入功能:增加一个申报单位记录;增加一个申报项目记录;增加一个管理员记录(4)修改功能:修改某一已存在的记录内容,提供确认机制;(5)删除功能:删除一个记录,提供确认机制;性能需求: 数据精确
12、度,查询时应保证查全率,所有在相应域中包含查询关键字的记录都应能查到,同时保证查准率。时间特性:一般操作的响应时间应在12秒内。适应性:满足运行环境在允许操作系统之间的安全转换和与其它应用软件的独立运行要求。运行需求:用户界面,采用对话框方式,多功能窗口运行;硬件接口,支持各种80x86系列PC机;软件接口运行于Windows XP及更高版本的操作系统之上。故障处理:正常使用时不应出错,对于用户的输入错误应给出适当的改正提示。若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损。2.1.1 用户需求分析能快速读取数据,界面友好,操作提示清晰,信息安全性。用户特点:就目前来说,本系统的用户均
13、为管理员、专家、申报人(普通用户),这些使用者都是高校里面的人员(老师或学生),都具有一定的电脑操作基础。 那么申报用户需要的功能有:查询功能、申报功能、项目修改删除、项目预览、项目打印页面、项目电子版上传。 2.1.2 专家需求分析 能够看到申请报告的详细内容,报告的格式要规范,流程要简洁。 专家特点:专家大部分的时间不多,所以流程需要简洁,高校,报告规格要统一。 专家需要的功能则有:个人信息修改,项目详细内容预览、审批项目、修改审批意见。 2.1.3 管理员需求分析界面简洁,操作方便,项目管理能够统一交由管理员处理本系统管理员的任务比较重,需要的功能比较多,如申报时间的设定,即什么时候可以
14、项目申报,什么时候项目申报结束;再者,已申请的项目审批专家的安排,经过管理员统一安排,这样可以让专家更有针对性的审批项目,当然前提是已经安排好专家的审批范围,所以专家的注册也是交由管理员控制;最后就是项目的汇总、处理,都是管理员在后台统一管理。因此管理员的功能有:管理项目、设置申报有效期、项目申报文件的删除、增添删除专家、专家审批文件管理等,管理员需要的功能比较多,所以不一一说明。2.2 开发环境分析2.2.1数据库选定目前系统开中用得比较多的数据库主要有Access、Microsoft SQL Server、MySQL、Oracle等,它们各有千秋,本文结合本系统和公司的实际情况对其进行分析
15、对比。Access是一种桌面数据库,只适合数据量少的应用, Access的数据库适用于20万条数据级别的应用,随着数据量的增加,数据的查询统计会变慢。Microsoft SQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Microsoft Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。对于在 Windows平台上开发的各种企业级信息管理系统来说,不论是 C/S(客户机 /服务器)架构还是B/S(浏览器 /服务器)架构,Microsoft SQL Server 都是一个很好的选择。MySQL短小精悍,像Access
16、一样的文件型数据库,但比Access强百倍,从Linux平台上移植过来的,安全性非常好,不过虽然也有第三方开发的图形界面,但并不好用。MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。Oracle各方面都比较成熟,但对硬件要求高,采用完全开放策略,但其价格非常昂贵。其操作和设置比较复杂,适用于有一定操作经验的用户。它同Microsoft SQL Server一样都采用了多线程机制,能够一次处理多个用户的并行访问请求,但在用户修改数据的情况下,Oracle的并
17、行访问机制要优于后者,提供更好的数据一致性。在上面信息所得,再加上综合实际情况,最终决定选择了Microsoft SQL Server作为本系统的数据库2.2.2 开发语言选定目前基于B/S构架的开发语言主要有ASP、PHP、ASP.NET、JSP。ASP:这个被ASP.NET取代是迟早的事,维护早期网站还行,新开发的网站还使用这种语言就没有必要了。ASP.NET:ASP.NET是M的一部分,提供了一个统一的 Web 开发模型,其中包括开发人员生成企业级 Web 应用程序所需的各种服务。ASP.NET 是一个已编译的、基于 .NET 的环境,可以用任何与 .NET 兼容的语言创作应用程序。另外
18、,任何 ASP.NET 应用程序都可以使用整个 .NET Framework,目前已出5.0版本,每个版本都有新的特性。PHP:PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C, Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。PHP的源代码完全公开,而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。不过,程序的移植些麻烦。JSP:由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点平台无关性。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。但在
19、调试时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数,而是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。综合来看,ASP已明确排除,其他语言都各有千秋。不过,开发语言和数据库一般都一个常用的组合,而SQL Server一般和A或是Asp组合,所以这里选择A作为开发语言。而在A开发中,目前以C#最常用,所以在这个项目中,我们采用C#作为后台语言。2.2.3 开发要求:开发工具:Microsoft Visual Studio 2010开发技术:ASP.NET编程语言:C#.NET数据库:Microsoft SQL
20、2008 工具配置:Microsoft .NET Framework 3.52.2.4相关技术水晶报表(CrystalReports)简单应用水晶报表引擎(CrystalReportEngine(CREngine.dll))通过它可以完成一些任务,如在报告文件中合并数据,转换报告为其它格式等。也正是因为报告引擎的作用,才可以将Asp.Net中的水晶报表转换成为普通HTML格式水晶报表设计器(CrystalReportDesigner(CRDesigner.dll))水晶报表就是在设计器中创建的,在设计器中你可以设计标题,插入数据,公式,图表,子报表等。DataSource.rpt文件取得数据库
21、的方法取决于你方法的选择,你能选择让水晶报表自己选择数据而不使用任何代码或者也可以选择手动的组装DataSet,然后再将其传送到报表文件。水晶报表查看控件(CrystalReportViewerwebformControl(CRWebFormViewer.dll))水 晶报表查看控件是一个WebForm控件,可以将它看成是一个在.aspx页面中存放报表的容器。注意:在一些复杂的操作中,报表服务器与Web服务器可 能不在同一物理主机上,Web服务器将HTTP请求传送到报表服务器上去。水晶报表也可以当做WebService来执行。执行模式,水晶报表取数据可以使用下面的方法实现Pull模式:被请求时
22、,水晶报表直接根据指定的驱动连接数据库然后组装这些数据。Push模式:此时开发表不得不自己编写代码连接数据并组装DataSet,同时将它传送至报表。在些这种情况下,通过使用连接共享以及限制记录集合的大小,可以使用报表性能最大化。A水晶报表优点有一下几点:快速的报表开发、能够导出成为负责的交互性图表、可以与其他控件一起在webform中使用、能够动态地将报表导出成为很多中格式。由于刚接触水晶报表不久,所以,只是简单地应用。第3章 系统设计3.1总体设计3.1.1 系统设计本系统主要分为三大模块:普通用户模块、评审专家模块、管理员模块(后台管理) 用户模块:注册、信息修改、项目申报、申报文件查阅、
23、制表打印 专家模块:项目查阅、审批、评审意见、个人信息修改 管理员模块:普通用户管理、专家用户管理、项目可申报管理、项目管理系统的主要特点与性能特点系统的主要特点:(1)基于在线方式的计划项目网上申报及其后台信息实时分级管理服务,创造、操作简便实用。而且整体清晰、形象。(2)申报系统,可以让申报人在网页上填报,简便容易,审查人员可以轻松地得到该项目的信息。有利于后台查询、汇总和打印,更有利于节省人力资源。(3)采用实时交互式工作流程,申报人可以及时听取意见、修改并查看申报结果。(4)申报系统可以把各个环节进行人员分级管理,提高工作的效率(5)操作界面友好,可以实现数据的录入、修改查询等众多功能
24、(6)基于3w服务的B/S系统结构,维护工作在服务器端进行,客户端不必进行客户端安装,具有很好的安全性、扩展性和维护性。家信息更新密码修改项目审批修改密码单位用户更新项目申报信息查询登录用户管理专家用户管理申报用户管理项目管理项目申报系统管理申报用户功能专家用户功能 图1-1系统功能图 3.1.2 数据设计1、数据的需求分析根据系统的需求分析,数据库需要如下 人员基本信息表:存放用户的基本信息,包括用户的用户名、密码及用户的项目角色信息。登录口志信息表:存放用户登录相关信息。项目成员信息表:存放项日参与成员的信息。项目角色字典表:存放项目角色的字典,供其它表索引。项目进程日志表:存放用户参与的
25、所有进程日志信息。2、动态数据数据输入:鼠标对链接或按钮的点击;查询方式、查询关键字;新建单位信息、项目信息、管理员信息;单位信息,项目信息,管理员信息项相应纪录更改;受限操作所需的密码;数据输出: 查询关键字确定的数据库记录的子集;统计结果及其格式化文件;信息录入、删改结果(成功或失败);内部数据:查询操作建立的索引。3、数据采集学院将会定期的进行数据统计,备份。3.1.3 界面设计为了做到界面统一整洁,在设计界面的时候应用了vs2010里面的母版,母版的功能就是类似于我们平时去超市买东西一样,哪个架子摆放了什么,一目了然。母版的使用使用 ASP.NET 母版页可以为应用程序中的页创建一致的
26、布局。单个母版页可以为应用程序中的所有页(或一组页)定义所需的外观和标准行为。然后可以创建包含要显示的内容的各个内容页。当用户请求内容页时,这些内容页与母版页合并以将母版页的布局与内容页的内容组合在一起输出。(1)母版页的工作原理 母版页实际由两部分组成,即母版页本身与一个或多个内容页。(2)母版页母版页为具有扩展名 .master(如留言板MasterPage.master)的 ASP.NET 文件,它具有可以包括静态文本、HTML 元素和服务器控件的预定义布局。母版页由特殊的 Master 指令识别,该指令替换了用于普通 .aspx 页的 Page 指令。除 Master 指令外,母版页还
27、包含页的所有顶级 HTML 元素,如 html、head 和 form。例如,在母版页上可以将一个 HTML 表用于布局、将一个 img 元素用于公司徽标、将静态文本用于版权声明并使用服务器控件创建站点的标准导航。可以在母版页中使用任何 HTML 元素和 ASP.NET 元素。(3)内容页通过创建各个内容页来定义母版页的占位符控件的内容,这些内容页为绑定到特定母版页的 ASP.NET 页(.aspx 文件以及可选的代码隐藏文件)。通过包含指向要使用的母版页的 MasterPageFile 属性,在内容页的 Page 指令中建立绑定。在内容页中,通过添加 Content 控件并将这些控件映射到母
28、版页上的 ContentPlaceHolder 控件来创建内容。创建 Content 控件后,向这些控件添加文本和控件。在内容页中,Content 控件外的任何内容(除服务器代码的脚本块外)都将导致错误。在 ASP.NET 页中所执行的所有任务都可以在内容页中执行。(4)母版页的优点 母版页提供了开发人员已通过传统方式创建的功能,这些传统方式包括重复复制现有代码、文本和控件元素;使用框架集;对通用元素使用包含文件;使用 ASP.NET 用户控件等。母版页具有下面的优点:(a)使用母版页可以集中处理页的通用功能,以便可以只在一个位置上进行更新。(b)使用母版页可以方便地创建一组控件和代码,并将结
29、果应用于一组页。例如,可以在母版页上使用控件来创建一个应用于所有页的菜单。(c)通过允许控制占位符控件的呈现方式,母版页使您可以在细节上控制最终页的布局。3.2详细设计3.2.1 功能1)申报项目2) 有管理委员会对申报项目进行审核3)挑选评审专家4)专家评审5)结果汇总(校验、汇总)3.2.2 性能系统对运行环境的要求:1、 硬件环境服务器端:处理器:inter pentium 4 1.6GHz 或更高内存:4G硬盘空间:500GB或更大光驱:DVD显卡:SVGA显示适配器用户端:客户端主要用于浏览和操作数据,对硬件要求不高,配置如下:处理器:inter pentium 166 Hz 或更高
30、内存:32MB硬盘空间:40GB或更大光驱:CDROM 48X显卡:SVGA显示适配器2、 软件环境服务器端:操作系统:windows 2003 server网络协议:TCP/IP数据库服务器:Microsoft SQLServer 2000浏览器:IE5.0 以上用户端:操作系统:windows 98/2000/XP网络协议:TCP/IP数据库服务器:Microsoft SQLServer 2000浏览器:IE5.0 以上。3.2.3 程序逻辑 (1)用户登陆模块l 功能:建立数据库链接、身份验证、运行主对话框、退出时断开数据库链接l 输入项目:用户名、用户密码l 输出项目:用户登录失败提示
31、或主对话框l 程序逻辑生成数据库查询语句调用数据库查询模块IF返回结果集为空(不存在该用户)置读者姓名字符串为空“返回”非法用户名重新进入登陆页面ELSE置读者姓名字符串“返回”合法用户名进入主模块l 测试要点:数据库连接情况:正常情况,数据库文件缺少,外部系统异常。用户输入是否能正常响应;能否对用户身份进行检验(2)系统主模块l 功能:操作链接导航l 输入项目:鼠标点击l 输出项目:相应的操作模块l 程序逻辑:如图初 始 化项目申报模块项目评审模块综合评定模块图1-2初始化图l 接口:void open(int i,int k,Connection m_pConnection)传入参数:i,
32、模块编号; Connection,数据库连接指针;k,用户类型传出参数:无l 测试要点:数据库连接情况:正常情况,数据库文件缺少,外部系统异常。对用户输入的响应:合法输入,能够正常调用子模块;非法输入,系统能否辨别,并作出响应(提出警告);子模块的异常状况,系统能否及时做出响应。(3)项目申报管理模块项目申报模块结构图:如下申报单位记录位信息咨询项项目申报修修改密码推推荐专家图1-3申报单位记录图l 功能:申报单位信息和项目申报信息填写,推荐专家注册加入专家,修改密码l 输入项目:申报单位代码,密码l 输出项目:登陆成功,进入申报单位的系统使用资源界面,不成功显示错误界面l 程序逻辑:生成数据
33、库查询语句,调用数据库查询模块IF返回结果集为空(不存在该单位)进入更新对话框,各表单元素滞空。ELSE进入更新对话框,表单元素值设置为数据库中提取的相应数据,提交更新后的信息。l 接口:void SbManager(String s)传入参数:s,申报单位代码传出参数:单位详细信息l 测试要点数据库连接正常时、输入合理合法参数、输入参数不合理、输入参数不合法、数据库连接异常;数据库数据异常(单位编号为空)。(4)项目评审管理模块项目评审模块结构图:如下评 审 专 家 登 陆专专家信息项项目评审密密码修改图1-4评审专家登录图l 功能:实现专家登陆,专家信息查询,项目评审,修改密码l 输入项目
34、:专家代码,密码l 输出项目:登陆成功,进入项目评审使用资源界面,不成功显示错误的界面l 程序逻辑:生成数据库查询语句,调用数据库查询模块,IF返回结果集为空(不存在该专家)进入更新对话框,各表单元素滞空ELSE进入更新对话框,表单元素值设置为数据库中提取的相应数据提交更新后的信息l 接口:void NoteManager(String s)传入参数:s,专家代码传出参数:专家详细信息l 存储分配l 测试要点数据库连接正常时、输入合理合法参数、输入参数不合理、输入参数不合法、数据库连接异常;数据库数据异常(专家编号为空)。(5)综合评审管理模块l 功能:高级主管登陆,专家信息查询,项目信息查询
35、,单位信息查询,分配浏览,申报设置,修改密码l 输入项目:管理员代码,密码,各个信息的超链接l 输出项目:登陆成功,显示管理资源使用页面,不成功显示错误界面,各链接界面l 程序逻辑:生成数据库查询语句,调用数据库查询模块,IF返回结果集为空(不存在该管理员,该链接),进入更新对话框,各表单元素滞空。ELSE进入更新对话框,表单元素值设置为数据库中提取的相应数据,提交更新后的信息。l 接口:void FoodManager(String s)传入参数:s,管理员编号传出参数:各个链接界面信息l 测试要点数据库连接正常时、输入合理合法参数、输入参数不合理、输入参数不合法、数据库连接异常;数据库数据
36、异常(管理员编号为空)。3.2.4流程设计1、用户注册数据源点及会点数据描述: 简要描述:填写个人相关信息 输入数据流:用户详细信息 输出数据流:操作确认信息申报人登录首页开始注册信息填写注册成功 图1-5用户注册流程图2、项目申报流程数据源点及会点数据描述: 名称:单位 简要描述:单位申请形成、单位修改基本信息 有关数据流:项目信息表、单位信息表、专家信息表 简要描述:根据用户提交的项目信息,向数据库中插入相应的数据 输入数据流:用户信息、项目信息 输出数据流:操作确认信息 简要描述:填写推荐专家的基本信息 输入数据流:专家信息 输出数据流:操作确认信息 数据流名:项目信息 说明:用于传递单
37、位申报情况字段 数据流来源:单位 数据流去向:数据库管理员申报人查询单位信息申请项目提交申请生成项目信息表向管理员书面推荐专家生成专家信息表生成申报信息数据库管理员 图1-6项目申报流程图3、项目评审流程:名称:专家评审简要描述:评审专家查询修改专家信息;评审项目、确认信息有关数据流:项目评审结果,专家信息 简要描述:查询修改专家相应信息 输入数据流:专家信息 输出数据流:专家详细信息 简要描述:评审单位申报项目信息 输入数据流:专家信息 输出数据流:操作确认信息项目评审结果 说明:用于传递项目评审的结果字段 数据流来源:评审专家 数据流去向:数据库专家信息 说明:用于传递专家身份信息 数据来
38、源:数据库 数据去向:操作系统评审项目提交评审结果修改专家信息评审专家 图1-7专家审批流程图4、综合评审流程:申报人申报专家审批建议查看专家信息提交评审结果(A)分配浏览系统自动分类查看单位信息申报设置查询修改信息提交项目信息项目确定,立项 结果公报图1-8综合评审流程图3.2.5 数据库设计管理员数据表表1-9管理员数据表字段名数据类型字段说明键引用备注IDint管理员ID主键,自动增1usernamenvarchar(50)用户名password nvarchar(20)密码date_registerdatetime时间 (2)用户数数据表表1-10用户数数据表字段名数据类型字段说明键引
39、用备注IDintID号主键,自动增1usernamenvarchar(20)用户名passwordnvarchar(20)用户密码Namenvarchar(20)用户真实姓名birthdaydatetime出生日期xuelinvarchar(20)学历xueweinvarchar(20)学位mingzunvarchar(20)民族phonenvarchar(20)联系电话e-mailnvarchar(20)邮箱departmentnvarchar(20)所在系 (3)专家数据表表1-11专家数据表字段名数据类型字段说明键引用备注IDintId号主键,自动增1xiangmu_idNvarchar
40、(50)项目idzZhuanjia_idNvarchar(50)专家idxiangmumingcNvarchar(1000)项目名phoneNvarchar(50)联系电话mimaNvarchar(50)密码e-mailNvarchar(50)邮箱地址danweiNvarchar(50)单位(4) 项目申请时间表表1-12项目申请时间表字段名数据类型字段说明键引用备注Start_Timedatetime 起始时间End_Timedatetime结束时间3.2.6安全设计1、多用户权限管理为了保证系统安全性, 采用了多级用户权限等级访问管理。系统最高权限者为系统管理员,由管理员分配各级项目管理人
41、员的用户名及密码。申报单位采用实名注册的方式向系统申请使用权限, 专家统一由管理员进行信息录入注册。各级用户名及密码存于用户权限数据库中,并在进入数据库之前进行md5算法的加密确保密码只有当事人知道, 只有用户自己才能有权修改自己的密码。2、系统安全性安全性是系统建设考虑的一个重要方面, 因为它关系到整个系统的实用性和可靠性。本系统除了使用内外网络隔离技术和验证身份外, 在应用程序和数据库中还对用户访问权限进行了分配和限制, 同时还设有日志功能, 从而确保信息不被非法泄漏。根据数据库服务器的并发处理能力设置了最大客户数, 限制消耗临界资源较大的事务性操作的瞬时并发数,有效避免了在项目申请过程中
42、大量用户同时访问系统造成的进程阻塞问题, 确保了系统的稳定运行。第4章 系统实现4.1系统功能实现4.1.1 用户登录注册(1)登录页面的功能登录模块的主要功能是提供给各种类型的用户的登录,输入用户名和密码以后进行验证,如果验证成功就进入相应的页面继续操作,若验证失败,就提示相应的信息告知用户。(2)登录页面的页面设置本页面应用了TextBox控件,用来输入用户名和用户密码。一个DropDownList控件,用来选择用户类型。一个Button控件,用来完成登录验证功能。还有就是用户登录必须输入验证码的实现,来有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试。本系统用了js文件来验证,路径/JS/shenbaorenxinxiyanzheng.js,它负责了登录页面验证、注册页面验证、项目申报填写事项的有关验证等。下面是部分登录界面代码:1、登录页面if (dt.Rows.Count != 0) /登录成功 Sessionusername = dt.Rows0yonghuming.ToString().Trim(); Sessionuid = Convert.ToInt32(dt.Rows0id.ToString().Trim(); /如果已经填写项目,则保存项目信息 if (tyzm != yzm)