酒店客人登记

Posted 埋年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了酒店客人登记相关的知识,希望对你有一定的参考价值。

在我们写客人登记的时候,我们必须要想到房间的数量是固定的,所以我们只能新增客人信息,然后把新增的客人信息ID和我们选择的房间ID放在同一张表里,让我们好分辨客人住的是哪间房。

首先我们要的是打开模态框,所以我们要通过一个点击事件把模态框弹出来,然后清空一下form表单,然后因为我们的帐号是自动生成的,所以我们可以通过获取时间的月份日份等等来自动生成帐号,具体的我会通过图片展现出来,然后就是要把可选房间里面的数据给查询出来,然后我们还需要写可选房间的信息添加到已选房间的功能,因为添加房间的样式我会在同一天发上去,所以我就不多说了,我会在图片中给代码注释意思,然后还要有移除功能,移除和添加在视图的样式是差不多的,只是换了一个表获取数据,然后设置里面的数据可以批量删除,最后弹出模态框,具体代码见下图。


然后因为客人登记是要新增客人数据,所以我们点击保存的时候要把我们的数据要保存到数据库里面,要怎么保存呢,首先我们要获取到我们填写的数据,然后判断数据完整性,这里不需要全部判断,只要把我们必须需要的数据进行判断就行了,然后设置数据接口,把我们的获取的数据全部通过参数传递到控制器,然后后面写一下加载事件,最后设置一个变量用来接收从控制器返回的数据。

写完视图的代码后,我们则开始在控制器写代码,首先先写一下移除房间的代码,
先声明一个对象表,用来存放添加到已选房间的房间信息,然后判断我们传递过来的ID是否为空,如果不为空则对传递过来的ID进行分割,然后使用foreach循环遍历传递过来分割后的ID,再把string类型的ID转化为int类型,然后判断我们在添加房间用session保存的数据是否为空,如果不为空,则用对象表获取到session里面的数据,然后用foreach循环遍历对象表里面的数据,如果里面存在我们从视图传递过来的ID,则把它移除掉,找到我们的数据移除后为了不再循环下去,所以我们要使用break终止一下,我们获取的删除后剩下的数据,然后计算它的数据总条数、分页数据和实例化数据,最后再返回数据。

最后写客人登记的代码,我们先实例化一下returnJson,然后使用try…catch…获取异常,然后检查我们传递过来的数据和数据库里面的数据是否出现重复,如果没有重复则把我们的数据保存到应该保存的表中,在我们这里需要先保存押金表和协议单位表,然后我们需要获取到押金表的ID和协议单位表的ID新增应该订单表,然后判断是否新增成功,新增成功的话,在我们新增订单明表的时候,我们需要设置一个变量用来装我们订单表的订单ID,然后获取到我们保存到session里面的房间信息提取出来,把它们的房间状态和预定否改变一下,然后保存修改,为什么要修改呢,因为我们的房间在没有住人的情况下是空净房,但有人住后要变成住房,所以我们要把它的房间状态改变一下,最后获取到订单ID和房间ID,新增一个订单明细表到数据库,然后保存数据,最后返回数据,具体代码如下。

以上是关于酒店客人登记的主要内容,如果未能解决你的问题,请参考以下文章

酒店之王

酒店之王 最大流

酒店前台管理系统

酒店预订可能

P1402 酒店之王 最大流

「LuoguP1402」 酒店之王(最大流