Example #1
0
 protected function saveAccessLogAll($params = [])
 {
     $request = $this->getRequest();
     $log = new MAccessLogAll();
     $log->setAttributes($request, false);
     $log->save(false);
 }
Example #2
0
 public function actionStatvisit()
 {
     //$date_start = Yii::$app->request->get('date_start', date("Y-m-d")-24*3600);
     //$date_end = Yii::$app->request->get('date_end', date("Y-m-d", time()));
     $cur_date = Yii::$app->request->get('cur_date');
     if (empty($cur_date)) {
         $date_start = Yii::$app->request->get('date_start', date("Y-m-d"));
         $date_end = Yii::$app->request->get('date_end', date("Y-m-d"));
     } else {
         $date_start = $cur_date;
         $date_end = $cur_date;
     }
     //$date_start = Yii::$app->request->get('date_start', date("Y-m-d", time() - 6*24*3600));
     //$date_end = Yii::$app->request->get('date_end', date("Y-m-d", time() - 5*24*3600));
     U::W([$date_start, $date_end]);
     $rows = MAccessLogAll::find()->select('*, count(*) as c')->where('ToUserName=:gh_id AND create_time>=:date_start AND create_time<:date_end', [':gh_id' => Yii::$app->user->getGhid(), ':date_start' => $date_start, ':date_end' => $date_end])->groupBy(['ToUserName', 'EventKeyCRC'])->orderBy('c DESC')->asArray()->all();
     //        U::W($rows);
     $dataProvider = new ArrayDataProvider(['allModels' => $rows, 'pagination' => ['pageSize' => 50]]);
     $data = null;
     foreach ($rows as $row) {
         //$data[] = [$row['EventKey'], (int)$row['c']];
         $pos = strpos($row['EventKey'], "&state=");
         $s = $pos === false ? 0 : $pos;
         $pos = strpos($row['EventKey'], ":gh_");
         $e = $pos === false ? 100 : $pos;
         $title = substr($row['EventKey'], $s, $e - $s);
         //            $data[] = ['View'.rand(), (int)$row['c']];
         if (preg_match("/wap\\/mobilelist/i", $title)) {
             $title = "手机列表";
         } else {
             if (preg_match("/wap\\/cardlist/i", $title)) {
                 $title = "上网卡";
             } else {
                 if (preg_match("/wap\\/g2048/i", $title)) {
                     $title = "游戏2048";
                 } else {
                     if (preg_match("/wap\\/order/i", $title)) {
                         $title = "我的订单";
                     } else {
                         if (preg_match("/http:\\/\\/m.10010.com/i", $title)) {
                             $title = "联通官网";
                         } else {
                             if (preg_match("/m.wsq.qq.com\\/263163652/i", $title)) {
                                 $title = "微社区";
                             } else {
                                 if (preg_match("/http:\\/\\/lm.10010.com\\/wolm\\/ot\\/index.html/i", $title)) {
                                     $title = "沃联盟";
                                 } else {
                                     if (preg_match("/http:\\/\\/lm.10010.com\\/wolm\\/ot\\/guideDetail.html/i", $title)) {
                                         $title = "沃联盟向导页";
                                     } else {
                                         if (preg_match("/http:\\/\\/wsq.qq.com\\/reflow\\/263163652-1044/i", $title)) {
                                             $title = "我要吐槽";
                                         }
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
         }
         $data[] = [$title, (int) $row['c']];
     }
     /*
             $rows = [
                 ['Firefox',   45.0],
                 ['IE',       26.8],
                 ['Safari',    8.5],
                 ['Opera',     6.2],
                 ['Others',   0.7]
             ];        
             $data = $rows;
     */
     U::W(Yii::$app->user->getGhid());
     U::W($data);
     return $this->render('statvisit', ['dataProvider' => $dataProvider, 'date_start' => $date_start, 'date_end' => $date_end, 'cur_date' => $cur_date, 'data' => $data]);
 }
Example #3
0
 public function actionJfdh($filename = 'jfdh.csv', $date = null)
 {
     $filepathname = Yii::$app->getRuntimePath() . DIRECTORY_SEPARATOR . 'exported_data' . DIRECTORY_SEPARATOR . $filename;
     $fh = fopen($filepathname, 'w');
     if (null === $date) {
         $date = \app\models\U::getFirstDate(date('Y'), date('m'));
     }
     $jfdhLogs = \app\models\MAccessLogAll::find()->where(['>', 'create_time', $date])->andWhere(['MsgType' => 'event', 'Event' => 'VIEW', 'EventKey' => 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx1b122a21f985ea18&redirect_uri=http%3A%2F%2Fwosotech.com%2Fwx%2Fweb%2Findex.php%3Fr%3Dwap%2Foauth2cb&response_type=code&scope=snsapi_base&state=wapx/jfdhlist:gh_03a74ac96138#wechat_redirect'])->orderBy(['create_time' => SORT_ASC])->all();
     foreach ($jfdhLogs as $log) {
         $fan = \app\models\MUser::findOne(['gh_id' => $log->ToUserName, 'openid' => $log->FromUserName]);
         fprintf($fh, "%s, %s, %s\n", str_replace(",", "", $fan->nickname), implode(';', $fan->bindMobileNumbers), $log->create_time);
     }
     fclose($fh);
 }