|
|
@@ -62,9 +62,11 @@ import com.fs.tzBankPay.doman.RefundParam;
|
|
|
import com.fs.tzBankPay.doman.RefundResult;
|
|
|
import com.fs.tzBankPay.doman.TzBankResult;
|
|
|
import com.github.binarywang.wxpay.bean.request.WxPayRefundRequest;
|
|
|
+import com.github.binarywang.wxpay.bean.request.WxPayRefundV3Request;
|
|
|
import com.github.binarywang.wxpay.bean.request.WxPayUnifiedOrderRequest;
|
|
|
import com.github.binarywang.wxpay.bean.result.WxPayRefundQueryResult;
|
|
|
import com.github.binarywang.wxpay.bean.result.WxPayRefundResult;
|
|
|
+import com.github.binarywang.wxpay.bean.result.WxPayRefundV3Result;
|
|
|
import com.github.binarywang.wxpay.config.WxPayConfig;
|
|
|
import com.github.binarywang.wxpay.exception.WxPayException;
|
|
|
import com.github.binarywang.wxpay.service.WxPayService;
|
|
|
@@ -880,16 +882,25 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
|
|
|
payConfig.setMchId(fsPayConfig.getWxMchId());
|
|
|
payConfig.setMchKey(fsPayConfig.getWxMchKey());
|
|
|
payConfig.setKeyPath(fsPayConfig.getKeyPath());
|
|
|
+ payConfig.setPublicKeyId(fsPayConfig.getPublicKeyId());
|
|
|
+ payConfig.setPublicKeyPath(fsPayConfig.getPublicKeyPath());
|
|
|
+ payConfig.setApiV3Key(fsPayConfig.getWxApiV3Key());
|
|
|
+ payConfig.setPrivateKeyPath(fsPayConfig.getPrivateKeyPath());
|
|
|
+ payConfig.setPrivateCertPath(fsPayConfig.getPrivateCertPath());
|
|
|
payConfig.setSubAppId(org.apache.commons.lang3.StringUtils.trimToNull(null));
|
|
|
payConfig.setSubMchId(org.apache.commons.lang3.StringUtils.trimToNull(null));
|
|
|
wxPayService.setConfig(payConfig);
|
|
|
- WxPayRefundRequest refundRequest = new WxPayRefundRequest();
|
|
|
+ WxPayRefundV3Request refundRequest = new WxPayRefundV3Request();
|
|
|
refundRequest.setOutTradeNo("store-"+payment.getPayCode());
|
|
|
refundRequest.setOutRefundNo("store-"+payment.getPayCode());
|
|
|
- refundRequest.setTotalFee(WxPayUnifiedOrderRequest.yuanToFen(payment.getPayMoney().toString()));
|
|
|
- refundRequest.setRefundFee(WxPayUnifiedOrderRequest.yuanToFen(refundAmount.toString()));
|
|
|
+ WxPayRefundV3Request.Amount amount = new WxPayRefundV3Request.Amount();
|
|
|
+ Integer money = WxPayUnifiedOrderRequest.yuanToFen(payment.getPayMoney().toString());
|
|
|
+ amount.setRefund(money);
|
|
|
+ amount.setTotal(money);
|
|
|
+ amount.setCurrency("CNY");
|
|
|
+ refundRequest.setAmount(amount);
|
|
|
try {
|
|
|
- WxPayRefundResult refundResult = wxPayService.refund(refundRequest);
|
|
|
+ WxPayRefundV3Result refundResult = wxPayService.refundV3(refundRequest);
|
|
|
WxPayRefundQueryResult refundQueryResult = wxPayService.refundQuery("", refundResult.getOutTradeNo(), refundResult.getOutRefundNo(), refundResult.getRefundId());
|
|
|
if(refundQueryResult!=null&&refundQueryResult.getResultCode().equals("SUCCESS")){
|
|
|
FsStorePaymentScrm paymentMap=new FsStorePaymentScrm();
|