start_time; $end_time = $request->end_time; $nopage = $request->nopage; $return_data = TouristOrder::with('user_evaluate') ->whereIn('pay_status',[1,4]) ->where('type','evaluate') ->where('price','>',0.0) ->when($start_time,function ($query) use ($start_time){ $query->where('created_at','>=',$start_time); }) ->when($end_time,function ($query) use($end_time){ $query->where('created_at','<=',$end_time); }) ->select('trade_no','goods','price','created_at'); if($nopage == 1){ $return_data = $return_data->orderBy('id','desc')->paginate(); }else{ $return_data = $return_data->orderBy('id','desc')->get(); } foreach ($return_data as $key => $val){ if($nopage != 1) { if(!$val->user_evaluate){ unset($return_data[$key]); } } unset($val->user_evaluate); } if($return_data){ if($nopage != 1) { $return_data = array_values($return_data->toArray()); } } return $this->success('ok', $return_data); } }