Files
smart_grid_iot/.trae/specs/rebuild-project-management/checklist.md
T

1.8 KiB

Checklist

后端:安装派单

  • install_order entity 字段与 db_design.html D6 完全一致,含注释与索引
  • POST /api/install-orders 创建成功并自动生成唯一 install_no,返回统一结构
  • GET /api/install-orders 支持关键字/客户/状态/日期范围筛选与分页
  • PUT /api/install-orders/:id/complete 仅允许 0→1 流转,重复调用被拒绝
  • 非法入参(缺必填/超长/非法枚举)返回 422

后端:安全

  • 六个项目管理控制器全部端点:无 JWT 返回 401,无权限点返回 403
  • sys_menu 存在 project:install 权限点且 RBAC 匹配生效
  • 六个 service 无字符串拼接 SQL,模糊搜索全部绑定参数,排序字段白名单
  • 六个 DTO 对全部外部入参有 class-validator 校验
  • 创建/更新/删除/指派/流转/取消/复核/催办动作均写入 sys_operation_log

前端:页面

  • 勘察台账页含统计卡、状态Tab、高级筛选、台账列、批量指派/催办入口,数据与接口联通
  • 勘察派单页含报价联动、优先级、到场窗口、草稿/派发,提交与接口联通
  • 方案页含设备明细编辑,合同页含金额/支付周期/文件,验收页含关联合同,均为拜访台账式交互
  • 安装派单页 CRUD + 标记完成可用,路由 /project/install 与菜单项生效
  • 回访记录页列表/新建/编辑可用

前端:安全与兼容

  • views/project/** 无 v-html 渲染后端文本
  • 401 自动跳登录,403/422 有统一提示
  • 所有列表接口响应为 { code, message, data: { list, total, page, pageSize } }

构建

  • cd client && npx vue-tsc --noEmit 通过(vue-tsc 无类型错误)
  • cd server && npx tsc --noEmit 通过(tsc 无类型错误)