连锁酒店管理系统的设计研究
2022-09-09钱春霞
钱春霞
(德州职业技术学院 山东省德州市 253034)
近年来,随着酒店业规模的不断增长,酒店管理工作的复杂度显著提升,以往的传统酒店管理工作模式已然不能满足实际需要,基于互联网等新兴技术打造酒店管理系统,以提升酒店管理效率和质量则成为业界的研究热点,研究人员对此也进行了大量的研究。如刘映群等人基于物联网技术构建了“智慧酒店管理系统”,实现对酒店设备与门禁的集中控制管理,来提升工作流程效率;王香宇等人则基于数字电视网络技术进行管理系统研究,以期提升管理与服务的质量。但从整体角度来看,目前已有的研究主要针对单个酒店的管理工作,尚缺乏对连锁酒店统一管理系统的研究,因此在本次研究中,将研究中心放在连锁酒店管理系统的研发设计工作中,以解决连锁酒店管理工作的不足。
1 系统基本需求分析
考虑到连锁酒店规模较大,以及经营管理的复杂性,结合以上情况,在本次系统设计工作中,主要考虑以下几方面的需求:
一是连锁酒店“总店”管理员的需求,总店管理员账户应当具备编辑和增删各个分店信息的权限,并能够任意查看数据库上所有会员的相关信息,而不需基于特定需要而在分店数据库中抓取数据。
二是会员账户的需求,会员账户应当具备查阅会员积分以及其他的明细信息。
三是分店账户的需求,分店账户根据其职能的不同,又可分为管理员、前台接待、前台收银和财务四类账户,但这四类账户基于同一登陆界面登陆,而后再执行相应操作。具体来看,这四类账户主要是通过分工合作的方式完成以下几类功能:
(1)设置基本信息,主要针对入住人员、商品和房间的信息维护管理;
(2)住宿管理:主要包括入住登记、结账、打印报表等;
(3)房态转换:对房间状态进行切换;
(4)客人资料管理:对入住人员的资料进行查询与编辑;
(5)房间预订管理和黑名单管理;
(6)执行日结工作。
2 系统功能模块设计
2.1 系统基本架构与开发平台
在系统的软件架构设计环节中,考虑到开发速度、实际应用和后期访问等多方面的需要,在本次系统开发中,基于主流的B/S 架构进行开发,该架构能够遵循TCP/IP 通信协议运行,对于后期的功能扩展而言,也较为有利。
同时,采用三层体系结构模型进行设计,具体层级与功能如表1所示。
表1:平台软件架构层级与功能
在确定使用B/S 架构开发系统软件架构后,对系统的整体网络进行布局,基于各个分店与总部的设备使用情况,以及网络安全等方面的考虑,在整体布局上,采用总部网络与门店网络以互联网相连接的方式,并使用硬件VPN 设备搭建虚拟安全通道,以确保数据传输的效率与安全性。其中,连锁酒店总部的网络采用负载均衡技术,确保数据处理量较高时每台服务器的负载处于相对均衡状态,避免个别服务器因过载而无法运行;各个门店的网络则采用具有三层网络管理的VPN 物理设备进行管理。
另一方面,为实现此开发流程的顺利进行,在本次研究中,采用Eclipse 作为开发工具,Tomcat 和JSP 作为后台服务器,MySQL作为数据库,具体实现采用以下的软硬件平台。
硬件平台如下:
处理器:Intel Core i7 3.50GHz 或更高
内存:16GB
硬盘空间:2TB
显卡:NVIDIA 显示适配器
软件平台如下:
操作系统:Windows 10
开发软件:Eclipse 10.0
数据库:MySQL2019
Web 服务器:Tomcat7.0
2.2 系统数据传输模块设计
由于连锁酒店管理系统在实际应用过程中涉及到大量不同类型的数据信息,且涉及到大量软硬件设备的适配,因此在本环节的设计中,选择基于proxy network 的数据传输方式(图1)进行数据传输,从而提高数据传输的效率。
图1:proxy network 基本原理图
具体来看,基于这种传输方式的数据传输步骤如下:
(1)客户端向服务端发送数据需求封包;
(2)服务端接收后,判断来源与目标的合法性;
(3)如来源与目标均为合法,服务端检查自身是否存在符合要求的数据,如不存在则向网络中的其他设备索取数据;
(4)获得数据后,将数据回传给客户端。
2.3 数据库设计
在本次系统的数据库设计中,主要基于MySQL2019 进行设计,相关数据信息均存储于云端服务器中[9-10],其主要信息表如表2、表3、表4所示。
表2:入住客房人员数据表
表3:房间消费情况数据表
表4:会员相关数据表
考虑到连锁酒店管理系统的数据规模较为可观,因此,为实现对这些数据的有效处理,基于以下几个步骤构建数据库的处理逻辑:
(1)经过各种渠道所得到的数据信息被传输到数据库中;
(2)数据库接收相应数据信息,并进行判断是否已经有效接收,未接收到数据则重新予以接收,如已接收到,则立刻对此进行校验;
(3)如数据未通过校验,则本次数据处理提前结束,相关数据不存储,如数据校验通过,则这些数据将被分类整理,并储存在数据库当中。
同时,为提高数据的安全性,在本次设计中,采用AES加密算法进行数据加密设计,其基本流程图如图2所示。
图2:RSA 融合AES 加密算法的流程图
在此基础上,为确保该加密算法得以有效应用,本次设计中选择DS420j 型储存器,首先对相关数据进行转换,使之变为类型统一的数据,而后将这些数据经由转接口进行输出,最后基于此加密算法进行加密处理。
2.4 系统接口设计
为确保该系统中的数据能够高效率进行转移,在本次研究工作中,硬件接口选用C5402 DSP 片,通过此器件将目标数据予以快速转移和传输,将其传输至不同的数据库之中。同时硬件接口配备信号发生器和信号屏蔽器,其中前者主要通过发送与数据信号频率相同的信号,确保信号发送和接受之间的用时在15s 以下,后者的主要作用则是在特殊情况下屏蔽外界信号,避免数据接口和网络接口互通可能带来的干扰因素。
2.5 其他辅助功能设计
为提高本次设计的“连锁酒店管理系统”的智能化水平,在本次设计的硬件部分中,增加以下几方面的辅助功能:首先是引入摄像头模块,其目的是对入住人员和工作人员进行智能化的人脸识别,实现对相关人员的精准判定。在摄像头模块中,使用ALIENTEK ATK-OV2640 摄像头,其在灵敏度和性能参数方面较具优势。其次是引入基于SPI 接口的高速Wi-Fi 模块电路与RFID 模块电路,这两个模块主要用于提升数据传输效率,可将“有效”吞吐速度提升至兆字节每秒的数量级。三是显示屏,其主要用于连锁酒店管理系统的操作终端,本次选用ALIENTEK 第二代7 寸TFTLCD 电容触摸屏,并使用SSD1963 方案进行驱动,该触摸屏支持多种数据格式,其实用性较高,且相对于传统电阻屏有着更高的操控效果。
3 系统主要功能模块的设计与实现
3.1 系统登录模块
为实现系统登录功能,在系统登录模块的设计中,其代码主要包含显示登录窗体、设置登录窗体和设置登录验证码等功能,在执行相应段的代码后,操作人员即可输入相应的IP 地址后进入系统登录模块中,按照页面提示输入自己的用户名和密码,输入完成后,系统会验证用户名和密码是否正确,如正确则进入操作界面,否则提示“用户名或密码错误,请重新登陆”消息框。
3.2 入住登记模块
为实现入住登记模块的相应功能,其基本流程如下:
(1)当申请入住人员提供个人信息后,由前台工作人员输入相关信息,系统分别到本地和远程的数据库中查找相应记录,判定其是否符合入住条件;
(2)确定申请入住者符合条件后,通过以下条件进行查询,确定其是否为新入住者:
Menbercardno=’输入值参数’ and menberflag=’1’
如不符合该限定条件则系统将其视之为新增的入住者,而后进入到选房间阶段;
(3)设置好入住者的证件信息,并输入相关联系方式信息后,为其选择一个房间;
(4)当入住者缴纳房间的按金后,系统将自动产生一条按金单号,由此入驻登记流程即完成。
3.3 添加消费与结账模块
对于入住人员在入住期间涉及到的消费情况,工作人员的基本处理流程是:
(1)选择产生额外消费的入住人员房间号;
(2)勾选同一入住人员所开的其他房间,并分别输入需要补收的费用;
(3)预览结账单,如总金额正确,则选择付款方式,并根据入住人员的需求确定是否需要打印相关票据。
当然,在实际操作过程中,可能出现因疏忽而将消费项目添加错误的情况。为消除这类错误,则通过以下两种数据库操作方式予以解决:
一是将相应消费项目的金额设置为负值,使之“正负相抵”,以保证该房间的总消费金额仍保持正确,在具体操作时分为以下两个步骤:
(1)Insert into citems values(‘该客人的主键识别码cpk’,’房间号’,’杂项编号’,’金额’,’时间’,’操作人员编号’,oldflag 字段赋值为零);
(2)update ctotal set citems=正确值 where cpk=‘ 该客人的主键识别码cpk’ and croom=’ 房间号’ and oldflag=0。
二是直接删除出现错误的相应消费内容,在具体操作时,分为以下两个步骤:
(1)delete from citems where cpk=‘该客人的主键识别码cpk’ and croom=’房间号’ and itemid=’杂项编号’and htime=’时间’,’操作员工号’ and oldflag=0;
(2)update ctotal set citems=正确值 where cpk=‘ 该客人的主键识别码cpk’ and croom=’ 房间号’ and oldflag=0。
通过应用以上二者其中之一后,错误的消费内容将得以有效处理,而后操作人员即可执行结账打单操作。
3.4 针对会员账户的“积分兑换礼品”模块
在连锁酒店中涉及到一部分会员账户,其在频繁的入住环节中将产生一定的积分,而部分会员则有使用积分兑换礼品的需要。为此,在该模块的设计中,基于以下几个步骤进行写数据表操作,以实现预期功能:
(1)设置remotepflag 赋值为零,而后再根据会员账户的需要,将会员账户所选礼品类型和个数逐条写入本地数据库的scoreconsumes 表中;
(2)系统自动计算出会员账户所选礼品需要的总积分,而后使用已有的scoreavail 字段值与之相减,得到的差值scoreAvailNow 作为该会员账户的可用积分,同时将remotepflag 赋值为零,更新到本地数据表中;
(3)用批量更新的方式更新本地的会员积分数据表,并将更新后的数据信息(主要为会员兑换礼品的所有记录)insert 到总店数据库中,该环节完成后,将本地会员积分数据表中相应记录的remotepflag 赋值为“1”。
在执行以上步骤后,会员积分则兑换成功,且能够与总店的数据库完成数据同步。
3.5 数据同步模块
由于不同类型的数据表之间存在一定的差异,因此数据同步的方式也存在差异,具体来看,数据同步环节中,主要针对以下几个方面进行。
(1)针对入住成员表格的同步。首先在该数据表中检索所有的memberflag,对其中字段值为0、1、2 的记录存入变量listC 当中,而后再对listC 进行检索,判断当前元素的cpk 分量值是否同时存在于总店数据库中的入住成员表内,如存在则执行update,反之则执行insert,执行完毕后,将本地的入住成员数据表中未同步记录的remotepflag 赋值为“1”。
(2)针对入住信息登记表的同步。首先在该表格中查阅remotepflag 赋值为“0”的字段,将这些记录存入变量listM 中,而后对变量listM 进行检索,循环过程中,同时在总店数据库中的入住成员表内查询当前元素的cpk 分量值,以形成insert 语句所需要的参数值,如此循环以得出批量的insert 语句并最终执行;最后,将未同步记录的remotepflag赋值为“1”。
(3)针对会员账户积分表的同步。首先,在该表格中查阅remotepflag 赋值为“0”的字段,将这些记录存入变量listS 中,而后对变量listS 进行检索,循环过程中,同时在总店数据库中的入住成员表内查询当前元素的cpk 分量值,以形成insert 语句所需要的参数值,如此循环以得出批量的insert 语句并最终执行;最后,将未同步记录的remotepflag赋值为“1”。
3.6 会员积分查询模块
在会员积分查询模块中,首先使用hotels 数据表对相关的分店信息进行查询,而后再从总店数据库中的入住成员表、入住信息登记表和会员账户积分表中进行数据信息的检索,其中积分兑换信息主要从会员账户积分表中检索出,主要基于DAO 接口进行。在Action 层中调用Service 层,进而调用DAO 层,在执行相应代码后,将嵌入了格式化标签的检索结果字符串传输给Service 层,最终会传递给Action 层两个属性值,分别为theMemberSearchResult 和theMemberScor eConsumesSearchResult,在得到以上两个属性值后,视图层中也将显示出相应的查询结果。
查询过程对应的SQL 语句如下:
Selectmembercardno,cname,hotelid,htime,giftname,giftscor e,giftnum,scoresum,clerkid from scoreconsumes
where 1=1
order by htime desc
如需要输入查询条件,则可在上述SQL 语句后的where子句后添加相应的查询条件(以“and”为连接词)。
4 系统测试
在系统设计完成后,首先对系统的基本性能进行测试,此阶段的测试工作中,一方面,测试人员部署了多个不同的硬件环境对该系统进行测试,测试结果表明,该系统在不同硬件环境下均有着较好的表现,不存在严重的bug,符合使用要求。另一方面,测试人员构建虚拟环境,模拟500 人同时应用系统情况下系统的响应时间,经测算,在这种高并发的情况下,系统的平均响应时间维持在3.9s 左右,虽然响应时间相对有所延长,但整体仍然能够保证系统的顺畅运行。
在性能测试通过后,测试人员设计了102 个模拟测试案例,这些案例包括系统登录、散客/团队的预订、入住和离店、会员管理、相关单位管理、系统设置等内容,共计进行5 轮测试,测试过程中的问题数量如表5所示。
表5:测试过程中的问题分布
从表中的数据可知,本次设计的连锁酒店管理系统在测试过程中并未出现功能层面的问题,系统中的各项功能均可高效率完成。当然,在测试过程中存在的少量建议性问题也表明该系统在技术层面仍有着一定的提升空间,在后期的系统更新中仍有待于做进一步的优化。
5 结语
整体来看,在本次研究中,通过整合各种计算机技术、互联网技术和电子技术等,初步建设了连锁酒店管理系统,通过对该系统的实际测试表明,该连锁酒店管理系统在功能和性能两方面均通过了测试,能够实现预期功能,证明本次连锁酒店管理系统的研究设计工作取得了初步的成功,其在未来的酒店管理工作中也具有潜在的应用价值。当然,由于客观原因之所限,本次设计的连锁酒店管理系统仍有着一定的提升空间,在今后的研究工作中,有必要进一步引入人工智能技术等的参与,以期进一步提升连锁酒店管理系统的运行效率和质量,推动其实用性的进一步提升。