当前位置: 首页 > web >正文

Java项目-苍穹外卖_Day3-Day4

项目来源:

黑马程序员 Java项目实战《苍穹外卖》】

[https://www.bilibili.com/video/BV1TP411v7v6]

@ZZHow(ZZHow1024)

公共字段自动填充

  • 问题分析
    • 业务表中存在公共字段:

      序号字段名含义数据类型操作类型
      1create_time创建时间datetimeinsert
      2create_user创建人idbigintinsert
      3update_time修改时间datetimeinsert、update
      4update_user修改人idbigintinsert、update
    • 问题:代码冗余,不便于后期维护。

  • 实现思路
    • 思路:
      • 自定义注解 AutoFill,用于标识需要进行公共字段自动填充的方法。
      • 自定义切面类 AutoFillAspect,统一拦截加入了 AutoFill 注解的方法,通过反射为公共字段赋值。
      • 在 Mapper 的方法上加入 AutoFill 注解。
    • 技术点:枚举、注解、AOP 和 反射。

新增菜品

  • 需求分析和设计
    • 业务规则:
      • 菜品名称必须是唯一的。
      • 莱品必须属于某个分类下,不能单独存在。
      • 新增菜品时可以根据情况选择菜品的口味。
      • 每个菜品必须对应一张图片。
    • 接口设计:
      • 根据类型查询分类。
        • Path:/admin/category/list
        • Method:GET
      • 文件上传。
        • Path:/admin/common/upload
        • Method:POST
      • 新增菜品。
        • Path:/admin/dish
        • Method:POST

菜品分页查询

  • 需求分析和设计
    • 业务规则:
      • 根据页码展示菜品信息。
      • 每页展示 10 条数据。
      • 分页查询时可以根据需要输入菜品名称、菜品分类、菜品状态进行查询。
    • 接口设计:
      • Path:/admin/dish/page
      • Method:GET

删除菜品

  • 需求分析和设计
    • 业务规则:
      • 可以一次删除一个菜品,也可以批量删除菜品。
      • 起售中的菜品不能删除。
      • 被套餐关联的菜品不能删除。
      • 删除菜品后,关联的口味数据也需要删除掉。
    • 接口设计:
      • Path:/admin/dish
      • Method:Delete

修改菜品

  • 需求分析和设计
    • 接口设计:
      • 根据 ID 查询菜品
        • Path:/admin/dish/{id}
        • Method:GET
      • 根据类型查询分类(已实现)
      • 文件上传(已实现)
      • 修改菜品
        • Path:/admin/dish
        • Method:PUT

起售停售菜品

  • 需求分析和设计
    • 业务规则:
      • 可以对状态为“起售”的菜品进行“停售”操作。
      • 可以对状态为“停售”的菜品进行“起售”操作。
    • 接口设计:
      • Path:/admin/dish/status/{status}
      • Method:POST
  • 代码开发
    • 根据接口文档进行开发。

开发套餐管理模块功能

  • 代码开发
    • 此业务模块与上一部分(菜品管理业务)模块实现类似。
http://www.xdnf.cn/news/18976.html

相关文章:

  • 深度解析Structured Outputs:基于JSON Schema的结构化输出实践与最佳方案
  • 8月26日
  • 开发避坑指南(37):Vue3 标签页实现攻略
  • iPhone 17 Pro 全新配色确定,首款折叠屏 iPhone 将配备 Touch ID 及四颗镜头
  • 二、JVM 入门 —— (四)堆以及 GC
  • MATLAB中函数的详细使用
  • Slice-100K:推动AI驱动的CAD与3D打印创新的多模态数据集
  • 『专利好药用力心脑血管健康』——爱上古中医(28)(健康生活是coder抒写优质代码的前提条件——《黄帝内经》伴读学习纪要)
  • Hadoop MapReduce 任务/输入数据 分片 InputSplit 解析
  • VS中创建Linux项目
  • VGVLP思路探索和讨论
  • STL库——vector(类函数学习)
  • 算法编程实例-快乐学习
  • Git:基本使用
  • 校园勤工俭学微信小程序的设计与实现:基于数字化服务生态的赋能体系构建
  • 10分钟快速搭建 SkyWalking 服务
  • 机器学习笔记
  • 【C语言】小游戏:关机程序
  • 【Linux 进程】进程程序替换
  • RAG中使用到的相关函数注释——LangChain核心函数
  • AI出题人给出的Java后端面经(二十仨)(不定更)
  • 【AI论文】FutureX:面向未来预测任务中大语言模型智能体的前沿动态基准测试
  • 【科研绘图系列】R语言在海洋生态学中的应用:浮游植物糖类组成与溶解性有机碳的关系
  • 永磁同步电机无速度算法--传统脉振方波注入法(1)
  • LangGraph
  • 【更新至2024年】2000-2024年各地级市绿色专利数据
  • 【lucene】spancontainingquery
  • 主流的 AI Agent 开发框架
  • 矩阵的秩几何含义
  • WPS 智能文档,5分钟上手!