|
@@ -87,10 +87,10 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
limit = (limit != null && limit > 0) ? limit : 20;
|
|
|
count = (count != null && count > 0) ? count : 10;
|
|
|
|
|
|
- List<WxCbPayDoc> wxCbPayDocs = null;
|
|
|
+ List<WxCbPayDoc> wxCbPayDocList = null;
|
|
|
try {
|
|
|
- wxCbPayDocs = wxCbPayDocService.selectBeDeclaredData(limit);
|
|
|
- if (wxCbPayDocs == null || wxCbPayDocs.isEmpty()) {
|
|
|
+ wxCbPayDocList = wxCbPayDocService.selectBeDeclaredData(limit);
|
|
|
+ if (wxCbPayDocList == null || wxCbPayDocList.isEmpty()) {
|
|
|
logger.info("未查到待申报微信推海关的支付数据");
|
|
|
return;
|
|
|
}
|
|
@@ -100,17 +100,17 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
}
|
|
|
|
|
|
//更新状态申报中
|
|
|
- wxCbPayDocs.forEach(wxCbPayDoc -> {
|
|
|
+ wxCbPayDocList.forEach(wxCbPayDoc -> {
|
|
|
wxCbPayDoc.setDocStatus(WxDict.PaymentDocStatus.i_01.getItem());
|
|
|
});
|
|
|
|
|
|
try {
|
|
|
- int reslut = wxCbPayDocService.updateBatch(wxCbPayDocs);
|
|
|
+ int reslut = wxCbPayDocService.updateBatch(wxCbPayDocList);
|
|
|
if (reslut < 0) {
|
|
|
throw new Exception("批量更新失败影响行数为0");
|
|
|
}
|
|
|
} catch(Exception e) {
|
|
|
- logger.error("微信报关数据批量更失败data:"+wxCbPayDocs, e);
|
|
|
+ logger.error("微信报关数据批量更失败data:"+ wxCbPayDocList, e);
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -120,7 +120,7 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
//待通知的用户
|
|
|
List<MerchNoti> merchNotis = Lists.newArrayList();
|
|
|
|
|
|
- wxCbPayDocs.forEach(wxCbPayDoc -> {
|
|
|
+ wxCbPayDocList.forEach(wxCbPayDoc -> {
|
|
|
|
|
|
//获取商户信息 从缓存中去 缓存不存在 从数据库重取
|
|
|
MerchPayCfg merchPayCfg = getMerchPayCfgCache(wxCbPayDoc.getMerchSn());
|
|
@@ -135,7 +135,6 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
if (merchPayCfg == null) {
|
|
|
wxCbPayDoc.setReturnCode("FAIL");
|
|
|
wxCbPayDoc.setReturnMsg("商户编号为【"+wxCbPayDoc.getMerchSn()+"】的商户支付配置信息不存在");
|
|
|
- wxCbPayDoc.setDocStatus(WxDict.PaymentDocStatus.i_13.getItem());
|
|
|
wxCbPayDocService.updateWxCbPay(wxCbPayDoc);
|
|
|
logger.error("商户编号为【"+wxCbPayDoc.getMerchSn()+"】的商户支付配置信息不存在");
|
|
|
return;
|
|
@@ -144,7 +143,6 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
if (merchPayCfg.getMerchWxApiKey() == null) {
|
|
|
wxCbPayDoc.setReturnCode(WxContants.ERROR_NO_INFOMATION);
|
|
|
wxCbPayDoc.setReturnMsg("商户编号为【"+wxCbPayDoc.getMerchSn()+"】的商户支付信息api密钥为空");
|
|
|
- wxCbPayDoc.setDocStatus(WxDict.PaymentDocStatus.i_13.getItem());
|
|
|
wxCbPayDocService.updateWxCbPay(wxCbPayDoc);
|
|
|
logger.error("商户编号为【"+wxCbPayDoc.getMerchSn()+"】的商户支付信息api密钥为空");
|
|
|
return;
|
|
@@ -238,20 +236,26 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
.cusDeclStatus(WxDict.MerchNoticeStatus.i_13.getItem())
|
|
|
.build();
|
|
|
}
|
|
|
- wxCbPayDocService.updateWxCbPay(wxCbPayDoc);
|
|
|
- } else {//返回状态码为成功 业务结果失败
|
|
|
+ } else {
|
|
|
+ //返回状态码为成功 业务结果失败
|
|
|
wxCbPayDoc.setErrCode(wxResponseMsgDto.getErrCode());
|
|
|
wxCbPayDoc.setErrCodeDes(wxResponseMsgDto.getErrCodeDes());
|
|
|
wxCbPayDoc.setDocStatus(WxDict.PaymentDocStatus.i_13.getItem());
|
|
|
wxCbPayDoc.setBuyerPayerCheck(MerchNoticeDict.BuyerPayerCheckStatus.i_3.getItem());
|
|
|
-
|
|
|
- wxCbPayDocService.updateWxCbPay(wxCbPayDoc);
|
|
|
-
|
|
|
- builder.certCheckResult(MerchNoticeDict.BuyerPayerCheckStatus.i_3.getItem());
|
|
|
- merchNoti = builder.code(wxResponseMsgDto.getErrCode())
|
|
|
- .msg(wxResponseMsgDto.getErrCodeDes())
|
|
|
- .cusDeclStatus(WxDict.MerchNoticeStatus.i_13.getItem())
|
|
|
- .build();
|
|
|
+ //[35324042]您的证件号码校验异常请联系财付通客服处理的情况,修改商户通知数据为“身份校验不一致”,“申报成功”
|
|
|
+ if("35324042".equalsIgnoreCase(wxResponseMsgDto.getErrCode())){
|
|
|
+ builder.certCheckResult(MerchNoticeDict.BuyerPayerCheckStatus.i_2.getItem());
|
|
|
+ merchNoti = builder.code(wxResponseMsgDto.getErrCode())
|
|
|
+ .msg(wxResponseMsgDto.getErrCodeDes())
|
|
|
+ .cusDeclStatus(WxDict.MerchNoticeStatus.i_12.getItem())
|
|
|
+ .build();
|
|
|
+ }else {
|
|
|
+ builder.certCheckResult(MerchNoticeDict.BuyerPayerCheckStatus.i_3.getItem());
|
|
|
+ merchNoti = builder.code(wxResponseMsgDto.getErrCode())
|
|
|
+ .msg(wxResponseMsgDto.getErrCodeDes())
|
|
|
+ .cusDeclStatus(WxDict.MerchNoticeStatus.i_13.getItem())
|
|
|
+ .build();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
///返回状态码为失败
|
|
@@ -259,14 +263,13 @@ public class WxCusDeclareBiz extends AbstractCusDeclareBiz implements CuspayBiz
|
|
|
WxContants.FAIL.equals(wxResponseMsgDto.getReturnCode())) {
|
|
|
wxCbPayDoc.setDocStatus(WxDict.PaymentDocStatus.i_03.getItem());
|
|
|
|
|
|
- wxCbPayDocService.updateWxCbPay(wxCbPayDoc);
|
|
|
-
|
|
|
//通知商户
|
|
|
merchNoti = builder.code(WxContants.ERROR_FAIL)
|
|
|
.msg(wxResponseMsgDto.getReturnMsg())
|
|
|
.cusDeclStatus(WxDict.MerchNoticeStatus.i_13.getItem())
|
|
|
.build();
|
|
|
}
|
|
|
+ wxCbPayDocService.updateWxCbPay(wxCbPayDoc);
|
|
|
} catch (Exception e) {
|
|
|
logger.error("更新支付单证入库信息状态异常", e);
|
|
|
return;
|