update 汇付退款

This commit is contained in:
2023-05-29 10:18:46 +08:00
parent aee277ae1a
commit 40be2c600c
7 changed files with 33 additions and 3 deletions

View File

@@ -1,6 +1,7 @@
package com.jsowell.pile.mapper;
import com.jsowell.pile.domain.MemberTransactionRecord;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -10,4 +11,5 @@ public interface MemberTransactionRecordMapper {
List<MemberTransactionRecord> selectByMemberId(String memberId);
MemberTransactionRecord selectByOrderCode(@Param("orderCode") String orderCode);
}

View File

@@ -15,4 +15,6 @@ public interface IMemberTransactionRecordService {
int insertSelective(MemberTransactionRecord record);
List<MemberTransactionVO> selectMemberTransactionRecordList(String memberId);
MemberTransactionRecord selectByOrderCode(String orderCode);
}

View File

@@ -204,7 +204,7 @@ public interface IOrderBasicInfoService {
* @param orderCode
* @param failedReasonMsg
*/
void chargingPileFailedToStart(String orderCode, String failedReasonMsg);
void chargingPileFailedToStart(String orderCode, String failedReasonMsg) throws BaseAdaPayException;
/**
* 充电桩启动成功

View File

@@ -38,4 +38,9 @@ public class MemberTransactionRecordServiceImpl implements IMemberTransactionRec
return resultList;
}
@Override
public MemberTransactionRecord selectByOrderCode(String orderCode) {
return memberTransactionRecordMapper.selectByOrderCode(orderCode);
}
}

View File

@@ -133,6 +133,9 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
@Value("${adapay.refundCallback}")
private String ADAPAY_REFUND_CALLBACK_URL;
@Autowired
private IMemberTransactionRecordService memberTransactionRecordService;
/**
* 条件查询订单基本信息
*
@@ -632,7 +635,18 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
weChatRefundDTO.setOrderCode(orderBasicInfo.getOrderCode());
weChatRefundDTO.setRefundType("1");
weChatRefundDTO.setRefundAmount(residue);
this.weChatRefund(weChatRefundDTO);
// 查到该笔订单付款金额到哪里了
MemberTransactionRecord transactionRecord = memberTransactionRecordService.selectByOrderCode(orderBasicInfo.getOrderCode());
if (StringUtils.equals(transactionRecord.getPaymentInstitutions(), PaymentInstitutionsEnum.WECHAT_PAY.getValue())) {
this.weChatRefund(weChatRefundDTO);
} else if (StringUtils.equals(transactionRecord.getPaymentInstitutions(), PaymentInstitutionsEnum.ADAPAY.getValue())) {
try {
this.refundForOrderWithAdapay(weChatRefundDTO);
} catch (BaseAdaPayException e) {
logger.error("汇付支付退款 param:{}", JSON.toJSONString(weChatRefundDTO), e);
}
}
// 订单支付记录
OrderPayRecord orderPayRecord = payRecordList.get(0);
orderPayRecord.setRefundAmount(residue);