public function index()
 {
     /** @var Collection $lines */
     $lines = Line::where('visible', true)->orderBy('list_order', 'asc')->get();
     $lineIds = array_map(function ($line) {
         return $line['id'];
     }, $lines->all());
     $dateStart = new \DateTime('-4 day');
     $dateEnd = new \DateTime('+4 day');
     $tasks = Task::whereIn('line_id', $lineIds)->whereBetween('date', [$dateStart->format('Y-m-d'), $dateEnd->format('Y-m-d')])->get();
     return view('nichirei.index', ['lines' => $lines, 'tasks' => $tasks, 'dateStart' => $dateStart, 'dateEnd' => $dateEnd]);
 }
Esempio n. 2
0
 public static function userTasks()
 {
     $ids = static::current()->pluck('user_id')->unique();
     $container = collect();
     foreach ($ids as $id) {
         $subContainer = collect();
         $user = User::find($id);
         $subContainer->tasks = Task::whereIn('id', $user->currentTasks())->pluck('slug');
         $subContainer->name = $user->name;
         $container->push($subContainer);
     }
     return $container;
 }
 /**
  * Retrieves information for volunteer's activity of the day that is in progress.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return  JSON  array of status of activity with activity
  */
 public function todayActivityInProgress(Request $request)
 {
     if ($request->get('token') != null) {
         // Get Authenticated User
         $authenticatedUser = JWTAuth::setToken($request->get('token'))->authenticate();
         $id = $authenticatedUser->volunteer_id;
         // Retrieve Activties within today
         $todayactivities = Activity::whereBetween('datetime_start', [Carbon::now()->startOfDay(), Carbon::now()->endOfDay()])->lists('activity_id');
         //echo count($todayactivities);
         // Retrieve Related Activties within today related to volunteer
         $groupStatus = collect(['pick-up', 'at check-up', 'check-up completed']);
         $relatedActivty = Task::whereIn('activity_id', $todayactivities)->where('volunteer_id', $id)->whereIn('status', $groupStatus)->lists('activity_id');
         $taskStatus = Task::whereIn('activity_id', $todayactivities)->whereIn('status', $groupStatus)->where('volunteer_id', $id)->value('status');
         // Retrieve Activity details
         $activityToReturn = Activity::with('departureCentre', 'arrivalCentre')->whereIn('activity_id', $relatedActivty)->first();
         return response()->json(compact('activityToReturn', 'taskStatus'));
     } else {
         $status = ["Missing parameter"];
         return response()->json(compact('status'));
     }
 }