修复 拉卡拉 分账接口bug
This commit is contained in:
parent
5f796adc02
commit
c34aa3365e
@ -42,7 +42,7 @@ public class LklLedgerMember implements Serializable {
|
||||
private String split_rule_source;
|
||||
private String ret_url;
|
||||
private String apply_id;
|
||||
private String audit_status;
|
||||
private Integer audit_status;
|
||||
private String audit_status_text;
|
||||
private String remark;
|
||||
private Long mch_id;
|
||||
|
||||
@ -68,8 +68,9 @@ public class LakalaController extends BaseControllerImpl {
|
||||
return lakalaPayService.applyLedgerMerReceiverBind(paramsJSON);
|
||||
}
|
||||
|
||||
// https://mall.gpxscs.cn/api/mobile/shop/lakala/ledger/applyLedgerMerReceiverBindNotify
|
||||
@ApiOperation(value = "分账关系绑定申请异步回调通知", notes = "分账关系绑定申请异步回调通知")
|
||||
@RequestMapping(value = "/ledger/applyBindNotify", method = RequestMethod.POST)
|
||||
@RequestMapping(value = "/ledger/applyLedgerMerReceiverBindNotify", method = RequestMethod.POST)
|
||||
public JSONObject applyBindNotify(HttpServletRequest request) {
|
||||
return lakalaPayService.applyLedgerMerReceiverBindNotify(request);
|
||||
}
|
||||
|
||||
@ -21,6 +21,15 @@ public interface LklLedgerMemberService extends IBaseService<LklLedgerMember> {
|
||||
*/
|
||||
LklLedgerMember getByMerCupNo(String merCupNo);
|
||||
|
||||
/**
|
||||
* 根据申请单号和审核状态查询记录
|
||||
*
|
||||
* @param applyId
|
||||
* @param auditStatus
|
||||
* @return
|
||||
*/
|
||||
LklLedgerMember getByApplyId(String applyId, Integer auditStatus);
|
||||
|
||||
/**
|
||||
* 根据银联商户号新增或修改记录
|
||||
*
|
||||
|
||||
@ -20,6 +20,7 @@ import com.lkl.laop.sdk.request.*;
|
||||
import com.lkl.laop.sdk.request.model.V3LabsTradeLocationInfo;
|
||||
import com.lkl.laop.sdk.request.model.V3LabsTradePreorderWechatBus;
|
||||
import com.suisung.mall.common.api.CommonResult;
|
||||
import com.suisung.mall.common.constant.CommonConstant;
|
||||
import com.suisung.mall.common.exception.ApiException;
|
||||
import com.suisung.mall.common.feignService.ShopService;
|
||||
import com.suisung.mall.common.modules.lakala.LklLedgerMember;
|
||||
@ -425,6 +426,8 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
@Override
|
||||
public CommonResult applyLedgerMer(JSONObject paramsJSON) {
|
||||
log.info("商户分账业务开通申请开始");
|
||||
|
||||
// TODO 判断是否已经申请过?
|
||||
// 1. 配置初始化
|
||||
initLKLSDK();
|
||||
|
||||
@ -449,11 +452,12 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
String splitEntrustFilePath = fileUploadResp.getStr("attFileId");
|
||||
req.setSplitEntrustFilePath(splitEntrustFilePath); //比如:G1/M00/06/64/CrFdEmBQc-aAGc_XAAAiIbS3WIE960.pdf;
|
||||
|
||||
String domain = projectDomain;
|
||||
if (isProd()) {
|
||||
projectDomain = projectDomain + "/api";
|
||||
domain += "/api";
|
||||
}
|
||||
// 给拉卡拉通知的回调地址
|
||||
String retUrl = projectDomain + "/mobile/shop/lakala/ledger/applyLedgerMerNotify";
|
||||
String retUrl = domain + "/mobile/shop/lakala/ledger/applyLedgerMerNotify";
|
||||
req.setRetUrl(retUrl);
|
||||
|
||||
paramsJSON.set("orderNo", req.getOrderNo());
|
||||
@ -502,6 +506,7 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
@Override
|
||||
public JSONObject applyLedgerMerNotify(HttpServletRequest request) {
|
||||
log.info("商户分账申请业务异步通知开始");
|
||||
|
||||
// 验签
|
||||
String authorization = request.getHeader("Authorization");
|
||||
String requestBody = LakalaUtil.getBody(request);
|
||||
@ -520,13 +525,21 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
respData.put("retMsg", "响应处理失败!");
|
||||
|
||||
if (paramsJSON != null) {
|
||||
// JSONObject reqData = (JSONObject) paramsJSON.get("respData");
|
||||
// if (ObjectUtil.isEmpty(reqData)) {
|
||||
// return respData;
|
||||
// }
|
||||
String applyId = paramsJSON.getStr("applyId");
|
||||
if (StrUtil.isBlank(applyId)) {
|
||||
log.info("商户分账申请业务回调:applyId为空");
|
||||
respData.put("retMsg", "applyId为空!");
|
||||
return respData;
|
||||
}
|
||||
|
||||
if (lklLedgerMemberService.getByApplyId(applyId, CommonConstant.Enable) != null) {
|
||||
respData.put("retCode", lklSuccessCode);
|
||||
respData.put("retMsg", "操作成功!");
|
||||
log.info("商户分账申请业务回调:已处理成功,不需再重新处理");
|
||||
}
|
||||
|
||||
// 更改本地分账记录状态数据
|
||||
Boolean success = lklLedgerMemberService.updateAuditResult(paramsJSON.getStr("applyId"),
|
||||
Boolean success = lklLedgerMemberService.updateAuditResult(applyId,
|
||||
paramsJSON.getStr("merInnerNo"),
|
||||
paramsJSON.getStr("merCupNo"),
|
||||
paramsJSON.getStr("entrustFileName"),
|
||||
@ -689,11 +702,12 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
String splitEntrustFileBase64 = UploadUtil.URLFileToBase64(paramsJSON.getStr("entrustFile")); // 这个是 url 地址,不是 base64 字节码
|
||||
req.setEntrustFileName(fileName);
|
||||
|
||||
String domain = projectDomain;
|
||||
if (isProd()) {
|
||||
projectDomain = projectDomain + "/api";
|
||||
domain += "/api";
|
||||
}
|
||||
// 给拉卡拉通知的回调地址
|
||||
String retUrl = projectDomain + "/mobile/shop/lakala/ledger/applyLedgerMerReceiverBindNotify";
|
||||
String retUrl = domain + "/mobile/shop/lakala/ledger/applyLedgerMerReceiverBindNotify";
|
||||
req.setRetUrl(retUrl);
|
||||
|
||||
// 文件上传到拉卡拉服务器
|
||||
@ -748,9 +762,11 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
*/
|
||||
@Override
|
||||
public JSONObject applyLedgerMerReceiverBindNotify(HttpServletRequest request) {
|
||||
log.debug("分账绑定关系申请业务异步通知开始");
|
||||
// 验签
|
||||
String authorization = request.getHeader("Authorization");
|
||||
String requestBody = LakalaUtil.getBody(request);
|
||||
log.debug("分账绑定关系申请业务回调返回参数:{}", requestBody);
|
||||
|
||||
boolean checkSuccess = LakalaUtil.verify(authorization, requestBody, lklNotifyCerPath);
|
||||
if (!checkSuccess) {
|
||||
|
||||
@ -44,6 +44,24 @@ public class LklLedgerMemberServiceImpl extends BaseServiceImpl<LklLedgerMemberM
|
||||
return getOne(queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据申请单号和审核状态查询记录
|
||||
*
|
||||
* @param applyId
|
||||
* @param auditStatus
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public LklLedgerMember getByApplyId(String applyId, Integer auditStatus) {
|
||||
if (StrUtil.isBlank(applyId) || auditStatus == null) {
|
||||
return null;
|
||||
}
|
||||
QueryWrapper<LklLedgerMember> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("apply_id", applyId);
|
||||
queryWrapper.eq("audit_status", auditStatus);
|
||||
return getOne(queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据银联商户号新增或修改记录
|
||||
*
|
||||
@ -57,7 +75,7 @@ public class LklLedgerMemberServiceImpl extends BaseServiceImpl<LklLedgerMemberM
|
||||
}
|
||||
|
||||
QueryWrapper<LklLedgerMember> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq("mer_cup_no", record.getMer_cup_no());
|
||||
queryWrapper.eq("mer_cup_no", record.getMer_cup_no()).eq("mch_id", record.getMch_id());
|
||||
List<LklLedgerMember> existsRecordList = list(queryWrapper);
|
||||
if (!CollectionUtil.isEmpty(existsRecordList)
|
||||
&& existsRecordList.get(0) != null
|
||||
|
||||
@ -90,8 +90,8 @@ public class LklLedgerMerReceiverBindServiceImpl extends BaseServiceImpl<LklLedg
|
||||
updateWrapper.set("receiver_no", receiverNo);
|
||||
updateWrapper.set("mer_inner_no", merInnerNo);
|
||||
updateWrapper.set("mer_cup_no", merCupNo);
|
||||
updateWrapper.set("split_entrust_file_name", entrustFileName);
|
||||
updateWrapper.set("split_entrust_file_path", entrustFilePath);
|
||||
updateWrapper.set("entrust_file_name", entrustFileName);
|
||||
updateWrapper.set("entrust_file_path", entrustFilePath);
|
||||
updateWrapper.set("audit_status", auditStatus);
|
||||
updateWrapper.set("audit_status_text", auditStatusText);
|
||||
updateWrapper.set("remark", remark);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user