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

相关推荐
SQL-First布道者2 分钟前
全面解构传统持久层框架,拥抱真正的 SQL-First
java·数据库·spring boot·sql·spring·mybatis·spring jdbc
归去来 兮10 分钟前
Python爬虫爬取数据案例
开发语言·爬虫·python
ShineWinsu11 分钟前
对于 C++:C++20中Concept(概念) 与 Coroutine(协程)的解析
linux·开发语言·网络·c++·c++20·epoll
ly768912 分钟前
C 语言从入门到进阶:语法、指针、内存管理与工程实践详解
c语言·开发语言
quantdash_cc29 分钟前
历史数据断层与REST请求慢到崩溃?QuantDash高性能量化数据API终极解决方案
开发语言·python·缓存·php·量化·quantdash
breeze jiang29 分钟前
Next.js 16 App Router 实战:从 About、Blog 动态路由到全局 404
开发语言·javascript·ecmascript
熊野君33 分钟前
Prompt / RAG / 规则 / Skills —— 定位、协作与实现路线
开发语言·python
小蒜学长35 分钟前
vue旅游攻略网站(代码+数据库+LW)
java·数据库·vue.js·spring boot·后端·旅游
凤山老林43 分钟前
轻量级规则引擎落地:Spring Boot 集成 LiteFlow 实现动态业务编排与热更新
java·spring boot·后端·规则引擎·liteflow
夏贰四1 小时前
管控数据加载调度如何规避任务冲突?数据加载运维监控体系该如何搭建?
java·大数据·运维