Gosowong 2 лет назад
Родитель
Сommit
16a6b50549

+ 2 - 2
crmeb/app/jobs/MiniOrderJob.php

@@ -15,10 +15,10 @@ class MiniOrderJob extends BaseJobs
     /**
      * @throws HttpException
      */
-    public function doJob(string $out_trade_no, int $logistics_type, array $shipping_list, string $payer_openid, int $delivery_mode = 1, bool $is_all_delivered = true)
+    public function doJob(string $out_trade_no, int $logistics_type, array $shipping_list, string $payer_openid, string $path, int $delivery_mode = 1, bool $is_all_delivered = true)
     {
         try {
-            MiniOrderService::shippingByTradeNo($out_trade_no, $logistics_type, $shipping_list, $payer_openid, $delivery_mode, $is_all_delivered);
+            MiniOrderService::shippingByTradeNo($out_trade_no, $logistics_type, $shipping_list, $payer_openid, $path, $delivery_mode, $is_all_delivered);
         } catch (HttpException $e) {
             // 订单异常处理
             throw new HttpException($e);

+ 9 - 3
crmeb/app/listener/order/OrderShippingListener.php

@@ -43,6 +43,7 @@ class OrderShippingListener implements ListenerInterface
                         $out_trade_no = $p_order['order_id'];
                     }
                     $pay_uid = $order['pay_uid'];
+                    $path = 'pages/goods/order_details/index?order_id=' . $out_trade_no;
                 } else {
                     return;
                 }
@@ -52,7 +53,8 @@ class OrderShippingListener implements ListenerInterface
                     $item_desc = '用户充值' . $order['price'];
                     $out_trade_no = $order['order_id'];
                     $pay_uid = $order['uid'];
-                    $secs = 60;
+                    $secs = 10;
+                    $path = '/pages/users/user_bill/index?type=2';
                 } else {
                     return;
                 }
@@ -62,7 +64,8 @@ class OrderShippingListener implements ListenerInterface
                     $item_desc = '用户购买' . $order['member_type'] . '会员卡';
                     $out_trade_no = $order['order_id'];
                     $pay_uid = $order['uid'];
-                    $secs = 60;
+                    $secs = 10;
+                    $path = '/pages/annex/vip_paid/index';
                 } else {
                     return;
                 }
@@ -98,7 +101,10 @@ class OrderShippingListener implements ListenerInterface
             if (empty($payer_openid)) {
                 throw new AdminException('订单支付人异常');
             }
-            MiniOrderJob::dispatchSecs($secs,[$out_trade_no, $logistics_type, $shipping_list, $payer_openid, $delivery_mode, $is_all_delivered]);
+            if ($secs) {
+                sleep($secs);
+            }
+            MiniOrderJob::dispatch('doJob', [$out_trade_no, $logistics_type, $shipping_list, $payer_openid, $path, $delivery_mode, $is_all_delivered]);
         }
     }
 }

+ 2 - 2
crmeb/crmeb/services/easywechat/orderShipping/MiniOrderService.php

@@ -69,9 +69,9 @@ class MiniOrderService
      * @date 2023/05/09
      * @author yyw
      */
-    public static function shippingByTradeNo(string $out_trade_no, int $logistics_type, array $shipping_list, string $payer_openid, int $delivery_mode = 1, bool $is_all_delivered = true)
+    public static function shippingByTradeNo(string $out_trade_no, int $logistics_type, array $shipping_list, string $payer_openid, string $path, int $delivery_mode = 1, bool $is_all_delivered = true)
     {
-        return self::order()->shippingByTradeNo($out_trade_no, $logistics_type, $shipping_list, $payer_openid, $delivery_mode, $is_all_delivered);
+        return self::order()->shippingByTradeNo($out_trade_no, $logistics_type, $shipping_list, $payer_openid, $path, $delivery_mode, $is_all_delivered);
     }
 
     /**

+ 2 - 3
crmeb/crmeb/services/easywechat/orderShipping/OrderClient.php

@@ -70,7 +70,7 @@ class OrderClient extends BaseOrder
      * @date 2023/05/10
      * @author yyw
      */
-    public function shippingByTradeNo(string $out_trade_no, int $logistics_type, array $shipping_list, string $payer_openid, int $delivery_mode = 1, bool $is_all_delivered = true)
+    public function shippingByTradeNo(string $out_trade_no, int $logistics_type, array $shipping_list, string $payer_openid, $path, int $delivery_mode = 1, bool $is_all_delivered = true)
     {
         if (!$this->checkManaged()) {
             throw new AdminException('开通小程序订单管理服务后重试');
@@ -101,9 +101,8 @@ class OrderClient extends BaseOrder
                 'contact' => $contact
             ];
         }
-
         // 跳转路径
-        $this->setMesJumpPath(self::PATH . '?order_id=' . $out_trade_no);
+        $this->setMesJumpPath($path);
         return $this->shipping($params);
     }