فهرست منبع

summer activity

zz 5 سال پیش
والد
کامیت
9fa3ef898b

+ 62 - 0
app/Http/Controllers/Wap/Web/ActivityController.php

@@ -347,4 +347,66 @@ class ActivityController extends BaseController
         ]);
         ]);
         return response()->success(compact('rotate', 'price'));
         return response()->success(compact('rotate', 'price'));
     }
     }
+
+    public function summerHoliday(Request $request)
+    {
+
+        //$encode_distribution_channel_id = encodeDistributionChannelId($this->distribution_channel_id);
+        $encode_distribution_channel_id = 2;
+        $sites = env('YEAR_ACTIVITY_CHANNEL', '');
+        $not_access_url = env('H5_SCHEME', 'https') . '://site' . $encode_distribution_channel_id . '.' . env('CUSTOM_HOST') . '.com/';
+        if (empty($sites)) {
+            return redirect()->to($not_access_url);
+        }
+        $site_arr = explode(',', $sites);
+        if (!in_array($this->distribution_channel_id, $site_arr)) {
+            return redirect()->to($not_access_url);
+        }
+        $token = $request->input('token');
+        $activity_info = ActivityService::getByToken($token);
+        if (!$activity_info) {
+            $default_url = env('H5_SCHEME', 'https') . '://site' . $encode_distribution_channel_id . '.' . env('CUSTOM_HOST') . '.com/';
+            return redirect()->to($default_url);
+        }
+
+        $from = $request->get('fromtype', 'main');
+        $uv_key_format = 'activity:%s:distribution_channel_id:%s:date:%s:uv';
+        $pv_key_format = 'activity:%s:distribution_channel_id:%s:pv';
+        $uv_key = sprintf($uv_key_format, $activity_info->id, $this->distribution_channel_id, date('Y-m-d'));
+        $pv_key = sprintf($pv_key_format, $activity_info->id, $this->distribution_channel_id);
+        Redis::sadd($uv_key, $this->uid);
+        Redis::hincrby($pv_key, date('Y-m-d'), 1);
+        $redirect_url = env('H5_SCHEME', 'https') . '://site' . $encode_distribution_channel_id . '.' . env('CUSTOM_HOST') . '.com/person';
+        if ($request->input('redirect_url')) {
+            $redirect_url = $request->input('redirect_url');
+            $redirect_url = urldecode($redirect_url);
+        }
+
+        $product_ids = [6621, 6622,6623];
+
+        //未开始
+        if (time() < strtotime($activity_info->start_time)) {
+            return view('pay.activity.summerHoliday', ['url' => ['javascript:void(0)', 'javascript:void(0)','javascript:void(0)'], 'code' => -1]);
+        }
+        //结束
+        if (time() > strtotime($activity_info->end_time)) {
+            return view('pay.activity.summerHoliday', ['url' => ['javascript:void(0)', 'javascript:void(0)','javascript:void(0)'], 'code' => -2]);
+        }
+        $url = [];
+        foreach ($product_ids as $product_id) {
+            $param = [
+                'uid' => $this->uid,
+                'distribution_channel_id' => $this->distribution_channel_id,
+                'product_id' => $product_id,
+                'activity_id' => $activity_info->id,
+                'fromtype' => $from,
+                'pay_redirect_url' => $redirect_url,
+                'limit' => 100
+            ];
+            $url[] = env('CREATE_PAY_URL') . '?' . http_build_query($param);
+        }
+
+        return view('pay.activity.summerHoliday', ['url' => $url, 'code' => 0]);
+    }
+    
 }
 }

+ 2 - 3
app/Http/Controllers/Wap/Web/WelcomeController.php

@@ -498,9 +498,8 @@ class WelcomeController extends BaseController
                     } else {
                     } else {
                         $activity_img = 'https://cdn-novel.iycdm.com/h5/activity-2019-05-10/reader-50.jpg';
                         $activity_img = 'https://cdn-novel.iycdm.com/h5/activity-2019-05-10/reader-50.jpg';
                     }*/
                     }*/
-
-                    $activity_img = 'https://cdn-novel.iycdm.com/h5/activity-2019-06-20/3800.jpg';
-                    $url = $h5_scheme . '://' . _domain() . '/activity/common?token=7fvWK3QnYadTFMAGZ5tURUvKDwwNomSt&fromtype=reader-year';
+                    $activity_img = sprintf('https://cdn-novel.iycdm.com/h5/activity-2019-07-10/reader-banner%s.jpg',random_int(1,3));
+                    $url = $h5_scheme . '://' . _domain() . $activity_info->activity_page . '&fromtype=reader';
                 }
                 }
             }
             }
         }
         }

+ 1 - 0
app/Http/Routes/Wap/WapRoutes.php

@@ -258,6 +258,7 @@ Route::group(['domain'=>env('WAP_DOMAIN'),'namespace'=>'App\Http\Controllers\Wap
 
 
         Route::get('activity/huaweiLottery','Web\ActivityController@huaweiLotteryView');
         Route::get('activity/huaweiLottery','Web\ActivityController@huaweiLotteryView');
         Route::get('activity/huaweiActivity','Web\ActivityController@huaweiActivity');
         Route::get('activity/huaweiActivity','Web\ActivityController@huaweiActivity');
+        Route::get('activity/summerholiday','Web\ActivityController@summerHoliday');
 
 
         Route::get('activity/ragonBoatActivity','Web\ActivityController@ragonBoatActivity');
         Route::get('activity/ragonBoatActivity','Web\ActivityController@ragonBoatActivity');
 
 

+ 147 - 0
resources/views/pay/activity/summerHoliday.blade.php

@@ -0,0 +1,147 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8" />
+    <meta
+            name="viewport"
+            content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"
+    />
+    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
+    <title>暑期活动</title>
+    <style>
+        html,
+        body {
+            margin: 0 auto;
+            padding: 0;
+            max-width: 450px;
+            font-size: 100px;
+        }
+
+        html {
+            background: #f7e7cb;
+        }
+
+        p {
+            margin: 0;
+        }
+
+        .main_box {
+            font-size: 0;
+            position: relative;
+        }
+
+        .main_box img {
+            width: 100%;
+        }
+
+        .container-wrap {
+            position: absolute;
+            width: 80%;
+            top: 38%;
+            left: 50%;
+            -webkit-transform: translate(-50%, 0);
+            transform: translate(-50%, 0);
+        }
+
+        .recharge-wrap {
+            margin-bottom: 0.2rem;
+        }
+
+        .recharge-wrap .recharge-item:not(:last-child) {
+            margin-bottom: 0.2rem;
+        }
+    </style>
+</head>
+
+<body>
+<main class="main_box">
+    <img src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/bg.jpg" alt="" />
+    <div class="container-wrap">
+        <div class="recharge-wrap">
+            <div class="recharge-item cur">
+                <img
+                        src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn1-active.png"
+                        data-src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn1.png"
+                        data-active="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn1-active.png"
+                        data-active-status="1"
+                        data-href="{{$url[0]}}"
+                        alt=""
+                />
+            </div>
+            <div class="recharge-item">
+                <img
+                        src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn2.png"
+                        data-src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn2.png"
+                        data-active="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn2-active.png"
+                        data-active-status="0"
+                        data-href="{{$url[1]}}"
+                        alt=""
+                />
+            </div>
+            <div class="recharge-item">
+                <img
+                        src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn3.png"
+                        data-src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn3.png"
+                        data-active="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/btn3-active.png"
+                        data-active-status="0"
+                        data-href="{{$url[2]}}"
+                        alt=""
+                />
+            </div>
+        </div>
+        <div class="to-recharge">
+            @if($code == 0)
+                <img src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/doing.png" alt="" id="pay" data-href=""/>
+            @elseif($code == -1)
+                <img src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/undo.png" alt="" />
+            @else
+                <img src="https://cdn-novel.iycdm.com/h5/activity-2019-07-10/done.png" alt="" />
+            @endif
+
+
+        </div>
+    </div>
+</main>
+</body>
+<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
+<script>
+    // 按钮点击
+    $(".recharge-wrap").delegate("img", "click", function() {
+        $(".recharge-item").removeClass("cur");
+        $(this)
+                .parent()
+                .addClass("cur");
+        var active = $(this).attr("data-active");
+        var is_active = $(this).attr("data-active-status");
+        if (!+is_active) {
+            reset();
+            $(this).attr("src", active);
+            $(this).attr("data-active-status", 1);
+            $("#pay").attr("data-href",$(this).attr("data-href"))
+        }
+    });
+
+    // 重置
+    function reset() {
+        var imgs = $(".recharge-item img");
+        for (var i = 0; i < imgs.length; i++) {
+            (function(index) {
+                var img = imgs[i];
+                var src = $(img).attr("data-src");
+                $(img).attr("src", src);
+                $(img).attr("data-active-status", 0);
+            })(i);
+        }
+    }
+
+    // 重置
+    $(".to-recharge").delegate("#pay", "click", function() {
+        var url = $(this).attr("data-href");
+        if(url){
+            location.href=url
+        }else{
+            return false;
+        }
+    });
+</script>
+</html>