hl-api-changelog/changelogs-v2/2026-06/18_3983_配房配车子流程状态全态statusName-修改接口-管理后台.md
yaosutu 321154e5b1 docs(changelog): 子流程加 displayText 完整文案 + statusName 改纯状态 (#4023)
更新 currentSubFlows changelog:statusName 改纯状态(待配/处理中,房车一致),
新增 displayText=name+状态完整文案(配房已打回/配车处理中);明确前端展示直接用 displayText。
2026-06-19 09:50:10 +08:00

8.1 KiB

【修改接口·管理后台】⚠️ currentSubFlows 子流程状态字段重构:删 label + 新增 statusName/displayText (#3983)

PR: #3989 + #3998 + #4024 | 服务: hl-order-service-v3 | 更新时间: 2026-06-19 ⚠️字段删除label+ 字段新增statusName / displayText。前端若在用 currentSubFlows.label 必须切换;展示推荐直接用 displayText

1. 接口背景

订单列表/详情「资源准备」节点下的 currentSubFlows(配房/配车/领队/摄影子流程)原先状态展示有问题:control_status 主表是残缺镜像,子流程状态卡在「待配」不动、label 大量返 null、且配车「处理中」错显「配房中」。

本次治理:① 配房/配车状态升级为完整状态机单源;② 删除旧 label,新增 statusName(纯状态中文)+ displayTextname+状态的完整通顺文案)。前端展示直接用 displayText(如「配房已打回」),无需自己拼接。

2. 变更清单

# 接口 方法 路径 变更类型 说明
1 订单列表 GET /v3/admin/order兼容 /v3/admin/order/list 出参字段删除+新增 currentSubFlows[] 删 label加 statusName + displayText
2 订单详情 GET /v3/admin/order/{id} 出参字段删除+新增 currentSubFlows[] 删 label加 statusName + displayText

currentSubFlows 仅在订单处于「资源准备」节点时有值(其余节点为 null,是该节点下的子流程数组。

3. 接口详情

3.1 订单列表

  • 使用场景:订单列表页渲染每条订单的资源准备子流程进度。
  • 认证JWT管理员幂等:是(只读)。

入参无变化。出参 PageResult<OrderListItemRespVO>,其中 currentSubFlows[] 每个元素删 label、加 statusName+displayText

3.2 订单详情

  • 使用场景:订单详情页资源准备节点的子流程进度展示。
  • 认证JWT管理员幂等:是(只读)。

入参无变化。出参详情 VO 的 currentSubFlows[] 每个元素删 label、加 statusName+displayText(与列表一致)。

4. 接口入参

接口 字段 类型 必填 说明
GET /v3/admin/order (原列表查询参数,本次无变化) - - -
GET /v3/admin/order/{id} id StringLong 路径参数,订单 ID

两个接口入参均无变化。

5. 出参(响应)

5.1 SubFlowVOcurrentSubFlows[] 元素)改后字段

字段 类型 变更 说明
code String 不变 子流程编码HOTEL / VEHICLE / GUIDE / PHOTOGRAPHER
name String 不变 子流程对象名:配房 / 配车 / 领队 / 摄影
status String 不变 三态机器值WAITING / PROCESSING / DONE供逻辑判断
label String 删除 旧展示文案字段,已删
statusName String 新增 纯状态中文(不含房/车),见 §6
displayText String 新增 完整展示文案 = name + statusName,如「配房已打回」,前端直接显示这个

展示直接用 displayText;需拆分时用 name(对象)+ statusName(纯状态)+ status(机器值)。

6. 枚举 / 数据字典

6.1 配房 HOTEL / 配车 VEHICLE由 room/vehicle_control_status 派生,全 6 态)

statusName 为纯状态、房车一致;displayText = name + statusName

后端状态 statusName displayText配房 displayText配车 含义
待提交需求 待提交需求 配房待提交需求 配车待提交需求 需求还没提交
待审核 待审核 配房待审核 配车待审核 仅团期:定制师已提、管理员未审核
待配 待配 配房待配 配车待配 已进抢单池,房务/车务未接单
处理中 处理中 配房处理中 配车处理中 房务/车务已接单处理中
已打回 已打回 配房已打回 配车已打回 被打回需重新处理原因见「记录」Tab
已完成 已完成 配房已完成 配车已完成 资源配置完成

6.2 领队 GUIDE / 摄影 PHOTOGRAPHER由 guide/photographer_status 派生,两态)

后端状态 statusName displayText领队 displayText摄影
未配null 待指派 领队待指派 摄影待指派
已完成DONE 已完成 领队已完成 摄影已完成

statusName / displayText 均不返回 null全态都有文案。打回原因不在本字段,前端去订单「记录」Tab 时间线查看(带时间/操作人)。

7. 错误码

纯出参字段调整,无新增错误码。

code 含义
581201 订单不存在(详情接口 id 无效)
401 / 403 未认证 / 无权限

8. 示例3 组)

8.1 典型 — 资源准备中(配房处理中、配车待配)

{
  "code": 200,
  "data": {
    "currentSubFlows": [
      { "code": "HOTEL",   "name": "配房", "status": "PROCESSING", "statusName": "处理中", "displayText": "配房处理中" },
      { "code": "VEHICLE", "name": "配车", "status": "WAITING",    "statusName": "待配",   "displayText": "配车待配" }
    ]
  },
  "success": true
}

8.2 边界 — 配房被打回 + 领队待指派

{
  "code": 200,
  "data": {
    "currentSubFlows": [
      { "code": "HOTEL", "name": "配房", "status": "WAITING", "statusName": "已打回", "displayText": "配房已打回" },
      { "code": "GUIDE", "name": "领队", "status": "WAITING", "statusName": "待指派", "displayText": "领队待指派" }
    ]
  },
  "success": true
}

8.3 边界 — 订单不在资源准备节点currentSubFlows 为 null

{ "code": 200, "data": { "currentSubFlows": null }, "success": true }

9. 业务边界

  • currentSubFlows 仅订单处于「资源准备」节点时有值,其余节点 null。
  • 子流程按需求标志过滤needsHotel/needsVehicle/needsGuide/needsPhotographer 为 true 才出现对应子流程。
  • 「待审核」态仅团期订单出现(核心订单无审核环节)。
  • 「已打回」只表达状态,具体退回原因在订单「记录」Tab 时间线(不在本接口返回)。

10. 修改前后对比

字段 改前 改后
label 存在,文案不准(配车「处理中」错显「配房中」、待提交态 null 删除
statusName 新增,纯状态中文(待配/处理中…,房车一致)
displayText 新增,完整文案(配房已打回/配车处理中),前端直显
status WAITING/PROCESSING/DONE 保留不变
状态准确性 卡「待配」不动、抢单/打回不反映 抢单→处理中、打回→已打回,实时准确

11. 影响评估 / 回滚

  • 破坏向后兼容部分——删除了 label。前端若读 currentSubFlows[].label 需改读 displayText(或 statusNamestatus 保留。
  • 前端必须同步:是(若在用 label。改读 displayText 即可。
  • 回滚revert PR #4024 + #3998 + #3989 并重新部署 hl-order-service-v3。

12. 注意事项

  • 前端展示子流程状态直接用 displayText(中文完整文案,开箱即用),不要再依赖 label(已删)。
  • 需要按对象/状态分别处理时用 name + statusName;需要机器判断分支用 status
  • 打回原因展示去订单「记录」Tab 时间线,不在 currentSubFlows。

13. 关联 / 联系人

13.1 链接

13.2 联系人

  • 后端负责人: @yaosutu