基于javaweb+mysql的电影院售票购票电影票管理系统(前台、后台)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

前台用户:查看电影列表、查看排版、选座购票、查看个人信息

后台管理员:管理电影排版,活动,会员,退票,影院,统计等

前台:

后台:

技术框架

SpringBoot SpringMVC MyBatis Thymeleaf HTML JavaScript Ajax


    <meta charset="UTF-8"><title>排片管理</title><link rel="stylesheet" type="text/css" href="/css/common.css"/><link rel="stylesheet" type="text/css" href="/css/bootstrap.css"/><link rel="stylesheet" type="text/css" href="/css/font-awesome.min.css"/><link rel="stylesheet" type="text/css" href="/css/adminSchedule.css"/><script src="/js/jquery.js"></script><script src="/js/bootstrap.js"></script><script src="/js/request.js"></script><script src="/js/adminScheduleManage.js"></script></head>
<body>
<div class="main-container"><div class="nav-left-container"><div class="nav-user-container" style="margin-bottom: 50px;"><img class="avatar-lg" src="/images/defaultAvatar.jpg" /><p class="title" id="admin-name"></p></div><ul class="nav nav-pills nav-stacked">
                            <div class="movie-overlay movie-overlay-bg"><div class="movie-info"><div class="movie-title movie-title-padding"title="悲しみの忘れ方 " >悲しみの忘れ方 </div></div></div></div></a><div class="movie-detail movie-detail-strong movie-sale"><a href="https://www.bilibili.com/video/av4026603"class="active" target="_blank" data-act="salePlayingMovie-click" data-val="{movieid:1207959}" >预览</a></div><div class="movie-ver"><i class="imax3d"></i></div></div><div class="movie-item"><a href="https://www.bilibili.com/video/av26650816?from=search&seid=10446136418487302749" target="_blank" data-act="playingMovie-click" data-val="{movieid:1279730}"><div class="movie-poster"><img class="poster-default" src="https://i.loli.net/2019/06/10/5cfe216fa11fa75510.jpg" /><div class="movie-overlay movie-overlay-bg"><div class="movie-info"><div class="movie-title movie-title-padding"
                    tickets1.add(tickets2.get(i));}}for(int i=0;i<movies.size();i++){for(int j=0;j<tickets1.size();j++){ScheduleItem sc=scheduleMapper.selectScheduleById(tickets1.get(j).getScheduleId());if(sc.getMovieId()==movies.get(i).getId()){movieTicketSaled[i]=movieTicketSaled[i]+1;}}}List<MovieWithRateVO> movieWithRateVOS=new ArrayList<>();for(int i=0;i<movies.size();i++){movieWithRateVOS.add(new MovieWithRateVO(movies.get(i)));}for(int i=0;i<movies.size();i++){
     * 语言*/private String language;/*** 上映时间*/private Date startDate;/*** 片长*/private Integer length;/*** 描述* @return*/private String description;/*** 电影状态,0:上架状态,1:下架状态*/private Integer status;/*** 是否想看,0:未标记想看,1:已标记想看*/private Integer islike;
                <button type="button" class="btn btn-primary" id="refund-update-btn">确认</button></div></div></div>
</div><div class="modal fade" id="refundDeleteModal" tabindex="-1" role="dialog" aria-labelledby="refundDeleteModalLabel"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button><h4 class="modal-title">删除退票策略</h4></div><div class="modal-body"><form class="form-horizontal" role="form"><div class="form-group">
    public ResponseVO updateUser(User user){try{accountMapper.updateUser(user);return ResponseVO.buildSuccess();}catch (Exception e){e.printStackTrace();return (ResponseVO.buildFailure("失败"));}}@Overridepublic ResponseVO getAllUser(){try{return ResponseVO.buildSuccess(accountMapper.getAllUser());}catch (Exception e){e.printStackTrace();
     * 新增或修改排片信息的公共前置检查* @param scheduleForm* @return*/ResponseVO preCheck(ScheduleForm scheduleForm){try {SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");// 检查排片时间是否早于当前时间if(scheduleForm.getStartTime().before(new Date())){return ResponseVO.buildFailure(BEFORE_NOW_TIME_ERROR_MESSAGE);}// 处理排片跨天错误if(!simpleDateFormat.format(scheduleForm.getStartTime()).equals(simpleDateFormat.format(scheduleForm.getEndTime()))){return ResponseVO.buildFailure(CROSS_DAYS_ERROR_MESSAGE);}//检查影厅是否存在if(hallServiceForBl.getHallById(scheduleForm.getHallId()) == null){return ResponseVO.buildFailure(HALL_NOT_EXIST_ERROR_MESSAGE);}// 检查电影是否存在Movie movie = movieServiceForBl.getMovieById(scheduleForm.getMovieId());if(movie == null){return ResponseVO.buildFailure(MOVIE_NOT_EXIST_ERROR_MESSAGE);
    public ResponseVO deleteUser(int id){try{accountMapper.deleteUser(id);return ResponseVO.buildSuccess(accountMapper);}catch (Exception e){e.printStackTrace();return (ResponseVO.buildFailure("失败"));}}
}
package com.demo.entity;import java.util.Date;/*** @author fjj* @date 2019/4/28 5:12 PM*/
public class Movie {/*** 电影id*/private Integer id;/*** 电影名称
            }TicketWithCouponVO ticketWithCouponVO=new TicketWithCouponVO();List<TicketVO> ticketsVOToShow=new ArrayList<>();int scheduleId=ticketForm.getScheduleId();ScheduleItem scheduleItem=scheduleService.getScheduleItemById(scheduleId);int movieId=scheduleItem.getMovieId();double total=0;List<Coupon> coupons=couponMapper.selectCouponByUser(ticketForm.getUserId());List<Activity> activities=activityMapper.selectActivitiesByMovie(movieId);for(int i=0;i<numOfTickets;i++){int rowIndex=seats.get(i).getRowIndex();int columnIndex=seats.get(i).getColumnIndex();Ticket ticketToShow=ticketMapper.selectTicketByScheduleIdAndSeat(scheduleId,columnIndex,rowIndex);TicketVO ticketVOToShow=ticketToShow.getVO();ticketsVOToShow.add(ticketVOToShow);total=total+scheduleItem.getFare();}
        }catch (Exception e){e.printStackTrace();return null;}}@Overridepublic ScheduleItem getScheduleItemById(int id) {try {return scheduleMapper.selectScheduleById(id);}catch (Exception e){e.printStackTrace();return null;}}@Overridepublic ResponseVO searchScheduleSevenDays(int hallId, Date startDate) {try {// 处理查询表单的起止时间SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");startDate = simpleDateFormat.parse(simpleDateFormat.format(startDate));
        <div class="content-refund"></div></div>
</div>
<div class="modal fade" id="refundModal" tabindex="-1" role="dialog" aria-labelledby="refundModalLabel"><div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button><h4 class="modal-title">新增退票策略</h4></div><div class="modal-body"><form class="form-horizontal" role="form">
    public String getStarring() {return starring;}public void setStarring(String starring) {this.starring = starring;}public String getType() {return type;}public void setType(String type) {this.type = type;}public String getCountry() {return country;}public void setCountry(String country) {this.country = country;}
    public String getType() {return type;}public void setType(String type) {this.type = type;}public String getCountry() {return country;}public void setCountry(String country) {this.country = country;}
                    <label class="col-sm-2 control-label" for="refund-movie-input"><span class="error-text">*</span>适用电影</label><div class="col-sm-10"><select id="refund-movie-input" class="form-control"></select></div><div class="form-group"><label class="col-sm-2 control-label" for="refund-time-input"><span class="error-text">*</span>时间限制</label><div class="col-sm-10"><input type="text" class="form-control" id="refund-time-input" placeholder="请输入电影开始前多少小时可退票"></div></div><div class="form-group"><label class="col-sm-2 control-label" for="refund-rate-input"><span class="error-text">*</span>手续费百分比</label><div class="col-sm-10"><input type="text" class="form-control" id="refund-rate-input" placeholder="请输入退票需支付票价百分之多少的手续费"></div>
    private static final String HALL_NOT_EXIST_ERROR_MESSAGE = "影厅不存在";private static final String VIEW_COUNT_ERROR_MESSAGE = "排片可见限制数错误";private static final String ID_LIST_NULL_ERROR_MESSAGE = "id列表不可为空";private static final String VIEW_CONFLICT_ERROR_MESSAGE = "有排片信息已对观众可见,无法删除或修改";@Autowiredprivate ScheduleMapper scheduleMapper;@Autowiredprivate MovieServiceForBl movieServiceForBl;@Autowiredprivate HallServiceForBl hallServiceForBl;
 * @date 2019/3/12 6:43 PM*/
@Service
public class MovieServiceImpl implements MovieService, MovieServiceForBl {private static final String SCHEDULE_ERROR_MESSAGE = "有电影后续仍有排片或已有观众购票且未使用";@Autowiredprivate MovieMapper movieMapper;@Autowiredprivate ScheduleServiceForBl scheduleServiceForBl;@Overridepublic ResponseVO addMovie(MovieForm addMovieForm) {try {movieMapper.insertOneMovie(addMovieForm);return ResponseVO.buildSuccess();} catch (Exception e) {e.printStackTrace();return ResponseVO.buildFailure("失败");}}@Overridepublic ResponseVO searchOneMovieByIdAndUserId(int id, int userId) {
















基于javaweb+mysql的电影院售票购票电影票管理系统(前台、后台)相关推荐

  1. 基于javaweb+mysql的+JPA旅行网站旅游管理系统(前台、后台)

    基于javaweb+mysql的+JPA旅行网站旅游管理系统(前台.后台) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适 ...

  2. 基于javaweb+mysql的火车票网上订票系统(前台、后台)

    基于javaweb+mysql的火车票网上订票系统(前台.后台) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/sts等均可配置 ...

  3. 基于javaweb+mysql的农产品水果店销售管理系统

    基于javaweb+mysql的农产品水果店销售管理系统 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适 ...

  4. 基于javaweb+mysql的校园招聘平台招聘管理系统(平台、企业、用户)

    基于javaweb+mysql的校园招聘平台招聘管理系统(平台.企业.用户) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/st ...

  5. [含lw+任务书+中期检查表+辩论PPT+源码等]基于javaweb+mysql数据库实现的大学生助学贷款管理系统[包运行成功]

    <基于javaweb+mysql数据库实现的大学生助学贷款管理系统>该项目含有源码.论文等资料.配套开发软件.软件安装教程.项目发布教程等,项目包运行成功,下面是项目功能介绍 使用技术: ...

  6. 基于javaweb+mysql的在线购物商城shop系统(仅前台购物)

    基于javaweb+mysql的在线购物商城shop系统(仅前台购物) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适用 ...

  7. 基于javaweb的在线电影售票系统设计和实现(java+springboot+ssm+mysql+jsp)

    基于javaweb的在线电影售票系统设计和实现(java+springboot+ssm+mysql+jsp) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myecl ...

  8. 基于javaweb+mysql的高校学生会社团管理系统(前台、后台)

    基于javaweb+mysql的高校学生会社团管理系统(前台.后台) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/sts等均可 ...

  9. 基于javaweb+mysql的个人日记管理系统

    基于javaweb+mysql的个人日记管理系统 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/sts等均可配置运行 适用 课程 ...

最新文章

  1. tkinter实现文件加密和解密
  2. QPS、TPS、RT、并发数、吞吐量理解和性能优化深入思考
  3. SQL SERVER SQLOS的任务调度--微软亚太区数据库技术支持组 官方博客
  4. 系统出现“NTLDR is missing press any key to restart”问题解决方案
  5. 数据结构--二叉树、满二叉树、完全二叉树
  6. Python用泰勒公式模拟函数
  7. 异常与锁的释放(synchronized )
  8. 在ASP.NET Core Web API上使用Swagger提供API文档
  9. [Markdown语法][快速入门][CSDN]
  10. I/O多路复用——Reactor模式
  11. kvm 虚拟机常用命令
  12. vue中配置不同的代理同时访问不同的后台
  13. Clob,Blob,InputStream,byte 互转
  14. C语言编程齿轮轮廓线坐标,c语言程序实现齿轮基本参数几何尺寸计算.pdf
  15. S-PTAM:Stereo Parallel Tracking and Mapping论文笔记
  16. 电脑状态栏中,声音图标不见了怎么办?三招帮你找回!
  17. 浏览器被劫持如何恢复?
  18. [FirefoxOS_调试]Firefox OS调试开发系列视频教程
  19. Revit 绘制幕墙系统
  20. 《操作系统-真象还原》07. 中断

热门文章

  1. 脑机接口等在线学习课堂视频分享(供下载)
  2. 哈尔滨工业大学2023春 计算机系统大作业 程序人生-Hello’s P2P
  3. python爬虫开发数据库设计_基于Python的DBLP数据库爬虫系统
  4. QT 添加图片资源 显示图片
  5. app被下架以后多久能上线?重新上架时间汇总
  6. python实现水滴筹页面的数据统计
  7. 连表查询join使用方法详解
  8. 硬仗酒全线升级,新概念新玩法新风尚
  9. 1094 谷歌的招聘(JAVA)
  10. 一周Spring Boot + VUE 入门(2) --VUE