2 Commits 13d1183e17 ... 18b3561ffe

Auteur SHA1 Message Date
  xw 18b3561ffe Merge remote-tracking branch 'origin/bjcz_his_scrm' into bjcz_his_scrm il y a 3 semaines
  xw b7731f9b9a 小程序显示和退款 il y a 3 semaines

+ 15 - 4
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreAfterSalesScrmServiceImpl.java

@@ -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();