wenhongquan há 1 ano atrás
pai
commit
5baee6ba18

+ 8 - 1
ruoyi-admin/src/main/resources/application.yml

@@ -120,6 +120,7 @@ security:
     - /actuator
     - /actuator/**
     - /system/commonOther/**
+    - /system/dzbcPath/list
 
 # 多租户配置
 tenant:
@@ -292,6 +293,12 @@ wx:
     appId: wx5c9baacf2aab55b8 #微信公众号或者小程序等的appid (V3商户模式需要)
     mchId: 1714850376 #1676158154 #微信支付商户号 (V3商户模式需要)
     mchKey: BqwOfLa8k67SXuG1ickhd8LdgAXEcl5G #FP1arPM22zIjZeQUniJO2vMEHxf4KjHh #微信支付商户密钥
-    keyPath: apiclient_cert.p12 # p12证书的位置,可以指定绝对路径,也可以指定类路径(以classpath:开头)
+    keyPath: /home/wxpay/apiclient_cert.p12 # p12证书的位置,可以指定绝对路径,也可以指定类路径(以classpath:开头)
+    private-key-path: /home/wxpay/apiclient_key.pem
+    private-cert-path: /home/wxpay/apiclient_key.pem
+    certSerialNo: 679D3D20F711F3B276030888FB13E87171904508
+
+
+
 
 

+ 5 - 1
ruoyi-modules/ruoyi-dzbc/src/main/java/org/dromara/system/controller/CommonDzbcOtherController.java

@@ -1,6 +1,7 @@
 package org.dromara.system.controller;
 
 import cn.dev33.satoken.annotation.SaIgnore;
+import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 import com.dtflys.forest.annotation.Body;
 import com.github.binarywang.wxpay.bean.notify.WxPayNotifyResponse;
@@ -71,8 +72,11 @@ public class CommonDzbcOtherController extends BaseController {
               if(order.getStatus().equals("0")){
                   TblDzbcOrderBo order1 = new TblDzbcOrderBo();
                   order1.setId(order.getId());
+                  String data = order.getExt2();
+                  JSONObject jo =JSONUtil.parseObj(data);
+                  jo.put("wxpay", result);
                   order1.setStatus("1");
-                  order1.setExt2(JSONUtil.toJsonStr(result));
+                  order1.setExt2(JSONUtil.toJsonStr(jo));
                   orderService.updateByBo(order1);
               }
 

+ 14 - 5
ruoyi-modules/ruoyi-dzbc/src/main/java/org/dromara/system/controller/TblDzbcOrderController.java

@@ -252,18 +252,24 @@ public class TblDzbcOrderController extends BaseController {
                     return R.fail("该订单已发车,无法取消,请联系管理员");
                 }
             } catch (Exception e) {
+                e.printStackTrace();
+                log.error("时间转换异常,异常原因{}", e.getMessage());
                 return R.fail("该订单无法取消");
             }
 
-            if (DateUtil.between(new Date(), tblDzbcOrderVo.getCreateTime(), DateUnit.MINUTE) > 30) {
-                return R.fail("该订单无法取消");
-            }
+//            if (DateUtil.between(new Date(), tblDzbcOrderVo.getCreateTime(), DateUnit.MINUTE) > 30) {
+//                return R.fail("该订单无法取消");
+//            }
             try {
-                JSONObject wxtrade = JSONUtil.parseObj(tblDzbcOrderVo.getExt2());
+                log.info(tblDzbcOrderVo.getExt2());
+                JSONObject wxtrade = JSONUtil.parseObj(tblDzbcOrderVo.getExt2()).getJSONObject("wxpay");
+                log.info(JSONUtil.toJsonStr(wxtrade));
                 WxPayRefundRequest refundRequest = new WxPayRefundRequest();
                 refundRequest.setTotalFee(tblDzbcOrderVo.getTotalPrice());
                 refundRequest.setRefundFee((int)Math.round(tblDzbcOrderVo.getTotalPrice()*bl));
+                refundRequest.setOutTradeNo(wxtrade.getStr("outTradeNo"));
                 refundRequest.setOutRefundNo(wxtrade.getStr("transactionId"));
+                refundRequest.setTransactionId(wxtrade.getStr("transactionId"));
                 refundRequest.setNotifyUrl(baseUrl + "/system/commonOther/wx/ref");
                 wxPayService.refund(refundRequest);
 
@@ -272,7 +278,10 @@ public class TblDzbcOrderController extends BaseController {
                 order1.setStatus("2");
                 tblDzbcOrderService.updateByBo(order1);
                 return R.ok("成功,发车前1小时可以退50%车费");
-            }catch (Exception e){}
+            }catch (Exception e){
+                e.printStackTrace();
+                log.error("时间转换异常,异常原因{}", e.getMessage());
+            }
             return R.fail("该订单无法取消");
         }else if(tblDzbcOrderVo.getStatus().equals("0")){
             TblDzbcOrderBo order1 = new TblDzbcOrderBo();

+ 8 - 2
ruoyi-modules/ruoyi-dzbc/src/main/java/org/dromara/system/service/impl/TblDzbcOrderServiceImpl.java

@@ -343,8 +343,14 @@ public class TblDzbcOrderServiceImpl implements ITblDzbcOrderService {
                 timer.addTask(new TimerTask(()->{
                     TblDzbcOrderBo bo1 = new TblDzbcOrderBo();
                     bo1.setId(tblDzbcOrder.getId());
-                    bo1.setStatus("5");
-                    updateByBo(bo1);
+                    List<TblDzbcOrder> list1 =baseMapper.selectList(buildQueryWrapper(bo1));
+                    if(list1.size()>0){
+                        if(list1.get(0).getStatus().equals("0")){
+                            bo1.setStatus("5");
+                            updateByBo(bo1);
+                        }
+                    }
+
                 },1000*60*30-(System.currentTimeMillis()-tblDzbcOrder.getCreateTime().getTime())));
             }
         }