Example #1
0
 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     $answers = Answer::all();
     return $this->respond(['data' => $this->AnswerTransformer->transformCollection($answers->toArray())]);
 }
 public function getHotAnswer()
 {
     $request = Request::capture();
     $token = $request->input('token');
     $questionId = $request->input('questionId');
     $answersQuery = Answer::select('id', 'answer_brief', 'answer_time', 'question_id', 'user_id', 'is_resolved')->where('question_id', $questionId);
     $answerIds = $answersQuery->lists('id')->toArray();
     $upAnswers = AnswerUp::select('answer_id', DB::raw('count(*) as up_number'))->whereIn('answer_id', $answerIds)->groupBy('answer_id')->orderBy('up_number', 'desc')->take(2);
     //        print_r($upAnswers->lists('answer_id')->toArray());
     $answersQuery = Answer::select('id', 'answer_brief', 'answer_time', 'question_id', 'user_id', 'is_resolved')->where('question_id', $questionId)->whereIn('id', $upAnswers->lists('answer_id')->toArray());
     $answers = $answersQuery->get()->toArray();
     $upNumber = $upAnswers->get()->toArray();
     $result = array();
     foreach ($answers as $an) {
         foreach ($upNumber as $up) {
             if ($up['answer_id'] == $an['id']) {
                 $an = array_merge($an, ['upNumber' => $up['up_number']]);
                 array_push($result, $an);
             }
         }
     }
     return Utility::response_format(Utility::RESPONSE_CODE_SUCCESS, $result, '请求成功');
 }