入驻流程 fix bug,增加审核错误返回逻辑

This commit is contained in:
Jack 2025-06-24 00:01:51 +08:00
parent 4d05f5ad16
commit d856c1c501
4 changed files with 73 additions and 9 deletions

View File

@ -695,7 +695,6 @@ public class LakalaApiServiceImpl implements LakalaApiService {
return JSONUtil.createObj().set("code", "FAIL").set("retMsg", checkResult.getSecond()); return JSONUtil.createObj().set("code", "FAIL").set("retMsg", checkResult.getSecond());
} }
String errMsg = "入网电子合同申请回调:"; String errMsg = "入网电子合同申请回调:";
JSONObject respData = new JSONObject(); JSONObject respData = new JSONObject();
respData.set("code", "FAIL").set("message", "处理失败!"); respData.set("code", "FAIL").set("message", "处理失败!");
@ -1140,6 +1139,10 @@ public class LakalaApiServiceImpl implements LakalaApiService {
String errorMsg = lakalaRespJSON != null String errorMsg = lakalaRespJSON != null
? lakalaRespJSON.getStr("retMsg", "未知错误") ? lakalaRespJSON.getStr("retMsg", "未知错误")
: "响应解析失败"; : "响应解析失败";
shopMchEntryService.updateMerchEntryApprovalByMchId(
null, mchMobile, CommonConstant.MCH_APPR_STA_NOPASS, "创建分账接收方失败:" + lakalaRespJSON.getStr("retMsg")
);
return CommonResult.failed(I18nUtil._(errorMsg)); return CommonResult.failed(I18nUtil._(errorMsg));
} }
@ -1164,6 +1167,10 @@ public class LakalaApiServiceImpl implements LakalaApiService {
return CommonResult.success(receiver, "创建接收方成功!"); return CommonResult.success(receiver, "创建接收方成功!");
} catch (Exception e) { } catch (Exception e) {
shopMchEntryService.updateMerchEntryApprovalByMchId(
null, mchMobile, CommonConstant.MCH_APPR_STA_NOPASS, "创建分账接收方失败:" + e.getMessage()
);
log.error("接收方创建失败:{}", e.getMessage(), e); log.error("接收方创建失败:{}", e.getMessage(), e);
throw new ApiException(I18nUtil._("创建接收方失败: {}" + e.getMessage()), e); throw new ApiException(I18nUtil._("创建接收方失败: {}" + e.getMessage()), e);
} }
@ -1308,7 +1315,12 @@ public class LakalaApiServiceImpl implements LakalaApiService {
// 10. 返回结果 // 10. 返回结果
if (successCount == 0) { if (successCount == 0) {
return Pair.of(false, "所有分账绑定均失败"); if (lklLedgerMember != null) {
shopMchEntryService.updateMerchEntryApprovalByMchId(
lklLedgerMember.getMch_id(), "", CommonConstant.MCH_APPR_STA_NOPASS, "分账接收方绑定失败:"
);
}
return Pair.of(false, "分账接收方绑定失败");
} else if (successCount < totalCount) { } else if (successCount < totalCount) {
return Pair.of(true, "部分提交成功(" + successCount + "/" + totalCount + "),待审核中"); return Pair.of(true, "部分提交成功(" + successCount + "/" + totalCount + "),待审核中");
} else { } else {
@ -1360,10 +1372,10 @@ public class LakalaApiServiceImpl implements LakalaApiService {
// 5. 审核状态判断仅处理通过的情况 // 5. 审核状态判断仅处理通过的情况
if (!"1".equals(auditStatus)) { if (!"1".equals(auditStatus)) {
log.warn("商家绑定分账接收方异步通知,申请被驳回不做任何操作,返回状态:{}", auditStatus); log.warn("商家绑定分账接收方异步通知,申请被驳回不做任何操作,返回状态:{}", auditStatus);
// shopMchEntryService.updateMerchEntryApprovalByMchId( shopMchEntryService.updateMerchEntryApprovalByMerCupNo(
// 1L, "", CommonConstant.MCH_APPR_STA_NOPASS, "商家绑定分账接收被驳回" merCupNo, CommonConstant.MCH_APPR_STA_NOPASS, "分账接收方绑定被驳回"
// ); );
return JSONUtil.createObj().put("code", "FAIL").put("message", "申请被驳回不做任何操作"); return JSONUtil.createObj().put("code", "FAIL").put("message", "分账接收方绑定被驳回!");
} }
// 6. 更新绑定记录的状态信息 // 6. 更新绑定记录的状态信息
@ -1390,7 +1402,7 @@ public class LakalaApiServiceImpl implements LakalaApiService {
shopMchEntryService.checkMerchEntryFinished("", merCupNo); shopMchEntryService.checkMerchEntryFinished("", merCupNo);
// 8. 日志记录并返回成功响应 // 8. 日志记录并返回成功响应
log.debug("商家绑定分账接收方异步通知处理完成merCupNo{}", merCupNo); log.debug("商家绑定分账接收方异步通知处理完成merCupNo{}", merCupNo);
return JSONUtil.createObj().put("code", "SUCCESS").put("message", "操作成功"); return JSONUtil.createObj().put("code", "SUCCESS").put("message", "分账接收方绑定成功");
} catch (Exception e) { } catch (Exception e) {
log.error("商家绑定分账接收方异步通知处理发生异常", e); log.error("商家绑定分账接收方异步通知处理发生异常", e);

View File

@ -501,7 +501,6 @@ public class LklTkServiceImpl {
urlPath = "/registration/merchant"; urlPath = "/registration/merchant";
} }
// String urlPath = isProd() ? "/registration/merchant" : "/sit/htkregistration/merchant"; // String urlPath = isProd() ? "/registration/merchant" : "/sit/htkregistration/merchant";
try { try {
logger.info("进件请求参数:{}", JSONUtil.toJsonStr(formData)); logger.info("进件请求参数:{}", JSONUtil.toJsonStr(formData));
@ -594,16 +593,19 @@ public class LklTkServiceImpl {
return new JSONObject().set("code", "500").set("message", "参数解析出错"); return new JSONObject().set("code", "500").set("message", "参数解析出错");
} }
ShopMchEntry shopMchEntry = shopMchEntryService.getShopMerchEntryByMerInnerNo(merInnerNo);
// 校验审核状态 // 校验审核状态
if (!"SUCCESS".equals(auditStatus) && !"REVIEW_PASS".equals(auditStatus)) { if (!"SUCCESS".equals(auditStatus) && !"REVIEW_PASS".equals(auditStatus)) {
logger.debug("返回的审核状态:{}", auditStatus); logger.debug("返回的审核状态:{}", auditStatus);
shopMchEntryService.updateMerchEntryApprovalByMchId(shopMchEntry.getId(), "", CommonConstant.MCH_APPR_STA_LKL_NOPASS, "进件失败:" + dataJSON.getStr("remark"));
return new JSONObject().set("code", "FAIL").set("message", "返回审核状态有误"); return new JSONObject().set("code", "FAIL").set("message", "返回审核状态有误");
} }
// RMK 拉卡拉进价提交成功,边处理周边的数据边等待审核异步通知 // RMK 拉卡拉进价提交成功,边处理周边的数据边等待审核异步通知
// 给商家入驻表增加拉卡拉的商户号和拉卡拉返回的数据 // 给商家入驻表增加拉卡拉的商户号和拉卡拉返回的数据
ShopMchEntry shopMchEntry = shopMchEntryService.getShopMerchEntryByMerInnerNo(merInnerNo);
if (ObjectUtil.isEmpty(shopMchEntry)) { if (ObjectUtil.isEmpty(shopMchEntry)) {
logger.error("拉卡拉进件异步通知:{}内部商户号入驻信息不存在!", merInnerNo); logger.error("拉卡拉进件异步通知:{}内部商户号入驻信息不存在!", merInnerNo);
return new JSONObject().put("code", "500").put("message", merInnerNo + "内部商户号入驻信息不存在"); return new JSONObject().put("code", "500").put("message", merInnerNo + "内部商户号入驻信息不存在");

View File

@ -213,6 +213,16 @@ public interface ShopMchEntryService {
*/ */
Boolean updateMerchEntryApprovalByMchId(Long mchId, String mchMobile, Integer approvalStatus, String approvalRemark); Boolean updateMerchEntryApprovalByMchId(Long mchId, String mchMobile, Integer approvalStatus, String approvalRemark);
/**
* 更新商家入驻申请的审批状态和审批备注
*
* @param merCupNo 拉卡拉银联商户号(唯一)
* @param approvalStatus 审批状态1-已通过2-未通过3-待审核4-未申请过5-已提交拉卡拉审核
* @param approvalRemark 审批备注
* @return 更新成功返回 true否则返回 false
*/
Boolean updateMerchEntryApprovalByMerCupNo(String merCupNo, Integer approvalStatus, String approvalRemark);
/** /**
* 根据商户号或商家手机号修改商户入驻信息多个状态 * 根据商户号或商家手机号修改商户入驻信息多个状态
* *

View File

@ -1190,6 +1190,46 @@ public class ShopMchEntryServiceImpl extends BaseServiceImpl<ShopMchEntryMapper,
} }
} }
/**
* 更新商家入驻申请的审批状态和审批备注
*
* @param merCupNo 拉卡拉银联商户号(唯一)
* @param approvalStatus 审批状态1-已通过2-未通过3-待审核4-未申请过5-已提交拉卡拉审核
* @param approvalRemark 审批备注
* @return 更新成功返回 true否则返回 false
*/
@Override
public Boolean updateMerchEntryApprovalByMerCupNo(String merCupNo, Integer approvalStatus, String approvalRemark) {
if (StrUtil.isBlank(merCupNo)) {
log.error("更新入驻审批状态和备注失败merCupNo 为空");
return false;
}
if (approvalStatus == null) {
log.error("更新入驻审批状态和备注失败approvalStatus 为空");
return false;
}
try {
// 2. 创建 UpdateWrapper 对象用于构建更新条件
UpdateWrapper<ShopMchEntry> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("lkl_mer_cup_no", merCupNo).set("approval_status", approvalStatus);
if (StrUtil.isNotBlank(approvalRemark)) {
updateWrapper.set("approval_remark", approvalRemark);
}
// 5. 执行更新操作并返回结果
return update(updateWrapper);
} catch (Exception e) {
// 6. 异常处理记录异常信息避免程序中断
log.error("更新商家入驻审批状态和备注时发生异常", e);
return false; // 发生异常时返回 false
}
}
@Override @Override
public Boolean updateMerchEntryEcResultUrlByMchId(Long mchId, String lklEcResultUrl) { public Boolean updateMerchEntryEcResultUrlByMchId(Long mchId, String lklEcResultUrl) {
// 检查参数是否有效 // 检查参数是否有效