interestCircle = $interestCircle; $this->interestCircleMessage = $interestCircleMessage; } /** * 圈子留言列表 */ public function lists($request) { $perPage = isset($request['per_page']) ? $request['per_page'] : 20; $where = []; if (isset($request['circle_id'])) { $where[] = ['circle_id', $request['circle_id']]; } if (isset($request['uid'])) { $where[] = ['uid', $request['uid']]; } return $this->interestCircleMessage ->where($where) ->where(function ($query) use ($request) { if (isset($request['content'])) { $query->Where('content', 'like', "%{$request['content']}%"); } }) ->where(function ($query) use ($request) { if (isset($request['created_at'])) { $time = explode('_', $request['created_at']); $query->whereBetween('post.created_at', $time); } }) ->orderBy('is_recommend', 'desc') ->orderBy('created_at', 'desc') ->paginate($perPage); } /** * 留言详情 */ public function detail($request, $isTrashed = false) { $model = $this->interestCircleMessage; if ($isTrashed) { $model->withTrashed(); } return $model->find($request['id']); } /** * 推荐留言 */ public function messageRecommend($request) { $circle = $this->interestCircleMessage->where('id', $request['id'])->first(); if (!$circle) { return Response::create([ 'message' => '获取留言信息失败', 'status_code' => 500 ]); } if ($circle->is_recommend == 1) { $circle->is_recommend = 0; } else { $circle->is_recommend = 1; } DB::beginTransaction(); try { $circle->save(); DB::commit(); return Response::create(); } catch (QueryException $exception) { DB::rollBack(); Log::debug('推荐留言:' . $request['id'] . $exception->getMessage()); return Response::create([ 'message' => '操作失败,请重试', 'error' => $exception->getMessage(), 'status_code' => 500 ]); } } /** * 删除留言 */ public function delete($request) { $circle = $this->interestCircleMessage->where('id', $request['id'])->first(); if (!$circle) { return Response::create([ 'message' => '获取留言信息失败', 'status_code' => 500 ]); } DB::beginTransaction(); try { $circle->delete(); DB::commit(); return Response::create(); } catch (QueryException $exception) { DB::rollBack(); Log::debug('删除留言:' . $request['id'] . $exception->getMessage()); return Response::create([ 'message' => '操作失败,请重试', 'error' => $exception->getMessage(), 'status_code' => 500 ]); } } }