Example #1
0
 public function run()
 {
     /**
      * 验证用户权限,但不抛错
      */
     /*$this->verifyUserAuth(false);
      	$user_id = $this->getUserAuth()->userId;*/
     $user_id = intval($this->getDataItem('user_id', 0));
     $page = intval($this->getDataItem('page', 1));
     $limit = $this->getConfig()->limit;
     $offset = ($page - 1) * $limit;
     if ($user_id > 0) {
         $list = UserBase::query()->columns(['Apps\\Common\\Models\\UserBase.user_id', 'user_nickname', 'user_cover', 'expert_follow_count', 'f.to_user_id', 'a.attr_value_json'])->leftJoin('Apps\\Common\\Models\\UserFollow', "Apps\\Common\\Models\\UserBase.user_id = f.to_user_id and f.user_id = {$user_id} and f.type = 2", 'f')->leftJoin('Apps\\Common\\Models\\UserAttribute', 'a.user_id = f.to_user_id and a.attr_type = 103 and a.attr_state = 1', 'a')->where('user_expert = 1 and user_state = 1')->orderBy('f.id DESC, expert_follow_count DESC')->limit($limit, $offset)->execute()->toArray();
     } else {
         $list = UserBase::query()->columns(['Apps\\Common\\Models\\UserBase.user_id', 'user_nickname', 'user_cover', 'expert_follow_count', 'a.attr_value_json'])->leftJoin('Apps\\Common\\Models\\UserAttribute', 'a.user_id = Apps\\Common\\Models\\UserBase.user_id and a.attr_type = 103 and a.attr_state = 1', 'a')->where('user_expert = 1 and user_state = 1')->orderBy('expert_follow_count DESC')->limit($limit, $offset)->execute()->toArray();
     }
     foreach ($list as $k => $val) {
         $list[$k]['user_cover'] = PicUrl::ActivityCover($val['user_cover'], $this->getDi());
         // 获取专家的扩展信息
         $info = $val['attr_value_json'] ? json_decode($val['attr_value_json']) : [];
         $list[$k]['experience'] = $info->experience ?: '0';
         // 从业经验
         $list[$k]['experttitle'] = $info->experttitle ?: '';
         // 擅长领域
         $list[$k]['field'] = $info->field ?: [];
         // 专家头衔(array)
         $list[$k]['is_follow'] = $val['to_user_id'] ? '1' : '0';
         unset($list[$k]['to_user_id'], $list[$k]['attr_value_json']);
     }
     $this->setResult($list);
 }
Example #2
0
 public function run()
 {
     if (!$this->verifyUserAuth()) {
         return false;
     }
     $id = intval($this->getDataItem('id', 0));
     $user_id = intval($this->getDataItem('user_id', 0));
     $content = $this->getDataItem('content', '');
     if ($id == 0 || $user_id == 0) {
         $this->errorLog(ResultStatus::URL_PARAM_CANNOT_EMPTY, 'URL参数不全');
         return false;
     }
     $contentLenth = $this->utf8_strlen($content);
     if ($contentLenth < 1 || $contentLenth > 100) {
         $this->errorLog(ResultStatus::POST_BODY_FORMAT_ERROR, '评论字符应在1~100之间.');
         return false;
     }
     $ActivityComment = new ActivityComment();
     $date = date('Y-m-d H:i:s');
     $data = ['comment_user_id' => $user_id, 'comment_content' => $content, 'addtime' => $date, 'activity_id' => $id];
     if ($ActivityComment->save($data)) {
         $ActivityComment->getReadConnection()->query("UPDATE activity SET comments = comments + 1 WHERE activity_id = {$id}");
         $userInfo = UserBase::getOne($user_id);
         $this->setResult(['comment_id' => $ActivityComment->comment_id, 'user_id' => $user_id, 'comment_content' => $content, 'addtime' => $date, 'user_gender' => $userInfo['user_gender'], 'user_cover' => PicUrl::ActivityCover($userInfo['user_cover'], $this->getDi())]);
     } else {
         $this->errorLog(ResultStatus::ERROR, '评论失败.');
     }
 }
Example #3
0
 public function searchActivity($cityId, $keyword, $limit = 5, $offset = 0)
 {
     $searchObj = $this->getSearchObj();
     $searchResult = $searchObj->search($keyword, ['type=' . SearchDataType::Activity, 'tag_int=' . $cityId], $limit, $offset);
     $activity = $this->getSearchResult($searchResult);
     $activity = $activity ? $activity : [];
     for ($i = 0; $i < count($activity); $i++) {
         $activity[$i]['cover'] = PicUrl::ActivityCover($activity[$i]['cover'], $this->getDi());
     }
     return $activity;
 }
Example #4
0
 public function run()
 {
     $id = intval($this->getDataItem('id', 0));
     $page = intval($this->getDataItem('page', 1));
     $limit = $this->getConfig()->limit;
     if ($id == 0) {
         return $this->errorLog(ResultStatus::URL_PARAM_CANNOT_EMPTY, 'URL参数不全');
     }
     $list = ActivityComment::query()->columns(['comment_id', 'comment_content', 'addtime', 'comment_user_id user_id', 'u.user_nickname', 'u.user_gender', 'u.user_cover'])->leftJoin('\\Apps\\Common\\Models\\UserBase', 'u.user_id = \\Apps\\Common\\Models\\ActivityComment.comment_user_id', 'u')->where('activity_id = ' . $id)->orderBy('addtime DESC')->limit($limit, ($page - 1) * $limit)->execute()->toArray();
     foreach ($list as $k => $val) {
         $list[$k]['user_cover'] = PicUrl::ActivityCover($val['user_cover'], $this->getDi());
     }
     $this->setResult($list);
 }
Example #5
0
 public function run()
 {
     $city_code = $this->getDataItem('city_code', 0);
     $page = intval($this->getDataItem('page', 1));
     $limit = $this->getConfig()->limit;
     $offset = ($page - 1) * $limit;
     $cityId = $this->getCityId($city_code);
     if ($cityId <= 0) {
         //return $this->errorLog(ResultStatus::CITY_NOT_OPEN, '城市未开通');
         $cityId = 2;
     }
     $this->activity = Activity::query()->columns(['activity_id id', 'activity_type type', 'activity_title as title', 'activity_cover as cover', 'activity_state as state', 'activity_end_time - NOW() AS ts'])->where('activity_state > 0 and city_id=:city_id:')->bind(['city_id' => $cityId])->limit($limit, $offset)->execute()->toArray();
     $this->activity = $this->activity ? $this->activity : [];
     for ($i = 0; $i < count($this->activity); $i++) {
         $this->activity[$i]['cover'] = PicUrl::ActivityCover($this->activity[$i]['cover'], $this->getDi());
         $this->activity[$i]['state'] = $this->activity[$i]['ts'] > 0 ? $this->activity[$i]['state'] : 2;
         unset($this->activity[$i]['ts']);
     }
     $data = ['recommend' => $this->getRecommend($cityId), 'activity' => $this->activity];
     $this->setResult($data);
 }
Example #6
0
 public function run()
 {
     $user_id = intval($this->getDataItem('user_id', 0));
     $expert_id = intval($this->getDataItem('expert_id', 0));
     //		$expert_id = 289;
     if ($expert_id < 1) {
         return $this->errorLog(ResultStatus::URL_PARAM_CANNOT_EMPTY, '缺少必传参数!');
     }
     $columns = ['user_id', 'user_nickname', 'user_cover', 'expert_follow_count', 'persional_sign'];
     if ($UserBase = UserBase::query()->columns($columns)->where('user_expert = 1 and user_id = ' . $expert_id)->execute()->getFirst()) {
         $info = $UserBase->toArray();
         $info['user_cover'] = PicUrl::ActivityCover($info['user_cover'], $this->getDi());
         if ($userAttribute = UserAttribute::findFirst('attr_type = 103 and attr_state = 1 and user_id = ' . $expert_id)) {
             $attr_value_json = $userAttribute->attr_value_json;
         } else {
             $attr_value_json = [];
         }
         $info['persional_sign'] = $info['persional_sign'] ? unserialize(base64_decode($info['persional_sign'])) : '';
         $attr_value_json = $attr_value_json ? json_decode($attr_value_json) : [];
         $info['experience'] = $attr_value_json->experience ?: '';
         // 从业经验
         $info['experttitle'] = $attr_value_json->experttitle ?: '';
         // 擅长领域
         $info['field'] = $attr_value_json->field ?: [];
         // 专家头衔(array)
         if ($user_id > 0) {
             $info['is_follow'] = (new UserFollow())->is_follow($user_id, $expert_id, 2) ? '1' : '0';
         } else {
             $info['is_follow'] = '0';
         }
         // 回答问题数
         $result = (new UserBase())->getReadConnection()->query("SELECT count(*) c FROM\r\n(SELECT count(*) FROM question_answer WHERE answer_state = 1 AND user_id = {$expert_id} GROUP BY question_id) a;");
         $count = $result->fetch();
         $info['question_count'] = $count['c'];
     } else {
         return $this->errorLog(ResultStatus::POST_BODY_PARAM_ERROR, '用户不存在或不是专家');
     }
     $this->setResult($info);
 }
Example #7
0
 public function run()
 {
     $user_id = intval($this->getDataItem('user_id', 0));
     $page = intval($this->getDataItem('page', 1));
     $limit = $this->getConfig()->limit;
     $offset = ($page - 1) * $limit;
     //		$user_id = 12;
     $where = 'user_expert = 1 and user_state = 1';
     if ($user_id > 0) {
         // 用户关注的专家列表
         $followExpert = UserFollow::query()->where("user_id = {$user_id} and type = 2")->execute()->toArray();
         $expert = '';
         foreach ($followExpert as $val) {
             $expert .= $val['to_user_id'] . ',';
         }
         if ($expert && ($expert = trim($expert, ','))) {
             $where = "user_expert = 1 and user_state = 1 and user_id not in({$expert})";
         }
     }
     $list = UserBase::query()->columns(['user_id', 'user_nickname', 'user_cover', 'expert_follow_count'])->where($where)->orderBy('expert_follow_count DESC')->limit($limit, $offset)->execute()->toArray();
     foreach ($list as $k => $val) {
         $list[$k]['user_cover'] = PicUrl::ActivityCover($val['user_cover'], $this->getDi());
         // 获取专家的扩展信息
         if ($userAttribute = UserAttribute::findFirst('attr_type = 103 and attr_state = 1 and user_id = ' . $val['user_id'])) {
             $attr_value_json = $userAttribute->attr_value_json;
         } else {
             $attr_value_json = [];
         }
         $info = $attr_value_json ? json_decode($attr_value_json) : [];
         $list[$k]['experience'] = $info->experience ?: '0';
         // 从业经验
         $list[$k]['experttitle'] = $info->experttitle ?: '';
         // 擅长领域
         $list[$k]['field'] = $info->field ?: '';
         // 专家头衔(array)
     }
     $this->setResult($list);
 }
Example #8
0
 public function run()
 {
     $city_code = $this->getDataItem('city_code', 0);
     $page = intval($this->getDataItem('page', 1));
     $state = $this->getDataItem('state', 1);
     $limit = $this->getConfig()->limit;
     $offset = ($page - 1) * $limit;
     $city = $this->getCity($city_code);
     if (!$city || $city['city_id'] <= 0) {
         $where = "activity_state = 1 and city_id = 0";
         //            return $this->errorLog(ResultStatus::CITY_NOT_OPEN, '城市未开通');
         //            $cityId = 2;
     } else {
         //            $cityId = $city['city_id'];
         $where = "activity_state = 1 and city_id in({$city['city_id']}, 0)";
     }
     $date = date('Y-m-d H:i:s');
     if ($state == 1) {
         // 进行中
         $where .= " and activity_start_time <= '{$date}' and activity_end_time >= '{$date}'";
     } else {
         // 即将开始
         $where .= " and activity_start_time >= '{$date}'";
     }
     $this->activity = Activity::query()->columns(['city_id', 'activity_id id', 'activity_type type', 'activity_title as title', 'activity_cover as cover', 'activity_start_time', 'activity_end_time', 'activity_intro', 'out_link', 'views', 'comments'])->where($where)->orderBy("IF(city_id=0, activity_update_time, 1) DESC,activity_update_time DESC")->limit($limit, $offset)->execute()->toArray();
     foreach ($this->activity as $k => $val) {
         if ($val['city_id'] == 0) {
             $this->activity[$k]['city_name'] = '全国';
         } else {
             $this->activity[$k]['city_name'] = $city['city_name'] ?: '';
         }
         $this->activity[$k]['cover'] = PicUrl::ActivityCover($this->activity[$k]['cover'], $this->getDi());
         unset($this->activity[$k]['city_id']);
     }
     $this->setResult($this->activity);
 }
Example #9
0
 /**
  * 用户的关注列表(关注的专家)
  * @param int $user_id 用户id
  * @param int $offset 偏移量
  * @param int $limit 页大小
  * @return mixed
  */
 public function getFollowExpertList($user_id, $offset = 0, $limit = 10)
 {
     $list = self::query()->columns(['u.user_id', 'u.user_gender', 'u.user_cover', 'u.user_nickname', 'a.attr_value_json'])->leftJoin('\\Apps\\Common\\Models\\UserBase', 'u.user_id = \\Apps\\Common\\Models\\UserFollow.to_user_id', 'u')->leftJoin('\\Apps\\Common\\Models\\UserAttribute', 'a.user_id = \\Apps\\Common\\Models\\UserFollow.to_user_id and a.attr_type = 103 and a.attr_state = 1', 'a')->where("\\Apps\\Common\\Models\\UserFollow.user_id = {$user_id} and type = 2")->limit($limit, $offset)->execute()->toArray();
     // 上面这里的关联查询,如果对应的专家扩展模型没有有效的数据,则这条数据就不会出现
     foreach ($list as $k => $val) {
         $list[$k]['user_cover'] = PicUrl::ActivityCover($val['user_cover'], $this->getDi());
         $list[$k]['fans_count'] = $this->getToFollowCount($val['user_id'], 2);
         // 组合专家的扩展信息
         $info = json_decode($val['attr_value_json']);
         $list[$k]['experience'] = $info->experience ?: '';
         // 从业经验
         $list[$k]['experttitle'] = $info->experttitle ?: '';
         // 擅长领域
         $list[$k]['field'] = $info->field ?: [];
         // 专家头衔(array)
         unset($list[$k]['attr_value_json']);
     }
     return $list;
 }
Example #10
0
 public function run()
 {
     $id = intval($this->getDataItem('id', 0));
     $user_id = intval($this->getDataItem('user_id', 0));
     if ($id == 0) {
         return $this->errorLog(ResultStatus::URL_PARAM_CANNOT_EMPTY, 'URL参数不全');
     }
     $Activity = new Activity();
     $ActivityViewsUser = new ActivityViewsUser();
     $data = $Activity->query()->columns(['activity_id id', 'activity_type type', 'activity_title as title', 'activity_cover as cover', 'activity_start_time', 'activity_end_time', 'activity_intro', 'views', 'comments'])->where("activity_id = {$id}")->execute()->toArray();
     $data = $data ? $data[0] : [];
     $data['user_views_list'] = $ActivityViewsUser->getViewsUserList($id, 0, 7);
     $data['cover'] = $data['cover'] ? PicUrl::ActivityCover($data['cover'], $this->getDi()) : '';
     $this->setResult($data);
     $count = 1;
     $Activity->getReadConnection()->query("UPDATE activity SET views = views + {$count} WHERE activity_id = {$id}");
     if ($user_id) {
         $ActivityViewsUser->addData($id, $user_id);
     }
     /*if(0 < $id) {
                 $this->activity = Activity::query()
                     ->columns(['activity_id id',
                         'city_id city',
                         'activity_type type',
                         'activity_title as title',
                         'activity_intro as intro',
                         '0 beauty_parlors',
                     ])
                     ->where('activity_id=:id:')
                     ->bind(['id'=>$id])
                     ->execute()->getFirst();
                 if($this->activity){
                     $parlor = ActivityBeautyParlor::query()
                         ->columns([
                             'bp_id as id',
                             'bp_name as name',
                             'bp_cover as cover',
                             'bp_address as address',
                             '0 as tags',
                             'bp_medal as medal'])
                         ->leftJoin('Apps\Common\Models\BeautyParlor',
                             'Apps\Common\Models\ActivityBeautyParlor.beauty_parlor_id=bp.bp_id','bp')
                         ->where('bp.bp_state > 0 and activity_id = :id:')
                         ->bind(['id' => $id])
                         ->execute()->toArray();
                     $this->activity->beauty_parlors = $parlor;
                 }
             }
     
             $this->activity = $this->activity ? $this->activity : null;
             if($this->activity) {
                 //$this->activity->cover = PicUrl::ActivityCover($this->activity->cover, $this->getDi());
                 for($i = 0; $i < count($this->activity->beauty_parlors); $i++) {
                     $this->activity->beauty_parlors[$i]['cover'] = PicUrl::BeautyParlorCover($this->activity->beauty_parlors[$i]['cover'], $this->getDi());
     
                     $medal = $this->activity->beauty_parlors[$i]['medal'];
                     unset($this->activity->beauty_parlors[$i]['medal']);
                     $this->activity->beauty_parlors[$i]['medal_refund'] = \Apps\Common\Libs\BeautyParlor::getMedalRefund($medal);
                     $this->activity->beauty_parlors[$i]['medal_verify'] = \Apps\Common\Libs\BeautyParlor::getMedalVerify($medal);
                     $this->activity->beauty_parlors[$i]['tags'] = \Apps\Common\Libs\BeautyParlor::getTags($this->activity->beauty_parlors[$i]['id']);
                 }
     
                 $this->activity->intro = \Apps\Common\Libs\BeautyParlor::formatServiceIntro($this->activity->intro, $this->getDi(), true);
             }
             $this->setResult($this->activity);*/
 }
Example #11
0
 public function run()
 {
     //判断城市是否开通 未开通城市  banner 广告位显示全国 美容院不显示
     $banners = [];
     //首页banner
     $questionlists = [];
     //首页推荐问答
     $city_code = $this->getDataItem('city_code', 0);
     $userid = $this->getDataItem('user_id', 0);
     $is_open = SysOpenCity::findFirst(['columns' => "city_id", 'conditions' => "city_code = {$city_code} AND city_state = 1"]);
     $city_id = $is_open->city_id > 0 ? $is_open->city_id : 0;
     $alllimit = $this->getConfig()->national;
     //属于全国的banner条数
     //获取全国banner
     $banners = $this->getBanner($alllimit, 0);
     //获取属于全国的广告
     $advert = $this->getAdvert(0, null, "addtime desc", "position");
     //获取城市问答
     $limit_q = $this->getConfig()->question;
     $questionlists = $this->getQuestion(0, $limit_q, $userid, "sort DESC");
     //城市未开通
     if (!$city_id) {
         foreach ($advert as $k => $v) {
             $advert[$k]['advertisement_cover'] = PicUrl::ActivityCover($v['advertisement_cover'], $this->getDi());
         }
         $lists['banner'] = $banners;
         $lists['question'] = $questionlists;
         $lists['parlors'] = null;
         $lists['adverts'] = empty($advert) ? null : $advert;
         $this->setResult($lists);
     } else {
         $citylimit = $this->getConfig()->city;
         //获取城市banner
         $citybanner = $this->getBanner($citylimit, $city_id);
         $banners = array_merge($banners, $citybanner);
         //获取城市问答
         if (count($questionlists) < $limit_q) {
             //如果全国的问答条数不足 则查询城市问答补充
             $limit_c = $limit_q - count($questionlists);
             $questionlist = $this->getQuestion($city_id, $limit_c, $userid, "sort DESC");
             $questionlists = array_merge($questionlists, $questionlist);
         }
         /*************************************************获取城市广告**********************************/
         $pos_ids = array_column($advert, 'position');
         //如果没有全国的位置1的广告 则 查询是否有全国位置为1的广告
         if (!in_array(1, $pos_ids)) {
             $temp = $this->getAdvert($city_id, "position = 1", "addtime desc");
             if (count($temp)) {
                 $advert = array_merge($advert, $temp);
             }
         }
         //如果没有全国的位置2的广告 则 查询是否有全国位置为2的广告
         if (!in_array(2, $pos_ids)) {
             $temp = $this->getAdvert($city_id, "position = 2", "addtime desc");
             if (count($temp)) {
                 $advert = array_merge($advert, $temp);
             }
         }
         //如果没有全国的位置3的广告 则 查询是否有全国位置为3的广告
         if (!in_array(3, $pos_ids)) {
             $temp = $this->getAdvert($city_id, "position = 3", "addtime desc");
             if (count($temp)) {
                 $advert = array_merge($advert, $temp);
             }
         }
         $advert = $this->multi_array_sort($advert, 'position');
         foreach ($advert as $k => $v) {
             $advert[$k]['advertisement_cover'] = PicUrl::ActivityCover($v['advertisement_cover'], $this->getDi());
         }
         /*************************************************美容院*****************************************/
         //获取位置固定的美容院
         $parlor = $this->getParlor($city_id, 3, "show_start_time DESC,id DESC", "sort");
         $sortids = array_column($parlor, 'sort');
         if (count($sortids) < 3) {
             //当固定位置的首页推荐美容院不足时,随机获取没有固定位置的推荐数据
             $limit_r = 3 - count($sortids);
             $parlor_r = $this->getParlorRand($city_id, $limit_r);
             $parlor = array_merge($parlor, $parlor_r);
         }
         $parlor = $this->multi_array_sort($parlor, 'sort');
         foreach ($parlor as $k => $v) {
             if ($v) {
                 $parlor[$k]['cover'] = PicUrl::BeautyParlorCover($v['cover'], $this->getDi());
                 $parlor[$k]['medal_verify'] = \Apps\Common\Libs\BeautyParlor::getMedalVerify($v['bp_medal']);
                 unset($parlor[$k]['bp_medal']);
                 $tag = BeautyParlorTag::query()->columns(['i.tag_title'])->leftJoin('Apps\\Common\\Models\\BeautyParlorTagInfo', 'Apps\\Common\\Models\\BeautyParlorTag.tag_id = i.tag_id', 'i')->where('i.tag_state=1 and bp_id=:bid:')->bind(['bid' => $v['id']])->orderBy('sort desc,bp_tag_addtime asc')->execute()->toArray();
                 $tags = array_column($tag, 'tag_title');
                 $parlor[$k]['tags'] = empty($tags) ? null : $tags;
             }
         }
         /***************************************************返回结果集******************************************/
         $lists['banner'] = empty($banners) ? null : $banners;
         $lists['question'] = empty($questionlists) ? null : $questionlists;
         $lists['parlors'] = empty($parlor) ? null : $parlor;
         $lists['adverts'] = empty($advert) ? null : $advert;
         $this->setResult($lists);
     }
 }
Example #12
0
 /**
  * 活动预览
  * @date: 2016年1月12日 
  * @author: chenxiaolin
  */
 public function activityPreviewAction()
 {
     $id = $this->request->getQuery('id');
     if (empty($id)) {
         echo '活动不存在!';
         $this->view->disable();
         return;
     }
     //活动内容
     $date = date('Y-m-d H:i:s');
     $activity = Activity::query()->columns(['Apps\\Common\\Models\\Activity.activity_id', 'activity_title', 'activity_cover', 'activity_intro', 'out_link', 'activity_addtime', 'views', 'comments'])->where("activity_id = {$id} and activity_state in (0,1)")->execute()->getFirst();
     if (!$activity) {
         echo '活动不存在!';
         $this->view->disable();
         return;
     } else {
         $activity = $activity->toArray();
     }
     $activity['activity_cover'] = PicUrl::ActivityCover($activity['activity_cover'], $this->getDI());
     //活动回复
     $comment = ActivityComment::query()->columns(['comment_content', 'user.user_nickname', 'user.user_cover', 'user.user_gender'])->leftJoin('Apps\\Common\\Models\\UserBase', 'Apps\\Common\\Models\\ActivityComment.comment_user_id = user.user_id', 'user')->where("Apps\\Common\\Models\\ActivityComment.activity_id = {$id} and Apps\\Common\\Models\\ActivityComment.state = 1")->order('addtime desc')->execute()->toArray();
     foreach ($comment as $k => $v) {
         $comment[$k]['user_cover'] = PicUrl::UserCover($comment[$k]['user_cover'], $this->getDI());
     }
     $lastTime = ActivityComment::maximum(array("activity_id = {$id} and state = 1", 'column' => 'addtime'));
     //美人儿已阅处显示的头像
     $covers = ActivityComment::query()->columns(['distinct comment_user_id', 'user.user_cover'])->leftJoin('Apps\\Common\\Models\\UserBase', 'Apps\\Common\\Models\\ActivityComment.comment_user_id = user.user_id', 'user')->where("Apps\\Common\\Models\\ActivityComment.activity_id = {$id} and Apps\\Common\\Models\\ActivityComment.state = 1")->order('addtime desc')->limit(7)->execute()->toArray();
     foreach ($covers as $k => $v) {
         $covers[$k]['user_cover'] = PicUrl::UserCover($covers[$k]['user_cover'], $this->getDI());
     }
     $this->view->setVar('activity', $activity);
     $this->view->setVar('comment', $comment);
     $this->view->setVar('lastTime', $lastTime);
     $this->view->setVar('covers', $covers);
     $this->tag->setTitle($activity->activity_title);
 }