public function actionIndex() { $list = UserMessageHistory::find()->where(['status' => 1])->orderBy("id desc")->limit(5)->all(); $data = []; if ($list) { $user_mapping = DataHelper::getDicByRelateID($list, User::className(), "uid", "uid", ["nickname", "avatar"]); foreach ($list as $_item) { if (!isset($user_mapping[$_item['uid']])) { continue; } $tmp_user_info = $user_mapping[$_item['uid']]; $data[] = ["id" => $_item['id'], "nickname" => DataHelper::encode($tmp_user_info['nickname']), "avatar" => $tmp_user_info['avatar'] ? $tmp_user_info['avatar'] : GlobalUrlService::buildStaticUrl("/images/wap/no_avatar.png"), "content" => DataHelper::encode($_item['content']), "created_time" => date("Y-m-d H:i", strtotime($_item['created_time']))]; } } $this->layout = "main"; return $this->render("index", ["list" => $data]); }
/** * @return \yii\db\ActiveQuery */ public function getUpdatedBy() { return $this->hasOne(User::className(), ['id' => 'updated_by']); }
/** * Get all members. * @return BaseUserQuery */ public function getMembers($type = 'all') { $model = User::buildNoInitModel(); $query = $this->hasMany(User::className(), [$model->guidAttribute => 'member_guid'])->via('memberItems'); $type = (array) $type; foreach ($type as $key => $t) { if (array_key_exists($t, static::$types)) { unset($type[$key]); } $query = $query->andWhere(['type' => $type]); } return $query; /* SELECT * FROM `rho_user` WHERE <Organization::$member_guid> IN (...) */ }
/** * @return \yii\db\ActiveQuery */ public function getUser() { return $this->hasOne(User::className(), ['id' => 'user_id']); }
/** * Get the query of the users who is following me. * @return BaseUserQuery */ public function getFollowers() { $model = Follow::buildNoInitModel(); return $this->hasMany(User::className(), [$this->guidAttribute => $model->createdByAttribute])->via('inverseFollows'); }