update 优化汇付开户流程

This commit is contained in:
jsowell
2026-05-29 08:43:45 +08:00
parent 908c6282bb
commit 6f659783b5
10 changed files with 516 additions and 9 deletions

View File

@@ -0,0 +1,35 @@
package com.jsowell.common.enums.adapay;
/**
* 汇付开户 V2 可用操作枚举。
*
* <p>由后端基于 {@link AdapayOpenStatusEnum} 计算,前端只渲染。
*/
public enum AdapayOpenActionEnum {
REFRESH("REFRESH", "刷新"),
CREATE_PERSONAL_MEMBER("CREATE_PERSONAL_MEMBER", "创建个人用户"),
CREATE_CORP_MEMBER("CREATE_CORP_MEMBER", "创建企业用户"),
UPDATE_PERSONAL_MEMBER("UPDATE_PERSONAL_MEMBER", "更新个人资料"),
UPDATE_CORP_MEMBER("UPDATE_CORP_MEMBER", "更新企业资料"),
RESUBMIT_CORP_MEMBER("RESUBMIT_CORP_MEMBER", "重新提交企业开户"),
CREATE_SETTLE_ACCOUNT("CREATE_SETTLE_ACCOUNT", "创建结算账户"),
DELETE_SETTLE_ACCOUNT("DELETE_SETTLE_ACCOUNT", "删除结算账户"),
DELETE_MEMBER("DELETE_MEMBER", "删除汇付用户");
private final String value;
private final String label;
AdapayOpenActionEnum(String value, String label) {
this.value = value;
this.label = label;
}
public String getValue() {
return value;
}
public String getLabel() {
return label;
}
}

View File

@@ -0,0 +1,51 @@
package com.jsowell.common.enums.adapay;
/**
* 汇付开户 V2 状态机
*
* <p>页面进入后只关心一个业务状态:当前运营商的汇付开户进度。
*/
public enum AdapayOpenStatusEnum {
/** 无有效 adapay_member_account */
NONE("NONE", "未开户"),
/** 个人用户已创建,未查询到结算账户 */
PERSONAL_OPENED_NO_SETTLE("PERSONAL_OPENED_NO_SETTLE", "个人已开户,待创建结算账户"),
/** 个人用户已创建,且存在结算账户 */
PERSONAL_COMPLETED("PERSONAL_COMPLETED", "个人开户完成"),
/** 企业 audit_state=A 或本地状态待审核 */
CORP_AUDITING("CORP_AUDITING", "企业审核中"),
/** 企业 audit_state=B/C 或本地状态失败 */
CORP_FAILED("CORP_FAILED", "企业开户失败"),
/** 企业 audit_state=D或企业审核通过但无结算账户 */
CORP_OPENED_NO_SETTLE("CORP_OPENED_NO_SETTLE", "企业已开户,待创建结算账户"),
/** 企业 audit_state=E 或存在结算账户 */
CORP_COMPLETED("CORP_COMPLETED", "企业开户完成");
private final String value;
private final String label;
AdapayOpenStatusEnum(String value, String label) {
this.value = value;
this.label = label;
}
public String getValue() {
return value;
}
public String getLabel() {
return label;
}
public boolean isCorp() {
return this == CORP_AUDITING
|| this == CORP_FAILED
|| this == CORP_OPENED_NO_SETTLE
|| this == CORP_COMPLETED;
}
public boolean isPersonal() {
return this == PERSONAL_OPENED_NO_SETTLE || this == PERSONAL_COMPLETED;
}
}