电影院购票管理系统(源码+数据库+万字文档)

项目编码:S001

一、系统介绍

本项目是一个前后端分离的电影院购票系统,包含:

  • 用户端:浏览电影、选座购票、订单与个人中心相关功能。
  • 管理端:影片、分类、影厅、排片、订单、用户、系统配置等后台管理功能。

系统形态:

  • 后端服务:cinema_admin
  • 前端应用:cinema_web
  • 默认联调地址:
    • 后端:http://localhost:8080/api
    • 前端(Vite开发环境): http://localhost:5173

二、角色与权限

当前代码中的账号类型为两类:

  1. 普通用户(User)
  2. 管理员(Admin)

前端通过路由守卫区分用户端和管理端访问;后端使用 JWT 工具类和过滤器。

三、主要功能模块

1)用户端功能

  • 用户认证:注册、登录、用户名/手机号校验
  • 首页与电影:首页聚合、电影列表、电影详情、榜单
  • 购票流程:场次选择、座位选择、订单确认、支付(模拟)
  • 订单能力:订单列表、取消订单、退款申请、支付状态查询
  • 用户中心:个人信息、余额查询与充值、收藏、观影历史

https://wxa.wxs.qq.com/tmpl/pl/base_tmpl.html

2)管理端功能

  • 管理员登录(含验证码接口)
  • 仪表盘统计:今日票房、今日订单、用户统计、近 7 日收入
  • 影片管理:增删改查、状态管理、多分类关联
  • 分类管理:分类增删改查、启停、排序
  • 影厅管理:增删改查、状态管理
  • 排片管理:增删改查、批量排片、状态管理、按日期查询
  • 订单管理:订单列表、详情、取消、退款审核
  • 用户管理:分页查询、详情、启停、信息维护
  • 系统配置:按配置项读写系统参数
  • 文件上传:图片上传并映射静态访问路径
  • 通知能力:邮件参数配置后可发送测试邮件

四、技术栈

后端(cinema_admin

  • Java 1.8
  • Spring Boot 2.6.13
  • Spring MVC
  • MyBatis + XML Mapper
  • MySQL(驱动 5.1.49)
  • JWT(JJWT 0.11.5)
  • JavaMail(邮件测试通知)
  • Maven

前端(cinema_web

  • Vue 3
  • Vite
  • Element Plus
  • Vue Router 4
  • Pinia
  • Axios
  • ECharts(用于后台统计图)

五、项目结构

dianyingyuangoupiao/
├─ cinema_admin/                # 后端
│  ├─ src/main/java/net/jingsky/cinema_admin/
│  │  ├─ controller/            # 接口层
│  │  ├─ service/               # 业务层
│  │  ├─ mapper/                # Mapper接口
│  │  ├─ entity/ dto/ vo/       # 数据对象
│  │  ├─ config/                # Web/JWT等配置
│  │  └─ CinemaAdminApplication.java
│  └─ src/main/resources/
│     ├─ application.yml
│     ├─ mapper/                # MyBatis XML
│     └─ db/                    # SQL脚本
├─ cinema_web/                  # 前端
│  ├─ src/
│  │  ├─ views/                 # 页面
│  │  ├─ layouts/               # 用户/管理布局
│  │  ├─ router/                # 路由与守卫
│  │  ├─ stores/                # Pinia状态
│  │  └─ utils/request.js       # Axios封装
│  ├─ package.json
│  └─ vite.config.js
└─ uploads/                     # 上传目录(运行时生成/使用)

六、数据库说明

SQL 脚本目录:cinema_admin/src/main/resources/db/

主要表:

  • 用户与管理员:useradmin
  • 电影域:moviemovie_categorymovie_category_relation
  • 放映域:hallschedule
  • 订单域:ordersorder_item(另有 orderorder_detail 脚本痕迹)
  • 用户行为:user_favoriteuser_history
  • 系统配置:system_config

七、环境与运行

1)基础环境

  • JDK 1.8+
  • Maven 3.6+
  • MySQL 5.7+
  • Node.js(项目已在较新版本生态下可运行)

2)后端启动

  1. 创建并导入数据库脚本(db 目录下 SQL)。
  2. 修改 cinema_admin/src/main/resources/application.yml 中数据库配置。
  3. 启动 CinemaAdminApplication 或执行:

3)前端启动

进入前端代码目录

npm install
npm run dev

前端默认访问地址由 Vite 输出,为 http://localhost:5173

管理员账号密码:admin/admin123

测试用户账号密码:testuser/user123

八、接口与联调说明

https://wxa.wxs.qq.com/tmpl/pl/base_tmpl.html

  • 前端请求基地址:cinema_web/src/utils/request.js 中配置为 http://localhost:8080/api
  • 当前请求拦截器按用户端/管理端附带 X-User-Id 或 X-Admin-Id
  • 常见接口分组:
    • 用户认证:/user/*
    • 管理员认证:/admin/login/admin/captcha
    • 电影/分类:/movie/*/category/*
    • 影厅/排片:/hall/*/schedule/*
    • 订单:/order/*/admin/order/*
    • 用户行为:/favorite/*/history/*
    • 统计:/admin/statistics/dashboard
    • 系统配置与上传:/admin/config/*/admin/upload/image

九、系统界面截图

图片[1]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[2]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[3]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[4]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[5]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[6]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[7]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[8]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
图片[9]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩

十、源码获取方式

进入【墨林学社】微信公众号私信界面,点击“源码获取”即可获取,需要注意,店铺购买更优惠!

图片[10]-电影院购票管理系统(源码+数据库+万字文档)-鲸云小憩
© 版权声明
THE END
喜欢就支持一下吧
点赞3.5W+ 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容