<?php
/**
 *
 * ============================================================================
 * * 版权所有 蜘蛛出行 * *
 * 网站地址: http://www.zhizhuchuxing.com
 * ----------------------------------------------------------------------------
 * 这不是一个自由软件！您只能在不用于商业目的的前提下对程序代码进行修改和
 * 使用；不允许对程序代码以任何形式任何目的的再发布。
 * ============================================================================
 * Author By: 倪宗锋
 * PhpStorm WebController.php
 * Create By 2017/2/23 14:31 $
 */


namespace common\Controller;

use common\util\Util;
use fx\util\FxUtil;
use Yii;
use yii\web\Controller;

class FxWebController extends Controller
{
    public $service;

    /**
     * Des:获取get传值的参数
     * Name: _get
     * @param $key
     * @param $val
     * @return array|mixed
     * @author 倪宗锋
     */
    public function _get($key, $val = '')
    {
        return Yii::$app->request->get($key, $val);
    }

    /**
     * Des:获取post传值的参数
     * Name: _get
     * @param $key
     * @param $val
     * @return array|mixed
     * @author 倪宗锋
     */
    public function _post($key, $val = '')
    {
        return Yii::$app->request->post($key, $val);
    }

    /**
     * Des:获取所有传参的参数值
     * Name: _request
     * @param $key
     * @param $val
     * @return mixed
     * @author 倪宗锋
     */
    public function _request($key, $val = '')
    {
        return Yii::$app->request->getQueryParam($key, $val);
    }

    /**
     * Des:访问方法前的参数
     * Name: beforeaction
     * @param \yii\base\Action $action
     * @return bool
     * @author 倪宗锋
     */
    public function beforeaction($action)
    {
        /**获取路由地址**/
        $actionName = $action->controller->id . '/' . $action->id;
        $unLoginConfig = FxUtil::getUnLoginConfig();
        $unCheckPhone = require APP_PATH.'/config/unCheckPhone.php';
        //获取非强制登录接口配置信息
        $checkPhone = true;
        if(in_array($actionName, $unCheckPhone)) {
            $checkPhone = false;
        }
        if (in_array($actionName, $unLoginConfig) == false) {
            $checkLogin = FxUtil::checkLogin($checkPhone);
            if ($checkLogin['flag'] == false) {
                Yii::$app->response->format = 'json';
                Yii::$app->response->data = $checkLogin;
                return false;
            }
        }
        return true;
    }
}