Commit 56bc6dc8 authored by terrfly's avatar terrfly
Browse files

分账失败更新batchOrderId 用作 单笔重试;

parent b7220148
......@@ -112,7 +112,7 @@ public class PayOrderDivisionProcessService {
// 重发通知,可直接查库
if(isResend){
recordList = payOrderDivisionRecordService.list(PayOrderDivisionRecord.gw().eq(PayOrderDivisionRecord::getPayOrderId, payOrderId));
recordList = payOrderDivisionRecordService.list(PayOrderDivisionRecord.gw().eq(PayOrderDivisionRecord::getPayOrderId, payOrderId).eq(PayOrderDivisionRecord::getState, PayOrderDivisionRecord.STATE_FAIL));
}else{
// 查询&过滤 所有的分账接收对象
......
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jeequan.jeepay.core.entity.PayOrder;
import com.jeequan.jeepay.core.entity.PayOrderDivisionRecord;
import com.jeequan.jeepay.core.exception.BizException;
import com.jeequan.jeepay.core.utils.SeqKit;
import com.jeequan.jeepay.service.mapper.PayOrderDivisionRecordMapper;
import com.jeequan.jeepay.service.mapper.PayOrderMapper;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -60,6 +61,7 @@ public class PayOrderDivisionRecordService extends ServiceImpl<PayOrderDivisionR
}
PayOrderDivisionRecord updateRecordByDiv = new PayOrderDivisionRecord();
updateRecordByDiv.setBatchOrderId(SeqKit.genDivisionBatchId()); // 重新生成batchOrderId, 避免部分失败导致: out_trade_no重复。
updateRecordByDiv.setState(PayOrderDivisionRecord.STATE_WAIT); //待分账
updateRecordByDiv.setChannelRespResult("");
updateRecordByDiv.setChannelBatchOrderId("");
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment