예제 #1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = MeritLog::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     $query->andFilterWhere(['id' => $this->id, 'user_id' => $this->user_id, 'merit_template_id' => $this->merit_template_id, 'type' => $this->type, 'action_type' => $this->action_type, 'increment' => $this->increment, 'created_at' => $this->created_at]);
     $query->andFilterWhere(['like', 'description', $this->description])->andFilterWhere(['like', 'username', $this->username]);
     return $dataProvider;
 }
예제 #2
0
 /**
  * 按次查看
  * @param MeritTemplate $meritTemplate
  * @param $userId
  * @return int|string
  */
 public function getMeritLogDay(MeritTemplate $meritTemplate, $userId)
 {
     return MeritLog::find()->where(['merit_template_id' => $meritTemplate->id, 'type' => $meritTemplate->type, 'user_id' => $userId])->andWhere(['between', 'created_at', strtotime(date('Ymd') . '000000'), strtotime(date('Ymd') . '235959')])->count();
 }
예제 #3
0
 public function actionPoint($username = '')
 {
     $user = $this->user($username);
     $dataProvider = new ActiveDataProvider(['query' => MeritLog::find()->where(['user_id' => $user->id, 'type' => 1])->orderBy(['created_at' => SORT_DESC])]);
     return $this->render('show', ['user' => $user, 'dataProvider' => $dataProvider]);
 }