docs(api): 更新接口文档,新增过期积分查询接口并规范参数名称

- 新增“过期积分查询接口”文档说明及调用说明
- 优化订单状态流转状态展示,更清晰展示状态顺序
- 修改接口文档中字段名class为type,统一参数命名
- 规范接口入参验证,补充必填参数缺失和服务编码不存在的错误处理
- 新增接口验收标准及测试用例,覆盖参数校验、AES解密和业务异常场景
- 补充过期积分查询接口业务流程和返回字段说明
- 完善券码链接查询接口业务规则和验收标准及对应测试用例
This commit is contained in:
zhouyonggao 2026-03-13 16:25:05 +08:00
parent 9223a61b92
commit ec186dc3b5
1 changed files with 62 additions and 23 deletions

View File

@ -20,6 +20,7 @@
| 预约服务状态查询接口 | 查询邮储侧服务状态 | [3.1.2](#312-服务取消接口) | | 预约服务状态查询接口 | 查询邮储侧服务状态 | [3.1.2](#312-服务取消接口) |
| 预约取消接口 | 发起取消请求 | [3.1.2](#312-服务取消接口) | | 预约取消接口 | 发起取消请求 | [3.1.2](#312-服务取消接口) |
| 服务完成接口 | 通知邮储服务完成 | [3.1.3](#313-服务完成通知接口) | | 服务完成接口 | 通知邮储服务完成 | [3.1.3](#313-服务完成通知接口) |
| 过期积分查询接口 | 查询订单退还时已过期积分 | [3.1.4](#314-订单过期积分查询接口) |
### 调用上游的接口调用蓝色兄弟API ### 调用上游的接口调用蓝色兄弟API
@ -49,9 +50,7 @@
### 订单状态流转 ### 订单状态流转
``` ```
100(未预约) → 200(已预约) → 300(已完成) 100(未预约) → 200(已预约) → 300(已完成)→ 400(已取消) → 500(已过期)
→ 400(已取消)
→ 500(已过期)
``` ```
--- ---
@ -175,7 +174,7 @@
**输入** **输入**
| 字段 | 类型 | 必填 | 说明 | | 字段 | 类型 | 必填 | 说明 |
|-----|------|-----|------| |-----|------|-----|------|
| class | String | M | 服务编码用于查询数据库获取AES解密密钥 | | type | String | M | 服务编码用于查询数据库获取AES解密密钥 |
| request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id | | request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id |
| channel | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 | | channel | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 |
| tranChnl | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 | | tranChnl | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 |
@ -277,7 +276,7 @@
**输入** **输入**
| 字段 | 类型 | 必填 | 说明 | | 字段 | 类型 | 必填 | 说明 |
|-----|------|-----|------| |-----|------|-----|------|
| class | String | M | 服务编码用于查询数据库获取AES解密密钥 | | type | String | M | 服务编码用于查询数据库获取AES解密密钥 |
| request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id | | request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id |
| channel | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 | | channel | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 |
| tranChnl | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 | | tranChnl | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 |
@ -293,6 +292,10 @@
| backUrl | String | C | 返回手机银行的地址 | | backUrl | String | C | 返回手机银行的地址 |
**验收标准** **验收标准**
- [ ] 入参type服务编码为必填字段缺失时返回“参数错误”
- [ ] 根据入参type查询数据库获取对应的aes_key和aes_iv
- [ ] 服务编码(type)不存在时返回“暂不支持此服务”在AES解密之前校验
- [ ] 使用数据库查询到的aes_key和aes_iv能正确解密AES加密的request参数
- [ ] 正确解析AES加密的request参数提取type、code、mac字段 - [ ] 正确解析AES加密的request参数提取type、code、mac字段
- [ ] 本地订单状态为已取消时,直接返回取消成功 - [ ] 本地订单状态为已取消时,直接返回取消成功
- [ ] 本地订单状态为已过期时,返回"服务已过期" - [ ] 本地订单状态为已过期时,返回"服务已过期"
@ -312,7 +315,9 @@
| 用例编号 | 测试场景 | 前置条件 | 输入数据 | 预期结果 | | 用例编号 | 测试场景 | 前置条件 | 输入数据 | 预期结果 |
|---------|---------|---------|---------|----------| |---------|---------|---------|---------|----------|
| TC-3.1.2-001 | 正常取消成功 | 订单状态=已预约(200),邮储状态=已预约,蓝色兄弟作废成功,邮储取消成功 | request=有效加密参数 | code=0, 订单状态=400 | | TC-3.1.2-001 | 正常取消成功 | 订单状态=已预约(200),邮储状态=已预约,蓝色兄弟作废成功,邮储取消成功 | request=有效加密参数 | code=0, 订单状态=400 |
| TC-3.1.2-002 | AES解密失败 | - | request=无效加密字符串 | code=2, msg="参数错误" | | TC-3.1.2-002 | AES解密失败 | 服务编码存在 | type=有效服务编码, request=无效加密字符串 | code=2, msg="参数错误" |
| TC-3.1.2-002a | 必填参数缺失-type | - | 不传type | code=2, msg="参数错误" |
| TC-3.1.2-002b | 服务编码不存在 | 数据库无该服务编码映射 | type=999999 | code=4, msg="暂不支持此服务" |
| TC-3.1.2-003 | 本地订单状态已取消 | 订单状态=已取消(400) | request=有效加密参数 | code=0, 直接返回取消成功 | | TC-3.1.2-003 | 本地订单状态已取消 | 订单状态=已取消(400) | request=有效加密参数 | code=0, 直接返回取消成功 |
| TC-3.1.2-004 | 本地订单状态非已预约 | 订单状态=已完成(300) | request=有效加密参数 | code=4, msg="服务已生效无法取消" | | TC-3.1.2-004 | 本地订单状态非已预约 | 订单状态=已完成(300) | request=有效加密参数 | code=4, msg="服务已生效无法取消" |
| TC-3.1.2-004a | 本地订单状态已过期 | 订单状态=已过期(500) | request=有效加密参数 | code=4, msg="服务已过期" | | TC-3.1.2-004a | 本地订单状态已过期 | 订单状态=已过期(500) | request=有效加密参数 | code=4, msg="服务已过期" |
@ -369,19 +374,22 @@
**功能描述**:查询订单退还时已过期的幸福点信息,用于取消前提醒客户 **功能描述**:查询订单退还时已过期的幸福点信息,用于取消前提醒客户
**业务规则** **业务规则**
1. 根据权益码或原交易流水号查询订单 1. 验证服务编码(type)查询数据库获取AES解密密钥
2. 计算订单涉及的总幸福点 2. 服务编码不存在返回“暂不支持此服务”
3. 计算已过期的幸福点数量 3. 解密request参数获取服务编码、权益码、客户ID
4. 返回过期幸福点提醒信息 4. 调用邮储「高端客户权益订单退还时已过期积分查询」接口
5. 返回邮储接口查询结果(总幸福点、过期幸福点、提醒信息)
**输入** **输入**
| 字段 | 类型 | 必填 | 说明 | | 字段 | 类型 | 必填 | 说明 |
|-----|------|-----|------| |-----|------|-----|------|
| rightsCode | String | C | 兑换预约码(已预约取消场景必填) | | type | String | M | 服务编码用于查询数据库获取AES解密密钥 |
| orgTranSq | String | C | 原交易流水号(已兑换未预约取消场景必填) | | request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id |
| cstmName | String | C | 客户名称 | | channel | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 |
| paperType | String | C | 证件类型 | | tranChnl | String | M | 渠道标识12-手机银行17-电话银行41-CRM零售 |
| paperId | String | C | 证件号码 | | backUrl | String | C | 返回手机银行的地址,可为空 |
| instType | String | M | 客户自营代理属性01-自营02-代理 |
| provinceInstNo | String | M | 客户归属一分机构号 |
**输出**data字段内容 **输出**data字段内容
| 字段 | 类型 | 必填 | 说明 | | 字段 | 类型 | 必填 | 说明 |
@ -391,9 +399,25 @@
| noticeMsg | String | C | 提醒信息文本 | | noticeMsg | String | C | 提醒信息文本 |
**验收标准** **验收标准**
- [ ] 能正确查询订单积分信息 - [ ] 入参type服务编码为必填字段缺失时返回“参数错误”
- [ ] 过期幸福点计算准确 - [ ] 根据入参type查询数据库获取对应的aes_key和aes_iv
- [ ] 返回友好的提醒信息 - [ ] 服务编码(type)不存在时返回“暂不支持此服务”在AES解密之前校验
- [ ] 使用数据库查询到的aes_key和aes_iv能正确解密AES加密的request参数
- [ ] 调用邮储过期积分查询接口成功时,正确返回查询结果
- [ ] 调用邮储过期积分查询接口失败时,返回错误提示
- [ ] 调用邮储过期积分查询接口超时时,返回“查询失败,请重试”
**测试用例**
| 用例编号 | 测试场景 | 前置条件 | 输入数据 | 预期结果 |
|---------|---------|---------|---------|----------|
| TC-3.1.4-001 | 正常查询成功 | 邮储接口返回成功 | type=有效服务编码, request=有效加密参数 | code=0, 返回tranIntglNum、ovdueIntglNum、noticeMsg |
| TC-3.1.4-002 | 必填参数缺失-type | - | 不传type | code=2, msg="参数错误" |
| TC-3.1.4-003 | 服务编码不存在 | 数据库无该服务编码映射 | type=999999 | code=4, msg="暂不支持此服务" |
| TC-3.1.4-004 | AES解密失败 | 服务编码存在 | type=有效服务编码, request=无效加密字符串 | code=2, msg="参数错误" |
| TC-3.1.4-005 | 邮储接口返回失败 | AES解密成功邮储接口返回失败 | type=有效服务编码, request=有效加密参数 | code=1, msg=邮储返回的错误信息 |
| TC-3.1.4-006 | 邮储接口调用超时 | AES解密成功邮储接口超时5s | type=有效服务编码, request=有效加密参数 | code=1, msg="查询失败,请重试" |
| TC-3.1.4-007 | 无过期积分 | 邮储接口返回ovdueIntglNum=0 | type=有效服务编码, request=有效加密参数 | code=0, ovdueIntglNum=0 |
--- ---
@ -428,14 +452,16 @@
**功能描述**:提供给邮储银行跳转服务详情页面,根据参数获取上游券码链接展示服务详情 **功能描述**:提供给邮储银行跳转服务详情页面,根据参数获取上游券码链接展示服务详情
**业务规则** **业务规则**
1. 解密request参数获取服务编码、权益码、客户ID 1. 验证服务编码(type)查询数据库获取AES解密密钥
2. 根据权益码查询订单获取券码链接 2. 服务编码不存在返回“暂不支持此服务”
3. 返回券码链接用于页面展示 3. 解密request参数获取服务编码、权益码、客户ID
4. 根据权益码查询订单获取券码链接
5. 返回券码链接用于页面展示
**输入** **输入**
| 字段 | 类型 | 必填 | 说明 | | 字段 | 类型 | 必填 | 说明 |
|-----|------|-----|------| |-----|------|-----|------|
| class | String | M | 服务编码用于查询数据库获取AES解密密钥 | | type | String | M | 服务编码用于查询数据库获取AES解密密钥 |
| request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id | | request | String | M | AES加密字符串解密后格式type=服务编码&code=权益码&mac=加密后的客户id |
| channel | String | M | 渠道标识12-手机银行 17-电话银行 41-CRM零售 | | channel | String | M | 渠道标识12-手机银行 17-电话银行 41-CRM零售 |
| tranChnl | String | M | 交易渠道12-手机银行 17-电话银行 41-CRM零售 | | tranChnl | String | M | 交易渠道12-手机银行 17-电话银行 41-CRM零售 |
@ -450,10 +476,23 @@
| backUrl | String | M | 返回手机银行的地址 | | backUrl | String | M | 返回手机银行的地址 |
**验收标准** **验收标准**
- [ ] 能正确解密request参数 - [ ] 入参type服务编码为必填字段缺失时返回“参数错误”
- [ ] 根据入参type查询数据库获取对应的aes_key和aes_iv
- [ ] 服务编码(type)不存在时返回“暂不支持此服务”在AES解密之前校验
- [ ] 使用数据库查询到的aes_key和aes_iv能正确解密AES加密的request参数
- [ ] 能正确查询订单获取券码链接 - [ ] 能正确查询订单获取券码链接
- [ ] 权益码不存在时返回错误提示 - [ ] 权益码不存在时返回错误提示
**测试用例**
| 用例编号 | 测试场景 | 前置条件 | 输入数据 | 预期结果 |
|---------|---------|---------|---------|----------|
| TC-3.1.6-001 | 正常查询成功 | 订单存在且有券码链接 | type=有效服务编码, request=有效加密参数 | code=0, 返回codeUrl和backUrl |
| TC-3.1.6-002 | 必填参数缺失-type | - | 不传type | code=2, msg="参数错误" |
| TC-3.1.6-003 | 服务编码不存在 | 数据库无该服务编码映射 | type=999999 | code=4, msg="暂不支持此服务" |
| TC-3.1.6-004 | AES解密失败 | 服务编码存在 | type=有效服务编码, request=无效加密字符串 | code=2, msg="参数错误" |
| TC-3.1.6-005 | 权益码不存在 | AES解密成功订单不存在 | request解密后code不存在 | code=1, msg="订单不存在" |
--- ---
### 3.2 券码管理模块 ### 3.2 券码管理模块