|
|
@@ -73,8 +73,7 @@ public class PayCallService extends SuperService {
|
|
|
|
|
|
com.github.microservice.pay.client.ret.ResultContent<List<TransactionLogModel>> resultContent = balancePayService.balancePay(
|
|
|
entity.getProjectOid(), entity.getShopOid(), entity.getUserId(),
|
|
|
- entity.getPayAmount(), entity.getPaymentNo(), entity.getRemark()
|
|
|
- );
|
|
|
+ entity.getPayAmount(), entity.getPaymentNo(), entity.getRemark());
|
|
|
if (resultContent.getState() == ResultState.Success) {
|
|
|
// 关联参数
|
|
|
String msg = "支付成功";
|
|
|
@@ -84,6 +83,8 @@ public class PayCallService extends SuperService {
|
|
|
entity.setIsPaySuccess(Boolean.TRUE);
|
|
|
entity.setPayRemark(msg);
|
|
|
entity.setOrderType(OrderState.HAVE_PAID);
|
|
|
+
|
|
|
+ // 日志
|
|
|
logsAddParam.setMessageType(MessageType.Info);
|
|
|
logsAddParam.setLevel(LogsLevel.Low);
|
|
|
logsAddParam.setContent(msg);
|
|
|
@@ -92,7 +93,13 @@ public class PayCallService extends SuperService {
|
|
|
if (StringUtils.isNotEmpty(msg) && msg.contains("Connection reset")) {
|
|
|
msg = "调用支付中心失败";
|
|
|
} else {
|
|
|
- msg = PayExceptionToShowUtil.convertException(resultContent.getException().getCls());
|
|
|
+ String cls = resultContent.getException().getCls();
|
|
|
+ if (cls.contains("UncategorizedMongoDbException") && entity.getRepeatTime() <= 1) {
|
|
|
+ // 如果是并发引起的问题,则重复一次
|
|
|
+ entity.setRepeatTime(entity.getRepeatTime() + 1);
|
|
|
+ return balancePay(entity);
|
|
|
+ }
|
|
|
+ msg = PayExceptionToShowUtil.convertException(cls);
|
|
|
}
|
|
|
if (StringUtils.isEmpty(msg)) {
|
|
|
msg = "支付中心失败";
|
|
|
@@ -106,7 +113,9 @@ public class PayCallService extends SuperService {
|
|
|
logsAddParam.setLevel(LogsLevel.Middle);
|
|
|
logsAddParam.setContent(msg);
|
|
|
}
|
|
|
+ // 保存日志
|
|
|
operationLogsService.addLog(logsAddParam);
|
|
|
+
|
|
|
entity.setPayEndTime(System.currentTimeMillis());
|
|
|
entity.setPayMillis(entity.getPayEndTime() - entity.getPayStartTime());
|
|
|
return ResultContent.buildSuccess();
|