public function unfollow() { $chk = BoothFollow::where('b_id', '=', $this->b_id)->where('u_id', '=', $this->u_id)->first(); if (!empty($chk)) { $chk->delete(); } else { throw new Exception("已取消关注", 7004); } $booth = Booth::find($this->b_id); $booth->b_fans_count -= 1; if ($booth->b_fans_count <= 0) { $booth->b_fans_count = 0; } $booth->save(); return true; }
public function listFollowingBooth() { $token = Input::get('token', ''); $u_id = Input::get('u_id', 0); $type = Input::get('type', 0); $per_page = Input::get('per_page'); try { $user = User::chkUserByToken($token, $u_id); $query = BoothFollow::select('booth_follows.*')->with(['booth'])->where('booth_follows.u_id', '=', $u_id)->leftJoin('booths', function ($q) use($type) { $q->on('booths.b_id', '=', 'booth_follows.b_id'); }); if ($type) { $query->where('booths.b_type', '=', $type); } $list = $query->paginate($per_page); $data = []; foreach ($list as $key => $follow) { $data[] = $follow->showInList(); } $re = Tools::reTrue('获取我收藏的店铺成功', $data, $list); } catch (Exception $e) { $re = Tools::reFalse($e->getCode(), '获取我收藏的店铺失败:' . $e->getMessage()); } return Response::json($re); }
public function listBoothFollow($id) { $u_id = Input::get('u_id', 0); $school = Input::get('school', 0); $profession = Input::get('prof', 0); $entry_year = Input::get('entry_year', 0); $gender = Input::get('gender', 0); $key = Input::get('key', ''); $per_page = Input::get('per_page', 30); try { $user = User::find($u_id); $user_contact = UserProfileBase::find($u_id); $query = BoothFollow::with(['follower', 'follower.school'])->where('b_id', '=', $id)->select('booth_follows.*')->leftJoin('users', function ($q) { $q->on('users.u_id', '=', 'booth_follows.u_id'); })->leftJoin('users_contact_peoples', function ($q) { $q->on('users_contact_peoples.u_id', '=', 'booth_follows.u_id'); })->leftJoin('dic_schools', function ($q) { $q->on('users.u_school_id', '=', 'dic_schools.t_id'); }); if ($school) { $query = $query->where('users.u_school_id', '=', $user->u_school_id); } if (!empty($user_contact)) { if ($profession) { $query = $query->where('users_contact_peoples.u_prof', '=', $user_contact->u_prof); } if ($entry_year) { $query = $query->where('users_contact_peoples.u_entry_year', '=', $user_contact->u_entry_year); } } if ($gender) { $query = $query->where('users.u_sex', '=', $gender); } if ($key) { $query = $query->where('users.u_name', 'LIKE', '%' . $key . '%')->orWhere('users.u_nickname', 'LIKE', '%' . $key . '%')->orWhere('dic_schools.t_name', 'LIKE', '%' . $key . '%'); } $list = $query->groupBy('users.u_id')->paginate($per_page); $data = []; foreach ($list as $key => $follow) { $data[] = $follow->follower->showInList(); } $re = Tools::reTrue('获取粉丝成功', $data, $list); } catch (Exception $e) { $re = Tools::reFalse($e->getCode(), '获取粉丝失败:' . $e->getMessage()); } return Response::json($re); }