后端 PUT /warehouses/:id 与 PUT /warehouses/:warehouseId/locations/:locationId 本就接受 name + status(service/repository 都只改这两列),api 层的 update/updateLocation 也早已封装好,缺的只是前端入口——页面此前只有「新增」,无法改状态。 - 仓库标题栏与库位行各加「编辑」按钮,弹窗内改名称 + 启用/停用 - 标题栏按钮必须 @click.stop:el-collapse-item 整条 header 都挂着展开/收起监听 - 库位状态列从直接显示英文 inactive 改为中文 el-tag,与仓库及主数据页统一 - 编辑态编码只读且不参与必填校验(code 不可变,后端 Update 也不接收) - 表单重置走已有的 replaceAllKeys,编辑只灌白名单字段,避免残留 id 让新增变成覆盖更新 - 库位所属仓库只存 id 不存对象,load() 整体替换列表后不会读到旧数据 - save() 显式吞掉错误:提示由 axios 响应拦截器统一负责,同时避免 @click 经 el-button 透传到原生 button、绕过 Vue 异步错误包装而产生的 unhandled rejection - 测试补 8 条:update/updateLocation 的参数与顺序、编辑态不误报编码、 改完再新增仍走 create、状态列中文、编辑按钮不收起面板、失败不关窗 |
||
|---|---|---|
| .. | ||
| node_modules | ||
| src | ||
| .dockerignore | ||
| Dockerfile | ||
| index.html | ||
| nginx.conf | ||
| package-lock.json | ||
| package.json | ||
| vite.config.js | ||
| vitest.config.js | ||