1、客户信息管理系统gengxin 作者: 日期:2 个人收集整理 勿做商业用途摘 要客户管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库.而对于后者则要求应用程序功能完备,易使用等特点。经过分析如此情况,我们使用Microsoft公司的Microsoft visual studio 2005开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户
2、满意的可行系统。关键字: 原型法,面向对象,数据一致性,数据窗口,信息管理系统。2ABSTRACTCustomer Management System is typical Manage Information System(MIS),its development mostly include two facets of behind databases upbuild and maintenance and the front applications exploition. To the first one its request striking up datas coherence、
3、integrality and datas security .And that to the latter one,it request applications function maturity,easy maintenance and so on。By analysing thus complexion,we use Microsofts Microsoft visual studio 2005, using its OO empolder tool, especially data-window, which is convenience and concision to contr
4、ol the database of intelligentize object, first of all, at short notice set up applied system anteeype, and then, make original antetype system putting up requirement repeatedly, continually amending and improving, till come into being user wellpleasings system。Keywords: OO, data coherence, data win
5、dow, information manage system.目 录第一章 绪论11。1 研究的意义11。2 研究的目的11.3 实现方案2第二章 需求分析32.1 可行性分析32.2 功能需求概述32。3 运行环境42.3.1 硬件环境42。3.2 软件环境5第三章 系统概要设计63.1 总体框架结构63。2 系统模块63。2.1 模块划分63.2。2各模块功能73。3 数据库设计83。3。1 数据库表关系设计113.3。2 物理设计12第四章 详细设计154.1 用户登录154.2 用户信息管理164。3 客户信息管理174。4 产品信息管理184.5 合同信息管理184.6 合同明细管理
6、194.7 产品销售统计管理19第五章 系统实现205.1 ASP.NET概述205。2 数据库的连接205.3 系统的安全性措施215.4 系统登录页面及代码215.5 信息管理系统页面及代码23第六章 系统测试及维护326。1 传统软件测试方法326.1.1 黑盒测试326。1.2 白盒测试326.2 相关模块测试336.2.1 添加信息测试336.2.2 用户信息测试34第七章 总结35参考文献36致 谢37外文资料原文38译文44客户信息管理系统1.1 研究的意义客户信息管理系统是一个服务性单位不可缺少的部分,它的内容对于单位的决策者和管理者来说都至关重要,所以客户信息管理系统应该能够
7、为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用.作为计算机应用的一部分,使用计算机对客户信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等.这些优点能够极大地提高客户信息管理的效率,也是一个单位的科学化、正规化管理,与世界接轨的重要条件.
8、 因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我将以开发一套客户信息管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。1。2 研究的目的该论文研究的是客户信息管理系统,系统完成后包括:登录页面、用户信息页面、客户信息页面、合同信息页面等。凭借各自的用户名和密码从登录页面进行登录后,用户可以进行客户信息查询、产品信息查询、合同信息查询等,系统管理员可以进行用户信息查询。用户可以实现对客户、合同等信息的查看、添加、修改、删除等的操作。管理员可进行权限的分配,数据库维护等操作.该系统完成以后,用户可以借助遍布全球的Internet进行信息查询.查询既可以在本地进行,也可以在异地
9、进行,大大扩展了管理员对客户信息管理的灵活性。方便用户对客户有关信息的了解及对之间业务往来的信息的查询等操作.1。3 实现方案本系统采用面向对象研究方案,它是一个逐渐扩充模型的过程。面向对象方法学在概念和表示方法上的一致性,保证了在各项开发活动之间的平滑过渡,开发人员能够比较容易地跟踪整个系统开发过程,这是面向对象方法与传统方法比较起来所具有的一大优势。系统在设计过程中遵循了模块化、数据抽象、信息隐藏、弱耦合强内聚和可重用的设计准则。在具体设计过程中则把系统分为用户信息管理、客户信息管理、产品信息管理、合同信息管理、合同明细管理和产品销售统计管理几个小的子系统。面向对象设计语言选择上考虑了一致
10、的表示方法、可重用性和可维护性,所以采用ASP.NET作为本系统开发语言.至此,客户信息管理系统研究方法已经确定。采用B/S模式,选择SQL Server 2005作为后台数据库,选择ASP。NET、JavaScript、Html、C#作为应用程序开发语言,运用web服务器技术,系统完全基于Browser/Server模式进行设计。B/S模式有以下优点:开发成本及维护成本降低。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客
11、户端只有浏览器,网络管理人员只需要做硬件维护;良好的安全性能,防火墙技术可以保证后台数据库的安全性。所有客户端请求都是通过DBMS来访问数据库,从而大大减少了数据直接暴露的风险。因此系统的架构就采用了B/S设计模式。第二章 需求分析2。1 可行性分析信息管理系统的飞速发展,技术的成熟以及应用领域的不断扩大,为网上信息的交互提供了一个良好的平台和方便的操作界面。由于信息管理系统基于用户需求的设计方法,使得该系统的使用更加的人性化、个人化、更贴近用户。客户信息管理系统是针对用户查询使用,传统的客户信息管理模式是手工管理,一种客户由进货到发货,要经过若干环节,多次转抄。由于客户繁多,加之业务人员的素
12、质等因素,易造成客户有效率低下,影响销售。造成商品积压,形成货到地头死的局面,使库存的储备很大,影响资金周转,另外使得客户管理、数据汇总困难。因此,利用计算机所具有的功能来处理客户管理系统大量繁多的数据,及时输出各种管理信息和业务信息,为各级人员有效的管理和决策提供有利的依据,最终提高工作效率和经济效益。因此,利用网络,使用户只要在计算机前输入自己的相关信息即可完成原来的几倍工作量。从客户的角度来说,通过网上也能及时了解与自己有关方面的业务往来信息,减少错误的发生几率。以MIS系统的构建思想来实现网上客户信息管理系统可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。2.
13、2 功能需求概述客户信息管理系统需要满足来自两方面的需求,这两方面分别是用户和管理员.用户的需求是查询与自己部门有关的信息,如:合同部门可实现对合同信息、合同明细的有关操作;销售部门可实现对产品信息、合同信息、合同明细的有关操作;客户部门可实现对客户信息的有关操作;系统管理员的功能最为复杂,包括对客户信息、合同信息、合同明细、产品信息、产品销售统计进行管理和统计及系统状态的查询、添加、修改、删除等维护。用户可以根据本人用户名和密码登录系统,还可以进行查询和维护部分信息.一般情况下,用户只应该查询和维护本部门的情况信息,若查询和维护其他部门的信息,就要知道其他部门的用户名和密码.这些是很难得到的
14、,特别是密码,所以不但满足了用户的要求,还保护了用户的个人隐私。系统管理员有修改用户信息的权限,所以需对管理员登陆本模块进行更多的考虑。系统管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对各部门信息查询和统计、用户和管理人员信息查看及维护,还可以浏览、查询、修改、添加、统计各用户的基本信息。本系统主要实现用户信息管理、客户信息管理、产品信息管理、合同信息管理、合同明细管理和产品销售统计管理六个基本模块。用户信息模块完成系统管理员的登录。其中用户登录模块的功能是验证登录人员确实是系统管理员,系统管理员启动本系统后,进入主控操作界面。若非系统管理员,则提示“您不是合法管理员,请登陆
15、后再操作”。其他信息管理包括各部门所记载的有关的信息,用户必须先登录才能进行有关操作,否则不能进入信息系统。2。3 运行环境2.3。1 硬件环境服务器端配置如下:CPU P4 1.6 GHz 或更高内存 512MB硬盘 160GB光驱 DVDROM 16X显卡 SVAG显示适配器因为客户端主要用于浏览和操作数据,所以对客户端的硬件要求不高,因此用户端配置如下:CPU P41.0GHz 或更高内存 256MB硬盘 40GB光驱 CD-ROM 52X显卡 SVAG显示适配器或集成442。3.2 软件环境服务器端:操作系统 Windows Server 2003 网络协议 TCP/IPweb服务器
16、Internet Information Server6.0/Personal Web Server数据库 Mircrosoft SQLserver2005浏览器 Internet Explorer 6。0以上用户端:操作系统 Windows 98/2000/XP网络协议 TCP/IP浏览器 Internet Explorer 6.0以上第三章 系统概要设计系统设计主要包括用户需求的总结、功能模块的划分和系统流程的分析.根据用户的需求总结系统主要完成的功能,以及将来拓展需要完成的功能,然后根据设计好的功能划分出系统的功能模块,这样方便程序员管理和维护,最后设计出系统的流程。接下来,就对系统设计
17、的前期准备作详细介绍。3。1 总体框架结构本系统主体采用B/S(Browser/Server,浏览器/服务器)结构,即采用目前分布式系统流行的3层软件结构,即在传统的用户和服务器之间加入应用服务器(Application server),3层即是表现层(浏览器)、业务逻辑层(Web服务器)、数据层(数据服务器)。客户信息管理系统框架结构如图1所示。图31 客户信息管理系统框架结构数据服务器与Web服务器是完全分开的,分开之后的3层软件结构功能明确:客户层只提供应用程序的用户界面,负责与用户交互;业务逻辑层是应用系统的关键,它负责处理所有用户请求,进行具体的运算和决定程序的流程,并把处理结果返回
18、给表现层;服务器层仍然提供的是数据库支持、维护和更新应用程序的数据。3。2 系统模块3。2。1 模块划分根据系统用户的不同可以划分为6个模块用户信息管理、客户信息管理、产品信息管理、合同信息管理、合同明细管理和产品销售统计管理。用户信息模块包括对用户信息、客户信息、产品信息和合同信息的维护,以及各模块的编辑、删除、添加等。客户信息模块主要是与客户有关的产品、合同以及销售统计信息。系统模块图如图2所示。图3-2 系统模块图3。2.2 各模块功能 该系统将进入登陆界面的用户设置为四种用户权限,分别为:系统管理员登陆、合同部用户登陆、销售部用户登陆以及客户部用户登陆;不同用户登陆后的操作的实现不同。
19、客户信息管理系统包括对用户信息管理、客户信息管理、产品信息管理、合同信息管理、合同明细管理和产品销售管理等六个子模块,功能分别如下:1:用户信息管理模块:该模块记录公司内部各部门人员信息,不同权限用户进入该模块功能不同。系统管理员用户进入可实现编辑、删除、添加操作。而其他用户进入该模块将显示“您不是合法用户,请登陆后再进入”.2:客户信息管理模块:在该模块中记录了客户的有关信息,系统管理员和客户部用户进入该模块可进行查询、编辑、删除、添加操作。而一般用户只可进行信息查看。3:产品信息管理模块:记录产品详细信息等,系统管理员、销售部用户可进入该模块可实现编辑、删除、添加,其他用户可实现信息查看.
20、4:合同信息管理模块:该模块是对合同信息的记录。系统管理员、销售部和合同部用户进入该模块可进行编辑、删除、添加等功能。其他部门只能进行查看操作5:合同明细管理模块:该模块包括某产品在合同中的信息。系统管理员、合同部、销售部用户进入该模块可实现编辑、删除、添加等功能。其他部门只可实现查看该合同中产品的信息操作。6:产品销售统计管理模块:记录产品的具体合同编号、销售量以及单价等信息。该模块只实现产品销售信息查看功能。3。3 数据库设计本系统使用的数据库管理系统为SQL Server 2005, SQL Server 作为微软公司在Windows系列平台上开发的数据库,一经推出就以其易用性得到了很多
21、用户的青睐,相信大多数将自己的业务建立在Windows平台上的用户都会对它有相当的亲切感.2005年11月,微软公司发布了其数据库软件的又一个升级版本SQL Server 2005.这是五年来微软公司首次发布新版本的数据库软件。用上千人的研发力量、大规模的团队开发、现代软件研发管理方式、耗时五年才打造出来的一个产品,无论对于微软公司还是任何一家软件企业来说,都是非常少见的。SQL Server 2005是一个具备完全Web支持的数据库产品,提供了对可扩展标记语言(XML)的核心支持以及在Internet上和防火墙外进行查询的能力,提供了以Web标准为基础的扩展数据库编程功能.丰富的XML和In
22、ternet标准支持允许使用内置的存储过程以XML格式轻松存储和检索数据。SQL Server 2005提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。例如,XML数据库与Web Service的支持将使您的应用实现Internet数据互联,.Net集成极大的扩展了开发空间,异构数据集成、Service Broker使您的数据和其它应用无缝集成,各种新数据类型和TSQL扩展带来了诸多灵活性。C#、VB。Net、XQuery、XMLA、ADO。Net2.0、SMO、AMO等都将成为SQL Server数据平台上开发数据相关应用的有力工具.在概
23、念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制.利用ER方法进行数据库的概念设计,可分成三步进行:首先设计局部E-R模式,然后把各局部E-R模式综合成一个全局模式,最后对全局ER模式进行优化,得到最终的模式,即概念模式.图 33 实体间联系ER用户信息用户号联系电话用户类型密码姓名 图34用户信息实体ER图3-5 客户信息实体E-R图36 产品信息实体ER图37 产品信息实体E-R图3-8 产品信息实体ER3.3.1
24、 数据库表关系设计根据系统功能设计的要求以及功能模块的划分,在SQL Server 2005中建立了ClientData数据库文件,在该数据库文件下建立了cl-sale、client、con_detail、contract、product、users 6个数据表。如下图3-10所示,是数据表之间关系图图3-10 系统数据表关系图3。3.2 物理设计本系统使用数据库名称为client,其中包含6个数据表,cl_sale表存放产品销售统计信息, client表存放客户信息,con_detail表存放合同明细信息,contract表存放合同信息, Product表存放产品信息, users存放用户信
25、息。各个表字段定义如下:产品销售统计表包括有产品编号、合同编号、产品数量、货物单价四个属性,该表主要用来存储产品与合同之间的关系信息。产品销售统计表如表1所示。表3-1 cl_sale(产品销售)表字段名数据类型说明idint主键,非空client_idchar(10)客户编号,非空Product_idchar(10)产品编号,非空sale_numint销售数量,非空Product_pricemoney货物价单,非空Product_datachar(10)产品数量客户信息表包括有客户编号、客户名称、负责人、客户级别、客户Email、客户电话、简介.该表主要用来存储客户相关信息。客户信息表如表2
26、所示。表32 client(客户信息)表字段名数据类型备注client_id char(10)客户编号,主键,非空client_namechar(10)客户名称,非空client_chargechar(10)负责人,client_introducevarchar(50)简介client_levelint客户级别字段名数据类型备注client_emailvarchar(20)客户emailclient_tellvarchar(20)客户电话合同明细表包括有合同编号、产品编号、产品数量、已发货数、货物单价5个字段,该表用于存放合同中产品的有关信息。合同明细表如表3所示.表3-3 con_detai
27、l(合同明细)表字段名数据类型备注Pontract_id char(10)合同编号,主键,非空Product_id char(10)产品编号,非空Product_numint产品数量,非空Product_sendint 已发货物Product_pricemoney货物单价,非空合同信息表包括合同编号、客户编号、合同状况、签署日期、执行日期、完成日期、负责人、总金额8个字段,该表主要用来存放合同信息。合同信息表如表4所示.表3-4 contract(合同信息)表字段名数据类型备注Contract_idChar(10)合同编号,主键client_idChar(10)客户编号,非空Contract_
28、stateint 合同状况,非空Contract_startvarchar(50)签署日期,非空Contract_senddatetime执行日期Contract_finishdatetime完成日期Contract_personchar(10)负责人,非空Contract_pricemoney总金额,非空产品信息表包括:产品编号、产品名称、产品描述3个字段。产品信息表如表5所示。表3-5 Product(公告信息)表字段名数据类型备注Product_idchar(10)产品编号,主键,非空Product_namevarchar(50)产品名称,非空Product_descnbevarchar
29、(50)产品描述用户信息表包括用户号、密码、姓名、用户类型、联系电话5个字段,各字段定义如表6所示。表36 users(用户信息)表字段名数据类型备注useridvarchar(20)用户号,主键,非空namevarchar(50)姓名,非空passwordvarchar(20)密码,非空branch int用户类型,非空Tellvarchar(20)联系电话第四章 详细设计在前面的需求及概要设计之后,就开始进行详细的设计。下面将根据每个模块详细说明。4。1 用户登录在进入客户信息系统之前,需要首先经过登录页面进行身份验证,如果身份验证通过,才可以以相应的角色进入系统进行相关操作.这一模块主要
30、是用户身份验证,系统分了四种不同的用户角色.系统管理员,根据登陆的用户名和密码,系统将进入操作页面对不同的信息模块实现不同的操作。如果用户输入的用户名不在数据库的信息模块里或密码与用户名不相符时,系统将给出“登陆失败,请检查用户名、密码输入!”的提示。只有用户名,密码正确之后,系统才允许登录.用户名、密码输入正确后,系统提示是否记住密码,下次进入系统自动记住密码。系统流程图如图41所示。图41 系统用户登录流程图4。2 用户信息管理这是本系统的一个的核心模块。该系统只有系统管理员有权限进入查看、编辑、删除、添加新用户。系统管理员进入该界面点击编辑,可实现用户项目修改,然后可选择对修改信息的更新
31、或取消.也可点击删除,则删除整个用户信息。如:修改用户电话为“039485”,可在电话栏输入该数字,然后点击更新.若实行删除操作,可选中该行中任一项目,然后点击删除,即可将整个用户信息删除.。当系统管理员点击添加新用户时,进入添加用户界面,添加项目包括:用户名、姓名、用户类型(必选)、电话,然后选择确定或取消。该系统自动默认用户名和密码相同.用户信息模块流程如图42所示。图4-2用户信息流程图4。3 客户信息管理 用户进入该页面后,实现查看客户的相关信息的操作。当点击该界面中编辑、删除、添加等操作时,系统会审核该用户是否有权限进行这些操作。若有权限,则进入下一步操作.编辑操作可以对客户信息进行
32、修改、删除、更新,如:将客户联系电话“0987683953”改为“39843875”,用户可点击编辑,然后将联系电话栏改为所需要的号码,然后点击更新。若取消该修改,点击取消即可恢复到原来号码。该系统中只有系统管理员有这个权限。而客户部用户和管理员进入该界面后,还可以添加新客户,添加项目包括:客户编号、客户名称、负责人、客户级别、Email、联系电话、客户简介,若项目无误,则单击“添加”.若希望重新填写,则单击“重置按钮.若无权限的用户进入该界面,只能查询客户信息,点击编辑、删除、添加新客户,停留在该界面。若进入该界面不进行任何操作,可返回.客户信息管理流程如图4-3所示。图43 客户信息流程图
33、4。4 产品信息管理产品信息界面包括产品的相关信息,如:产品编号、产品名称、产品描述等。用户进入该界面后,在权限范围内可以实现添加新产品、编辑、删除、返回的操作,下面为该信息管理模块的操作流程图。 4.5 合同信息管理合同信息管理界面包括合同编号、客户编号、合同状况、签署日期、执行日期、完成日期、负责人、总金额等合同项目,并标注合同状况的三种情况:未处理、执行、结束。任何权限的用户都可进入该界面进行查看合同的相关信息,但是只有系统管理员以及合同部和销售部的用户还可以实现添加新合同信息的操作。当具有权限的用户点击“添加新合同”,用户进入添加界面,该界面包括添加合同的所有信息.添加完成后点击”确定
34、”,即添加了新合同。若取消该操作,则点击“取消即可.系统管理员可实现对合同信息的编辑、删除的操作。该用户点击“编辑”,即进入编辑界面,该界面包括对合同信息的修改、删除、更新。用户也可在该界面实现对新合同的添加.当修改、删除了合同的某些信息后,点击“更新”或“取消,系统返回到合同信息界面,并完成了用户的操作。当用户定位在合同信息的某一栏中,然后点击“删除,系统便将整个该合同的有关信息全部删除.具体操作同上,此处不再举例。4.6 合同明细管理系统设置销售部、合同部的用户登陆此界面可实现添加的操作,系统管理员对该界面可实现编辑、删除、添加等的操作。而其他权限的用户只能进入该界面,查看合同的明细信息,
35、包括:合同编号、产品编号、产品数量、已发货数、货物单价.当用户点击“添加合同明细”,即可进入添加界面,该界面包括添加合同的合同编号、产品编号、订单数量、发货数量、货物单价。用户添加信息完成后点击“确定”或“取消”,即返回到合同明细界面,并显示出用户的相应操作。该模块的删除功能其他模块的删除操作相同,这里不作一一说明.4。7 产品销售统计管理产品销售统计联系产品与合同的关系。用户只能查看,不能进行任何其他操作.第五章 系统实现5。1 ASP.NET概述在ASP.NET2.0中,重新设计和实现了其中的很多类.为了实现更高的开发效率,还增加了一些新的控件.对于WEB应用设计和开发人员而言,ASP。N
36、ET2。0是WEB开发史上一个重要的里程碑。ASP。NET2.0在服务器上运行的是编译好的代码,与ASP以及其他的技术相比,ASP。NET2。0利用二次编译、代码优化、缓冲服务来大大提高了程序的性能。在Visual Studio.Net 的开发环境中,有丰富的易用控件,可以通过简单的拖放操作来使用它们,所见即所得,提高了开发效率.ASP。NET2.0可以使用.NET框架中功能强大的基础类库;另外,ASP。NET2.0支持通用语言规范(Common Language Specification),可以使用多种编程语言来实现,如C、VB、C+等.ASP。NET2.0实现的动态页面允许把代码和页面结
37、构分离,使逻辑更加清晰。ASP。NET2.0使用基于文本格式的存储方式。在开发完成后,只需要把页面和代码文件拷贝到服务器上就可以使用了,环境配置将不需要任何工具的帮助。ASP.NET2。0允许开发者开发自己的组件,并使用自己的组件搭建系统。5.2 数据库的连接本系统中,由于每个页面都要用到连接数据库的操作,所以在Web。config文件中指定了数据连接字符串配置,在Web。config文件中添加如下代码.本系统中使用connectionString来定义连接数据库连接字符串,用户需要根据自己的配置,修改connectionString中各个连接属性的值。在Web.config文件中添加这些代码
38、之后,在需要连接数据库字符串的地方用下面的代码替换,表明使用的是Web。configtionmanag文件中配置的数据库连接字符串信息。ConfigurationManger.ConnectionStrings”ConnectionString。ConnectionString;5。3 系统的安全性措施任何一位Web用户在进人客户信息管理系统主页面后,只有通过了系统的身份验证(用户登录页面)才能进人到系统相应的功能面页,并且用户的身份(以用户名标识)将保存在为该用户申请的Session对象中,在对系统操作的整个过程中随时监视和引导该用户的各种操作,直至用户退出信息管理系统。不同身份的用户拥有对
39、数据库的不同访问权限(具体到对库中每个表每一列的存取操作,这由SQL Server的层安全特性保证),系统管理员用户的添加、编辑、删除权限以及其他用户的相应的添加权限均通过系统应用程序提供给系统动态设置.为了避免非法用户绕开用户登录页面直接进入系统功能页面,我们在系统应用程序中采用如下防范措施:在Global。asax文件的SessiononStart事件中加入Session代码,确保用户第一次进入信息管理系统时是从系统的主页面开始;在系统应用程序中为每个合法登录的用户申请了一个Session(branch)变量保存用户的身份,Session(branch)初始值为空。根据这个特性将下面的代码
40、包含在每个。aspx脚本程序开始部分中,可防止非法用户在进入信息管理系统企图跳过登录页面直接进入某个功能页面。文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络5.4 系统登录页面及代码在进入客户信息管理系统之前,需要首先经过登录页面,如图5-1所示。在此页面中,用户首先输入自己的用户名和密码进行登录验证。图5-1 系统登录页面相关主要代码如下所示:string strconn=ConfigurationSettings。AppSettings”ConnectionString”;SqlConnection conn=new SqlConnection(strconn);conn.O
41、pen();/数据库的连接与打开string strsql=select * from users where Userid=+Tbx_id。Text+” and password=”+Tbx_pwd。Text+”;SqlCommand cm=new SqlCommand(strsql,conn);SqlDataReader dr=cm.ExecuteReader();if(dr.Read()/保存用户权限Sessionbranch=drbranch”;if(Sessionbranch.ToString()=0)/系统管理员登录Response.Redirect(users.aspx);els
42、e if(Session”branch。ToString()=”1)/合同部登录Response。Redirect(contract.aspx”);else if(Session”branch。ToString()=”2)/销售部登录Response。Redirect(”contract_stat。aspx);else /客户部登录Response。Redirect(client.aspx);elseLbl_note。Text=登录失败,请检查用户名、密码输入!;5.5 信息管理系统页面及代码在用户登录系统后并可进行查看、编辑等的操作,系统信息页面显示了客户信息管理系统的所有模块,如:客户信息
43、、合同信息等。用户可以根据自己的需要自由选择进入相应的模块。下面举例说明相应模块的代码。1、客户信息页面如图5-2所示 图5-2 客户信息管理页面相关代码如下所示:SqlCommand cm=new SqlCommand(”updateclient”,cn);cm.CommandType=CommandType。StoredProcedure;cm。Parameters。Add(new SqlParameter(client_name”,SqlDbType。Char,10));cm.Parameters.Add(new SqlParameter(”client_charge,SqlDbType
44、.Char,10);cm.Parameters。Add(new SqlParameter(”client_level”,SqlDbType.Int,4);cm。Parameters.Add(new SqlParameter(client_email”,SqlDbType.VarChar,20));cm.Parameters。Add(new SqlParameter(”client_tell,SqlDbType.VarChar,20));string colvalue=((TextBox)e.Item。Cells1.Controls0).Text;cm.Parameters”client_name”。Value=colvalue;colvalue=(TextBox)e.Item.Cells2。Controls0).