Java项目-瑞吉外卖Day5

视线新增套餐功能:

创建SetmealDish,SetmealDto类,与相关的mapper,service,serviceImpl,controller类。

Setmeal表示套餐,SetmealDish表示套餐对应的菜品。

交互过程:

前端请求,点击菜品分类查看对应菜品:

后端代码:

前端效果:

点击保存按钮后发送的请求:

携带的json数据:

后端响应,使用SetmealDto接收:

编写service层方法,对两个表setmeal,setmeal_dish进行添加套餐和套餐菜品。

后端调用:

实现套餐分页查询:

前端请求:

后端代码,跟菜品分类基本一模一样。

想要在前端展示套餐分类,对应的是categoryName属性。

可以看到setmeal表中没有对应的属性,只有category_id属性。

所以需要根据category_id查询到categoryName字段并保存到setmealDto对象当中,再与前端交互。

实现删除套餐:

查看前端请求

后端对应:

实现的删除方法,删除setmeal表和setmeal_dish表中的数据:

实现短信发送:

导入maven坐标:

实现User类及相关mapper类service类controller类,并添加工具类SMSUtils和ValidateCodeUtils。

发送验证码后端代码,使用ValidateCodeUtils工具类生成验证码,使用log.info打印在控制台。实际生产情况中是使用SMSUtils根据阿里云向手机号发送验证码,由于需要认证,所以此处简化。将code存入session中。

实现登陆功能后端代码,使用Map对接请求中的属性(也可以使用DTO类,此处偷懒):

流程就是判断验证码是否正确,判断用户是否存在,最后将user存入到session中,不然前端页面跳转后会被LoginCheckFilter拦截。

修改LoginCheckFilter类,加入user的白名单。

相关推荐
野犬寒鸦几秒前
力扣hot100:旋转图像(48)(详细图解以及核心思路剖析)
java·数据结构·后端·算法·leetcode
金融数据出海4 分钟前
黄金金融期货数据API对接技术文档
开发语言·金融·github
七夜zippoe9 分钟前
AI+Java 守护你的钱袋子!金融领域的智能风控与极速交易
java·人工智能·金融
诗书画唱20 分钟前
【前端教程】JavaScript 实现图片鼠标悬停切换效果与==和=的区别
开发语言·前端·javascript
岁忧21 分钟前
(LeetCode 面试经典 150 题) 200. 岛屿数量(深度优先搜索dfs || 广度优先搜索bfs)
java·c++·leetcode·面试·go·深度优先
一枝小雨30 分钟前
【C++】Vector完全指南:动态数组高效使用
开发语言·c++·笔记·vector·学习笔记·std库
诗书画唱39 分钟前
【前端教程】JavaScript DOM 操作实战案例详解
开发语言·前端·javascript
jiaway1 小时前
【C语言】第一课 环境配置
c语言·开发语言
liliangcsdn1 小时前
结合prompt分析NodeRAG的build过程
java·服务器·人工智能·数据分析·知识图谱
黑色的山岗在沉睡1 小时前
LeetCode 189. 轮转数组
java·算法·leetcode