50 lines
2.8 KiB
Markdown
50 lines
2.8 KiB
Markdown
## 1. SQL 与数据模型
|
||
|
||
- [x] 1.1 编写 `docs/sql/db_tables.sql`:四张 `db_*` 表 DDL(含公共字段、索引、注释)
|
||
- [x] 1.2 合并 DDL 至 `docs/sql/shanxia2.0.sql` 全量快照
|
||
- [x] 1.3 创建 `backend/app/models/db_models.py`:DbPurchasePlan、DbWeighingSlip、DbInboundOutbound、DbVehicle
|
||
- [x] 1.4 在 `backend/app/main.py` 导入 db_models(# noqa: F401)
|
||
|
||
## 2. 后端基础层
|
||
|
||
- [x] 2.1 创建 `backend/app/services/db/base.py`(DbCrudService,参照 BxCrudService)
|
||
- [x] 2.2 创建 `backend/app/schemas/db/`:各实体 CreateBody/UpdateBody/Response
|
||
- [x] 2.3 创建 `backend/app/api/db/__init__.py` 聚合 db_router
|
||
- [x] 2.4 在 `backend/app/api/__init__.py` 与 `backend/app/main.py` 注册 db_router
|
||
|
||
## 3. 后端业务 API(按依赖顺序)
|
||
|
||
- [x] 3.1 实现 `api/db/vehicles.py` + 主数据 CRUD(车牌;原 task 写 vehicle.py)
|
||
- [x] 3.2 实现 `api/db/plans.py` + `services/db/plan_helpers.py` 等(计划 CRUD + plan_no 生成)
|
||
- [x] 3.3 实现 `api/db/inventory.py` + 出入库 CRUD
|
||
- [x] 3.4 实现 `api/db/weighing.py` + `services/db/weighing_logic.py`(地磅单 CRUD + 联动事务 + 作废)
|
||
- [x] 3.5 实现 `api/db/dashboard.py`(统计聚合)
|
||
- [x] 3.6 创建 `backend/app/tasks/db_auto_plan.py` 并在 `app/tasks/__init__.py` 注册定时任务
|
||
|
||
## 4. 前端 API 与类型
|
||
|
||
- [x] 4.1 创建 `web-admin/src/api/db/vehicles.ts`、`plans.ts`、`inventory.ts`、`weighing.ts`、`dashboard.ts`
|
||
- [x] 4.2 TypeScript 类型定义于各 `web-admin/src/api/db/*.ts` 模块(未单独写入 api.d.ts)
|
||
|
||
## 5. 前端页面(Fresh Mint)
|
||
|
||
- [x] 5.1 创建 `web-admin/src/views/db/vehicles/index.vue`(P01,参照 unit 模板)
|
||
- [x] 5.2 创建 `web-admin/src/views/db/plans/index.vue` + 表单弹窗(P02,参照 order 模板)
|
||
- [x] 5.3 创建 `web-admin/src/views/db/inventory/index.vue` + 表单弹窗(P02)
|
||
- [x] 5.4 创建 `web-admin/src/views/db/weighing/index.vue` + 表单弹窗(P02;含 CRM 产品/客户下拉、车牌下拉、作废 Tag)
|
||
- [x] 5.5 创建 `web-admin/src/views/db/dashboard/index.vue`(统计卡片/图表,参照 console)
|
||
- [x] 5.6 注册路由与侧栏菜单(`router/modules/sqxp.ts` + `docs/sql/20260607_db_menu.sql`)
|
||
|
||
## 6. 数据迁移与权限
|
||
|
||
- [x] 6.1 编写 `backend/scripts/migrate_dibang_data.py`:int id → UUID,重写关联
|
||
- [x] 6.2 编写地磅菜单与按钮权限初始化 SQL(`docs/sql/20260607_db_menu.sql`)
|
||
- [ ] 6.3 运行 `python scripts/check_field_consistency.py`(若适用)验证字段一致性
|
||
|
||
## 7. 验证
|
||
|
||
- [ ] 7.1 Swagger 验证各 db API CRUD 与 tenant 隔离
|
||
- [ ] 7.2 全链路验收:创建计划 → 保存地磅单 → 生成出入库 → 仪表盘统计
|
||
- [ ] 7.3 验证计划 auto_generate 定时任务(可手动触发测试)
|
||
- [x] 7.4 执行 `./scripts/update-graph.sh backend frontend` 更新知识图谱
|