Java 实战项目之在线点餐系统的实现流程
作者:qq_1334611189 发布时间:2022-08-05 04:11:35
标签:Java,在线点餐系统,实战
一、项目简述
功能包括: 前台实现:用户浏览菜单、菜品分类筛选、查看菜单详 情、添加购物车、购物车结算、会员券、个人订单查询等 等。 后台实现:餐系管理、菜品管理、订单管理、系统管理、 酉己备员管理等。 系统分为:高或管理员、顾客、厨师、配送员等等。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。
后台用户信息控制层:
@RestController
@RequestMapping("/backstage/user")
public class UserManageController {
@Autowired
private UserService userService;
/**
* 根据页面的条件查找用户列表
* @param vo
* @return
*/
@RequestMapping("/list")
public String findUserListByPage(UserVo vo){
LayuiTableDataResult userListByPage = userService.findUserListByPage(vo);
return JSON.toJSONString(userListByPage);
}
/**
* 后台添加用户
* @param vo
* @return
*/
@RequestMapping("/add")
public String addUser(UserVo vo){
Map<String, Object> map = userService.addUser(vo);
return JSON.toJSONString(map);
}
/**
* 后台修改用户信息
* @param vo
* @return
*/
@RequestMapping("/modify")
public String modifyUserBackstage(UserVo vo){
Map<String, Object> map = userService.modifyUserBackstage(vo);
return JSON.toJSONString(map);
}
/**
* 重置用户密码
* @param userId
* @return
*/
@RequestMapping("/resetPassword")
public String resetPassword(Long userId){
Map<String, Object> map = userService.resetPassword(userId);
return JSON.toJSONString(map);
}
/**
* 查找该用户所拥有的角色
* @param userId
* @return
*/
@RequestMapping("/findRole")
public String findRoleListByUserId(Long userId){
LayuiTableDataResult roleListByUserId = userService.findRoleListByUserId(userId);
return JSON.toJSONString(roleListByUserId);
}
/**
* 为用户授权角色
* @param roleIds
* @param userId
* @return
*/
@RequestMapping("/grantRole")
public String grantRole(String roleIds, Long userId){
Map<String, Object> map = userService.grantRole(roleIds, userId);
return JSON.toJSONString(map);
}
/**
* 删除用户信息
* @param userId
* @return
*/
@RequestMapping("/delete")
public String deleteUser(Long userId){
Map<String, Object> map = userService.deleteUser(userId);
return JSON.toJSONString(map);
}
}
用户地址管理控制器:
/**
* 用户地址管理控制器
*/
@RestController
@RequestMapping("/address")
public class AddressController {
@Autowired
private AddressService addressService;
/**
* 查找该角色的所有地址信息,返回LayUI数据表格格式
*/
@RequestMapping("/list")
public String findAddressListByUserId(AddressVo vo, HttpSession session){
vo.setUserId(((UserEntity) session.getAttribute("userLogin")).getUserId());
LayuiTableDataResult addressListByUserId = addressService.findAddressListByUserId(vo);
return JSON.toJSONString(addressListByUserId);
}
/**
* 查找该角色的所有地址信息,返回Map格式
* @param session
* @return
*/
@RequestMapping("/listByUser")
public String findAddressListByUser(HttpSession session){
Map<String, Object> map = addressService.findAddressListByUser(session);
return JSON.toJSONString(map);
}
/**
* 添加地址
* @param vo
* @return
*/
@RequestMapping("/add")
public String addAddress(AddressVo vo, HttpSession session){
Map<String, Object> map = addressService.addAddress(vo, session);
return JSON.toJSONString(map);
}
/**
* 修改地址
* @param vo
* @return
*/
@RequestMapping("/modify")
public String modifyAddress(AddressVo vo, HttpSession session){
Map<String, Object> map = addressService.modifyAddress(vo, session);
return JSON.toJSONString(map);
}
/**
* 删除地址
* @param addressId
* @return
*/
@RequestMapping("/delete")
public String deleteAddress(Long addressId){
Map<String, Object> map = addressService.deleteAddress(addressId);
return JSON.toJSONString(map);
}
}
前台用户信息控制层:
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
/**
* 用户登录
* @param username
* @param password
* @param session
* @return
*/
@ResponseBody
@RequestMapping("/login")
public String login(String username, String password, HttpSession session){
Map<String, Object> map = userService.login(username, password, session);
return JSON.toJSONString(map);
}
/**
* 退出登录
* @param session
* @return
*/
@RequestMapping("/exit")
public String exit(HttpSession session){
userService.exit(session);
return "redirect:/login.html";
}
/**
* 校验用户注册输入的用户名是否存在
* @param username
* @return
*/
@ResponseBody
@RequestMapping("/checkUsername")
public String checkUsername(String username){
Map<String, Object> map = userService.checkUsername(username);
return JSON.toJSONString(map);
}
/**
* 用户注册
* @param vo
* @param session
* @return
*/
@ResponseBody
@RequestMapping("/register")
public String register(UserVo vo, HttpSession session){
Map<String, Object> register = userService.register(vo, session);
return JSON.toJSONString(register);
}
/**
* 查询登录用户的个人资料
* @param session
* @return
*/
@ResponseBody
@RequestMapping("/findUserByUserId")
public String findUserByUserId(HttpSession session){
Long userId = ((UserEntity) session.getAttribute(SystemConstant.USERLOGIN)).getUserId();
Map<String, Object> userByUserId = userService.findUserByUserId(userId);
return JSON.toJSONString(userByUserId);
}
/**
* 查询某个用户的个人资料
* @param vo
* @return
*/
@ResponseBody
@RequestMapping("/modifyUserInfo")
public String modifyUserInfo(UserVo vo, HttpSession session){
Map<String, Object> map = userService.modifyUserReception(vo, session);
return JSON.toJSONString(map);
}
/**
* 用户修改密码
* @param oldPassword
* @param newPassword
* @param session
* @return
*/
@ResponseBody
@RequestMapping("/modifyPassword")
public String modifyPassword(String oldPassword, String newPassword, HttpSession session){
Map<String, Object> map = userService.modifyPassword(oldPassword, newPassword, session);
return JSON.toJSONString(map);
}
}
优惠券商城控制器:
/**
* 优惠券商城控制器
*/
@RestController
@RequestMapping("/reception/ticket")
public class TicketController {
@Autowired
private TicketService ticketService;
/**
* 查询所有上架的优惠券类别
* @return
*/
@RequestMapping("/findAll")
public String findAllTicketOnShelf(){
Map<String, Object> map = ticketService.findAllTicketOnShelf();
return JSON.toJSONString(map);
}
/**
* 领取优惠券
* @param ticketTypeId
* @param session
* @return
*/
@RequestMapping("/receiveTicket")
public String receiveTicket(Long ticketTypeId, HttpSession session){
Map<String, Object> map = ticketService.receiveTicket(ticketTypeId, session);
return JSON.toJSONString(map);
}
/**
* 查询某个用户的优惠券记录
* @param session
* @return
*/
@RequestMapping("/findByUser")
public String findByUser(HttpSession session){
Map<String, Object> map = ticketService.findByUser(session);
return JSON.toJSONString(map);
}
/**
* 查询该用户未使用的优惠券
* @param session
* @return
*/
@RequestMapping("/findByUserUnuse")
public String findByUserUnuse(HttpSession session){
Map<String, Object> map = ticketService.findByUserUnuse(session);
return JSON.toJSONString(map);
}
/**
* 根据优惠券编号查询优惠券
* @param ticketId
* @return
*/
@RequestMapping("/findTicketById")
public String findTicketById(Long ticketId){
Map<String, Object> map = ticketService.findTicketById(ticketId);
return JSON.toJSONString(map);
}
}
购物车控制器:
/**
* 购物车控制器
*/
@RestController
@RequestMapping("/reception/shopcart")
public class ShopcartController {
@Autowired
private ShopcartService shopcartService;
/**
* 添加菜品SKU到购物车
* @param session
* @param numCount
* @param skuId
* @return
*/
@RequestMapping("/add")
public String addShopcart(Long skuId, Integer numCount, HttpSession session){
Map<String, Object> map = shopcartService.addShopcart(skuId, numCount, session);
return JSON.toJSONString(map);
}
/**
* 查找该用户下的所有购物车信息
* @param session
* @return
*/
@RequestMapping("/findByUserId")
public String findAllShopcartByUserId(HttpSession session){
Map<String, Object> map = shopcartService.findAllShopcartByUserId(session);
return JSON.toJSONString(map);
}
/**
* 新增该用户某个SKU菜品的数量
* @param shopcartId
* @return
*/
@RequestMapping("/addNumCountOne")
public String addNumCountOne(Long shopcartId){
Map<String, Object> map = shopcartService.addNumCountOne(shopcartId);
return JSON.toJSONString(map);
}
/**
* 减少该用户某个SKU菜品的数量
* @param shopcartId
* @return
*/
@RequestMapping("/reduceNumCountOne")
public String reduceNumCountOne(Long shopcartId){
Map<String, Object> map = shopcartService.reduceNumCountOne(shopcartId);
return JSON.toJSONString(map);
}
/**
* 删除购物车的某一个条目
* @param shopcartId
* @return
*/
@RequestMapping("/delete")
public String deleteShopcart(Long shopcartId){
Map<String, Object> map = shopcartService.deleteShopcart(shopcartId);
return JSON.toJSONString(map);
}
}
来源:https://blog.csdn.net/m0_59687645/article/details/121436127


猜你喜欢
- 新建Rest服务接口:[ServiceContract]public interface IService1{ &nb
- 循环结构分两大类,一类是当型,一类是直到型。当型:当布尔值表达式条件为True时,反复执行某语句,当布尔表达式的值为False时才停止循环,
- 手机一般有两种类型的输入设备。一种是键盘类型的输入设备,通常它包含电源键和音量下键。另一种是触摸类型的输入设备,触摸屏就属于这种类型。键盘类
- 在一些电子商务网站上经常能够看到一些滚动的广告条,许多软件在首次使用时也有类似的广告条,如图:其实在github上有实现这种效果的控件,不过
- 前言当某个事件需要被监听的时候,我们需要去做其他的事前,最简单的方式就是将自己的业务 方法追加到该事件之后。但是当有N多个这样的需求的时候我
- 本文根据java开发人员在编码过程中容易忽视或经常出错的地方进行了整理,总结了十个比较常见的低级错误点,方便大家学习。1、不能用“==”比较
- 实例描述现有某班学生的两份成绩,两份成绩中存在一些不一致的记录。需借助于编程方法找出这些不一致的记录。实例代码using System;us
- 几种序列化技术:1)二进制序列化保持类型保真度,这对于在应用程序的不同调用之间保留对象的状态很有用。例如,通过将对象序列化到剪贴板,可在不同
- 一、延迟加载:LazyLoading使用延迟加载,关联的实体必须标注为virtual。本例是标注Destination类里的Lodgings
- 本文源码:GitHub·点这里 || GitEE·点这里一、Ehcache缓存简介1、基础简介EhCache是一个纯Java的进程内缓存框架
- 本文实例为大家分享了android实现录屏小功能的具体代码,供大家参考,具体内容如下思路android实现录屏功能有两种方案,一种是直接使用
- java Mybatis存进时间戳封装了一个实体类,里面有个字段 Integer createTime。要利用这个实体类将一个时间戳存进数据
- 强指针和弱指针基础android中的智能指针包括:轻量级指针、强指针、弱指针。强指针:它主要是通过强引用计数来进行维护对象的生命周期。弱指针
- 本文实例为大家分享了Android自定义view完成车载可调整轨迹线的具体代码,供大家参考,具体内容如下同事做的view,拿过来做个记录。/
- 将Excel转为PDF格式时,通常情况下转换出来的PDF页面都是默认的宽度大小;如果Excel表格数据的设计或布局比较宽或者数据内较少的情况
- 本文为大家分享了C#导入导出Excel数据的具体代码,供大家参考,具体内容如 * :对于实体类对象最好新建一个并且继承原有实体类,这样可以将类
- 本文实例讲述了Java之JFrame输出Helloworld的方法。分享给大家供大家参考。具体如下:JAVA的GUI程序的基本思路是以JFr
- 调用示例: 执行效果: 2.实现代码:/// <summary> 2 &
- 一、导包本文的敏感词过滤器用在SpringBoot项目中,因此,首先需要在pom.xml文件中导入如下依赖<dependency>
- spring中事务处理原理 利用aop生成代理对象执行带有Transactional事务注解的