首页 《台球厅管理系统》(参考Word)

《台球厅管理系统》(参考Word)

举报
开通vip

《台球厅管理系统》(参考Word)引言随着人们的生活水平的提高,人们的观念在发生着转变,健康是人们最为关注也是最为重视的,要想健康,人们就要多进行锻炼,而台球运动正是一项人们喜爱的体育运动。现在人们的生活节奏快,需要一定的时间放松,而在放松的过程中怎样才能够达到健身的效果呢?去台球厅休闲锻练是十分不错的选择;不仅可以放松紧张的神经,同时,在运动中使身体得到了锻炼,既安全又有效;台球厅设备齐全,品种多样,环境优雅,是一个理想的休闲场所。台球厅是近些年开始发展的,发展势头很猛,但内部系统并不完善,多为人工现场操作,为了能够提高效率,并且能够提供更为精确...

《台球厅管理系统》(参考Word)
引言随着人们的生活水平的提高,人们的观念在发生着转变,健康是人们最为关注也是最为重视的,要想健康,人们就要多进行锻炼,而台球运动正是一项人们喜爱的体育运动。现在人们的生活节奏快,需要一定的时间放松,而在放松的过程中怎样才能够达到健身的效果呢?去台球厅休闲锻练是十分不错的选择;不仅可以放松紧张的神经,同时,在运动中使身体得到了锻炼,既安全又有效;台球厅设备齐全,品种多样,环境优雅,是一个理想的休闲场所。台球厅是近些年开始发展的,发展势头很猛,但内部系统并不完善,多为人工现场操作,为了能够提高效率,并且能够提供更为精确的数据反馈信息,有必要进行计算机的管理。台球厅管理系统能进行系统、完善的管理;为顾客提供最方便、最快速和最直观的操作平台,以及舒适和科学性的锻炼环境。1系统概述台球厅管理系统是以Web界面与用户交互,为用户提供信息并接受其操作。实现了对信息数据的远程浏览﹑查询﹑编辑和管理等基本数据库操作,采取模块化的编写思想,提高了可读性﹑可移植性和一致性,同时提高了开发效率。本系统共包括四个部分的管理:员工管理、球台的管理、会员管理和消费的管理。1.1系统课题背景近年来随着人民生活水平的提高,健康是人们现在最为关注也是最为重视的,要想健康,人们就要多进行锻炼。而台球运动深受广大健身人士的喜爱,从而涌现相当多的台球厅来竞争这块市场。任何企业之间都会有竞争,台球厅也不例外。竞争的实质是保证台球厅成本回收前提下赢得客户的满意,提升台球厅消费人气,最终赚取投资回报。要想赢得客户满意,首先要找出经常导致客户不满的因素,解决了这些因素,才有机会去实现客户的真正满意。大家认为预约球台是台球厅很重要的一项功能,可传统的预约需要客户亲自到台球厅所在位置或指定地点进行,由于预约记录多是人为完成,容易出现错误和漏洞,管理效率低,特别是球台繁杂时,传统的预约方式已经完全不能满足要求。远程预约是一种全新的网络租用方式,它通过互联网突破了时间和空间限制实现了便捷快速的预约与管理功能。在对数据信息有效组织并整合了一定使用功能后,远程预约系统可以方便地实现预约与取消﹑球台资料查询﹑用户管理员双重管理等功能。它的实现大大提高了管理人员和用户两方的效率,所以我进行了台球厅管理系统的开发。1.2系统设计目标台球厅管理系统能够把消费者的需求同台球厅的资源联系起来,是对球台、用户和工作人员进行信息管理的管理系统。提高台球厅的工作效率;为顾客提供最方便、最快速和最直观的操作平台,以提高市场的竞争力。1.3系统构架及开发环境一个大型的计算机管理系统,必须有一个正确的设计指导思想,通过合理的选择数据结构,网络结构,操作系统以及开发环境,构成一个完善的网络系统,才能充分发挥计算机信息管理的优势[1]。本系统拟采用当前流行的B/S构架,B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成三层结构体系(3-tier)。三层结构架构:用户界面功能代码数据储存提交操作信息生成SQL语句操作数据库返回处理结果返回操作结果图1三层结构架构工作原理采用三层架构,用户界面层通过统一的接口向业务层发送请求,业务层按自己的逻辑规则在请求处理之后进行数据库操作,然后将数据库反馈的数据反馈给用户界面。这样,用户界面与数据存储相互独立,用户截面层甚至可以不知道数据库的结构,而只是通过接口实现操作。这种方式增加了数据库的安全性,同时也降低了对用户界面层的开发要求,因为它根本就不需要进行任何数据库操作。软硬件平台及开发工具:硬件:piii500以上的CPU、128MB的内存、VGA显示卡、500MB以上硬盘键盘鼠标电源机箱以上配置的机器可运行本程序软件:服务器操作系统:WINDOWSNT数据库服务器:SQLServer2000WEB应用服务器:MicrosoftInternetInformationServer5.0开发工具:ASP1.4系统的特点本系统是ASP和SQLserver数据库相结合的B/S结构系统,以ASP构建前台、以SQLserver构建后台,用户的所有操作都是在网络浏览器中完成。本系统有以下特点:1实用为主:系统以用户需求为目标,以方便用户为原则,根据用户的实际需求功能情况,同时融入先进的管理经验,为台球厅度身订造一套先进的管理系统,并且将在统一的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 界面下提供各种实用功能,尽可能降低使用前的培训、实施和使用中的维护时间。充分满足现在未来的各种需求,真正为管理及决策提供强有力的支持。2先进灵活:系统充分应用现有成熟的网络技术、软件开发技术,先进的游览器/服务器结构,满足大型台球厅的日常经营、预定球台、开展电子商务等的需要。同时用户可自行灵活设置参数和各种代码,适应自己的特殊需要。3稳定可靠:通过选用先进的开发软件,成熟的网络结构及安全可靠的数据库,再配合硬件的优化选型,从而保证系统的可靠性与容错性。4维护扩展方便:本系统的所有设计遵循统一的标准进行,以提高系统的开放性,方便以后业务的扩展和系统扩容,便于软、硬件的维护、升级等,使系统能适应企业未来的需要。2系统分析系统分析是指由用户提供的,说明软件系统应该做什么以及需要在什么环境下运行等情况的 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 [2]。2.1需求分析需求分析是系统开发过程中重要的工作,只有通过需求分析才能把系统的功能、性能完整、准确地表达出来,形成具体的软件需求规格说明,为后续阶段系统的设计、编码及测试奠定基础。需求分析:指通过对系统的调查、分析、综合,产生完整的需求说明的过程,即用易读、直观的 格式 pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载 ,表达系统“做什么”的问题。通过对市场上的台球厅进行调研,各个台球厅负责人对台球厅管理系统的需求各不相同。现今,有很多的台球厅都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 等纸介质的手工处理,总的来说,缺乏系统、规范的信息管理手段。尽管有的台球厅有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。基于这些问题,台球厅的管理者认为有必要建立一个台球厅管理系统,使台球厅的管理工作规范化、系统化、程序化,避免管理的随意性,提高信息处理的速度和准确性。经过了大量的调查,消费者大都对台球厅有很大的兴趣,表示台球厅如果能够令自己满意的话是愿意花钱去台球厅进行休闲健身的。但大家也表示不愿意每次都要提前跑到台球厅去预约或者因为没有预约而没有球台进行消费,这样做劳力又费时,效率极低。大家希望的是能够在任何地方任何时候了解最新信息和进行操作,这就是我要做的台球厅管理系统,只要大家登录到台球厅网站就可以实现这些功能。用户表示,首先要了解台球厅的规模和硬件设施的配置,成为会员可以得到优惠,时间越长优惠越大,所以要能够进行注册;要能够查询球台信息并进行预约,大大提高了用户的效率和球台的利用率。台球厅的管理人员表示,首先要有对员工的管理,快速查询员工信息并对其职位的操作;还有就是对球台设施的管理,可以进行添加修改和删除;再有是对数据的统计,直观有用,使管理人员清楚应该做什么适当的调整。2.2业务分析业务 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 图是描述物理系统的工具。可以通过画出系统流程图来了解要开发的项目的大概处理流程、范围和功能等。业务流程图不仅用于可行性研究,还可用于需求分析阶段。本系统的业务流程图为:否是否是否是否否是图2业务流程图2.3系统的逻辑模型数据流图:它是表示系统逻辑模型的工具,以图形的方式来表达系统的功能。它往往是分层的,顶层图表明系统的范围及它与周围环境的数据交换关系,下层图是上层图中数据处理的细化,分解层次的多少由系统的复杂程度来决定。掌握画数据流图应注意的事项。数据流程图的特点:括性和抽象性数据流程图在系统分析中的作用:数据流程图既是对原系统进行分析和抽象的工具,也是用以描述新系统逻辑模型的主要工具。本系统的数据流程图:顶层本系统主要由三个部门共同进行管理,人事部门负责员工的管理,管理部门主要负责球台和消费的管理,客户服务部门主要是对客户(包括普通客户和会员)的管理。图3数据流程图顶层第一层这一层是顶层的展开,是数据流程图最为重要的一层,如果这一层没有分析好那么下面的工作都要出问题。如会员管理﹑消费管理﹑员工管理﹑球台管理和查询统计。其中以消费管理和球台管理最为复杂,但也是本系统的亮点。数据存储有五个:客户资料﹑消费资料﹑项目资料﹑球台信息和员工信息。它们分别保存着各自的数据。D2客户资料D3消费资料D4消费项目D5球台信息表预约D6员工信息表图4数据流程图第一层第二层展开会员管理共有三个数据处理模块和一个数据存储。主要是会员的注册、资料的变更以及会员信息的查询和统计。会员资料上交到客服部门和管理部门。D2会员资料表图5数据流程图第二层消费管理共有四个数据处理模块和六个数据存储。主要是处理会员消费的事务。会员可在入场前先查询当前球台占用情况决定是否要进场开台消费,进场前会员要做个简单的登记。D2.1会员信息表D3.1会员消费表D3.2普通顾客消费表D5球台信息表P4D4消费项目表D2.2普通顾客信息表图6数据流程图第二层球台管理共有六个数据处理模块:预约球台﹑查询球台﹑球台的添加删除﹑球台维护﹑预约确认和统计查询。任何人都可以查看,查询球台,但是只有会员能够进行预约。球台的维护和添加删除以及预约确认和统计则是管理员要进行操作的。D5.2留言信息表D5球台信息表P2D5.1预约登记表图7数据流程图第二层D5.2留言信息表图8留言管理员工管理即是对管理员的管理,有四个处理模块:员工的聘用﹑解聘﹑调整职位以及查看员工信息﹑查询员工信息。D6.1员工职位信息表图9数据流程图第二层2.4数据字典数据字典是数据处理人员在数据库的设计、实现、运行、维护等各阶段对数据进行管理和控制的工具。数据字典是给数据流程图中每个成分以定义和说明的工具。在数据流程图中仅对系统逻辑功能的总体框架作了描述,缺乏详细、具体的说明。数据字典的作用是对数据流程图中的各种成分,包括数据项、数据结构、数据流、数据存储、处理功能、外部项等的逻辑内容与特征予以详细说明。2.4.1基本数据项属性表2-1总数据项编号基本数据项名称数据类型长度小数位数取值范围S01管理员编号S2//S02管理员姓名N12//S03管理员性别N2//S04职位编号S2//S05部门编号S2//S06是否被解雇B1//S07部门名称N30//S08职位名称N30//S09管理员名N12//S10管理员密码N16//S11用户名N12//S12用户密码N16//S13性别N2//S14年龄T1//S15电子邮件N50//S16电话N15//S17日期D8//S18球台编号S2//S19球台名称N30//S20球台类型N12//S21费用S2//S22预约编号S2//S23操作时间D8//S24开始时间D8/>系统日期S25是否付款B1//S26留言编号S2//S27留言标题N50//S28留言内容N250//S29留言时间D8//2.4.2数据流属性表表2-2数据流属性表编号数据流名称组成来源去向L01新员工信息S01~S03S07S08P3.1D6.1L02员工信息变更S07S08P3.2D6.1L03解聘员工S01~S06P3.3D6.1L04添加球台S18~S21P4.4D5L05删除球台S18P4.4D5L06维护球台S18~S21P4.5D5L07查询球台信息S18~S21P4.1D5D5.1L08预约球台S22~S24P4.2D5.1L09确认预约信息S22~S25P4.3D5D5.1L10留言信息S27S28P4.6D5.2L11处理留言信息S26~S29P4.7D5.23.系统设计3.1系统功能模块划分总模块的设计:图10系统总体功能结构图系统分为管理员和用户两部分,所以将其分成三个小模块,分别是:图11用户部分球台的功能模块图图12管理员部分球台的功能模块图图13管理员部分员工的功能模块图3.2代码设计球台编号﹑预约编号和留言编号是自动形成的,每次递增1,是为了防止有重复的编号。代码对象:部门编号使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。人事部门为1管理部门为2服务部门为3代码对象:职位编号使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。经理为1项目陪练为2球台管理员为3部门经理为4代码对象:员工编号使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。代码位数:12位XXXXXXXXXXXX顺序号1为男,2为女招聘年月职位编号部门编号代码对象:会员编号使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。代码位数:10位XXXXXXXXXX顺序号1为男,2为女入会年月会员卡类型代码对象:项目编号使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。代码位数:10位XXXXXXXXXX顺序号球台顺序号管理员顺序号项目类型代码对象:预约编号使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。代码位数:10位预约编号XXXXXXXXXX顺序号球台顺序号管理员顺序号种类顺序号代码对象:球台使用范围:在本台球厅内使用;种类:系列顺序码;类型:数字字母混合型。代码位数:19位XXXXXXXXXXXXXXXXXXX球台编号球台种类球台出厂日期球台产地球台所在区域球台所在楼层1~2位:球台所在楼层(01层至03层)3~4位:球台所在区域(A1;A2;B1;B2;C1;C2;D1;D2)5位:球台产地(进口J/国产G)6~13位:球台出厂日期(年/月/日)14~15位:球台种类(斯诺克sn/九球jq/美式落袋ms)16~19位:球台编号(顺序编号)4数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率及实现的效果产生影响。[1]合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的及将来可能增加的需求[3-5]。4.1数据库分析台球厅管理系统的数据库功能主要体现在对各种信息的提供﹑保存﹑更新和查询操作上,包括用户信息﹑管理员信息﹑球台信息﹑预约信息和留言内容,各个部分的数据内容又有内在联系。针对此系统的数据库特点,需求如下:●用户和管理员具有不同身份●用户信息记录用户资料●球台有球台类型﹑费用等多种信息●预约有预约时间﹑预约用户等多种信息●留言有留言标题﹑内容等多种信息●员工信息记录员工资料,有部门职位等信息4.2数据库概念结构设计球台管理模块中的实体有:用户信息实体﹑管理员信息实体﹑球台信息实体﹑预约信息实体和留言信息实体。图14用户信息实体图图15管理员信息实体图图16球台信息实体图图17预约信息实体图图18留言信息实体图员工管理模块中的实体有:员工信息实体﹑部门信息实体和职位信息实体。图19部门信息实体图图20职位信息实体图图21员工信息实体图E-R(实体-关系)图:11nnnmn1图22实体间关系图4.3数据库逻辑结构设计数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。[4]关系模型的逻辑结构是一组关系模式的集合。而E-R图则是由实体、实体的属性和实体之间的联系三个要素组成的。[2]所以将E-R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,这种转换遵循的原则:1.一个实体型转换为一个关系模式。2.一个m:n联系转换为一个关系模式。3.一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。4.一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。5.三个或三个以上实体间的一个多元联系转换为一个关系模式。6.同一实体集的实体间的联系,即自联系,也可按1:1、1:n和m:n三种情况分别处理。7.具有相同码的关系模式可合并。关系模式转换:会员(用户名﹑性别﹑年龄﹑电子邮件﹑电话﹑出生日期)员工(员工编号﹑姓名﹑性别﹑职位编号﹑部门﹑部门编号)球台(球台编号﹑名称﹑类型﹑费用)预约(预约编号﹑用户名﹑球台编号﹑费用﹑开始时间﹑操作时间﹑是否付款)留言(留言编号﹑用户名﹑标题﹑内容﹑留言时间)4.4数据库中基本表的结构设计表3管理员信息表编号数据项名称类型长度允许空默认值备注说明Admin_name管理员名N12否Null主键递增量1Admin_psw管理员密码N16否Null表4用户信息表编号数据项名称类型长度允许空默认值备注说明User_name用户名N12否Null主键外键psw用户密码N16否Nullsex性别N2否Nullage年龄T1否Nullemail电子邮件N50否Nulltel电话N15否Nullbyear出生年S2否Nullbmonth出生月T1否Nullbtay出生日T1否Null表5球台信息表编号数据项名称类型长度允许空默认值备注说明Ground_id球台编号S2否Null主键外键递增量1name球台名称N30否Nulltype球台类型N12否Nullcost费用S2否Null表6预约信息表编号数据项名称类型长度允许空默认值备注说明Preengage_id预约编号S2否Null主键递增量1User_name用户名N12否Null外键Ground_id球台编号S2否Null外键datetime操作时间D8否Nullcost费用S2否Nullpyear开始年S2否Nullpmonth开始月T1否Nullbday开始日T1否Nullbeginhour开始时间T1否Nullpaid是否付款B1否0表7留言信息表编号数据项名称类型长度允许空默认值备注说明Word_id留言编号S2否Null主键递增量1User_name用户名N12否Null外键title留言标题N50否Nullword留言内容N250否Nulldatetime留言时间D8否Null表8员工信息表编号数据项名称类型长度允许空默认值备注说明personnel_id员工编号S2否Null主键person_name员工姓名N12否Nullperson_gender员工性别N2否Nullposition_id职位编号S2否Null外键dept_id部门编号S2否Null外键fired是否被解雇B1否0表9部门信息表编号数据项名称类型长度允许空默认值备注说明Dept_id部门编号S2否Null主键外键department部门名称N30否Null表10职位信息表编号数据项名称类型长度允许空默认值备注说明Position_id职位编号S2否Null主键外键Position_name职位名称N30否Null4.5数据关系图图23数据关系图5系统主要功能模块的设计和实现5.1首页模块的实现首页包括了球台统计﹑检测用户是否登录等功能。球台进行统计需要查询球台数据库,所以我在首页index.asp文件头部包含了数据库连接信息代码Connection/gym.asp文件,使用的命令是。[9]通过ASP代码<%=(rs_user_total和ground_total)%>和<%=(ground_total)%>可以将它们插入到HTML代码中用来显示用户总数和球台信息数。对于不同的用户,动态页面的运行结果也是不同的,系统通过检验session是否初始化来判别用户是否登录。本系统提供了方便的重新登录功能,就是支持某一用户未注销时另一用户可以直接登录,实现用户身份的切换。在没有用户登录时显示登录字样,而在已经有用户登录时显示重新登录字样。图24首页面5.2公共模块的实现5.2.1数据库连接文件在本系统中,很多页面都有与数据库有关的操作,包括查询﹑插入﹑删除和统计等,在执行这些操作前首先要与数据库系统进行连接[8]。数据库连接代码:<%Dimgym_conngym_conn="Provider=SQLOLEDB;Server=image;Database=gym;UID=sa;PWD="%>数据库连接文件中定义了数据库连接字符串gym_conn,它有一定的语法规则:provider参数指定数据库的OLEDB提供程序,使用SQLServer数据库时应选择SQLOLEDB参数;Server参数指定存放SQLServer数据库的服务器名;Database为SQLServer数据库的名称;UID和PWD分别指定用户名和用户密码。因为这段代码的使用率非常高,所以我将其保存在一个独立的文件中。5.2.2页面头文件将其写入单独文件,在使用时用include命令来调用它们。页面头文件是一段HTML代码,它指定了页面头部的图片,用鼠标点中图片某一区域后可以进入相应的链接页面。在首页index.asp的适当位置可以使用命令来插入页面头文件,且这个文件同样可以插入其他页面重复使用。当需要修改页面头时,只需要对这个文件进行修改。主要代码:5.2.3页面尾文件使用代码可以将尾文件插入到需要的页面中。[9]在页面尾文件中包括了一些版权和版本的信息,是HTML代码。主要代码:台球厅球台管理系统版权所有©2004
E-mail:
budding126@yahoo.com.cn
电话:
010-12345678管理员登陆5.2.4用户(管理员)登录判定这是个多用户(管理员)的系统,其中有些页面需要用户(管理员)登录后才开放功能,像预约页面和留言页面,为防止非法用户直接调用这些页面的功能,需要在这些页面中加入用户登录判定代码,这段代码高度重复,单独存放使用可直接插入。我通过session(“user_name”)的状态来判断用户(管理员)是否登录,使用isempty命令可以判断某一变量是否已初始化。当用户(管理员)登录之后,isempty(session(“user_name”))的值为0,则系统认为用户(管理员)登录,若其值为1则跳转至error.asp页面提示错误。使用时,将代码插入到页面头部,进行用户(管理员)登录判定。当用户(管理员)执行错误操作时出现的错误提示,是系统发现用户(管理员)有违规操作时跳转到错误提示页面,这个页面是静态的,完全由HTML代码构成。用户登录判定主要代码:<%ifisempty(session("user_name"))thenresponse.Redirect("error.asp")response.End()endif%>管理员登录判定主要代码:<%'判断管理员登陆------------------ifisempty(session("admin_name"))thenresponse.Redirect("error.asp")response.End()endif%>5.2.5注销模块当用户或者管理员完成操作要离开系统时,为保证系统安全,避免恶意操作,系统提供了注销功能,它是通过注销模块来完成的,本系统用户注销和管理员注销使用了同一个注销模块。注销代码:<%session("user_name")=emptysession("admin_name")=emptyresponse.Redirect("index.asp")%>代码执行后,再对session(“user_name”)和session(“admin_name”)进行isempty判定时,返回值1,就实现了注销功能。5.3用户功能模块的实现用户部分有关的功能页面如下:●login.asp:用户登陆页面●ground.asp:查看球台页面●search.asp:查询球台页面●preengage.asp:预约球台页面●mine.asp:查看预约页面●cancel.asp:取消预约页面●lword.asp:留言页面●logout.asp:注销5.3.1查看球台模块查看球台它以列表的形式显示出当前数据库ground球台表中的所有球台信息,并建立预约对应球台的快捷方式,方便用户直接预约球台。在查看球台页面ground.asp中首先要打开球台信息表ground来获取信息,接着通过循环来逐条列出球台信息。球台查看模块是由ASP和HTML穿插而组成的代码,通过ASP打开数据库并获取数据,放置在rs_ground中,接着使用While…Wend语句来循环列出各行数据。[8]图25查看球台主要代码:<%'打开球台数据库------------------setrs_ground=server.CreateObject("adodb.recordset")sql="select*fromground"rs_ground.opensql,gym_conn,3,2rs_ground.movefirst'循环显示球台信息-----------------while(notrs_ground.eoforrs_ground.bof)%>5.3.2查询球台模块用户通过浏览球台来进行预约是最直接的方法,但是当球台记录较多时通过浏览列表找到合适的球台可能比较费时费力,所以系统有球台查询功能。本系统的球台查询页面分为上下两个部分,上面用来选择查询条件,下面用来显示结果。当用户首次打开查询页面search.asp时会显示输入查询条件提示,在用户提交了查询条件后则会同时显示输入查询条件提示和查询结果,这是靠判断用户的提交信息来实现的。我完成这个查询页面结构的基本思路是:通过判断变量set_ground和set_cost是否同时为空,如果是则认为用户首次调用查询页面,而只显示填写查询条件表单,如果否则认为用户已经提交过查询信息而执行数据库查询命令并列出结果。查询结果可能是找到有效数据和未找到有效数据两种情况,用变量searchok来标识。用IfThen…Else…EndIf语句来检验searchok的值。[8]图26查询球台主要代码: 查询结果:<%ifsearchok=1thenresponse.Write(set_ground&"球台,费用上限"&set_cost)endif%> <%Ifsearchok=0Then%>●没有找到符合要求的球台<%Else%>球台名称球台类型费用(元/小时)开放时间<%rs_search.movefirstwhile(notrs_search.eof)%><%urltext="preengage.asp?ground_id="&rs_search("ground_id")%>"><%=rs_search("name")%><%=rs_search("type")%><%=rs_search("cost")%>8:00-20:00<%rs_search.movenextWend%> ●点击球台名称可以直接预约该球台
<%EndIf%> 5.3.3预约模块预约系统是本系统的核心功能,是本系统最大的亮点,该模块接收用户提交的球台编号和预约时间,并判断该球台在指定时间是否空闲,最后给出用户预约结果,如果预约成功还要将预约信息写入数据库。预约模块分为预约页面preengage.asp和预约检查页面chkpre.asp,其中预约页面的功能是针对指定球台提示用户输入预约时间,并提交给预约检查页面;预约检查页面的功能是检查用户提交的数据并根据情况进行处理。用户成功预约了球台后页面将显示预约成功提示信息。由于预约页面需要接收球台编号来实现预约功能,所以用户只能通过查看球台和查询球台跳转至预约页面,而不能直接调用预约页面。当ground_id为空时页面会直接跳转至提示错误页面error.asp,达到禁止直接调用预约页面的目的,用户访问页面时程序会打开球台数据库读取球台数据。页面的另一部分是提交预约信息的表单,表单信息提交给chkpre.asp预约检查页面进行处理。这个页面将接收由用户提交的预约球台编号和预约时间。本系统要求用户提出预约时间要比开始使用球台时间提前24小时,因此这个页面首先会判断用户提交的预约时间是否符合要求,而后查询数据库确保该球台在这个时间未被预约,最后给出预约成功提示并将预约信息写入数据库,如果发现该预约与已经存在的预约冲突则给出错误提示。在判断用户是否提前24小时预约的功能模块中使用了datediff函数,DateDiff(interval,date1,date2),功能是返回date1和date2之间的时间差。图27预约球台主要代码: 请补充完整您要预约的球台信息:">  球台类型:<%=rs_ground("type")%>球台名称:<%=rs_ground("name")%> 使用时间:2004<%'显示12个月份的选项-----------fori=1to12response.Write("")next%>月<%'显示31天的选项--------------fori=1to31response.Write("")next%>日 预约开始时间: <%'显示8点到24点的时间选项-------------fori=8to23response.Write("")next%>预约小时数:<%fori=1to12response.Write("")next%>       5.3.4查看预约模块用户在预约球台后会有查询预约的需求,是以列表的形式表示出当前用户的所有预约记录,给出预约的信息和状态,并提供取消预约的链接。本系统总设定球台预约过期或者用户已经对预约付款后不能取消预约,所以取消预约的链接只能出现在未过期且未付款的预约记录后,这需要对每条预约的时间和是否付款(paid字段)加以判断。5.3.5取消预约模块这个页面的特点:要求较高的安全性。取消预约也是预约系统的一个重要功能,其中设计了数据库的删除操作,在执行操作之前要严格审查数据和进行用户身份确认以保证数据安全和删除数据操作的正确执行。当用户单击cancle.asp页面中的取消预约按钮时,会将预约ID提交给取消预约执行页面chkcancle.asp来完成删除操作。取消预约页面提示错误有三种可能:未提交要取消的预约ID﹑用户未登录﹑提交的预约ID不是当前用户的预约或根本不存在。这些操作会使页面跳转至提示错误页面,从而达到保证安全的目的。图28取消预约主要代码:<%=rs_ground("type")%><%=rs_preengage("cost")%><%=rs_preengage("pyear")&"-"&rs_preengage("pmonth")&"-"&rs_preengage("pday")%><%a=hour(rs_preengage("begintime"))b=a+rs_preengage("hour")c=b&":00:00"%><%=rs_preengage("begintime")%>-<%=c%><%'根据paid字段判断是否付款--------------------Ifrs_preengage("paid")=1Thenresponse.Write("已经付款")elseresponse.Write("尚未付款")endif'根据日期判断预约是否过期---------------------time_out=datediff("d",now,rs_preengage("pyear")&"-"&rs_preengage("pmonth")&"-"&rs_preengage("pday")&""&rs_preengage("begintime"))iftime_out<0thenresponse.Write("已经过期")elseresponse.Write("尚未到期")endif%><%ifrs_preengage("paid")=0andtime_out>0then%>">取消预约<%endif%>5.3.6留言模块留言功能可以让用户方便地将意见﹑建议或其他信息提供交给管理员。用户的留言被存储到数据库的word表中,在写入数据之前要检查留言标题和内容是否超出字段上限,是为了避免发生数据库写入错误。当用户在表单中添入信息留言,表单数据会提交给lword.asp,开始检查数据title和word至少有一个不为空。如果数据全部符合要求则将留言写入word表并提示留言成功。5.4管理员功能模块的实现管理员操作的各个页面(除登录页面)必须在管理员登录后才允许被访问,因此这些页面都加入了管理员登录验证代码:.管理员部分球台的有关的功能页面如下:●adminlogin.asp:管理员登陆页面●admin_addnew.asp:添加球台页面●del.asp:删除球台页面●admin_edit.asp:修改球台页面●admin_rword.asp:阅读留言页面●admin_chk.asp:预约确认页面●chkcancel.asp:取消预约页面●logout.asp:注销管理员部分员工的有关的功能页面如下:●browsedeptlist.asp:浏览部门列表的模块●browseonedept.asp:浏览某一部门的职员列表的模块●read.asp:读取某一职员的详细情况的模块●modifyposition.asp:调整职员的职位的模块●fire.asp:聘请新职员的模块●hire.asp:解聘某一职员的模块●query.asp:查询职员信息的模块5.4.1登录模块通过核实管理员名和密码来验证其身份,它有特殊的权限。当通过管理员验证后会跳转至查看留言模块administrator.asp,若未通过验证则跳转至adminerr.asp,同时提示管理员登录错误。图29管理员登录主要代码:   管理员: 密码:      5.4.2查看和管理模块留言功能加强了用户和管理员之间的交流,它包括生成留言列表﹑阅读留言和删除留言三部分。生成留言列表是为了使管理员及时了解用户意见和建议。阅读留言的主要任务是读取数据库中留言表word中的留言信息,并构造删除留言链接。当管理员看过留言后可以将无用的删除,其中涉及数据库操作,为了保证操作的安全性页面头部加入了检验管理员身份的代码。5.4.3预约管理模块预约管理模块包括确认预约页面﹑删除预约页面两部分。确认预约是在用户已经对指定的预约付款后管理员在预约数据库中将对应预约信息修改为已付款的操作,用户不能取消已付款的预约,管理员也不能删除已付款的预约。删除预约用于在数据库预约表中出现错误预约或恶意预约后,由管理员强制将其删除,是管理员特有的权限。同时管理员也可以将未付款的预约删除。图30预约管理主要代码:<%dimpreengage_id,rs_preengage,sql,rs_ground,datetime'接收表单数据------------------preengage_id=request("preengage_id")'打开预约据库--------------------setrs_preengage=server.CreateObject("adodb.recordset")Ifpreengage_id=""Then'表单数据preengage_id为空,开始显示预约列表--------------'此处要加入paid=0条件来列出尚未付款的预约--------------sql="select*frompreengagewherepaid=0"rs_preengage.opensql,gym_conn,3,2rs_preengage.movefirst%>
 预约确认 预约用户场地名称预约日期预约开始时刻预约小时数费用操作<%while(notrs_preengage.eof)%><%=rs_preengage("user_name")%><%setrs_ground=server.CreateObject("adodb.recordset")sql="select*fromgroundwhereground_id="&rs_preengage
本文档为【《台球厅管理系统》(参考Word)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥17.0 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
精品文库a
海霄科技有卓越的服务品质,为满足不同群体的用户需求,提供制作PPT材料、演讲幻灯片、图文设计制作等PPT及文档优质服务。
格式:doc
大小:1MB
软件:Word
页数:0
分类:管理学
上传时间:2021-02-04
浏览量:34