Skip to content

基于SSH的食堂管理兼自助点单系统...

Notifications You must be signed in to change notification settings

why777s/canteen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

食堂管理兼学生自助点单系统

(一名JavaEE初学者写的小项目 —— by why777s)

一. 功能设计

学生:

  • 查阅菜单
  • 点某个餐品可以查看其评论
  • 点某个餐品对它进行评论
  • 点单(刚下的单状态属性的值是"NEW")
  • 查询自己的订单

普通员工:

  • 处理学生用户发来的订单,其中包括
  • 接受订单,订单状态自动从"NEW"变成"READY"
  • 若餐品已烹饪完成,修改订单状态为"FINISH",并“通知”学生前来取餐
  • 查阅菜单
  • 查看菜品评论

管理员:

  1. 基本查询
  • 食堂查询
  • 查阅菜单(根据选择的楼层查看各窗口的餐品信息)
  • 查看评论
  1. 食堂操作
  • 窗口修改(窗口名称)
  • 餐品修改(根据选择的楼层和窗口,对餐品名和餐品价格修改)
  1. 订单操作
  • 订单查询(查询已完成的订单)
  • 订单统计(统计每日营业额等,再议)

二. 数据库设计

管理员(管理员id,管理员姓名,食堂id,管理员密码)
学生(学生id,学生名,学生密码)
食堂(食堂id,食堂名,食堂订单开放状态)
楼层(楼层id,楼层(子食堂)名,食堂id)
窗口(窗口id,窗口名,楼层id)
餐品(餐品id,餐品名,餐品价格,窗口id)
订单(订单id,学生id,下单时间,订单状态)
点菜单(订单id,餐品id,餐品数量) 外键:订单id,餐品id
评论(评论id,餐品id,学生id,评论内容,评论时间)
普通员工(员工id,员工密码,员工姓名,员工性别)

三. 说明事项

  1. 有关订单状态的说明: 订单状态分为new,ready,finish,分别代表未处理新来的订单,正在烹饪的订单,已完成的订单。 用户刚下单时,订单处于未处理订单,管理员可以“接受”未处理订单,使其状态变成“正在处理”,当烹饪完毕,状态变更为“烹饪完毕”,通知学生取餐 管理员订单查询和订单统计时,查询的是已经完成的订单,和学生新下的以及正在烹饪中的订单区分。

  2. 订单表 取名为 order_stu 而非order 原因:order是mysql的保留字,表名和列名等不能是order,不修改会报错,报错内容大致如下: SQL Error: 1064, SQLState: 42000 SQLGrammarException: could not extract ResultSet

  3. “通知”学生取餐 Ajax 每隔几秒就调用ajax,向action传订单id,acton处理返回该订单的状态,如果该订单状态为FINISH,则弹窗(只弹一次)

  4. Quartz触发器 在规定时间内(每天的10:00-13:00,16:00-19:00),学生才能订餐,其余时间关闭点单系统

About

基于SSH的食堂管理兼自助点单系统...

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published