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的白名单。

相关推荐
我不是混子4 分钟前
java浮点数精度问题及解决方案
java·后端
花心蝴蝶.21 分钟前
Java 中的代理模式
java·开发语言·代理模式
风语者66629 分钟前
perl踩坑系列=====正则表达式捕获
开发语言·perl
我科绝伦(Huanhuan Zhou)32 分钟前
银河麒麟V10编译perl-5.42.0,并设置环境变量
开发语言·perl
舒克起飞了36 分钟前
设计模式——单例模式
java·单例模式·设计模式
大飞pkz37 分钟前
【设计模式】享元模式
开发语言·设计模式·c#·享元模式
Java&Develop1 小时前
GitLab-如何基于现有项目仓库,复制出新的项目仓库
java
茉莉玫瑰花茶1 小时前
C++扩展 --- 并发支持库(补充3)
开发语言·c++
一只乔哇噻1 小时前
java后端工程师进修ing(研一版‖day49)
java·开发语言
稻草猫.1 小时前
Java线程安全:volatile与wait/notify详解
java·后端·idea