Christmas.php 12.3 KB
<?php

use Action\HuodongAction;
use Plugin\Helpers;
use LibModels\Wap\Cuxiao\ActivityData;

/**
 * 圣诞领券活动
 * @author Administrator
 */
class ChristmasController extends HuodongAction
{

    protected $_isApp = false;

    /**
     * 备注:2015年12月11号上线
     */
    public function christmasAction()
    {
        //获取登录者ID,未登录返回false
        $uid = $this->getLoggedUid();
        if (!$uid || !is_numeric($uid)) {
            //未登录的用户访问,跳转到登录页面。并且在登陆后跳转回本页面
            $this->go(Helpers::url('/signin.html', array('refer' => Helpers::url('/cuxiao/christmas/christmas')), 'default'));
        }

        // 该变量用来控制和显示页面的弹出提示
        $showPopupFlag = '0';

        //获取跳转到个人中心-我的优惠券链接,并调用接口,完成领券操作
        $myCouponUrl = Helpers::url('/home/coupons', null, 'default') . '?openby:yohobuy={"action":"go.coupon"}';
        $activityId = $this->getActivityId();
        $result = ActivityData::getCouponAll($uid, $activityId);
        if (isset($result['code'])) {
            switch (intval($result['code'])) {
                case 200: // 领取成功, 发送站内信消息
                    $showPopupFlag = '0';
                    $this->sendMessage($uid, '【优惠券】您有6张潮集圣诞优惠券', '尊敬的客户:恭喜您成功获得6张潮集圣诞优惠券 !您可以在个人中心的交易管理中查看‘我的优惠券’。');
                    break;
                case 201: // 已领取过, 提示重复领券
                    $showPopupFlag = '1';
                    break;
                default: // 领取失败, 提示领券失败
                    $showPopupFlag = '2';
                    break;
            }
        }

        $this->_view->display('index', array(
            'staticTitle' => '潮集圣诞',
            'weixinShare' => $this->_isApp ? false : true, // 是否需要微信分享
            'shareLink' => '//feature.yohobuy.com/0/0/675/index.html',
            'shareTitle' => 'YOHO!BUY有货【潮集圣诞】第一弹来袭!500元优惠券引爆圣诞!',
            'shareDesc' => '万件潮品限时58折封顶,再享折上满减,还有惊喜圣诞礼物等你来挑哦!',
            'shareImg' => '//img12.static.yhbimg.com/couponImg/2015/12/10/09/029fd41969b67002126ff7a71fe5396b6e.png',
            'showPopupFlag' => $showPopupFlag,
            'myCouponUrl' => $myCouponUrl,
            'bannerUrl_1' => '//feature.yoho.cn/1211/1211APPHOMEBOY/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"潮集圣诞","url":"//feature.yoho.cn/1211/1211APPHOMEBOY/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"454"},"param":{"share_id":"454"}}}',
            'bannerUrl_2' => '//feature.yoho.cn/1211/1211APPHOMEGIRL/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"潮集圣诞","url":"//feature.yoho.cn/1211/1211APPHOMEGIRL/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"456"},"param":{"share_id":"456"}}}',
        ));
    }

    /**
     * 备注:2015年12月11号上线
     */
    public function christmas2Action()
    {
        //获取登录者ID,未登录返回false
        $uid = $this->getLoggedUid();
        if (!$uid || !is_numeric($uid)) {
            //未登录的用户访问,跳转到登录页面。并且在登陆后跳转回本页面
            $this->go(Helpers::url('/signin.html', array('refer' => Helpers::url('/cuxiao/christmas/christmas2')), 'default'));
        }

        // 该变量用来控制和显示页面的弹出提示
        $showPopupFlag = '0';

        //获取跳转到个人中心-我的优惠券链接,并调用接口,完成领券操作
        $myCouponUrl = Helpers::url('/home/coupons', null, 'default') . '?openby:yohobuy={"action":"go.coupon"}';
        $activityId = $this->getActivityId2();
        $result = ActivityData::getCouponAll($uid, $activityId);
        if (isset($result['code'])) {
            switch (intval($result['code'])) {
                case 200: // 领取成功, 发送站内信消息
                    $showPopupFlag = '0';
                    $this->sendMessage($uid, '【优惠券】您获得1000元套券', '尊敬的客户:恭喜您成功获得1000元套券!您可以在个人中心的交易管理中查看‘我的优惠券’。');
                    break;
                case 201: // 已领取过, 提示重复领券
                    $showPopupFlag = '1';
                    break;
                default: // 领取失败, 提示领券失败
                    $showPopupFlag = '2';
                    break;
            }
        }

        $this->_view->display('index-2', array(
            'staticTitle' => '潮集圣诞',
            'weixinShare' => $this->_isApp ? false : true, // 是否需要微信分享
            'shareLink' => '//feature.yohobuy.com/0/0/701/index.html',
            'shareTitle' => 'YOHO!BUY有货【潮集圣诞】第二弹来袭!1000元优惠券引爆圣诞!',
            'shareDesc' => '万件潮品限时5折封顶,冬季优品最高直减800元,还有惊喜圣诞礼物等你来挑哦!',
            'shareImg' => '//img11.static.yhbimg.com/couponImg/2015/12/17/09/014bba1e01a0aef86fa4c81f1c926a0d62.png',
            'showPopupFlag' => $showPopupFlag,
            'myCouponUrl' => $myCouponUrl,
            'bannerUrl_1' => '//feature.yoho.cn/1221/1221APPHOMEBOY/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"潮集圣诞","url":"//feature.yoho.cn/1221/1221APPHOMEBOY/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"530"},"param":{"share_id":"530"}}}',
            'bannerUrl_2' => '//feature.yoho.cn/1221/1221APPHOMEGIRL/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"潮集圣诞","url":"//feature.yoho.cn/1221/1221APPHOMEGIRL/index.html","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"532"},"param":{"share_id":"532"}}}',
            'bannerUrl_3' => '//feature.yoho.cn/1221/1221APPHOMELIFE/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"潮集圣诞","url":"//feature.yoho.cn/1221/1221APPHOMELIFE/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"536"},"param":{"share_id":"536"}}}',
            'bannerUrl_4' => '//feature.yoho.cn/1221/1221APPHOMEKIDS/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"潮集圣诞","url":"//feature.yoho.cn/1221/1221APPHOMEKIDS/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"534"},"param":{"share_id":"534"}}}',
        ));
    }
    
    /**
     * 元旦领券(圣诞领券第三波)
     * 
     * 备注:2015年12月28号上线
     */
    public function newyearAction()
    {
        //获取登录者ID,未登录返回false
        $uid = $this->getLoggedUid();
        if (!$uid || !is_numeric($uid)) {
            //未登录的用户访问,跳转到登录页面。并且在登陆后跳转回本页面
            $this->go(Helpers::url('/signin.html', array('refer' => Helpers::url('/cuxiao/christmas/newyear')), 'default'));
        }
        
        // 该变量用来控制和显示页面的弹出提示
        $showPopupFlag = '0';

        //获取跳转到个人中心-我的优惠券链接,并调用接口,完成领券操作
        $myCouponUrl = Helpers::url('/home/coupons', null, 'default') . '?openby:yohobuy={"action":"go.coupon"}';
        $activityId = $this->getActivityId3();
        $result = ActivityData::getCouponAll($uid, $activityId);
        if (isset($result['code'])) {
            switch (intval($result['code'])) {
                case 200: // 领取成功, 发送站内信消息
                    $showPopupFlag = '0';
                    $this->sendMessage($uid, '【优惠券】您获得500元元旦优惠券', '尊敬的客户:恭喜您成功获得500元套券 !您可以在个人中心的交易管理中查看‘我的优惠券’。');
                    break;
                case 201: // 已领取过, 提示重复领券
                    $showPopupFlag = '1';
                    break;
                default: // 领取失败, 提示领券失败
                    $showPopupFlag = '2';
                    break;
            }
        }

        $this->_view->display('index-3', array(
            'staticTitle' => '年终热促',
            'weixinShare' => $this->_isApp ? false : true, // 是否需要微信分享
            'shareLink' => '//feature.yohobuy.com/0/0/724/index.html',
            'shareTitle' => 'YOHO!BUY有货【Final Sale】年终热促开启,限时4.8折封顶!',
            'shareDesc' => '500元优惠券限时派送,更有800+潮牌跨年礼物赠不停!',
            'shareImg' => '//img11.static.yhbimg.com/couponImg/2015/12/25/07/010657d070da271499ad9367c5806486b2.png',
            'showPopupFlag' => $showPopupFlag,
            'myCouponUrl' => $myCouponUrl,
            'bannerUrl_1' => '//feature.yoho.cn/1228/1228APPHOMEBOY/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"Final sale","url":"//feature.yoho.cn/1228/1228APPHOMEBOY/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"360"},param":{"share_id":"360"}}}',
            'bannerUrl_2' => '//feature.yoho.cn/1228/1228APPHOMEGIRL/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"Final sale","url":"//feature.yoho.cn/1228/1228APPHOMEGIRL/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"358"},param":{"share_id":"358"}}}',
            'bannerUrl_3' => '//feature.yoho.cn/1228/1228APPHOMEKIDS/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"Final sale","url":"//feature.yoho.cn/1228/1228APPHOMEKIDS/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"356"},param":{"share_id":"356"}}}',
            'bannerUrl_4' => '//feature.yoho.cn/1228/1228APPHOMELIFE/index.html?openby:yohobuy={"action":"go.h5","params":{"title":"Final sale","url":"//feature.yoho.cn/1228/1228APPHOMELIFE/index.html?","share":"\/operations\/api\/v5\/webshare\/getShare","shareparam":{"share_id":"354"},param":{"share_id":"354"}}}',
        ));
    }
    
    /**
     * 检测登录状态
     * 
     * @return int
     */
    private function getLoggedUid()
    {
        // 判断是否是应用访问, 拼接APP需要的URL参数
        $this->_isApp = (null !== $this->get('app_version') || null !== $this->get('uid'));
        $uid = false;
        if ($this->_isApp) {
            $uid = $this->get('uid');
        } else {
            $uid = $this->getUid();
        }

        return $uid;
    }

    /**
     * 发送站内信
     * 
     * @param int $uid 用户ID
     */
    private function sendMessage($uid, $title, $content)
    {
        try {
            ActivityData::message($uid, $title, $content);
        } catch (Exception $e) {
            // do nothing
        }
    }

    /**
     * 根据环境来获取活动ID
     * 
     * @return int
     */
    private function getActivityId()
    {
        // 设置环境变量
        switch (APPLICATION_ENV) {
            case 'production': // 生产
                return 388;
            case 'preview':      // 预览
            case 'testing':      // 测试
            case 'develop':      // 开发
            default:
                return 84;
        }
    }

    /**
     * 根据环境来获取活动ID
     * 
     * @return int
     */
    private function getActivityId2()
    {
        // 设置环境变量
        switch (APPLICATION_ENV) {
            case 'production': // 生产
                return 390;
            case 'preview':      // 预览
            case 'testing':      // 测试
            case 'develop':      // 开发
            default:
                return 85;
        }
    }

     /**
     * 根据环境来获取活动ID
     * 
     * @return int
     */
    private function getActivityId3()
    {
        // 设置环境变量
        switch (APPLICATION_ENV) {
            case 'production': // 生产
                return 390;
            case 'preview':      // 预览
            case 'testing':      // 测试
            case 'develop':      // 开发
            default:
                return 85;
        }
    }
}