Java项目-瑞吉外卖Day6

导入用户地址功能,为用户添加地址:

添加AddressBook实体类,创建相关service,mapper,serviceImpl,controller类。

controller类直接使用的资料提供的代码。

实现菜品展示移动端开发:

看到前端发送了两个请求,由于第二个请求没有定义后端接口,所以页面无法正常显示。

暂时改成静态资源

显示效果:

由于显示在前端的菜品没有口味信息,修改dishController中的list方法。

将返回的元素类型改为DishDto,并查询dish对应的dish_flavor表对dishDto进行赋值。

修改后发现移动端无法显示套餐,于是在setmealController添加list对应接口。

实现添加购物车功能:

建立ShoppingCart实体类及相关service,serviceImpl,mapper,controller类。

后端代码:

思路是获取前端的shoppingCart,其实是dish或setmeal,判断时菜品还是套餐,最后保存到shopping_cart表中。这里有一些bug,判断shopping_cart是否有相同菜品时,只是根据id查询,并不包含口味信息,会导致不同口味的同一菜品计入到相同的shopping_cart中。

PS:减少购物车菜品还没实现。

实现查看购物车功能:

后端代码:

根据用户id查询购物车返回,根据createTime排序。所以为shoppingCart实体类的属性添加注解。

并修改元注解类,因为shoppingCart实体类没有除了createTime以外其他的属性。

实现清空购物车功能:

实现用户下单功能:

创建实体类order和详细订单表orderDetail。并创建相应相关service,serviceImpl,mapper,controller类。

图略

前端请求

负载

后端对接:

实现submit方法:

思路:

前端传过来的数据包含addressBook

先获取当前用户Id,查看用户的购物车。再根据用户id查看用户地址数据,判断是否相同。

构造orderDetails数据和orders数据。保存进表并删除用户的购物车。

相关推荐
m0_716255004 分钟前
第一部分 数据开发 面试全题 模拟口述版(自问自答)
java·数据库·面试
L-影8 分钟前
常见的 ORM 工具
开发语言·数据库·fastapi·orm
飞Link19 分钟前
构筑你的数字第二大脑:Obsidian 深度解析与配置指南
开发语言·python
SuperherRo27 分钟前
服务攻防-Java组件安全&FastJson&高版本JNDI&不出网C3P0&编码绕WAF&写入文件CI链
java·安全·fastjson·waf·不出网·高版本·写入文件
丑八怪大丑32 分钟前
SQL数据类型
java·数据库·sql
Nyarlathotep011339 分钟前
并发集合类(3):LinkedBlockingQueue
java·后端
李温候43 分钟前
互联网大厂Java求职者面试全攻略
java·数据库·面试·orm·构建工具·web框架·互联网大厂
摇滚侠1 小时前
软件开发外包项目组,如何提高代码质量和开发效率
java·开发语言·前端·ide·intellij-idea
sparEE1 小时前
c++面向对象:对象的赋值
开发语言·c++