Quellcode durchsuchen

回调增加包月包季,充值列表使用测试派单

zqwang vor 1 Jahr
Ursprung
Commit
67910e2a9b

+ 33 - 1
app/Http/Controllers/QuickApp/Order/OrdersController.php

@@ -132,6 +132,7 @@ class OrdersController extends BaseController
         $sendOrderId = 0;
         //$sendOrderId = ReadRecordService::getSendOrderId($this->uid);
         $sendOrderId = UserService::GetBindSendOrderId($this->uid);
+        $sendOrderId = 4443540;
         if(env('NEW_CHARGE')){
             //2022-4月中旬,启用新的获取模板方式
             $res = UserChargeService::getTemplate($this->uid,$sendOrderId,$this->distribution_channel_id);
@@ -252,7 +253,35 @@ class OrdersController extends BaseController
                     'product_id'     => $v->id,
                 ];
                 $data[]    = $temp;
-            } else {
+            } elseif ($v->type == 'MONTH_ORDER') {
+                $save_text = '包月vip会员';
+                $text      = '一月免费看';
+                $temp      = [
+                    'price'          => (int)$v->price . '元',
+                    'is_year_order'  => 1,
+                    'is_month_order' => 0,
+                    'text'           => $text,
+                    'today_special'  => $v->is_default,
+                    'first_charge'   => false,
+                    'save_text'      => $save_text,
+                    'product_id'     => $v->id,
+                ];
+                $data[]    = $temp;
+            } elseif ($v->type == 'QUARTER') {
+                $save_text = '包季vip会员';
+                $text      = '一季度免费看';
+                $temp      = [
+                    'price'          => (int)$v->price . '元',
+                    'is_year_order'  => 1,
+                    'is_month_order' => 0,
+                    'text'           => $text,
+                    'today_special'  => $v->is_default,
+                    'first_charge'   => false,
+                    'save_text'      => $save_text,
+                    'product_id'     => $v->id,
+                ];
+                $data[]    = $temp;
+            }  else {
                 if ($v->type == 'NEW_USER') {
                     continue;
                 }
@@ -479,6 +508,8 @@ class OrdersController extends BaseController
             $order_type = 'QUARTER';
         } elseif ($product_info->type == 'BOOK_ORDER') {
             $order_type = 'BOOK';
+        }elseif($product_info->type == 'MONTH_ORDER'){
+            $order_type = 'MONTH';
         } elseif ($product_info->type == 'TICKET_RECHARGE') {
             $order_type = 'RECHARGE';
         } else {
@@ -778,6 +809,7 @@ class OrdersController extends BaseController
         $this->distribution_channel_id;
         $uid = $this->uid;
         $send_order_id = $this->user_info->send_order_id;
+        $send_order_id  =  4443540;
         $res = UserChargeService::getTemplate($this->uid,$send_order_id,$this->distribution_channel_id);
         return response()->success($res);
     }

+ 46 - 0
app/Modules/Trade/Pay/MonthOrderPaySuccess.php

@@ -0,0 +1,46 @@
+<?php
+
+namespace App\Modules\Trade\Pay;
+
+use App\Modules\Subscribe\Models\Order;
+use App\Modules\Subscribe\Models\YearOrder;
+
+
+class MonthOrderPaySuccess extends PaySuccessAbstract
+{
+    private $year_order;
+
+    public function __construct(Order $order)
+    {
+        parent::__construct($order);
+        $this->year_order = [];
+        $this->year_order['uid'] = $order->uid;
+        $this->year_order['distribution_channel_id'] = $order->distribution_channel_id;
+        $this->year_order['fee'] = $order->price;
+        $this->year_order['send_order_id'] = $order->send_order_id;
+    }
+
+    protected function handlePayProcess()
+    {
+        $this->year_order['begin_time'] = date('Y-m-d H:i:s');
+        $this->year_order['end_time'] = date('Y-m-d H:i:s', strtotime('+31 day'));
+        $old = YearOrder::where('uid', $this->year_order['uid'])->select('id', 'uid', 'u', 'begin_time', 'end_time', 'fee')->first();
+        if ($old) {
+            //如果包过年
+            if (strtotime($old->end_time) > time()) {
+                //旧的包年没过期
+                $old->end_time = date('Y-m-d H:i:s', strtotime($old->end_time) + 86400 * 31);
+                $old->fee = $old->fee + $this->year_order['fee'];
+                $old->save();
+            } else {
+                //旧的包年过期了
+                $old->end_time = date('Y-m-d H:i:s', strtotime('+31 day'));
+                $old->fee = $old->fee + $this->year_order['fee'];
+                $old->save();
+            }
+            return $old;
+        } else {
+            return YearOrder::firstOrCreate($this->year_order);
+        }
+    }
+}

+ 2 - 0
app/Modules/Trade/Pay/OrderPaySuccess.php

@@ -57,6 +57,8 @@ EOF;
                 $app = new BookOrderPaySuccess($order);
             } elseif ($order->order_type == 'QUARTER') {
                 $app = new QuarterOrderPaySuccess($order);
+            }elseif ($order->order_type == "MONTH"){
+                $app = new MonthOrderPaySuccess($order);
             } elseif ($order->order_type == 'RECHARGE') {
                 $app = new RechargeOrderPaySuccess($order);
             }

+ 2 - 2
app/Modules/User/Services/UserChargeService.php

@@ -94,9 +94,9 @@ class UserChargeService
                     'product_id'     => $v->id,
                 ];
                 $data[]    = $temp;
-            } elseif ($v->type == 'QUARTER_ORDER') {
+            } elseif ($v->type == 'QUARTER') {
                 $save_text = '包季vip会员';
-                $text      = '4月免费看';
+                $text      = '一季度免费看';
                 $temp      = [
                     'price'          => (int)$v->price . '元',
                     'is_year_order'  => 1,