基于WAMP的浴室收费系统_第1页
基于WAMP的浴室收费系统_第2页
基于WAMP的浴室收费系统_第3页
基于WAMP的浴室收费系统_第4页
基于WAMP的浴室收费系统_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、毕业论文(设计)报告纸 PAGE II 摘要本设计是基于WAMP的浴室收费系统,是结合实际需求,针对性开发的实用系统。系统基于Windows平台,采用PHP作为开发环境,MySQL作为数据库服务器,Apache作为服务器。功能包括实现房间管理、服务项目管理、工作人员管理、消费管理、会员管理、结账业务、统计管理等。系统架构为B/S。经过授权的用户可以通过Web浏览器,以人机交互式的客户端程序实现对浴室房间、服务项目、工作人员、消费情况、会员业务、结账业务、经营统计的操作。相比现有的其他C/S收费系统,没有了区域的限制,浴室的拥有者可以在任何地点查看浴室的经营情况。关键词:WAMP;浴室管理系统;

2、PHP ABSTRACTThe design is based on the WAMP bathroom toll system is a combination of actual demand, targeted development of practical systems. System is based on Windows platform, using PHP as the development environment, MySQL as the database server, Apache as the server. Features including the rea

3、lization of room management, service management, staff management, consumption management, membership management, billing services, statistics management. System architecture for the B/S. Authorized users can browser through the Web to human-computer interactive client programs to achieve the bath r

4、oom, service, staff, consumption, member services, billing services, operating statistics of the operation. Other than the existing C/S payment system, there is no regional restrictions, the owner of the bathroom at any location between the operation of the bathroom.Keywords: WAMP; Bathroom Manageme

5、nt System; PHP毕业论文(设计)报告纸 PAGE ii 目录TOC o 1-3 h u HYPERLINK l _Toc15403 摘要 PAGEREF _Toc15403 I HYPERLINK l _Toc16461 ABSTRACT PAGEREF _Toc16461 II HYPERLINK l _Toc14152 1 绪论 PAGEREF _Toc14152 1 HYPERLINK l _Toc5154 1.1 开发工具的选用及介绍 PAGEREF _Toc5154 1 HYPERLINK l _Toc5224 1.1.1 PHP 的优势 PAGEREF _Toc5224

6、 1 HYPERLINK l _Toc31370 1.1.2 PHP的特点 PAGEREF _Toc31370 1 HYPERLINK l _Toc20729 1.2 环境搭建 PAGEREF _Toc20729 2 HYPERLINK l _Toc14876 1.2.1 Apache服务器 PAGEREF _Toc14876 2 HYPERLINK l _Toc25744 1.2.2 MySQL服务器 PAGEREF _Toc25744 2 HYPERLINK l _Toc29196 2 系统分析与总体设计 PAGEREF _Toc29196 4 HYPERLINK l _Toc10173

7、2.1 系统功能描述 PAGEREF _Toc10173 4 HYPERLINK l _Toc7725 2.2 系统功能模块划分 PAGEREF _Toc7725 6 HYPERLINK l _Toc7807 2.3 系统流程分析 PAGEREF _Toc7807 6 HYPERLINK l _Toc13333 3 系统数据库结构设计与实现 PAGEREF _Toc13333 8 HYPERLINK l _Toc11107 3.1 创建数据库 PAGEREF _Toc11107 8 HYPERLINK l _Toc27196 3.2 数据库逻辑结构设计 PAGEREF _Toc27196 8

8、HYPERLINK l _Toc6291 4 系统主要界面设计 PAGEREF _Toc6291 13 HYPERLINK l _Toc344 4.1 登录界面 PAGEREF _Toc344 13 HYPERLINK l _Toc3678 4.2 管理界面 PAGEREF _Toc3678 13 HYPERLINK l _Toc26940 5 模块设计与功能划分 PAGEREF _Toc26940 14 HYPERLINK l _Toc2818 5.1 包厢管理模块 PAGEREF _Toc2818 14 HYPERLINK l _Toc9729 5.2 消费管理模块 PAGEREF _To

9、c9729 15 HYPERLINK l _Toc19901 5.2.1创建新的消费 PAGEREF _Toc19901 15 HYPERLINK l _Toc16208 5.2.2添加消费项目 PAGEREF _Toc16208 16 HYPERLINK l _Toc30577 5.2.3消费房间管理 PAGEREF _Toc30577 16 HYPERLINK l _Toc4854 5.2.4欠费管理 PAGEREF _Toc4854 16 HYPERLINK l _Toc30046 5.2.5结账 PAGEREF _Toc30046 17 HYPERLINK l _Toc27954 5.

10、3 会员管理模块 PAGEREF _Toc27954 18 HYPERLINK l _Toc11970 5.3.1会员卡列表 PAGEREF _Toc11970 18 HYPERLINK l _Toc7260 5.3.2会员卡类型 PAGEREF _Toc7260 18 HYPERLINK l _Toc29790 5.3.3添加会员卡类型 PAGEREF _Toc29790 18 HYPERLINK l _Toc8917 5.3.4添加会员卡 PAGEREF _Toc8917 18 HYPERLINK l _Toc26925 5.4 员工管理模块 PAGEREF _Toc26925 18 HY

11、PERLINK l _Toc350 5.4.1工作人员列表 PAGEREF _Toc350 18 HYPERLINK l _Toc5587 5.4.2添加工作人员 PAGEREF _Toc5587 18 HYPERLINK l _Toc9545 5.4.3服务生服务统计 PAGEREF _Toc9545 18 HYPERLINK l _Toc9362 5.4.4工作人员管理 PAGEREF _Toc9362 18 HYPERLINK l _Toc8489 5.5 服务项目管理模块 PAGEREF _Toc8489 18 HYPERLINK l _Toc29118 5.5.1服务项目列表 PAG

12、EREF _Toc29118 18 HYPERLINK l _Toc19424 5.5.2添加服务项目 PAGEREF _Toc19424 19 HYPERLINK l _Toc15629 5.6 管理员管理模块 PAGEREF _Toc15629 19 HYPERLINK l _Toc315 5.6.1管理员列表 PAGEREF _Toc315 19 HYPERLINK l _Toc27195 5.6.2添加管理员 PAGEREF _Toc27195 19 HYPERLINK l _Toc22671 5.7 统计管理模块 PAGEREF _Toc22671 20 HYPERLINK l _T

13、oc29644 5.7.1营业额统计 PAGEREF _Toc29644 20 HYPERLINK l _Toc2270 5.8 其他部分 PAGEREF _Toc2270 21 HYPERLINK l _Toc2299 6 总结与展望 PAGEREF _Toc2299 22 HYPERLINK l _Toc12182 6.1 系统总结 PAGEREF _Toc12182 22 HYPERLINK l _Toc22557 6.2 PHP系统展望 PAGEREF _Toc22557 22 HYPERLINK l _Toc5615 谢辞 PAGEREF _Toc5615 24 HYPERLINK

14、l _Toc20724 参考文献 PAGEREF _Toc20724 25共 25 页 第 页1 绪论1.1 开发工具的选用及介绍1.1.1 PHP 的优势PHP是“PHP:Hypertext Preprocessor”的缩写,译为“PHP:超文本预处理器”,这是一种在服务器端执行的脚本语言。PHP的语法融合了C、JAVA和Perl等编程语言的语法精髓,使用PHP可以开发动态的、交互的,甚至是由客户定制的动态网页,它能把网站变成真正的Web应用。PHP语言与其他脚本语言相比,在执行效率、开发周期、稳定性、可移植性、函数支持等许多方面都有较大的优势,所以越来越多的用户开始选择使用PHP语言来架构

15、Web网站。1.1.2 PHP的特点PHP语言的特点是执行效率高、开发周期短、稳定性强、可移植性高、函数支持多等,具体表现先以下方面。具有良好的跨平台性,支持Windows、Linux、Macintosh、FrerBSD、OS2和UNIX等多种操作系统平台。能够与多个Web服务器兼容,比如,Apache、MS IIS、Netscape Server等。支持几乎所有的主流与非主流数据库,支持JDBC,提供MySQL、Oracle、Sybase和MS SQL等多种数据库访问接口。开发成本低,使用PHP、Apache、MySql和Linux这个组合,用户就可以低成本的构建一个中小型的网站系统。PHP

16、的语法来源于C语言的编程风格,简单易用,系统内部函数丰富,使复制的Web开发变得十分轻松自由。拥有成熟的开发工具,比如,在Windows平台下可以使用Zend Studio等,在Linux平台下可以使用Eclipse等。支持模块化开发,实现程序逻辑与用户界面的完全分离,开发周期短、效率高。同时支持面向对象和面向过程两种风格的开发,使用与各类开发人员。PHP编译和执行时采用Zend引擎技术,所以开发的产品性能稳定、速度快。目前主流技术都支持PHP,如WebService、Ajax、XML等,满足开发的需求和应用。完全免费和开源,升级快,并有很多成熟的框架,如FleaPHP、ZendFrameWo

17、rk、MooPHP、ThinkPHP和CakePHP等。1.2 环境搭建1.2.1 Apache服务器PHP能够较好的与大多数Web服务器兼容,PHP和Apache服务器是最完美的组合,本系统就是以Apache作为Web服务器。Apache是一个开源组织的名称,该组织开发了很多优秀的开源软件,其中就包括Apache HTTP Server(简称Apache),Apache已成为世界上最流行的Web服务器软件之一,市场占有率达到60%左右。这与它的众多优点是分不开的,主要是如下几方面:支持最新的HTTP1.1通信协议。拥有简单而强有力的基于文件的配置过程。支持通用网关接口。支持基于IP和基于域名

18、的虚拟主机。支持多种方式的HTTP认证。集成Perl处理模块。集成代理服务器模块、支持定制服务器日志和实时监视服务器状态。支持服务器端包含智力(SSI)。支持安全Socket层(SSL)。提供用户会话过程的跟踪。 在Apache服务器上运行PHP脚本是比较不错的选择,并且他提供两种模式来支持PHP,一种是Fast CGI方式,另一种是Apache模块方式。1.2.2 MySQL服务器 MySQL是最受欢迎的开源SQL数据库管理系统,MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-depl

19、oyed)的软件中去。MySQL主要的特点如下:(1)使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性 (2)支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统 (3)为多种编程语言提供了API。这些编程语言包括C、C+、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。(4)支持多线程,充分利用CPU资源(5)优化的SQL查询算法,有效地提高查询速度(6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一

20、个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名(7)提供TCP/IP、ODBC和JDBC等多种数据库连接途径(8)提供用于管理、检查、优化数据库操作的管理工具(9)可以处理拥有上千万条记录的大型数据库2 系统分析与总体设计目前市场上的浴室收费系统如美萍系统等等,都是在独立的电脑操作,这样有个问题就是当突然断电时有的存储数据就会丢失,而即使是所谓的网络版的也只能局限在某一网络中,当企业的管理者不在企业时他并不能随时对浴室的经营情况进行了解。所以我选择用PHP构建一个浴室管理系统,这样当断电的时候既不会造成数

21、据丢失,也可以在其他工作场所查看经营情况。2.1 系统功能描述本系统主要是针对包厢类型的浴室开发的。主要包括:房间管理模块、消费管理模块、会员模块、工作人员模块、服务项目模块、管理员模块、统计管理模块等,具体描述如下:(1)房间管理 房间列表显示所有的房间及状态,在用、未用和维修,通过房间状态选择操作和通过房间号修改房间状态,主要是包厢的维修。 添加房间添加新的浴室包厢。(2)消费管理 创建新的消费通过点击房间来确定是否开始启用包厢添加新的消费。 添加消费项目添加包厢客户选择的消费项目,由技师或服务生提供添加信息。 消费房间管理查看各房间的消费情况,和结账业务。 欠费管理包括查看所有的欠费信息

22、,已还欠费,未还欠费,和偿还欠费业务,另外还有就是由收银员将欠费人的个人信息以备注形式输入数据库中。 结账房间结账,可以选择会员卡,现金,欠费三种结账模式。(3)会员卡信息管理 会员卡列表显示所有的会员卡,通过会员卡号可以查看会员卡相关的会员信息和消费信息,和具体消费项目。 会员卡类型显示所有的在使用的会员卡类型。 添加会员卡类型添加新的会员卡类型。 添加会员卡添加会员卡功能。(4)工作人员管理 工作人员列表显示所有的在职工作人员,和员工的个人信息。 添加工作人员添加新的员工。 服务生服务统计针对员工在一定时间内项目和服务数量的记录。 工作人员管理只有超级管理员有权限进入,对员工的信息进行修改

23、。(5)服务项目管理 服务项目列表显示所有的服务项目,包括编号,名称,单价,状态。 添加服务项目添加新的服务项目。(6)管理员信息管理 管理元列表只有超级管理员有权限进入,功能是显示所有的管理员,和查看管理员信息,超级管理员帐号不能删除。 添加管理员只有超级管理员有权限添加新的管理员,并且不能添加超级管理员。(7)统计管理 营业额统计分为两个部分,消费状况就是在某时间内消费记录(包括利润),和消费额统计某时间内的消费额,利润额统计。(8)浴室管理版权信息 版权信息显示版权人:王帅 2.2 系统功能模块划分从功能描述的内容可以看到,本实例可以实现8个完整的功能。我们根据这些功能,设计出系统的功能

24、模块,如下图2.1所示。图2.1 新闻发布系统功能模块示意图2.3 系统流程分析为了使读者进一步了解本实例系统的设计,本小节将对系统进行流程分析。管理系统的工作流程都是从管理员登录模块开始,对用户的身份进行认证。身份认证过程:确认用户是否是有效的系统用户,此过程决定用户能否进入系统,同时还有身份权限的获取,某些模块权限不够是不可以进入的。本系统仅有后台程序一个部分,非管理员无法进入。管理员拥有操作权限,超级管理员拥有所有权限,后台系统的流程分析如图2.4所示。图2.2 后台系统的流程分析3 系统数据库结构设计与实现3.1 创建数据库首先创建一个数据库bathroom用来保存本系统的所有数据。读

25、取数据库是使用的一个mysql类文件,mysql.class.php。在mysql.class.php中包含了常用mysql函数的使用方法的重写,方便了方法的调用。在使用的时候先引入文件,再实例化对象,代码如下:3.2 数据库逻辑结构设计本系统定义的bathroom数据库中包含以下10个表:管理员表:manager、会员卡类型表:card_type、会员卡所有人信息表:member_reg、消费表:cost、房间表:rooms、房间使用表:rooms_use、会员卡消费表:member_cost、消费项目:projects、顾客消费项目:user_cost和工作人员表:worker。下面分别介

26、绍这些表的结构:管理员表:manager管理员表manager用来保存管理员信息。在设计数据库结构时,很多表都需要设计一个整型字段作为标识列,这几乎已经成为惯例,例如表manager中的ma_id字段。所谓标识列,就是可以惟一标识一行记录的列,在表中不会存在两条标识列相同的记录。如果其他表需要引用表manager中的数据,则在表中添加一个ma_id字段就可以了,结构如表3.1所示。表3.1 表manager的结构编号字段名称数据类型注1ma_idint(11)管理员Id2Ma_nameVarchar(20)管理员名称3Ma_pwdVarchar(6)管理员加密密码4Ma_pwd0Varchar

27、(6)管理员明密码5Ma_workerChar(10)管理员工号6Ma_f_datedatetime注册时间7Ma_e_dateDatetime注销时间8Ma_stateInt(1)管理员状态 会员卡类型表:card_type会员卡类型表:card_type用来保存不同会员卡的类型,结构如表3.2所示。表3.2 表card_type的结构编号字段名称数据类型注1Ct_idint(11)卡类型Id2Ct_type_numInt(2)会员卡类型编号3Ct_money1Float实际交费4Ct_money2Float实际到账5Ct_stateInt(1)会员卡类型状态会员卡所有人信息表:member

28、_reg会员卡所有人信息表:member_reg用来保存所有会员的个人信息,结构如表3.3所示。表3.3 表member_reg的结构编号字段名称数据类型注1Mr_idint(11)会员卡Id2Mr_numVarchar(50)会员卡编号3Mr_type_numInt(2)会员卡类型4Mr_nameVarchar(50)会员名称5Mr_sfzChar(18)身份证号6Mr_phoneChar(12)固定电话7Mr_mobileChar(11)移动电话8Mr_f_dateDatetime注册时间9Mr_e_dateDatetime注销时间10Mr_stateInt(1)会员状态消费表:cost消

29、费表:cost ,用来保存所有消费记录,结构如表3.4所示。表3.4 表cost的结构编号字段名称数据类型注1Co_idint(11)消费Id2Co_invoiceChar(12)发票编号3Co_f_datedatetime开始时间4Co_e_datedatetime结束时间5Co_roomChar(3)房间号6Co_feefloat收费(从顾客处收的金额)7Co_feesfloat会员卡消费额8Co_intfloat实际利润9Co_moneyfloat消费总金额10Co_xiaofloat消费额11Co_e_moneyfloat找零12Co_remarktext备注13Co_selectIn

30、t(1)付费方式14Co_stateInt(1)消费状态房间表:rooms房间表:rooms用来所有的房间,和状态,如下表3.5所示。表3.5 表rooms的结构编号字段名称数据类型注1Rm_idint(11)房间id2Rm_nimChar(3)房间号3Rm_bedsChar(2)床位数4Rm_stateInt(1)房间状态房间使用表:rooms_use房间使用表:rooms_use用来存储房间使用状况,结构如下表3.6所示。表3.6 表rooms_use的结构编号字段名称数据类型注1Ru_idint(11)房间使用id2Rmu_numChar(3)房间号3Ru_f_dateDatetime开

31、始时间4Ru_e_dateDatetime结束时间5Ru_invoiceVarchar(12)发票编号6 Ru_stateInt(1)状态会员卡消费表:member_cost会员卡消费表member_cost记录了会员卡中的余额状况,结构如下表3.7所示:表3.7 表member_cost的结构编号字段名称数据类型注1Mc_idint(11)卡消费id2Mc_numVarchar(50)会员卡编号3Mc_type_numInt(2)卡类型4Mc_moneyFloat卡剩余额5Mc_cost_moneyFloat卡消费额6 Mc_invoiceVarchar(12)发票编号7Mc_f_dateD

32、atetime开通时间8Mc_e_dateDatetime使用时间9Mc_stateInt(1)状态消费项目表:projects消费项目表projects,存储的是所有的消费项目,结构如下表3.8所示:表3.8 表projects的结构编号字段名称数据类型注1pr_idint(11)消费项目id2pr_numChar(3)消费项目编号3Pr_nameVarchar(100)消费项目名称4Pr_pricefloat消费项目单价5Pr_stateInt(1)消费项目状态顾客消费项目:user_cost:顾客消费项目表user_cost,存储客户选择的消费项目,结构如下表3.9所示:表3.9 表us

33、er_cost的结构编号字段名称数据类型注1uc_idint(11)消费项目id2uc_invoiceChar(12)发票编号3Uc_numInt(11)顾客项目数量4Uc_dateDatetime顾客服务时间5Uc_stateInt(1)消费状态6Uc_remarkVarchar(100)备注7Uc_workerInt(11)工号8Uc_projectVarchar(100)顾客消费项目名称工作人员表:worker(admin工号为0)工作人员表worker,用来存储工作人员的所有个人信息,结构如下表3.10所示:表3.10 表woker的结构编号字段名称数据类型注1wo_idint(11)

34、工作人员id2wo_workerchar(10)工号3wo_positionvarchar(100)职位4wo_namevarchar(100)姓名5wo_emailvarchar(100)邮箱6wo_sfzchar(18)身份证号7wo_mobilechar(11)手机8wo_phonechar(12)固定电话9wo_addressvarchar(100) 住址10wo_f_datedatetime建号时间11wo_e_datedatetime注销时间12wo_stateint(1)状态4 系统主要界面设计本系统分为两个部分,一个是登录系统,另一个就是系统操作部分,下面就具体的说说这两个部分

35、的设计。4.1 登录界面本登录界面为login.php,它的功能是提供登录系统的入口,通过login.php界面登录系统,在登录的的同时记录下不同的登录用户权限。在系统中控制操作权限。界面状态如下图4.1所示:图4.1 系统登录界面4.2 管理界面本管理界面为index.php,在该页面中通过frame框架将页面分为三个部分,分别为leftframe,topframe,rightframe。用户通过在Leftframe中的选项来选择需要的操作,在rightframe框架中进行具体的操作。如下图4.2所示:图4.2 管理界面主界面5 模块设计与功能划分本系统的开发使用的是smarty模板技术,将

36、PHP与HTML分离,提高了开发的效率;在创建其他房间,会员等的时候都会通过AJAX验证是否已经存在该号;通过SESSION记录管理员的登录状态,同时通过$_SESSIONma_state=1来控制管理员的操作权限;分页技术使用的是分页类page.class.php,通过实例化类,$page=new page();来具体的查询记录;其他内容的存储使用mysql.class.php类,通过实例化类mysql,进行数据操作;营业额统计使用JpGraph生成统计图,更加直观的显示经营情况。下面就具体模块的应用进行分析。5.1 包厢管理模块5.1.1包厢列表本模块按照房间内的床位数将房间进行分组显示,

37、每个房间显示的内容包括显示状态的图片、房间号和房间状态等;当房间处于红色状态(空置状态)时,单击状态图片可以进行启用操作;通过单击房间号可以对包厢的状态进行操作,主要是当包厢需要维修等维护操作时房间显示停用,取消开房的操作。对不同状态下的图片选择是通过smarty模板文件,对状态图片进行选择,核心代码如下如图5.1所示:图5.1 包厢管理状态5.1.2添加包厢本模块功能是添加新的包厢,房间号为3位纯数字,床位数为不超过2位数字,添加新房间时通过ajax技术查询房间号是否存在,不能重复添加房间。如下图5.2所示:图5.2 添加包厢5.2 消费管理模块5.2.1创建新的消费同上包厢列表。创建新消费

38、的操作中,要在开启房间的同时,生成一个消费编号如:201104010001,是由年月日+4位数字,其中的四位数字从0001开始最大为9999每新添加一个消费,消费编号在已有的编号上加1。核心代码如下:updateData(rooms,array(rm_state=$_GETup),where rm_id=$_GETrm_id);$time=date(Y-m-d H:i:s);$invoice=date(Ymd);$res2=$conn-selectData(rooms_use,MAX(ru_invoice),where ru_invoice like $invoice%);$row2=$con

39、n-fetch($res2);/$row2MAX(ru_invoice);/这是已存在的最大的消费编号if($row2MAX(ru_invoice)/当天已经有了消费$invoice1=$row2MAX(ru_invoice)+1;$res3=$conn-insertData(rooms_use,array(ru_num=$_GETrm_num,ru_f_date=$time,ru_e_date=null,ru_invoice=$invoice1,ru_state=1);$res4=$conn-insertData(cost,array(co_invoice=$invoice1,co_room

40、=$_GETrm_num,co_f_date=$time,co_state=1);else/当天还没有消费$invoice1=$invoice.0001;$res3=$conn-insertData(rooms_use,array(ru_num=$_GETrm_num,ru_f_date=$time,ru_e_date=null,ru_invoice=$invoice1,ru_state=1);$res4=$conn-insertData(cost,array(co_invoice=$invoice1,co_room=$_GETrm_num,co_f_date=$time,co_state=1

41、);if($res&$res3)if($conn-affectedRows()exit(alert(开房间了!);location.href=roomlist.php;);else/注意如果没有开房,已经修改或添加的要判断后再删除暂时不做exit(alert(未开房间!);location.href=roomlist.php;);else/注意如果没有开房,已经修改或添加的要判断后再删除暂时不做exit(alert(开房失败!);location.href=roomlist.php;);?5.2.2添加消费项目通过房间号和提供服务的服务生或技师的工号与服务项目与数量等组成,其中房间号、员工工号

42、是必选项不选择则无法添加,另外洗浴一项是任何使用的房间都必须按照人数添加的。如下图5.3所示:图5.3添加消费5.2.3消费房间管理房间管理是显示所有在使用的包厢,同时选择需要查看的包厢的情况消费情况同时提供结账的接口,如下图5.4所示:图5.4房间管理5.2.4欠费管理首先要选择具体的操作,当有欠费消费后需要到备注中单击“添加备注”将欠费人的个人信息输入。如图5.5所示:图5.5欠费管理5.2.5结账通过选择房间号,和结算方式结账,当确认结账后将不能退回,必须继续操作打印发票。当消费金额小于每人20元的最低消费时,按照最低消费计算。同时打印发票。其中打印发票的核心代码如下:function

43、doPrint() bdhtml=window.document.body.innerHTML;sprnstr=;eprnstr=;prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr);window.document.body.innerHTML=prnhtml;window.print();浴室发票注:状态中1为消费项目,0为取消消费的项目5.3 会员管理模块5.3.1会员卡列表显示所有的会员卡,通过会员卡号可以查看会员卡相关的会员信息和消费

44、信息。5.3.2会员卡类型显示所有可用的会员卡类型,并且提供了修改卡类型,和删除卡类型的操作。5.3.3添加会员卡类型本模块提供了添加会员卡类型的功能。5.3.4添加会员卡本模块提供了添加会员卡功能,通过输入卡号和选择已存在的可用卡类型,添加新卡。5.4 员工管理模块 5.4.1工作人员列表显示所有的在职工作人员,和提供查看个人信息。 5.4.2添加工作人员提供添加新员工的入口,其中职位必选。 5.4.3服务生服务统计通过员工工号对员工在一定时间内服务量和项目的一个展示记录。 5.4.4工作人员管理本模块有权限限制,只有超级管理员的权限可以进入,对员工的信息进行查看,修改和删除操作。判断是否为

45、超级管理员的核心代码如下:?phpif(empty($_SESSION)header(login.php);else if($_SESSIONma_state!=1)exit(alert(你的权限不够!);location.href=roomlist.php;);?5.5 服务项目管理模块5.5.1服务项目列表本模块显示所有的服务项目,包括编号,名称,单价,状态和提供修改,删除等操作。 5.5.2添加服务项目本模块用于添加新的服务项目,其中洗浴是在每次增加新的消费后必须要有的并且编号为00,其他服务项目可以任意添加编号和名称。5.6 管理员管理模块5.6.1管理员列表本模块须有超级管理员权限才

46、能进入,模块是用于显示所有有权限进入系统的管理员,并且提供了查看其他管理员登录名、密码和修改、删除等操作。5.6.2添加管理员本模块须有超级管理员权限才能进入,并且添加新的管理员,并且不能再添加超级管理员。核心代码如下:selectData(worker,where wo_worker=$ma_worker );if(!$conn-fetch($res) |empty($ma_worker)/当工号不存在时 ,不能添加exit(alert(工作人员不存在,请输入正确的工号!);location.href=manageradd.php;);elseif(empty($ma_name)exit(a

47、lert(名称不能为空!);location.href=manageradd.php;);elseif(empty($ma_pwd0) | $ma_pwd0!=$_POSTma_repwd)exit(alert(密码不能为空,或两次密码不一致!);location.href=manageradd.php;);elseif($ma_state=1)exit(alert(不能添加超级用户!);location.href=manageradd.php;);else$res=$conn-insertData(manager,array(ma_worker=$ma_worker,ma_name=$ma_

48、name,ma_pwd=$ma_pwd,ma_pwd0=$ma_pwd0,ma_f_date=$ma_f_date,ma_state=$ma_state);$num=$conn-affectedRows($res);if($num)echo location.href=managerlist.php;?5.7 统计管理模块5.7.1营业额统计消费状况 本模块须有超级管理员权限,模块用于显示某年或某月,某日内的消费记录,包括发票编号、房间号、实际收费、实际利润(主要是会员有优惠部分去掉)、付款方式和消费时间等。HYPERLINK http:/localhost/bathroom/moneycou

49、nt.php?select=2消费额统计 本模块同样需要有超级管理员的权限,拥有权限用户可以查看统计,统计分为两个部分分别为实际收费和实际利润两部分,通过使用jpGraph生成柱状统计图,直观显示个个时间内的营业状况。通过jpGraph生成柱状统计的核心代码如下:SetScale(textlin);/设置刻度模式$graph-img-SetMargin(30,30,80,30);/设置边距$graph-title-Set(各年份之间消费额统计(单位:元,年份:2011-2014);$graph-title-setFont(FF_SIMSUN,FS_BOLD);$barplot= new Bar

50、Plot($xiao);/柱形图$barplot-SetLegend(RMB);$barplot-value-show();$barplot-setfillcolor(blue);$barplot-SetColor(red);$graph-Add($barplot);$graph-Stroke();/关闭输出?生成的效果如下图5.6,5.7所示: 图5.6消费额统计图图5.7利润额统计图5.8 其他部分系统提供了通过session_distroy();函数销毁$_SESSION数组,达到退出系统的目的;浴室管理版权信息 就是显示版权人:王帅。6 总结与展望6.1 系统总结Web开发技术的飞速发

51、展促进了新闻发布的普及。目前,越来越多的应用活动开始迁移到Internet中来进行,一种新的应用方式Web应用已成为一种必然的趋势,这种应用方式无疑给管理者和用户带来极大的便利,使以前很多不可能的操作变得异常快捷。本文研究了一种基于数据关联规则的Web系统。其开发主要包括后台数据库的建立、后台管理。系统使用基于PHP的应用程序EclipsePHP作为开发工具,UEStudio为副开发文本,利用Apache服务器运行环境,再结合MySQL建立数据连接关系。在短时间内建立数据库,然后,对数据库进行分析与建立页面,不断修正与改进,直到功能基本实现的可行系统。系统采用了B/S结构,以Web为中心,采用

52、TCP/IP、HTTP传输协议、客户端通过浏览器访问Web以及与Web相连的后台数据库,为浴室的管理提供了较好的工具。总体来说,本系统的设计使用了smarty模板技术具有良好的扩展能力并且便于维护,使用较为简便,对于管理人员来说是较好的管理工具,但是由于时间和其他方面的限制原因,系统还有很多方面需要改进。我相信在以后的学习生活中定能一步一步的去克服这些,使浴室管理系统的功能越来越完善。 6.2 PHP系统展望由于时间的仓促和设计时思路考虑的不够完善在后期还要对系统技术和功能上分别进行完善。增加功能后的系统能够在用户体验和功能上都能上一个台阶,符合更多实际浴室的要求。技术上如添加管理员没有使用A

53、jax验证用户体验不够好;登录时没有放恶意登录,后期还要添加验证码功能,和15分钟内最多登录3次;Ajax文件都是单独使用的效率低,后期要降低冗余。使用jQuery提高JavaScript的效率等等。而在功能上还要添加男女浴室的分类实现增加对更多浴室的实用性;管理员登录记录方便查看管理员的状态;服务预定功能,提供顾客提前预约,会员卡增加其他类型的会员卡,不仅仅是用一次性消费卡,能够让顾客充值;另外当会员卡余额不足时可以用余额和现金一起结账等等。通过修改后的系统必定能符合更多的实际要求。谢辞感谢王锋老师为我的毕业论文指导。对于一开始完全不懂“什么是论文?”的我进行辅导,初稿时又建议我从各方面收集

54、相关的资料,开拓思维,使我的论文在内容上丰富了不少。有些写的粗犷的地方,也经老师的指导慢慢修饰细致了。虽说完成一篇文章不容易,但修改的过程也是不可小视的。有时会觉得很烦,一篇东西有那么多要改的吗?但真正琢磨的时候,发现的确有不少不足的地方。因此,不论是论文还是其他方面,作为我们学生都是要认真对待的。从写论文到修改到完工,我相信我学到的不止是论文怎么完成,还有的是人生哲理无论做什么都要认真对待,好的态度才能获得真正的成功!此外,我也要感谢我的朋友和同学,在写作论文时对我的帮助与关心,谢谢!参考文献1 高洛峰.细说PHPM.电子工业出版社.2008.2 范立锋,于琦,程峰,吕正超,吴新伟,霍晶馨,

55、李世欣.大道phpM.电子工业出版社.2009. 3 Richard York.Beginning JavaScript and CSS Development with jQuery(中文版)M.清华大学出版社.2010.4 MichaelKofler,王建桥,杨涛. MySQL 5权威指南(第三版)M. 人民邮电出版社.2000.5 王石杨英娜. 精通php+mysql应用开发 M. 人民邮电出版社.2006.6 黄梯云.管理信息系统 M.电子工业出版社.1995.7 王俊杰.精通JAVASCRIPT动态网页编程M.人民邮电出版社.2005附录资料:从 XML 生成可与 Ajax 共同使用

56、的 JSON时下,非常流行使用 JavaScript 代码为数据驱动的 Web 应用程序添加互动性。若能将数据编码成 JavaScript Object Notation(JSON)的格式,您就可以更轻松地通过 JavaScript 语言使用它。通过本文,发掘使用 XSLT V2 从 XML 数据生成 JSON 的几种不同方法。几年前,许多开发人员很看好 XML、XSLT、Extensible HTML (XHTML)和其他一些基于标记的语言。现在,Asynchronous JavaScript and XML(AJAX)成了新的热点,人们又将目光转向了使用 JavaScript 代码的数据驱

57、动的富 Internet 应用程序。但是开发人员是否已经消除了 XML 和这一新技术之间的鸿沟呢?当然,您可以在 Web 客户机中使用 XML 解析器来读取数据,但这种做法会带来两个问题。第一,出于安全方面的原因,XML 数据只能从与此页面相同的那个域中读取。这虽然不是什么大的限制因素,但它的确会引起部署方面的问题,还会阻碍 DHTML 小部件的创建。第二,读取和解析 XML 会非常慢。另一种做法是让服务器执行 XML 的解析工作,方法是设置服务器,使之向浏览器发送以 JavaScript 代码或时下流行的 JavaScript Object Notation(JSON)编码的数据。本文将展示

58、如下三种使用 XSLT V2 语言和 Saxon XSLT V2 处理器从 XML 数据生成 JSON 的技巧: 简单编码 通过函数调用加载数据 编码对象 JSON 简介要学习如何将数据编码成 JSON(它只是 JavaScript 的一个子集),最好的方法是从数据开始。清单 1 显示了书籍列表的一个示例 XML 数据集。清单 1. 基本的图形化图书馆 Code Generation in Action JackHerrington Manning PHP Hacks JackHerrington OReilly Podcasting Hacks JackHerrington OReilly

59、这个数据集很简单,只包含三本书,每本书都具有惟一的 ID、书名、作者姓名及出版商的名字。(没错,我只选择了我自己的书作为数据集,但能怨我吗?这些书实在是不可多得的节日和生日礼物。)清单 2 显示了这些数据在 JSON 中的效果。清单 2. JSON 中的示例数据集 id: 1, title: Code Generation in Action, first: Jack, last: Herrington, publisher: Manning , . 方括号 () 表明这是一个数组。大括号 () 则表明这是一个散列表,该散列表由一组名称和值对组成。在本例中,我创建了一个散列表的数组 用来存储这

60、类结构式数据的一种常见方法。另外一点值得注意的是字符串是通过单引号或双引号被编码的。所以,如果我想用单引号编码 OReilly,我就必须使用反斜杠对它进行转义:OReilly。 这让我编写的这个 XSLT 样式表更为有趣了一些。我并未在本例中放上任何日期,但您也可以通过如下两种方法来编码日期。第一种方法是将日期作为字符串,该字符串必须在后面被解析。第二种方法是将日期作为一个对象,比如:publishdate: new Date( 2006, 6, 16, 17, 45, 0 )这段代码将 publishdate 的值设置为6/16/2006 5:45:00 p.m.。简单编码接下来我将陆续介绍

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论