学习笔记-添加购物车

接口分析

接口

/user/shoppingCart/add

请求方式:post

请求参数

Header 参数

Content-Type : string:请求体将以 JSON 格式传输

Body 参数

  • dishFlavor(可选):

    • 类型:string

    • 描述:表示菜品的口味信息。例如,可能是"麻辣","清淡"等。

  • dishId(可选):

    • 类型:integer <int64>

    • 描述:这是菜品的唯一标识符。通常是一个整数,用于区分不同的菜品。

  • setmealId(可选):

    • 类型:integer <int64>

    • 描述:表示套餐的标识符。通过此字段可以将菜品与套餐进行关联。

响应结果

code:状态码

data:返回的具体数据

msg:提示信息

购物车具体表结构

代码开发

controller

@RestController,表示该类是一个控制器,返回值会自动转换为 JSON 格式

@RequestMapping("/user/shoppingCart"):

定义此控制器所有接口的统一前缀路径

@PostMapping,对应将此方法来映射为POST /user/shoppingCart/add请求接口

@ApiOperation("添加购物车"),Swagger 注解,用于接口文档描述该接口功能为"添加购物车"

@RequestBody,表示将请求体其中的JSON格式数据来反序列化为ShoppingCartDTO对象数据

其中具体逻辑操作还是的对应的去调用service其中具体方法来进行实现即可

service

注意:

在添加物品到购物车其中时,我们需要注意。对于已经添加到购物车其中的商品我们不能进行重复进行添加

如果已经存在了,我们将其相应的数量+1即可,而不是重复的添加数据

如果不存在,对应将该商品进行添加即可

构建shoppingcart对象,用于传递给mapper其中的函数调用

由于创建的是空的ShoppingCart对象,因此我们需要来根据传递所传递过来的对应的DTO对象来将其中所传递信息赋值给对应的ShoppingCart对象

在创建好shoppingcart对象之后,将其中数据来进行实际封装好之后对应的去调用mapper其中的函数方法来完成对应的实际的查询即可

1如果商品信息已经存在购物车里面了,我们只需要将数量加一即可

如果对应的返回的集合不为空,说明查到了对应的数据,此时我们即需要对应将其中数据其中的数量+1即可

如果对应的商品信息不存在,我们则需要来插入一条购物车数据

此处我们优先来执行对应的去查看对应的是餐品还是套餐信息,才能后续进行添加到购物车其中去

通过判断对应的Dishid信息/SetmealID信息来进行判断对应的是餐品信息还是对应的套餐信息

无论套餐/餐品数据,当我们整理好数据之后,即可来对应的通过数据来进行实际的插入即可

Mapper

由于此处sql语言复杂因此我们使用xml文件的方式来对应定义动态sql

其中返回List集合数据,其中泛型指定对应的是Shoppingcart对象

更新购物车其中信息数量

对于已经存在的数据,再次添加到购物车其中我们只需要将其中number信息添加1即可

形参接受对应的购物车实体类对象,对于其中number数量进行+1即可

插入操作

相关推荐
前进的李工2 小时前
Agent 学习笔记 05:系统提示词应该怎么写
笔记·学习·prompt·agent·个人开发·few-shot·ai应用开发
正在走向自律4 小时前
【3/5】人工智能训练师 三级/高级工 考证学习方向:从“独立执行”到“设计、归因与全链条负责”
人工智能·学习·人工智能训练师·注方案设计·数据质控负责人·模型评测与调优辅助·ai训练项目交付
蒸蒸yyyyzwd4 小时前
后端学习笔记三个知识
笔记·八股
CCIE-Yasuo5 小时前
网络安全-学习数据库-Mysql-2
数据库·学习·mysql
La Pulga6 小时前
【FreeRTOS源码学习笔记】任务切换
单片机·mcu·学习·嵌入式·freertos·实时操作系统
Zhao-Jichao6 小时前
AI Prompting for Everyone 课程笔记 - P19 数据分析 Data Analysis
人工智能·笔记·数据分析
li星野7 小时前
【学习记录】逻辑分析仪完全入门:从品牌方案到采样率、存储深度的核心概念解析
学习
旖旎夜光7 小时前
【C++ 基础入门】类和对象(上):封装、对象模型与 this 指针
开发语言·c++·笔记·学习
ACP广源盛139246256737 小时前
选型笔记:Type‑C 扩展坞方案评估|DP1.2 转 HDMI2.0 桥接芯片 GSV2201D@ACP
笔记·硬件架构·硬件工程·视频·国产芯片
WEI_YANG_JU8 小时前
初中数学教学中合作学习的研究与实践
学习