dever 3 years ago
parent
commit
507e608cb6
1 changed files with 24 additions and 22 deletions
  1. 24 22
      app/shop/lib/Refund.php

+ 24 - 22
app/shop/lib/Refund.php

@@ -371,9 +371,30 @@ class Refund
     # 退款通知
     public function notice($state, $data, $info)
     {
-        if ($state && isset($data['uid']) && $data['uid'] > 0) {
-            $refund_cash = $info['cash'];
-            $refund_order_id = $info['id'];
+        if (!$state) {
+            return;
+        }
+        $refund_cash = $info['cash'];
+        $refund_order_id = $info['id'];
+        # 退款到原支付账户 待处理
+        $param = array
+        (
+            'project_id' => 1,
+            'channel_id' => 1,
+            'system_source' => 5,
+            'order_id' => $data['order_num'],
+            'refund_cash' => $refund_cash,
+            'refund_order_id' => $refund_order_id
+        );
+
+        $result = Dever::load('pay/api.refund', $param);
+
+        if (!$result) {
+            # 退款失败,抛出错误
+            throw new \Exception('退款失败');
+            Dever::alert('退款失败');
+        }
+        if (isset($data['uid']) && $data['uid'] > 0) {
 
             $shop = Dever::db('shop/info')->one($data['shop_id']);
             $msg_param['type'] = 1;//消息类型1是订单消息
@@ -383,25 +404,6 @@ class Refund
             $msg = '您有一笔订单已退款,退款将在3个工作日内返回原支付账户';
             Dever::load('message/lib/data')->push(-1, $data['uid'], '退款成功通知', $msg, 2, 1, false, $msg_param);
 
-            # 退款到原支付账户 待处理
-            $param = array
-            (
-                'project_id' => 1,
-                'channel_id' => 1,
-                'system_source' => 5,
-                'order_id' => $data['order_num'],
-                'refund_cash' => $refund_cash,
-                'refund_order_id' => $refund_order_id
-            );
-
-            $result = Dever::load('pay/api.refund', $param);
-
-            if (!$result) {
-                # 退款失败,抛出错误
-                throw new \Exception('退款失败');
-                Dever::alert('退款失败');
-            }
-
             if (Dever::load('wechat_applet')) {
                 $config = Dever::db($this->order_table)->config;
                 $user = Dever::db('passport/wechat')->one(array('uid' => $data['uid'], 'system_id' => 1, 'system_source' => 5));