5.6 KiB
schema, ticket, title, consumer, author, change_type, backend_status, gateway_status, frontend_status, frontend_owner, frontend_ref, target_release, verified_at, status_note, updated_at, base
| schema | ticket | title | consumer | author | change_type | backend_status | gateway_status | frontend_status | frontend_owner | frontend_ref | target_release | verified_at | status_note | updated_at | base |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| hl-changelog/v2 | 7148 | 供应商账户停用审批及审批结果状态调整 | admin | lc(GIT) | 新增接口 | deployed | verified | verified | mmg | 7245780a | 2026-09-06 | 后端已部署并通过 TEST;前端待接入停用审批入口与状态刷新 | 2026-09-06 | dev-v3 |
供应商:账户停用审批及审批结果状态调整
关键变化
停用审批通过后账户停用、驳回后启用;原账户新增审批通过后启用、驳回后改为停用。审批状态与账户状态分别展示。
二、变更接口清单
| # | 接口 | 方法 | 路径 | 变更类型 | 说明 |
|---|---|---|---|---|---|
| 1 | 申请账户停用 | POST | /admin/supplier/bank-accounts/{accountId}/disable |
新增接口 | 复用现有账户审批模板与表单 |
三、接口详情
1. 申请账户停用 POST /admin/supplier/bank-accounts/{accountId}/disable
VO: SupplierAccountDisableReqVO / BankAccountSubmitResultRespVO
使用场景
供应商账户页面对非默认启用账户提交停用申请。
入参
| 字段 | 位置 | 类型 | 必填 | 约束 | 说明 |
|---|---|---|---|---|---|
| accountId | Path | String | 是 | 正整数 | 目标账户 ID |
| expectedUpdateTime | Body | String | 是 | yyyy-MM-dd HH:mm:ss |
账户详情返回的 updateTime |
出参 Result<BankAccountSubmitResultVO>
| 字段 | 类型 | 说明 |
|---|---|---|
| accountId / approvalLogId | String | 账户 / 本次审批记录 ID |
| requestNo | String | 同次申请重试时不变 |
| provider | String | 新停用申请为 WECOM |
| approvalStatus / approvalStatusName | String | 审批状态 / 中文名称 |
| spNo / spStatus | String 或 null | 企微单号 / 企微原始状态,尚未取得时为 null |
| syncStatus | String | REQUESTING 待同步、APPLIED 已应用、APPLY_FAILED 应用失败、RESULT_UNCERTAIN 待对账 |
| accountStatus | String | 当前账户状态 |
| isDefault | String | NO 非默认;历史申请重试返回当前默认标记 |
| submittedAt / finishedAt | String 或 null | 提交 / 审批完成时间,尚未发生时为 null |
请求示例
POST /admin/supplier/bank-accounts/7148001/disable,携带正常管理端登录认证。
{"expectedUpdateTime":"2026-09-06 12:00:00"}
响应示例
{"code":200,"message":"成功","success":true,"data":{"accountId":"7148001","approvalLogId":"7148002","requestNo":"SUP-ACC-DISABLE-example","provider":"WECOM","approvalStatus":"PENDING","approvalStatusName":"审核中","spNo":"202609060001","spStatus":null,"syncStatus":"REQUESTING","accountStatus":"ACTIVE","isDefault":"NO","submittedAt":"2026-09-06 12:01:00","finishedAt":null}}
错误响应
{"code":395014,"message":"数据已被他人修改,请刷新后重试","success":false,"data":null}
空数据 / 降级响应
不存在返回 395001;外部提交失败时可能返回已保留的审批与 APPLY_FAILED 或 RESULT_UNCERTAIN,不会把账户直接停用。
业务边界
- 仅 SUPER_ADMIN 且具备
supplier:account:manage、supplier:approval:submit可提交。主体须启用、账户须启用且非默认,主体与账户均不能有在途审批。门禁失败不新建申请;企微失败可能保留申请,须同时检查syncStatus,不能把code=200当作已停用。
四、契约约束与正确调用方式
从最新账户详情取版本;同次失败重试复用原版本。已结束申请后重新申请须刷新版本。RESULT_UNCERTAIN 停止自动重提并等待对账;APPLY_FAILED 沿用原申请重试。默认账户须先切换默认。前端新增停用动作并在提交后刷新账户和审批状态。
五、数据库行为
审批中账户保持启用;只有停用审批通过才转为停用。驳回或撤销保留启用,重复请求不重复应用结果。
六、边界行为
未登录由网关拒绝;400 参数无效;395001 账户不存在;395004 无权限;395005 账户状态或默认标记不允许;395010 主体未启用;395011 账户已有在途审批;395014 版本过期。主体审批冻结返回 395005。
六.5、枚举 / 数据字典
accountStatus(账户状态)
| 值 | 中文 | 说明 |
|---|---|---|
| ACTIVE | 启用 | 停用待审或驳回后保持可用 |
| DISABLED | 停用 | 停用通过或新账户审批驳回 |
| PENDING | 待审批 | 原新账户审批未结束 |
| REJECTED | 驳回 | 仅兼容历史账户记录 |
approvalStatus(审批状态)
PENDING 审核中;APPROVED 已通过;REJECTED 已驳回;CANCELED 已撤销。终态重试返回账户当前状态,不据旧审批推导账户状态。
七、不影响范围
本单涉及供应商账户停用入口和审批结果状态;已有账户请求、查询返回结构保持兼容。
八、测试环境已验证
真实企微审批已验证:新增账户通过后为 ACTIVE、驳回后为 DISABLED;停用审批待审期间保持 ACTIVE,驳回后仍为 ACTIVE,通过后为 DISABLED。同版本重试复用原审批单;未登录、缺参、非法账户 ID、旧版本、在途审批和状态不允许均按契约拒绝,失败请求未新增审批或改写账户。测试账户最终均为非默认 DISABLED,原默认账户未变化。
十、相关文档
关联 / 联系人
- 后端负责人:@lc