# 汇付会员页面重构计划

## Summary

基于 AdaPay 官方文档、SDK 能力和当前仓库现状，重构现有商户详情页里的汇付用户区域，统一提供个人用户、企业用户、结算账户三类操作入口，并补齐后端接口与页面状态流。

- 一商户仅维护一个当前有效的汇付用户关系
- 一商户仅维护一个当前有效的结算账户
- 删除汇付用户按本地解绑落地，不做远端 AdaPay 用户对象删除

## 个人用户与企业用户

- 个人用户 `Member`
  - 轻量开户，无审核附件
  - 核心字段：`nickname`、`gender`、`location`、`email`
  - 支持创建、查询、更新
  - 结算账户单独创建
- 企业用户 `CorpMember`
  - 需要企业实名资料和附件压缩包
  - 审核状态：`A/B/C/D/E`
  - 支持创建、查询、更新
  - 结算账户单独创建或删除
- 结算账户 `SettleAccount`
  - 个人和企业都独立维护
  - 支持创建、查询、删除
  - 删除用户前必须先删除结算账户

## 本次实现

### 页面与交互

- 重构商户详情页“钱包汇总”中的汇付用户区域
- 页面拆成三块：
  - 用户概览
  - 用户操作
  - 结算账户操作
- 新增用户时先选个人/企业，再进入对应表单
- 删除用户按钮仅在没有结算账户时可用
- 企业用户保留审核状态和失败原因展示

### 后端接口

- `POST /adapay/member/createAdapayMember`
- `POST /adapay/member/createCorpMember`
- `POST /adapay/member/selectAdapayMember`
- `POST /adapay/member/updateAdapayMember`
- `POST /adapay/member/deleteAdapayMember`
- `POST /adapay/member/createSettleAccount`
- `POST /adapay/member/selectSettleAccount`
- `POST /adapay/member/deleteSettleAccount`

### 后端类型

- `CreatePersonalMemberDTO`
- `CreateCorpMemberDTO`
- `UpdatePersonalMemberDTO`
- `UpdateCorpMemberDTO`
- `CreateSettleAccountDTO`
- `DeleteAdapayMemberDTO`
- `AdapayMemberAggregateVO`

### 服务规则

- 个人用户创建与结算账户创建彻底拆开
- 企业用户创建与结算账户创建彻底拆开
- 用户查询返回聚合结果，兼容旧字段并补充：
  - `memberType`
  - `adapayMember`
  - `adapayCorpMember`
  - `settleAccountList`
  - `canDeleteUser`
  - `deleteBlockReason`
- 删除结算账户后只清空本地 `settle_account_id`，不删除用户绑定关系
- 删除用户前校验当前商户下不存在结算账户

## 测试结论

- 后端：`mvn -pl jsowell-admin -am compile -DskipTests` 通过
- 前端：对本次改动文件执行 `eslint --no-ignore` 通过

## Assumptions

- “删除汇付用户”按本地解绑实现，不做 AdaPay 远端用户删除
- 当前实现边界仍是一商户对应一个当前有效汇付用户
- 不支持同一商户同时维护多个有效汇付用户
