sky-take-out chapter 2

01新增员工

(1)需求分析和设计

  • 分析产品原型
  • 接口设计

本项目约定:
管理端发出的请求,统一使用/admin作为前缀
用户端发出的请求,统一使用/user作为前缀

  • 数据库设计
    employee表

(2) 代码开发

  • 根据新增员工接口设计对应的DTO
  • Controller中新增员工,接收前端的DTO,调用Service方法
  • 新增Service接口,实现接口具体逻辑
  • Mapper持久层中新增插入的方法

(3)功能测试

  • 接口文档测试
  • 前后端联调测试

(4)代码完善

  • 错误操作要返回响应的message
    solve: 全局异常处理器

  • 新增员工时,创建人id和修改人id设计为了固定值
    solve:ThreadLocal(为每个线程提供单独一份存储空间,具有线程隔离的效果,只有在线程内才能获取到对应的值,线程外则不能访问)

02员工分页查询

(1)需求分析和设计

  • 根据页码显示员工信息
  • 每页展示10条数据
  • 分页查询时可以根据需要,输入员工姓名进行查询

(2)代码开发

  • 设计DTO,EmplyeePageQueryDTO
  • 后面所有的分页查询,统一封装成PageResult对象
    (3)功能测试
    (4)代码完善
  • 返回给前端的“创建时间”不符合阅读习惯
    solve:
    法一:在属性上加入注解,对日期进行格式化
    法二:在WebMvcConfiguration中扩展Spring MVC的信息转换器,对统一日期类型进行格式化处理(推荐,因为如果有多个,只需加一次即可)

03启用禁用员工账号

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

  • 可以对状态为“启用”的员工账号进行“禁用”操作
  • 可以对状态为“禁用”的员工账号进行“启用”操作
  • 状态为“禁用”的员工账号不能登录系统

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

04编辑员工

(1)需求分析和设计

  • 根据id查询员工信息
  • 编辑员工信息
    (2)代码开发
    (3)功能测试

05导入分类模块功能代码

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

  • 分类名称必须是唯一的
  • 分类按照类型可以分为菜品分类和套餐分类
  • 新添加的分类状态默认为“禁用”

接口设计:

  • 新增分类
  • 分类分页查询
  • 根据id删除分类
  • 修改分类
  • 启用禁用分类
  • 根据类型查询分类
    (2)代码导入
    (3)功能测试
posted @ 2024-08-12 16:31  jhhhred  阅读(26)  评论(0)    收藏  举报