This commit is contained in:
2023-07-10 14:53:55 +08:00
parent 5e44db6ded
commit c7212fff41

View File

@@ -12,6 +12,7 @@ import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.huifu.adapay.core.exception.BaseAdaPayException;
import com.huifu.adapay.model.Payment;
import com.huifu.adapay.model.PaymentReverse;
import com.huifu.adapay.model.Refund;
import com.jsowell.adapay.common.CreateAdaPaymentParam;
import com.jsowell.common.constant.CacheConstants;
@@ -1939,18 +1940,36 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
}
// 创建汇付退款对象 在完成初始化设置情况下,调用方法,获取 Refund对象
String id = record.getPaymentId();
Map<String, Object> refundParams = Maps.newHashMap();
String id = record.getPaymentId(); //
String snowflakeId = SnowflakeIdWorker.getSnowflakeId();
String amount = AdapayUtil.formatAmount(dto.getRefundAmount());
refundParams.put("refund_amt", amount);
refundParams.put("refund_order_no", SnowflakeIdWorker.getSnowflakeId());
refundParams.put("notify_url", ADAPAY_REFUND_CALLBACK_URL);
try {
Map<String, Object> response = Refund.create(id, refundParams);
logger.info("汇付支付创建退款对象:{}", JSON.toJSONString(response));
} catch (BaseAdaPayException e) {
logger.error("汇付支付创建退款对象error", e);
String payMode = "delay";
if (StringUtils.equals("", payMode)) {
// 延迟分账确认的调退款接口
Map<String, Object> refundParams = Maps.newHashMap();
refundParams.put("refund_amt", amount);
refundParams.put("refund_order_no", snowflakeId);
refundParams.put("notify_url", ADAPAY_REFUND_CALLBACK_URL);
try {
Map<String, Object> response = Refund.create(id, refundParams);
logger.info("汇付支付创建退款对象:{}", JSON.toJSONString(response));
} catch (BaseAdaPayException e) {
logger.error("汇付支付创建退款对象error", e);
}
} else {
// 延迟分账未确认调撤销调撤销接口退款
Map<String, Object> reverseParams = Maps.newHashMap();
reverseParams.put("app_id", ADAPAY_APP_ID);
reverseParams.put("payment_id", id);
reverseParams.put("reverse_amt", amount);
reverseParams.put("order_no", snowflakeId);
try {
Map<String, Object> paymentReverse = PaymentReverse.create(reverseParams);
logger.info("汇付支付创建交易撤销对象:{}", JSON.toJSONString(paymentReverse));
} catch (BaseAdaPayException e) {
logger.error("汇付支付创建交易撤销对象error", e);
}
}
}