版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE酒店服务管理系统摘要:随着本国市场经济的迅速发展和人们生活水平的不断提高,宾馆酒店业的竞争越来越激烈。要想在竞争中取得优势,就必须在经营管理,产品服务等方面提高服务管理意识。面对餐饮经营中起决定作用的餐饮管理,面对庞大的信息量,就需要一个酒店管理系统来提高酒店理效率。因此,选择目前应用最广的Windows操作系统作为开发、测试和运行的平台,用VisualS2005作为软件开发工具,C#作为编程语言,SQLServer2005作为数据库支持,开发一个方便上手且功能强大的酒店管理系统软件,以提高酒店管理水平。主要功能包括登记、订房、退房、结算、查看客人信息、未结帐提醒等。关键词:酒店管理系统,C#,数据库设计,程序设计TheDesignandRealizationoftheHostelManagementSystemBasedontheC#Abstract:Withtherapiddevelopmentofthedomesticeconomyandtheimprovementofpeople’slifestandard,thecompetitionbetweenhotelindustryisbecomingkeenerandkeener.Itisnecessarytoimprovesinceofserviceandmanagementonmanagement,product,etcinordertogettheadvantageinthecompetition.Facingtheroomadministrationwhichplatsthedecisiveroleontheroommanagementaswellasthelargeinformation,itneedsahotelmanagementsystemtoimproveroommanagementefficiency.Therefore,thebestwaytoimprovethelevelofmanagementistoexploreaconvenientandpowerfulsystematicsoftwareofhotelmanagement.ThatistochoosethewidelyusedWindowsoperationsystemasaplatformofexploration,testandoperation,theVisualS2005asatoolofsoftwaredevelopment,C#asprogrammer-editedlanguage,SQLServer2005asthesupporterofdatabase.It’smainfunctionincludes:registration,roomreservation,settlementofrefunding,roomsituationcheck,touristsinformationcheck,etc.keywords:HostelManagementSystem,C#,databasedesign,programmerdesign目录前言 1第一章绪论 21.1课题背景 21.2课题研究的目的和意义 21.3课题的主要内容 2第二章开发工具和开发环境 32.1SQL语言 32.1.1SQL概述 32.1.2SQL语言的组成 32.2SQLServer2005简介 32.3C#简介 42.4ADO数据访问介绍 52.4.1ADO不依赖于连续的活动连接 52.4.2ADO的优点 8第三章系统需求分析及总体设计 103.1系统功能分析 103.2数据库结构设计 113.2.1系统数据流程图 113.2.2实体关系图 123.2.3数据库逻辑结构设计 14第四章系统详细设计与实现 154.1登陆界面 154.2主界面 164.3客户管理界面 174.4订房界面 194.5员工信息管理界面 204.6用户信息管理界面 224.7更改密码界面 23第五章系统测试 245.1系统测试的目的 245.2系统测试方法 24结论 25参考文献 26致谢 27PAGE26前言互联网的不断发展是推动科技发展的最直接的动力之一,而在这种趋势之下,各种管理系统也必须得跟上时代的步伐,新的需求在不断的产生,管理系统也得跟着需求发展。对于酒店管理来说,利用先进的管理手段,提高餐饮的管理水平,已是形势所趋。过去,VisualS主要用于创建有着丰富用户界面(包括按钮、列表以及下拉列表框)的应用程序。VisualS的编程人员在程序设计中首次实现完全面向对象的能力。由于C#面向对象的卓越设计,使它成为广大编程人员的最理想的选择之一。酒店管理系统是基于C#编程语言在Microsoft的VisualS平台下开发的,运用了SQLServer2005数据库。强大的数据库支持,能完成大量的数据处理,使得系统更加稳定安全。第一章绪论1.1课题背景随着本人国市场经济的迅速发展和人们生活水平的不断提高,宾馆酒店业的竞争越来越激烈。要想在竞争中取得优势,就必须在经营管理,产品服务等方面提高服务管理意识。面对餐饮的经营起决定作用的是餐饮的管理。如何利用先进的管理手段,提高餐饮的管理水平,是每一个酒店管理者所面临的重要课题。简单的服务标准已经不是制胜的法宝,只有管理做到最细微之处,才能让顾客体会到酒店服务的高标准,高质量,而准确,快捷,周全往往就是最基本的成功要素。面对信息时代的挑战,利用科技手段提高企业管理无疑是一条行之有效的途径。因此采用电脑管理业务,财务等诸多环节已成为宾馆酒店业快速发展的先决条件。世界经济已从工业化社会进入信息化社会,西方发达国家已经进入相当发达的信息化阶段,而本国的信息产业目前尚处于起步阶段。信息高速公路和经济信息化,无疑将对人类社会的经济发展带来根本性的变化,对社会各行各业的生产、工作和管理方式带来深刻的变化,对包括酒店在内的许多机构无疑是一个严峻的挑战。1.2课题研究的目的和意义国内酒店业的应用系统不同,各家供应商的软件也各不相同。对于一家酒店,如果各部门使用的是不同的平台、不同的软件,当员工进行软件操作时,需要学习各种软件,这样不但使员工的学习成本增高,也同时影响酒店的效率。这样就需要一个方便上手且功能强大的管理软件能解决这些问题,让员工迅速上岗,减少成本,增加收益。因此,制作一个酒店管理系统来解决这些问题已是势在必行。针对酒店的具体业务,主要是酒店理,为用户提供迅速高效的服务,减免手工处理烦琐以及误差,并及时准确的反映酒店的工作状况,从而提高酒店管理的服务质量,使酒店获得更好的经济效益。1.3课题的主要内容本酒店管理系统数据库选择的是SQLServer2005,开发环境是Microsoft的VisualS,编程语言C#。基本思想是把开发过程分成:项目计划、需求分析、详细设计、代码实现、系统测试以及系统维护等进行完成。酒店管理系统的开发设计,包括数据库结构设计及程序设计。该系统具有登记、订房、退餐、结算、查看客人信息等基本功能,能够用于一般的中小型酒店餐饮管理。要求具备对某一领域熟悉的情况下去寻找相关资料并通过自学逐步掌握该门知识的能力。第二章开发工具和开发环境2.1SQL语言SQL是英文StructuredQueryLanguage的缩写,即结构化查询语言,它是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制4个方面,是一个通用的功能极强的关系数据库语言。2.1.1SQL概述SQL语言是1974年由Boyce和Chamberlin提出的,1975年至1979年IBM公司SanJoseResearchLaboratory研制的关系数据库管理系统原形系统SystemR实现了这种语言,由于它功能丰富,语言简洁,使用方法灵活,倍受用户和计算机业界的青睐,被众多的计算机公司和软件公司采用。经过多年的发展,SQL语言已成为关系数据库的标准语言。2.1.2SQL语言的组成SQL语言主要由以下几部分组成:数据定义语言DDLDataDefinitionLanguage数据操纵语言DMLDataManipulationLanguage数据控制语言DCLDataControlLanguage其它语言要素AdditionalLanguageElementsSQL语句数目种类较多,其主体大约由40条语句组成。2.2SQLServer2005简介SQLServer是一个关系数据库管理系统,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的。于1988年推出了第一个OS/2版本,在WindowsNT推出后Microsoft与Sybase在SQLServer的开发上就分道扬镳了。Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本。Sybase则较专注于SQLServer在UNIX操作系统上的应用。MSSQLServer2005是Microsoft公司推出的SQLServer数据库管理系统的最新版本。该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2005的大型多处理器的服务器等多种平台使用。SQLServer是定位在Server上的系统,它只负责提供和储存数据就像汽车的引擎,它只提供汽车的动力,其它功能由前端设计工具如FoxPro、Delphi、PowerBuilder、VisualS、VisualS等来处理,因此我们一般称SQLServer、Oracle、Informix等数据库系统为数据库引擎。2.3C#简介VisualS2005,是微软公司推出的可视化编程工具MSDN之一,是目前世界上使用最广泛的程序开发工具。它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,不愧为一款优秀的编程工具,是初学者的首选。另外C#提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且C#提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以用起来方便。在C#中,应用面向对象的程序设计方法(OOP),把程序和数据封装起来视为一个对象,每个对象都是可视的。C#功能特点如下:1.具有面向对象的可视化设计工具在C#中,应用面向对象的程序设计方法(OOP),把程序和数据封装起来视为一个对象,每个对象都是可视的。程序员在设计时只需用现有工具根据界面设计要求,直接在屏幕上“画”出窗口、菜单、按钮、滚动条等不同类型的对象,并为每个对象设置属性。程序员的编程工作仅限于编写相关对象要完成的功能程序,因而程序设计的效率可大大提高。2.事件驱动的编程机制事件驱动是非常适合图形用户界面的编程方式。在图形用户界面的应用程序中,是由用户的动作即事件掌握着程序运行的流向,每个事件都能驱动一段程序的运行。程序员只要编写响应用户动作的代码,而各个动作之间不一定有联系。3.提供了易学易用的应用程序集成开发环境在C#集成开发环境中,用户可设计界面、编写代码、调试程序,直至把应用程序编译成可执行文件在Windows中运行,使用户在友好的开发环境中工作。4.结构化的程序设计语言C#具有丰富的数据类型和结构化程序结构,作为一种程序设计语言,它还有如下一些特点:(1)强大的数值和字符串处理功能(2)丰富的图形指令,可方便地绘制各种图形(3)提供静态和动态数组,有利于简化内存的管理(4)过程可递归调用,使程序更为简练(5)支持随机文件和顺序文件的访问(6)提供了一个可供应用程序调用的包含多种类型的图标库(7)具有完善的运行出错处理5.支持多种数据库系统的访问利用数据控件可访问的数据库系统有:MicrosoftAccess、Btrieve、DBASE、MicrosfotFoxPro和Paradox等,也可以访问MicrosoftExcel、Lotus1-2-3等多种电子表格。6.支持动态数据交换(DDE)、动态链接库(DLL)和对象的链接与嵌入(OLE)技术7.完备的HELP联机帮助功能C#程序设计的概念就是面向对象的概念,对象就是数据(DATA)和代码(CODE)互相结合的综合体。Windows上面的每一个图标,包括窗口本身都是对象,如果没有任何事情发生,对象处于停顿状态。当存在外来事件时,程序段执行,它的执行是由外来事件决定的。因此是“事件”驱动的。与Windows环境下的软件一样,在C#中,利用帮助菜单和F1功能键,用户可以随时方便地得到所需要的帮助信息。C#帮助窗口中显示了有关的示例代码,通过复制、粘贴操作可获取大量的示例代码,为用户的学习和使用提供了极大的方便。2.4ADO数据访问介绍使用ADO开发应用程序时,将有操作数据的各种要求。在某些情况下,可能只是想在窗体上显示数据。在其他情况下,则可能需要设计一种方式来与另一个公司共享信息。无论对数据进行怎样的操作,了解ADO中的数据结构、主数据组件概念和组件组合方式是很有用的。2.4.1ADO不依赖于连续的活动连接在传统的客户端/服务器应用程序中,组件将建立与数据库的连接,并在应用程序运行过程中使连接保持打开状态。出于各种原因,该方法在许多应用程序中是不实用的: 打开的数据库连接占用宝贵的系统资源。在大多数情况下,数据库只可以维持少量的并发连接。维持这些连接的系统开销将降低应用程序的总体性能。类似地,需要打开的数据库连接的应用程序极难按比例扩展。对于没有很好地按比例扩展的应用程序而言,也许几个用户使用它时执行效果是可以接受的,但如果有数百个用户使用它时其效果也许就不能被接受了。C#Web应用程序尤其需要能够很轻松地进行扩展,因为Web站点的通信量可能会在非常短的时间内突增几个数量级。 在C#Web应用程序中,组件彼此之间本来就是不连接的。浏览器从服务器请求一页;在服务器完成处理并发送该页后,服务器即不再与浏览器有任何连接,直到下一次请求为止。在这些情况下,维持打开的数据库连接是不可行的,因为没有办法知道数据使用者(客户端)是否需要进一步的数据访问。 基于始终连接数据的模型可能使得使用连接结构在应用程序和组织边界之间交换数据变得困难且不实际。如果两个组件需要共享相同的数据,则二者均必须连接,或者必须为这两个组件设计一种方式以相互传递数据。出于所有这些原因,使用ADO进行数据访问是以有节制使用连接的结构为中心进行设计的。应用程序连接到数据库的时间仅足够获取或更新数据。因为数据库并未被大部分时间空闲的连接占用,所以它可以为更多用户提供服务。使用数据命令执行数据库交互若要在数据库中执行操作,应执行SQL语句或存储过程(它包括SQL语句)。使用SQL语句或存储过程读写行并执行聚合函数,例如添加或求平均值。使用SQL语句或存储过程创建或修改表或列、执行事务等。在ADO中,使用数据命令打包SQL语句或存储过程。例如,想要从数据库读取一组行,则创建一个数据命令并用SQLSelect语句的文本或获取记录的存储过程的名称配置它。如果要获取这些行,则执行以下操作:1. 打开一个连接。2. 按以下顺序调用命令的执行方法:a. 执行该命令引用的SQL语句或存储过程。b. 然后关闭连接。连接保持打开的时间仅足够执行语句或存储过程。在调用命令的执行方法后,它将返回一个值。更新数据库的命令返回所影响的行数;其他类型的命令返回一个错误代码。如果该命令使用SELECT语句查询数据库,则它返回一组行。安全说明当使用CommandType属性设置为Text的数据命令时,请对从客户端发送过来的信息进行仔细检查,然后再将它传递给数据库。恶意用户可能会试图发送(插入)修改过的或其他SQL语句,以获得未经授权的访问或破坏数据库。在将用户输入内容传输到数据库之前,应始终确认这些信息是有效的;如果可能的话,始终使用参数化查询或存储过程,这是最佳措施。如果要执行多个操作(例如,读取一些行,然后更新它们),则可以使用多个数据命令,每个操作一个命令。每一操作分别执行。例如,要读取多行,应打开连接,读取这些行,然后关闭该连接。如果要更新数据,再次打开连接,执行更新,然后再次关闭该连接。数据命令可以包括多个参数(具体而言,参数对象的集合),使用这些参数创建类似以下形式的参数化查询:Select*FromcustomersWhere(customer_id=@customerid)然后在运行时设置这些参数并执行命令以返回或更新所需数据。数据可被缓存到数据集中。最常见数据任务是从数据库检索数据并对数据进行某些操作:显示数据、处理数据或将数据发送给另一个组件。经常地,应用程序需要处理不止一条记录,而是一组记录:例如客户列表或今天的订单。通常应用程序所需的该组记录来自多个表:我的客户及其所有订单;所有名为"Smith"的作者及他们写的书;以及其他类似的相关记录组。获取了这些记录后,应用程序通常将它们成组使用。例如,应用程序可以允许用户浏览名为"Smith"的所有作者,检查一个Smith的书,然后检查下一个Smith的书,等等。在许多情况下,每次应用程序需要处理下一条记录时都返回到数据库是不切实际的。(这样做可能会失去将打开连接的需求降至最低所带来的许多好处。)因此解决方案就是临时存储从数据库检索的记录,然后使用该临时集。这便是数据集的概念。数据集是从数据源检索的记录的缓存。它的工作方式如同虚拟的数据存储区:数据集包含一个或多个表(这些表基于实际数据库中的表),并且它可以包含有关这些表之间的关系和对表可包含数据的约束的信息。数据集内的数据通常是数据库中内容的非常精简的版本。但是,可以用与操作实际数据十分类似的方式操作数据集。这样操作时,将保持与数据库的不连接状态,使数据库可以自由执行其他任务。如果经常需要更新数据库中的数据(尽管不会像从数据库检索数据那么频繁)。可以在数据集上执行更新操作,并且这些更新可以直接写到基础数据库。数据集是数据的被动容器这一点很重要。若要实际从数据库获取数据和(可选)将数据写回数据库,请使用数据适配器。数据适配器包含一个或多个数据命令,这些命令用于填充数据集中的单个表并更新数据库中的相应表。(数据适配器通常包含四条命令,分别用于选择、插入、更新和删除数据库中的行。)因此,每当调用数据适配器的Fill方法时,它都可能执行SELECTau_id,au_lname,au_fnameFROMauthors之类的SQL语句。因为数据集实际上是数据库数据的私有副本,所以它不一定反映数据库的当前状态。如果想要查看其他用户进行的最新更改,可以通过调用适当的Fill方法刷新数据集。使用数据集的一个便利之处是组件可以根据需要交换数据集。例如,中层的某个业务对象可以创建和填充一个数据集,然后将它发送给应用程序中其他位置处的另一个组件以供处理。该功能意味着组件不必分别查询数据库。数据集独立于数据源尽管数据集是作为从数据库获取的数据的缓存,但数据集与数据库之间没有任何实际关系。数据集是容器;它由从数据适配器执行的SQL命令或存储过程填充。由于数据集不直接绑定到数据源,所以它是来自多个源的数据的好的集成点。例如,数据集内的某些数据可能来自数据库,而它的其他部分可能来自另一个数据库或电子表格之类的非数据库源。数据集内的某些数据可能来自另一个组件所发送的流。一旦数据在数据集内,则不管它的原始源是什么,都可以使用一致的对象模型对它进行操作。数据保持为XML数据需要从数据存储区移动到数据集以及从数据集移动到各种组件。在ADO中,传输数据的格式是XML。类似地,如果需要保持数据(例如保持到文件中),则将其存储为XML。如果有XML文件,则可以像使用任何数据源一样使用它,并从它创建数据集。实际上,在ADO中,XML是数据的基本格式。ADO数据API自动用数据集内的信息创建XML文件或流,并将它们发送给另一个组件。第二个组件可以调用类似的API将XML读回数据集。2.4.2ADO的与ADO的早期版本和其他数据访问组件相比,ADO提供了若干好处。这些好处分成以下几个类别:互操作性ADO应用程序可以利用XML的灵活性和广泛接受性。由于XML是用于在网络中传输数据集的格式,因此可以读取XML格式的任何组件都可以处理数据。实际上,接收组件根本不必是ADO组件:传输组件可以只是将数据集传输给其目标,而不考虑接收组件的实现方式。目标组件可以是VisualStudio应用程序或无论用什么工具实现的其他任何应用程序。唯一的要求是接收组件能够读取XML。作为一项工业标准,XML正是在谨记这种互操作性的情况下设计的。可维护性在已部署系统的生存期中,适度的更改是可能的,实质的结构更改十分困难。因为在事件的自然过程中,这种实质上的更改会变得很有必要。例如,当已部署的应用程序越来越受用户欢迎时,增加的性能负荷可能需要进行结构更改。随着已部署的应用程序服务器上的性能负荷的增长,系统资源会变得不足,并且响应时间或吞吐量会受到影响。面对该问题,软件设计者可以选择将服务器的业务逻辑处理和用户界面处理划分到单独计算机上的单独层上。实际上,应用程序服务器层将替换为两层,缓解了系统资源缺乏。该问题并不是要设计三层应用程序。相反,它是要在应用程序部署以后增加层数。如果原始应用程序使用数据集以ADO实现,则该转换很容易进行。当用两层替换单个层时,将安排这两层交换信息。由于这些层可以通过XML格式的数据集传输数据,所以通信相对较容易。可编程性VisualStudio中的ADO数据组件以不同方式封装数据访问功能,加快编程速度并减少犯错几率。例如,数据命令提取生成和执行SQL语句或存储过程的任务。同样,由这些工具生成的ADO数据类导致类型化数据集。使可以通过已声明类型的编程访问数据。性能对于不连接的应用程序,ADO数据库提供的性能优于ADO不连接的记录集。当使用COM封送在层间传输不连接的记录集时,会因将记录集内的值转换为COM可识别的数据类型而导致显著的处理开销。在ADO中,这种数据类型转换则没有必要。可伸缩性因为Web可以极大增加对数据的需求,所以可缩放性变得很关键。Internet应用程序具有无限的潜在用户供应。尽管应用程序可以很好地为十几个用户服务,但它可能不能向成百上千个(或几百万个)用户提供同样好的服务。使用数据库锁和数据库连接之类资源的应用程序不能很好地为大量用户服务,因为用户对这些有限资源的需求最终将超出其供应。ADO通过鼓励程序员节省有限资源来实现可缩放性。由于所有ADO应用程序都使用对数据的不连接访问,因此它不会在较长持续时间内保留数据库锁或活动数据库连接。
第三章系统需求分析及总体设计3.1系统功能分析系统开发的总体任务是实现酒店餐饮各种信息的系统化、规范化和自动化。本系统可以分为两个模块:管理员模块、营业员模块管理员模块:其使用者为管理员,它的功能可以包括以下几个方面:添加系统用户,:包括员工编号,员工姓名,员工性别,员工身份证号码,员工年龄,用户名,密码,角色,角色描述查看开房记录报表ID,房间号,客人姓名,定金,开房日期,开房时间,退房日期,退房时间,相关描述查看酒店收入报表,ID,消费类型,消费金额,结账时间,结账描述公告信息管理公告ID,发布人,标题,发布时间,公告内容员工信息发放管理支付单ID员工编号支付时间支付金额支付记录管理员模块如图2所示:管理员模块管理员模块添加用户开房记录报表酒店收入报表公告信息管理员工发放工资管理图2.管理员模块营业员模块:其使用者为酒店的前台营业员,它的功能主要有以下几方面:修改账户密码,开设房间,客人姓名,身份证号,客人性别,电话号码,客人地址,房间类型,房间编号,预付定金,详细备注开房信息管理,房间号,客人编号,所付定金,开房日期,开房时间,相关信息描述房间信息管理,房间号,床位数,容纳客人数,房间类型,房间状态(入住或者空闲),房间描述房间类型管理,类型ID,房间类型名称,房价,是否加床,加床价格,房间描述客人信息管理,客人ID,身份证号,客人姓名,性别,电话号码,居住地址营业员模块如图3所示:营业员模块营业员模块修改账户密码开设房间开房信息管理房间信息管理房间类型管理客人信息管理图3.营业员模块图3-1程序主要结构图各子界面设计:登记界面:客人登记基本信息:姓名、性别、房号、类型、证件类型、证件号码、押金、人数、入住时间。订房界面:基本和登记界面相同,增加了预定日期项。可进行“取消预定”,“预定入住”等操作。查看员工信息信息界面:可查看用餐信息、菜单、价格以等,并且可以根据需要增添新的用餐。修改密码界面:用于修改管理员密码。3.2数据库结构设计3.2.1系统数据流程图客户登记客户登记基本信息输入住房登记顾客信息返回住房信息选定择结算信息住房信息返回基本信息输入图3-2酒店管理信息系统数据流程图3.2.2实体关系图本系统设计规划出的实体有:管理员信息实体、订房记录信息实体、员工信息信息实体、客户信息实体。各个实体具体的描述E-R图如下:管理员信息实体管理员信息实体用户名密码注册时间图3-3管理员信息实体E-R图营业员营业员信息实体姓名密码添加时间编号性别角色图3-4订房记录信息实体E-R图房间类型实体房间类型实体编号类型ID添加时间图3-5员工信息信息实体E-R图房间信息实体房间信息实体房间编号价格图片添加时间房间类型是否已租结算金额结算金额图3-6客户信息实体E-R图登记信息管理登记信息管理登记订房信息管理订房订房时间结算房间信息管理图3-7实体之间关系E-R图3.2.3数据库逻辑结构设计系统设计了三个数据表即“管理员”、“用餐表”、“顾客信息表”。其各个表格的设计如下:表3-1管理员表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键UsernameVarchar50NOTNULL用户名PwdVarchar50NULL密码Cxvarchar50NOTNULL权限addtimedateTime8NULL注册时间表3-2员工表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键bianhaoVarchar50NOTNULL编号XingmingVarchar50NULL姓名Xingbievarchar50NOTNULL性别Shenfenzhengvarchar50NULL注册时间Nianingvarchar50NULL年龄Yonghumingvarchar50NOTNULL用户名Mimavarchar50NOTNULL密码Jiaosevarchar50NULL角色Jiaosemiaoshuvarchar50NULL角色说明addtimedatetime8NOTNULL添加时间表3-3房间类型表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键bianhaoVarchar50NOTNULL编号leixingVarchar50NULL类型addtimedateTime8NULL添加时间表3-4房间信息表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键bianhaoVarchar50NOTNULL编号leixingVarchar50NULL类型jiagevarchar50NOTNULL价格tupianvarchar50NULL图片shifouyizuvarchar50NULL是否已租addtimedatetime8NOTNULL添加时间表3-4员工信息信息表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键ygbhVarchar50NOTNULL员工编号ygxmVarchar50NULL员工姓名nianint4NOTNULL年份yueint4NULL月份gzfloat50NULL应发信息sdsfloat8NULL所得税Gz2float8NULL实发信息表3-4客人信息表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键kerenIDVarchar50NOTNULL客人IDxingmingVarchar50NULL姓名xingbieVarchar50NOTNULL性别dianhuaVarchar50NULL电话dizhiVarchar50NULL地址addtimeaddtime8NULL添加时间表3-4客人入住信息表列名数据类型大小可否为空说明IDint4NOTNULL自增ID主键kerenIDVarchar50NOTNULL客人IDfangjianbianhaoVarchar50NULL房间编号ruzhushijianVarchar50NOTNULL入住时间ruzhutianshuVarchar50NULL入住天数zongeVarchar50NULL总额yajinVarchar50NULL押金addtimeaddtime8NULL添加时间istfVarchar50NULL是否退房第四章系统详细设计与实现4.1登陆界面图4-1该界面是本系统运行的第一个界面,其他所有操作均必需在本界面之后进行。也是安全性最高的一个模块。权限分为管理员和营业员两种,登陆后的界面相似,功能模块各不相同。其实现的主要代码如下所示:if(TextBox2.Text.ToString().Trim()==""||TextBox1.Text.ToString().Trim()==""){Response.Write("<script>javascript:alert('请输入完整');history.back();</script>");Response.End();}stringsql;if(RadioButton1.Checked){sql="select*fromalluserswhereusername='"+TextBox2.Text.ToString().Trim()+"'andpwd='"+TextBox1.Text.ToString().Trim()+"'";}else{sql="select*fromyuangongwhereyonghuming='"+TextBox2.Text.ToString().Trim()+"'andmima='"+TextBox1.Text.ToString().Trim()+"'";}DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);//result=newTestOnline.Class1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){Session["username"]=TextBox2.Text.ToString().Trim();if(RadioButton1.Checked){Session["role"]=result.Tables[0].Rows[0]["cx"].ToString().Trim();}else{Session["role"]="员工";}Response.Redirect("manage.htm");}else{Response.Write("<script>javascript:alert('对不起,用户名或密码不正确!');</script>");}}else{Response.Write("<script>javascript:alert('对不起,系统错误,请不要越权操作!');</script>");}4.2主界面图4-3主界面页面名字为manage.htm,它是一个框架结构,包括了上左右三部分。主界面设有各子界面的操作入口,包括管理员管理、员工信息管理,员工信息信息管理、房间类型管理,房间信息管理及个人密码管理等。界面清爽大方,操作简约明了。4.3房间管理界面图4-4intokerenxinxi(kerenID,shenfenzhenghao,xingming,xingbie,dianhua,dizhi)values('"+kerenID.Text.ToString().Trim()+"','"+shenfenzhenghao.Text.ToString().Trim()+"','"+xingming.Text.ToString().Trim()+"','"+ngender+"','"+dianhua.Text.ToString().Trim()+"','"+dizhi.Text.ToString().Trim()+"')";intresult;result=newClass1().hsgexucute(sql);if(result==1){Response.Write("<script>javascript:alert('添加成功');</script>");}else{Response.Write("<script>javascript:alert('系统错误,请检查数据库的连?);</script>");}此图为管理客户信息的界面,可以上界面上方进行关键字查询,再从左侧所列的所有符合条件的信息中选取适合的信息,再在右侧进行相关的调阅修改功能。界面还提供添加客户及删除客户信息的功能。实现本模块功能的主要代码如下:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){stringsql;sql="select*fromkerenxinxiorderbyiddesc";getdata(sql);}}privatevoidgetdata(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){DataGrid1.DataSource=result.Tables[0];DataGrid1.DataBind();Label1.Text="以上数据中共"+result.Tables[0].Rows.Count;}else{DataGrid1.DataSource=null;DataGrid1.DataBind();}}}protectedvoidButton1_Click(objectsender,EventArgse){stringsql;sql="select*fromkerenxinxiwhere1=1";if(bh.Text.ToString().Trim()!=""){sql=sql+"andkerenIDlike'%"+bh.Text.ToString().Trim()+"%'";}if(mc.Text.ToString().Trim()!=""){sql=sql+"andxingminglike'%"+mc.Text.ToString().Trim()+"%'";}sql=sql+"orderbyiddesc";getdata(sql);}4.4客户入住登记界面图4-6此界面为客户选择员工信息的界面,界面很简洁。界面上方是用户名的选择,下方分为两边,左侧显示所有员工信息,右侧显示已选菜单,中间用两个方向相反的箭头,表示选择或放弃员工信息,操作简单。实现本模块功能的主要代码如下:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){stringsql;sql="selectkerenIDfromkerenxinxiorderbyiddesc";getdata(sql);sql="selectbianhaofromfangjianorderbyiddesc";getdata2(sql);}}privatevoidgetdata(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){inti=0;for(i=0;i<result.Tables[0].Rows.Count;i++){kerenID.Items.Add(result.Tables[0].Rows[i][0].ToString().Trim());}}}}privatevoidgetdata2(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){inti=0;for(i=0;i<result.Tables[0].Rows.Count;i++){fangjianbianhao.Items.Add(result.Tables[0].Rows[i][0].ToString().Trim());}}}}protectedvoidButton1_Click(objectsender,EventArgse){stringsql;sql="insertintokehuruzhu(kerenID,fangjianbianhao,ruzhushijian,ruzhutianshu,zonge,yajin)values('"+kerenID.Text.ToString().Trim()+"','"+fangjianbianhao.Text.ToString().Trim()+"','"+ruzhushijian.Text.ToString().Trim()+"','"+ruzhutianshu.Text.ToString().Trim()+"','"+zonge.Text.ToString().Trim()+"','"+yajin.Text.ToString().Trim()+"')";intresult;result=newClass1().hsgexucute(sql);if(result==1){Response.Write("<script>javascript:alert('添加成功');</script>");}else{Response.Write("<script>javascript:alert('系统错误,请检查数据库的连?);</script>");}}图4-7图4-7是客户入住查询界面,是订房的反操作。界面的设计风格承袭了系统设计的统一风格:简约、明了。界面可分为三部分:最上方为客户信息查询模块,当查询到具体用户时,系统在中间的版块显示该用户所订的所有员工信息信息,此时可选择其中需要退订的房间,并点击右方的退房按钮,即可完成退房操作。4.5员工管理界面图4-8添加员工信息界面。设计十分简约,而且考虑到信息输入及管理的问题,所以将需要输入的信息设置得十分简单,仅需四个,而且其中“年月”一栏还用下拉菜单选择。此窗体的界面与客户信息管理界面相仿,且操作方式亦十分相似,只是针对的对象及需要操作的数据有所不同,由于篇幅关系,不一一详细说明。第五章系统测试5.1系统测试的目的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024医院科室承包合同协议书
- 2024装修公司合伙合同范本
- 2024珠宝销售员工合同
- 2024范文合同补充协议书
- 2024脚手架租赁合同(样本)
- 深圳大学《游泳》2021-2022学年第一学期期末试卷
- 深圳大学《新媒体概论》2022-2023学年第一学期期末试卷
- 安居房建设合同(2篇)
- 初一开学季家长对孩子的寄语(85句)
- 关于酒驾的心得体会(9篇)
- 期中 (试题) -2024-2025学年人教PEP版英语四年级上册
- 动物疫病防治员(高级)理论考试题及答案
- 跨境电商行业研究框架专题报告
- 提升初中生英语写作
- 2024年深圳市优才人力资源有限公司招考聘用综合网格员(派遣至吉华街道)高频500题难、易错点模拟试题附带答案详解
- 高中政治必修四哲学与文化知识点总结
- 湖北省襄阳市2023-2024学年六年级上学期语文期中考试试卷(含答案)
- 医学课件血管性痴呆
- 2024年国家基本公卫培训考核试题
- 【心理咨询师心理学个人分析报告论文4200字】
- 2024年自然资源部直属企事业单位公开招聘考试笔试(高频重点复习提升训练)共500题附带答案详解
评论
0/150
提交评论