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

@@ -1402,11 +1402,22 @@ public class OrderService {
return;
}
adapayMemberAccount.setStatus(Constants.TWO);
if (Objects.nonNull(jsonObject.getString("audit_desc"))) {
adapayMemberAccount.setRemark(jsonObject.getString("audit_desc"));
String auditDesc = jsonObject.getString("audit_desc");
if (StringUtils.isNotBlank(auditDesc)) {
adapayMemberAccount.setRemark(auditDesc);
adapayMemberAccount.setAuditDesc(auditDesc);
}
// 回调上送的 audit_state 优先使用;缺省时根据失败类型兜底
String auditState = jsonObject.getString("audit_state");
if (StringUtils.isBlank(auditState)) {
auditState = "B";
}
adapayMemberAccount.setAuditState(auditState);
// 逻辑删除记录,并删除缓存
adapayMemberAccountService.updateAdapayMemberAccount(adapayMemberAccount);
if (StringUtils.isNotBlank(adapayMemberAccount.getMerchantId())) {
redisCache.deleteObject(CacheConstants.ADAPAY_MEMBER_ACCOUNT + adapayMemberAccount.getMerchantId());
}
}
/**
@@ -1424,11 +1435,26 @@ public class OrderService {
return;
}
adapayMemberAccount.setStatus(Constants.ONE);
if (Objects.nonNull(jsonObject.getString("audit_desc"))) {
adapayMemberAccount.setRemark(jsonObject.getString("audit_desc"));
String auditDesc = jsonObject.getString("audit_desc");
if (StringUtils.isNotBlank(auditDesc)) {
adapayMemberAccount.setRemark(auditDesc);
adapayMemberAccount.setAuditDesc(auditDesc);
}
// 优先使用回调上送的 audit_state未上送时按是否携带结算账户区分 D/E
String auditState = jsonObject.getString("audit_state");
String settleAccountId = jsonObject.getString("settle_account_id");
if (StringUtils.isBlank(auditState)) {
auditState = StringUtils.isNotBlank(settleAccountId) ? "E" : "D";
}
adapayMemberAccount.setAuditState(auditState);
if (StringUtils.isNotBlank(settleAccountId)) {
adapayMemberAccount.setSettleAccountId(settleAccountId);
}
adapayMemberAccount.setDelFlag(DelFlagEnum.NORMAL.getValue());
adapayMemberAccountService.updateAdapayMemberAccount(adapayMemberAccount);
if (StringUtils.isNotBlank(adapayMemberAccount.getMerchantId())) {
redisCache.deleteObject(CacheConstants.ADAPAY_MEMBER_ACCOUNT + adapayMemberAccount.getMerchantId());
}
}
/**

View File

@@ -320,4 +320,27 @@ public class AdapayMemberController extends BaseController {
}
return result;
}
/**
* V2 聚合开户详情
* 详见 docs/汇付开户V2流程计划.md
* 页面只需要这一个接口即可获得:状态、主操作、可用动作、会员资料、结算账户、提示
*/
@PostMapping("/v2/detail")
public AjaxResult getAdapayOpenDetailV2(@RequestBody AdapayMemberInfoDTO dto) {
AjaxResult result;
try {
if (StringUtils.isBlank(dto.getMerchantId())) {
throw new BusinessException(ReturnCodeEnum.CODE_PARAM_NOT_NULL_ERROR);
}
result = AjaxResult.success(adapayService.getAdapayMemberOpenDetailV2(dto.getMerchantId()));
} catch (BusinessException e) {
logger.warn("查询汇付开户聚合详情V2 warn", e);
result = AjaxResult.error(e.getMessage());
} catch (Exception e) {
logger.error("查询汇付开户聚合详情V2 error", e);
result = AjaxResult.error("查询汇付开户聚合详情失败");
}
return result;
}
}