修复配送订单创建方动态联动

This commit is contained in:
czl231
2026-08-14 00:40:48 +08:00
parent eafb6fadf3
commit 9c3abf76d5
7 changed files with 177 additions and 20 deletions

View File

@@ -202,6 +202,8 @@
创建订单时必须提交唯一请求号、有效合同、创建方、用户地址、合同气瓶集合、联系人和联系方式。后端根据合同价格和默认配送费计算订单金额,不接受前端自行决定最终金额。
平台创建订单时,创建方类型支持用户、工作人员、配送站和气站。创建方候选必须根据已选类型分别加载用户账户、工作人员账户、配送站或气站;未选择类型时禁用创建方字段,切换类型时清空原创建方并重新加载候选。候选以用户名或机构名称等业务名称展示,不直接要求管理员识别唯一标识。
创建订单页面必须先选择配送合同,收货地址下拉仅展示该合同签约用户的地址。地址选项以完整地址为主文案并标记默认地址;存在默认地址时自动选中,切换合同时清空原地址。若合同用户没有可用地址,页面应明确引导先维护用户地址并禁止提交。
合同气瓶下拉仅展示所选合同中尚未解绑的气瓶,按气瓶类型和气瓶编码排序,并支持按气瓶编码或类型搜索。选项以气瓶类型名称展示;切换合同时清空原选择。若合同没有可用气瓶,页面应引导先为合同绑定气瓶并禁止提交。合同气瓶管理列表仍保留完整绑定和解绑历史。

View File

@@ -0,0 +1,49 @@
# 项目文档_配送订单创建方动态联动_v1.0
## 1. 项目概述
本次修复平台总后台创建配送订单时“创建方标识”始终显示“暂无数据”的问题。后端已经支持四种创建方,但前端字段只有关系控件类型,没有绑定数据资源,也没有根据创建方类型切换候选。
## 2. 业务规则
- 创建方类型支持用户、工作人员、配送站和气站。
- 未选择创建方类型时,创建方下拉框保持禁用并提示先选择类型。
- 用户对应 `/user_account`
- 工作人员对应 `/staff_account`
- 配送站对应 `/delivery_basic`
- 气站对应 `/gas_basic`
- 切换创建方类型时清空原创建方,防止跨类型提交旧标识。
- 候选显示用户名、人员显示名称或机构名称等现有业务字段。
- 后端继续校验创建方类型与唯一标识,不修改数据库。
## 3. 核心文件
- `frontend/platform_admin/src/api/resources.ts`:声明动态关系配置和四类资源映射。
- `frontend/platform_admin/src/views/resource/ResourceFieldForm.vue`:动态资源渲染、父类型禁用和选择事件。
- `frontend/platform_admin/src/views/resource/use-resource-relation-linkage.ts`:动态候选加载、搜索与类型切换清理。
- `frontend/platform_admin/scripts/check-gasorder-creator-linkage.mjs`:创建方动态联动专项检查。
## 4. 维护指南
- 新增创建方类型时必须同时更新后端 `gasorderCreatorModels` 和前端动态资源映射。
- 不得把不同模型的唯一标识混放在同一个静态候选列表中。
- 切换父类型必须先清空原值,再加载新类型候选。
- 动态关系能力是通用扩展,其他多类型主体字段可复用,避免页面级硬编码。
## 5. 变更记录
操作时间2026-08-14
操作类型:修复、扩展
影响模块:平台总后台、气体配送订单创建
操作前状态:创建方标识没有关系资源,选择创建方类型后仍显示“暂无数据”。
具体操作:增加父字段驱动的动态关系配置,接入候选加载、搜索、禁用和切换清理流程。
操作后状态:管理员选择创建方类型后可选择对应业务主体,切换类型会清空旧选择。
验证范围:前端专项检查、类型检查、生产构建和既有资源契约检查。
风险评估:后端接口和数据库不变;动态关系仅在显式配置字段启用,不影响既有固定关系字段。