sky-take-out chapter 3

菜品管理

公共字段自动填充

(1)问题分析

  • 在有些业务表中存在公共字段,例如create_time,create_user,update_time,update_user
  • 每次赋值都要手动set很多次,代码冗余,不便于后期维护

(2)实现思路

  • 自定义注解AutoFill,用于标识需要进行公共字段自动填充的方法
  • 自定义切面类AutoFillAspect,统一拦截加入了AutoFill注解的方法,通过反射为公共字段赋值
  • 在Mapper的方法上加入AutoFill注解

技术点:枚举、注解、AOP、反射

(3)代码开发
(4)功能测试

新增菜品

(1)需求分析和设计
业务规则:

  • 菜品名称必须是唯一的
  • 菜品必须属于某个分类下,不能单独存在
  • 新增菜品时可以根据情况选择菜品的口味
  • 每个菜品必须对应一张图片

接口设计

  • 根据类型查询分类(已完成)
  • 文件上传 (浏览器->后端服务->阿里云OSS
  • 新增菜品

数据库设计

  • dish菜品表
  • dish_flavor口味表

(2)代码开发
(3)功能测试

菜品分页查询

(1)需求分析和设计

业务规则

  • 根据页码展示菜品信息
  • 每页展示10条数据
  • 分页查询时可以根据需要输入菜品名称、分类、菜品状态进行查询

接口设计

(2)代码开发
(3)功能测试

删除菜品

(1)需求分析和设计
业务规则

  • 可以一次删除一个菜品,也可以批量删除菜品
  • 起售中的菜品不能删除
  • 被套餐关联的菜品不能删除
  • 删除菜品后,关联的口味数据也要删除掉

(2)代码开发
(3)功能测试

修改菜品

(1)需求分析和设计
接口设计

  • 根据id查询菜品
  • 根据类型查询分类(已实现)
  • 文件上传(已实现)
  • 修改菜品

(2)代码开发
(3)功能测试

posted @ 2024-08-22 20:56  jhhhred  阅读(15)  评论(0)    收藏  举报