<?php
/**
 * Created by PhpStorm.
 * User: xiaofeng
 * Date: 2018/3/4
 * Time: 上午9:25
 */

namespace common\models;

//use yii\db\ActiveRecord;
class PushSojourncity extends Common
{
    public function rules()
    {
        return [
            ['cid','required','message'=>'{attribute}不能为空'],
            ['cid', 'unique', 'targetClass' => 'common\models\PushSojourncity','on'=>['add'],'message'=>'该区域已存在'],
            ['sort','number','message'=>'排序只能是数字'],
            ['sort','number','max'=>1000000],
        ];
    }

    public function attributeLabels()
    {
        return [
            'cid'=>'区域',
        ];
    }


    public function Authenticator($input)
    {
        $this->load($input,'');
        if(!$this->validate()) return $this->errors;
        return $this;
    }

    public function FindById($id)
    {
        return self::findOne($id);
    }



    public function getList($input)
    {
        $query = self::find();
        $query->select(['pfg_category_city.city_name','pfg_push_sojourncity.id','pfg_push_sojourncity.create_at','pfg_push_sojourncity.is_show','pfg_push_sojourncity.sort']);
        $query->andWhere(['pfg_push_sojourncity.del'=>$this->setDel]);
        $query->leftJoin('pfg_city_details','pfg_push_sojourncity.cid=pfg_city_details.id');
        $query->leftJoin('pfg_category_city','pfg_city_details.city_id=pfg_category_city.id');
        if(!empty($input['page']))
        {
            $query->limit = $input['limit'];
            $query->offset = ($input['page']-1 )* $input['limit'];
        }
        return $query->orderBy(['pfg_push_sojourncity.sort'=>SORT_ASC])->asArray()->all();
    }

    public function WhereColumn($query)
    {

    }

    public function Total()
    {
        $query = self::find();
        $query->andWhere(['pfg_push_sojourncity.del'=>$this->setDel]);
        $query->leftJoin('pfg_city_details','pfg_push_sojourncity.cid=pfg_city_details.id');
        $query->leftJoin('pfg_category_city','pfg_city_details.city_id=pfg_category_city.id');
        return $query->count();
    }


    public function HomeGetList($limit = null)
    {
        $query = self::find();
        $query->select(['pfg_category_city.city_name','pfg_city_details.id','pfg_city_details.thumb','pfg_city_details.introduce']);
        $query->andWhere(['pfg_push_sojourncity.del'=>$this->setDel]);
        $query->andWhere(['pfg_push_sojourncity.is_show'=>1]);
        $query->leftJoin('pfg_city_details','pfg_push_sojourncity.cid=pfg_city_details.id');
        $query->leftJoin('pfg_category_city','pfg_city_details.city_id=pfg_category_city.id');
        $query->limit = $limit;
        return $query->orderBy(['pfg_push_sojourncity.sort'=>SORT_ASC])->asArray()->all();
    }


}