141 行
4.0 KiB
Markdown
141 行
4.0 KiB
Markdown
# 订单功能修复与增强(第二批)
|
||
|
||
**日期**: 2026-03-23 18:50
|
||
**影响服务**: hl-order-service, hl-insurance-service, hl-user-service, hl-payment-service
|
||
**已部署**: 测试服务器 ✅
|
||
|
||
---
|
||
|
||
## 1. 出行人保险保单展示(新功能)
|
||
|
||
订单详情接口的 `travelers` 数组中,每个出行人新增 `insurancePolicies` 字段,包含该出行人的所有保险保单。一个人多份保单会合并在数组中。
|
||
|
||
### 数据结构
|
||
|
||
```json
|
||
{
|
||
"travelers": [
|
||
{
|
||
"name": "米明光",
|
||
"insurancePolicies": [
|
||
{
|
||
"insuranceOrderId": "2035907623051735042",
|
||
"productName": "畅游神州境内游(旅行社专享)",
|
||
"planName": "经济版",
|
||
"extPolicyNo": "11209006600506819432",
|
||
"startDate": "2026-03-24",
|
||
"endDate": "2026-03-26",
|
||
"status": "INSURED",
|
||
"statusLabel": "已承保",
|
||
"totalPremium": "1.50"
|
||
},
|
||
{
|
||
"insuranceOrderId": "2035907674989801474",
|
||
"productName": "畅游神州境内游(旅行社专享)",
|
||
"planName": "经济版",
|
||
"extPolicyNo": "11209006600506819433",
|
||
"startDate": "2026-03-27",
|
||
"endDate": "2026-03-29",
|
||
"status": "INSURED",
|
||
"statusLabel": "已承保",
|
||
"totalPremium": "2.00"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
### insurancePolicies 字段说明
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|------|------|------|
|
||
| insuranceOrderId | String | 保险订单ID |
|
||
| productName | String | 保险产品名称 |
|
||
| planName | String | 保险计划名称 |
|
||
| extPolicyNo | String | 保单号 |
|
||
| startDate | String | 保障开始日期 |
|
||
| endDate | String | 保障结束日期 |
|
||
| status | String | 状态:INSURED=已承保, CANCELLED=已退保 |
|
||
| statusLabel | String | 状态中文标签 |
|
||
| totalPremium | String | 保费金额 |
|
||
|
||
### 前端展示建议
|
||
|
||
小程序出行人信息区域,每个人下面展示其保单卡片:
|
||
- 保障期间:2026-03-24 ~ 2026-03-26
|
||
- 保单号:11209006600506819432
|
||
- 状态:已承保
|
||
- 多份保单纵向排列
|
||
|
||
---
|
||
|
||
## 2. 订单内部状态"已锁单"
|
||
|
||
`processStatus = PENDING_FINANCE` 的标签从"待核算"改为 **"已锁单"**。
|
||
|
||
字典 `order_process_status` 中 `PENDING_FINANCE` 的 `dict_label` 已同步更新。
|
||
|
||
---
|
||
|
||
## 3. 商户号显示公司全名
|
||
|
||
订单详情新增 `mchName` 字段,返回商户公司全名:
|
||
|
||
| mchId | mchName |
|
||
|-------|---------|
|
||
| 1106110439 | 内蒙古呼籁国际旅行社有限公司 |
|
||
| 1246532201 | 内蒙古呼籁山河国际旅行社有限公司 |
|
||
| 1684769133 | 内蒙古呼籁文旅投资开发集团有限公司 |
|
||
|
||
**前端需改**:商户号选择器和订单详情展示用 `mchName` 代替 `mchId`。
|
||
|
||
---
|
||
|
||
## 4. 退款类型校验修复
|
||
|
||
小程序退定金报错已修复。`refundType` 现在支持:
|
||
- `FULL` - 全额退款
|
||
- `PARTIAL` - 部分退款
|
||
- `DEPOSIT` - 退定金
|
||
- `BALANCE` - 退尾款
|
||
|
||
---
|
||
|
||
## 5. 退款金额为0直接完成
|
||
|
||
退款审批通过但金额为0时,不再调微信退款接口(微信不支持退0元),直接标记为"已退款"。
|
||
|
||
---
|
||
|
||
## 6. 已锁单订单用户修改出行人自动解锁
|
||
|
||
已锁单(清单确认后)的订单,如果用户在小程序修改了出行人或出发日期:
|
||
- 自动解锁订单
|
||
- 触发级联(退保+作废合同)
|
||
- 重走内部流程(重新投保→签约→配房→配车→确认清单→锁单)
|
||
|
||
---
|
||
|
||
## 7. 解锁申请通知(短信+站内消息)
|
||
|
||
管理员调用 `POST /admin/order/{orderId}/request-unlock` 申请修改时,系统自动:
|
||
- 发站内消息给用户
|
||
- 发短信提醒用户确认
|
||
|
||
用户在小程序确认后调用 `POST /internal/mp/order/{orderId}/approve-unlock` 完成解锁。
|
||
|
||
---
|
||
|
||
## 8. 定制师列表只展示有企微的
|
||
|
||
`GET /admin/order/todo/customizer-list` 现在只返回绑定了企业微信的定制师。
|
||
|
||
**前端需改**:下拉展示用 `wechatName` 字段(企微姓名),提交用 `adminId`。
|
||
|
||
---
|
||
|
||
## 9. 尾款支付方式默认线下转账
|
||
|
||
新创建的订单 `balancePayMethod` 默认为 `OFFLINE`(线下转账),无需手动设置。
|