request;
      \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
      $store = $request->get('store', "supernova");  
      $limit = $request->get('limit', "10");  
      $page = $request->get('page', "1"); 
      
      $page=$page-1>=0?$page-1:0;
      $where=[];
      if(!$store){
        return ['status'=>false,'msg'=>"参数异常"];
      }
      $where['store']=$store;
      $query=ContentPage::find()->where(["store"=>$where]);
      $count = $query->count();
      $pagination = new Pagination(['totalCount' => $count,'pageSize'=>$limit,'page'=>$page]);
      $items = $query->offset($pagination->offset)
          ->limit($pagination->limit)
          ->orderBy([
            'pageviews'=>SORT_DESC,
            'id'=>SORT_DESC
          ])
          ->all();
        foreach($items as $k=>$v){
          $items[$k]['created_at']=date('Y-m-d H:i:s',$v['created_at']);
        }
      $data=[
        'total'=>$count,
        'items'=>$items,
      ];
      
      return [
        'code' => 200,
        'data'=>$data,
        'status'=>true    
      ];
    }
    public function actionSource(){
      $request = Yii::$app->request;
      \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
      $store = $request->get('store', "supernova");  
      $limit = $request->get('limit', "10");  
      $page = $request->get('page', "1"); 
      
      $page=$page-1>=0?$page-1:0;
      $where=[];
      if(!$store){
        return ['status'=>false,'msg'=>"参数异常"];
      }
      $where['store']=$store;
      $query=Trafficsource::find()->where(["store"=>$where]);
      $count = $query->count();
      $pagination = new Pagination(['totalCount' => $count,'pageSize'=>$limit,'page'=>$page]);
      $items = $query->offset($pagination->offset)
          ->limit($pagination->limit)
          ->orderBy([
            'date'=>SORT_DESC,
            'users'=>SORT_DESC
          ])
          ->all();
        foreach($items as $k=>$v){
          $items[$k]['created_at']=date('Y-m-d H:i:s',$v['created_at']);
        }
      $data=[
        'total'=>$count,
        'items'=>$items,
      ];
      
      return [
        'code' => 200,
        'data'=>$data,
        'status'=>true    
      ];
    }
    public function actionSynsdata(){
      $ga=new GA();
      $store="supernova";
      $request = Yii::$app->request;
      $start_day = $request->get('start', date('Y-m-d'),time()-24*3600);
      $end_day=$start_day;
      $query=ContentPage::find()->where(["store"=>$store,'date'=>$start_day]);
      $count = $query->count();
      if($count>0){
        echo $start_day.$store." ContentPage"."已经执行过,请不要重复执行";
      }else{
        $contentpages=$ga->contentpages($store,$start_day,$end_day);
        $this->addContentpages($contentpages,$store);
      }
      $query=Trafficsource::find()->where(["store"=>$store,'date'=>$start_day]);
      $count = $query->count();
      if($count>0){
        echo $start_day.$store." Trafficsource"."已经执行过,请不要重复执行";
      }else{
        $contentpages=$ga->trafficsource($store,$start_day,$end_day);
        $this->addSource($contentpages,$store);
      }
      echo $start_day." 任务完成"."
";
      exit;
    }
    public function addSource($data,$store){
      $i=1;
      $limit=200;
      $modelKey=[
        'date',
        'store',
        'source',
        'channelGrouping',
        'landingPagePath',
        'keyword',
        'socialNetwork',
        'users',
        'newUsers',
        'sessions',
        'bounceRate',
        'pageviewsPerSession',
        'avgSessionDuration',
        'transactionsPerVisit',
        'transactions',
        'transactionRevenue',
        'created_at',
      ];
      if(!empty($data)){
        $list=[];
        foreach($data as $k=>$v){
          $item=[
            date('Y-m-d',strtotime($v['date'])),
            $store,
            $v['source'],
            $v['channelGrouping'],
            $v['landingPagePath']!=="(not set)"?$v["landingPagePath"]:"",
            $v['keyword']!=="(not set)"?$v['keyword']:"",
            $v['socialNetwork']!=="(not set)"?$v['socialNetwork']:"",
            $v['users'],
            $v['newUsers'],
            $v['sessions'],
            $v['bounceRate'],
            $v['pageviewsPerSession'],
            $v['avgSessionDuration'],
            $v['transactionsPerVisit'],
            $v['transactions'],
            $v['transactionRevenue'],
            time(),
          ];
          $list[]=$item;
          if($i%$limit==0||$i==count($data)){
            \Yii::$app->db->createCommand()->batchInsert(Trafficsource::tableName(), $modelKey, $list)->execute();
            $list=[];
            echo  "addSource 任务完成".$i."个"."
";
          }
          $i++;
        }
        echo "addSource 任务全部完成"."
";
      }
    }
    public function actionTest(){
      $ga=new GA();
      $store="supernova";
      $request = Yii::$app->request;
      $start_day = $request->get('start', date('Y-m-d'));
      $end_day=$request->get('end', date('Y-m-d',time()-3600*24*7));
      $data=$ga->visitors_geo($store,$start_day,$end_day);
      dd($data);
    }
    public function addContentpages($contentpages,$store){
        $i=1;
        $limit=20;
        $modelKey=[
          'pagePath',
          'store',
          'date',
          'pageviews',
          'uniquePageviews',
          'avgTimeOnPage',
          'entrances',
          'bounceRate',
          'exitRate',
          'pageValue',
          'created_at',
        ];
        if(!empty($contentpages)){
          $list=[];
          foreach($contentpages as $k=>$v){
            $item=[
              $v['pagePath'],
              $store,
              date('Y-m-d',strtotime($v['date'])),
              $v['pageviews'],
              $v['uniquePageviews'],
              $v['avgTimeOnPage'],
              $v['entrances'],
              $v['bounceRate'],
              $v['exitRate'],
              $v['pageValue'],
              time(),
            ];
            $list[]=$item;
            if($i%$limit==0||$i==count($contentpages)){
              \Yii::$app->db->createCommand()->batchInsert(ContentPage::tableName(), $modelKey, $list)->execute();
              $list=[];
              echo "addContentpages 任务完成".$i."个"."
";
            }
            $i++;
          }
          echo "addContentpages 任务全部完成"."
";
        }
    }
  }