mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 11:05:18 +08:00
查询订单退款信息
This commit is contained in:
@@ -252,6 +252,18 @@ public class SpringBootTestController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private NotificationService notificationService;
|
private NotificationService notificationService;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getOrderRefundInfoListTest() {
|
||||||
|
String orderCode = "C44565166677";
|
||||||
|
OrderBasicInfo orderBasicInfo = new OrderBasicInfo();
|
||||||
|
orderBasicInfo.setOrderCode(orderCode);
|
||||||
|
orderBasicInfo.setMerchantId("33");
|
||||||
|
orderBasicInfo.setPayMode("4");
|
||||||
|
// 查询退款明细
|
||||||
|
List<OrderDetailInfoVO.OrderRefundInfo> orderRefundInfoList = orderBasicInfoService.getOrderRefundInfoList(orderBasicInfo);
|
||||||
|
System.out.println(JSON.toJSONString(orderRefundInfoList));
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getSnowflakeIdTest() {
|
public void getSnowflakeIdTest() {
|
||||||
for (int i = 0; i < 100; i++) {
|
for (int i = 0; i < 100; i++) {
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ public interface OrderPayRecordService{
|
|||||||
|
|
||||||
List<PaymentInfo> parseDeductionRecord(String deductionRecord);
|
List<PaymentInfo> parseDeductionRecord(String deductionRecord);
|
||||||
|
|
||||||
|
List<String> parsePaymentIdByDeductionRecord(String deductionRecord);
|
||||||
|
|
||||||
// 更新订单退款金额
|
// 更新订单退款金额
|
||||||
void updateRefundAmount(String orderCode, String paymentId, BigDecimal refundAmt);
|
void updateRefundAmount(String orderCode, String paymentId, BigDecimal refundAmt);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -204,6 +204,16 @@ public class OrderPayRecordServiceImpl implements OrderPayRecordService {
|
|||||||
return resultList;
|
return resultList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<String> parsePaymentIdByDeductionRecord(String deductionRecord) {
|
||||||
|
List<String> resultList = Lists.newArrayList();
|
||||||
|
List<PaymentInfo> paymentInfos = parseDeductionRecord(deductionRecord);
|
||||||
|
if (CollectionUtils.isNotEmpty(paymentInfos)) {
|
||||||
|
resultList = paymentInfos.stream().map(PaymentInfo::getPaymentId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateRefundAmount(String orderCode, String paymentId, BigDecimal refundAmt) {
|
public void updateRefundAmount(String orderCode, String paymentId, BigDecimal refundAmt) {
|
||||||
List<OrderPayRecord> orderPayRecordList = getOrderPayRecordList(orderCode);
|
List<OrderPayRecord> orderPayRecordList = getOrderPayRecordList(orderCode);
|
||||||
|
|||||||
@@ -609,31 +609,52 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询订单在线支付的退款信息
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<OrderDetailInfoVO.OrderRefundInfo> getOrderRefundInfoList(OrderBasicInfo orderBasicInfo) {
|
public List<OrderDetailInfoVO.OrderRefundInfo> getOrderRefundInfoList(OrderBasicInfo orderBasicInfo) {
|
||||||
List<OrderDetailInfoVO.OrderRefundInfo> resultList = Lists.newArrayList();
|
List<OrderDetailInfoVO.OrderRefundInfo> resultList = Lists.newArrayList();
|
||||||
|
|
||||||
// 查到原汇付支付id
|
// 查到原汇付支付id
|
||||||
AdapayCallbackRecord adapayCallbackRecord = adapayCallbackRecordService.selectByOrderCode(orderBasicInfo.getOrderCode());
|
// AdapayCallbackRecord adapayCallbackRecord = adapayCallbackRecordService.selectByOrderCode(orderBasicInfo.getOrderCode());
|
||||||
if (adapayCallbackRecord == null) {
|
// if (adapayCallbackRecord == null) {
|
||||||
|
// return resultList;
|
||||||
|
// }
|
||||||
|
|
||||||
|
List<OrderPayRecord> orderPayRecordList = orderPayRecordService.getOrderPayRecordList(orderBasicInfo.getOrderCode());
|
||||||
|
if (CollectionUtils.isEmpty(orderPayRecordList)) {
|
||||||
return resultList;
|
return resultList;
|
||||||
}
|
}
|
||||||
|
List<String> paymentIdList = Lists.newArrayList();
|
||||||
|
for (OrderPayRecord orderPayRecord : orderPayRecordList) {
|
||||||
|
String payMode = orderPayRecord.getPayMode();
|
||||||
|
if (StringUtils.equals(payMode, OrderPayRecordEnum.WECHATPAY_PAYMENT.getValue())
|
||||||
|
|| StringUtils.equals(payMode, OrderPayRecordEnum.ALIPAY_PAYMENT.getValue())) {
|
||||||
|
List<String> idList = orderPayRecordService.parsePaymentIdByDeductionRecord(orderPayRecord.getDeductionRecord());
|
||||||
|
paymentIdList.addAll(idList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 获取appId
|
// 获取appId
|
||||||
String wechatAppId = pileMerchantInfoService.queryAppIdByMerchantId(orderBasicInfo.getMerchantId());
|
String wechatAppId = pileMerchantInfoService.queryAppIdByMerchantId(orderBasicInfo.getMerchantId());
|
||||||
|
|
||||||
// 通过支付id查询退款记录
|
// 通过支付id查询退款记录
|
||||||
String paymentId = adapayCallbackRecord.getPaymentId();
|
List<PaymentReverseResponse> paymentReverseResponseList = Lists.newArrayList();
|
||||||
List<PaymentReverseResponse> paymentReverseResponses = null;
|
for (String paymentId : paymentIdList) {
|
||||||
try {
|
try {
|
||||||
paymentReverseResponses = adapayService.queryPaymentReverse(paymentId, wechatAppId);
|
List<PaymentReverseResponse> paymentReverseResponses = adapayService.queryPaymentReverse(paymentId, wechatAppId);
|
||||||
|
if (CollectionUtils.isNotEmpty(paymentReverseResponses)) {
|
||||||
|
paymentReverseResponseList.addAll(paymentReverseResponses);
|
||||||
|
}
|
||||||
} catch (BaseAdaPayException e) {
|
} catch (BaseAdaPayException e) {
|
||||||
logger.error("查询支付撤销对象发生异常", e);
|
logger.error("查询支付撤销对象发生异常", e);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
OrderDetailInfoVO.OrderRefundInfo refundInfo;
|
OrderDetailInfoVO.OrderRefundInfo refundInfo;
|
||||||
if (CollectionUtils.isNotEmpty(paymentReverseResponses)) {
|
if (CollectionUtils.isNotEmpty(paymentReverseResponseList)) {
|
||||||
for (PaymentReverseResponse reverseResponse : paymentReverseResponses) {
|
for (PaymentReverseResponse reverseResponse : paymentReverseResponseList) {
|
||||||
refundInfo = new OrderDetailInfoVO.OrderRefundInfo();
|
refundInfo = new OrderDetailInfoVO.OrderRefundInfo();
|
||||||
refundInfo.setReverseId(reverseResponse.getId());
|
refundInfo.setReverseId(reverseResponse.getId());
|
||||||
refundInfo.setPaymentId(reverseResponse.getPayment_id());
|
refundInfo.setPaymentId(reverseResponse.getPayment_id());
|
||||||
|
|||||||
Reference in New Issue
Block a user