电影院的选座问题的思考

简介: 1.需求分析  后台管理:提供电影院的名字,地址,票价,座位的排布(含空座位),上映时间(含多个)等  前台选座管理:用户可以选择不通的时间,不同的座位,多个座位,选中且放弃的情况,然后支付,出现二维码2.思考(先提供已经完成的部分,支付部分尚未完成)    就两个页面,一个是表单提交(管理页面),一个是选座页面,后面还有支付页面尚未完成。

 

1.需求分析

  后台管理:提供电影院的名字,地址,票价,座位的排布(含空座位),上映时间(含多个)等

  前台选座管理:用户可以选择不通的时间,不同的座位,多个座位,选中且放弃的情况,然后支付,出现二维码

2.思考(先提供已经完成的部分,支付部分尚未完成)

  

  

就两个页面,一个是表单提交(管理页面),一个是选座页面,后面还有支付页面尚未完成。

部分分解:

1.座位排列的渲染。算法:后台 row*col ,在选座页面的是通过两层for 循环,循环 table 里面的 tr 和td 将所有座位完成。

 我这里采用的是ejs 的模版渲染。当然可以用js 拼字符串的,循环table的

2.空座位的处理,也就是某个角落没有座位。需要提出来,单独处理。后台,需要配置好数据,和前端的代码一起配合处理页面。

思路:循环table 里的td,求出td的所在的row 和col,然后 拼成字符串 **排**列,比对从后台传来的字符串,这个字符串也是循环后台配置空的数组得来的。两个字符串如果相等的话,那么将这个座位置空(追加class)。

3.已经定过座位的位置。同样是通过的循环td,比对后台传来的 数组中的数据,如果相等则追加class。如图

这里的做法和上面的一样,我目前还没找到好的方法,这样的做法是比较不妥的。最好的做法应该在循环tabel 的时候,就应该处理这些数据,而不应该先做出表格,再处理表格。

(col 不加1)

3.选座位,考虑到选多个座位,然后取消某些座位的情况。处理如下

细节做法:压入数组,和删除数组的某个元素。 这里的添加一个数组的remove的方法。 (col 不加1 )

4.选座位后,座位和别人冲突的处理

前端处理大部分难点就是上面的部分。下面是后台处理的部分:

后台处理:

后台处理就是存取数据库的部分。我后台用的是 nodejs + express + mongodb。

nodejs 生成电影院数据的接口如下:

 

nodejs 处理选座位的接口如下:

惭愧:因为后端接口是自己写,前端渲染数据也是自己写的,知识有所欠缺,所以代码就是很糟糕的说,欢迎喷啊,各位有啥好的想法和做法,也可以和我交流。

目录
相关文章
|
8月前
|
Java 关系型数据库 MySQL
餐厅收银系统|基于SSM实现餐厅收银系统
餐厅收银系统|基于SSM实现餐厅收银系统
|
SQL 安全 JavaScript
基于JavaWeb的电影院在线选座订票管理系统
基于JavaWeb的电影院在线选座订票管理系统
725 0
基于JavaWeb的电影院在线选座订票管理系统
|
7月前
|
存储 Java 关系型数据库
基于SSM框架的电影院售票网站
基于SSM框架的电影院售票网站
基于SSM框架的电影院售票网站
|
8月前
|
小程序 JavaScript Java
影院购票|电影院订票选座小程序|基于微信小程序的电影院购票系统设计与实现(源码+数据库+文档)
影院购票|电影院订票选座小程序|基于微信小程序的电影院购票系统设计与实现(源码+数据库+文档)
282 0
|
8月前
|
监控 小程序 数据可视化
HIS预约挂号系统源码 看病挂号快人一步
技术架构:uni-app+.net+SqlServer 2012+微信公众号、支付宝小程序。
101 2
|
数据采集 机器人
八爪鱼RPA帮你搞定房屋征收管理信息系统数据录入
八爪鱼rpa可以自动完成重复繁琐的工作,大幅提升工作效率。例如,在房屋征收管理中,八爪鱼rpa可以自动将大量的房屋征收信息准确地录入到系统中,节省了大量的时间和精力。
[强网拟态 2021]拟态签到题
[强网拟态 2021]拟态签到题
77 0
|
Java 数据库连接 开发工具
基于SSM的电影院购票系统的设计与实现
大家好,今天给大家带来一款SSM的电影院售票系统,非常不错的一个项目,学习​javaweb编程必备。
125 0
|
设计模式 数据可视化 Java
肯德基点餐系统
肯德基点餐系统
肯德基点餐系统
J3
|
前端开发 数据库
快捷餐饮之店家后台厨艺秀实现
快捷餐饮之店家后台厨艺秀实现
J3
135 0
快捷餐饮之店家后台厨艺秀实现