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数据。保存进表并删除用户的购物车。

相关推荐
侠客行031715 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读
蛇皮划水怪15 小时前
深入浅出LangChain4J
java·langchain·llm
灰子学技术16 小时前
go response.Body.close()导致连接异常处理
开发语言·后端·golang
老毛肚16 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis
风流倜傥唐伯虎17 小时前
Spring Boot Jar包生产级启停脚本
java·运维·spring boot
二十雨辰17 小时前
[python]-AI大模型
开发语言·人工智能·python
Yvonne爱编码17 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
Re.不晚17 小时前
JAVA进阶之路——无奖问答挑战1
java·开发语言
你这个代码我看不懂17 小时前
@ConditionalOnProperty不直接使用松绑定规则
java·开发语言
pas13617 小时前
41-parse的实现原理&有限状态机
开发语言·前端·javascript