Exemplo n.º 1
0
 public function updateConductoresEnTurno(Request $request, $ruta_id)
 {
     $noty = new NotificacionController();
     $data = $request->json()->all();
     $turnos_actuales = [];
     $ruta = Ruta::find($ruta_id);
     foreach ($data['turnos'] as $turno) {
         $turnos_actuales[$turno['conductor_id']] = ['turno' => $turno['turno']];
     }
     if ($ruta->toUpdateTurnos()->sync($turnos_actuales)) {
         $ruta = $ruta->destino->ciudad;
         foreach ($data['turnos'] as $turno) {
             if ($request['accion'] == 'agregar') {
                 $mensaje = "Has sido agregado a la ruta hacia {$ruta->nombre} en el turno " . $turno['turno'];
                 $noty->enviarNotificacionConductores($mensaje, $turno['conductor_id'], 'Actualizacion turno', $ruta_id);
             }
             if ($request['accion'] == 'quitar') {
                 $mensaje = "Has sido removido de los turnos de la ruta hacia {$ruta->nombre}";
                 $noty->enviarNotificacionConductores($mensaje, $turno['conductor_id'], 'Actualizacion turno', $ruta_id);
             }
             if ($request['accion'] == 'default') {
                 $mensaje = "Estas en el turno " . $turno['turno'] . " en la ruta hacia {$ruta->nombre}";
                 $noty->enviarNotificacionConductores($mensaje, $turno['conductor_id'], 'Actualizacion turno', $ruta_id);
             }
         }
         return response()->json(['mensaje' => 'turnos modifcados'], 201);
     } else {
         return response()->json(['mensajError' => 'error al actualizar lso turnos'], 400);
     }
 }
Exemplo n.º 2
0
 public function updateConductoresEnTurno(Request $request, $ruta_id)
 {
     $data = $request->json()->all();
     $turnos_actuales = [];
     foreach ($data['turnos'] as $turno) {
         $turnos_actuales[$turno['conductor_id']] = ['turno' => $turno['turno']];
     }
     $ruta = Ruta::find($ruta_id);
     if ($ruta->toUpdateTurnos()->sync($turnos_actuales)) {
         return response()->json(['mensaje' => 'turnos modifcados'], 201);
     } else {
         return response()->json(['mensajError' => 'error al actualizar lso turnos'], 400);
     }
 }
Exemplo n.º 3
0
 public function getSolicitudesDeRuta($ruta_id)
 {
     $ruta = Ruta::find($ruta_id);
     return array('solicitud_nuevos_pasajeros' => $ruta->solicitudes()->where(['tipo' => 'pasajero', 'estado' => 'p'])->get()->load('datos_pasajeros'), 'solicitud_pasajeros' => $ruta->solicitudes()->where(['tipo' => 'vehiculo', 'estado' => 'p'])->get()->load('datos_pasajeros'), 'solicitud_paquetes' => $ruta->solicitudes()->where(['tipo' => 'paquete', 'estado' => 'p'])->get()->load('detalles'), 'solicitud_giros' => $ruta->solicitudes()->where(['tipo' => 'giro', 'estado' => 'p'])->get()->load('detalles'));
 }
 public function getSolicitudGiro($solicitud_id)
 {
     $i = 0;
     $solicitud = Solicitud::find($solicitud_id)->load('detalles');
     $solicitud['ruta'] = Ruta::find($solicitud->ruta_id);
     $solicitud['ruta']['destino'] = Central::find($solicitud['ruta']->id_central_destino)->ciudad;
     $solicitud['conductores'] = Ruta::find($solicitud->ruta_id)->turnos->load('conductor');
     foreach ($solicitud['conductores'] as $cupos) {
         list($total) = DB::table('vehiculos')->select(DB::raw('( (cupos) - (select count(conductor_id) from pasajeros where conductor_id =' . $cupos->conductor_id . ' and estado = "Asignado") ) as total'))->where('conductor_id', $cupos->conductor_id)->get('total');
         $solicitud['conductores'][$i]['cupos'] = $total->total;
         $i++;
     }
     return JsonResponse::create($solicitud);
 }
Exemplo n.º 5
0
 public function getRutas($id)
 {
     $centrales = Empresa::find($id)->centrales;
     $rutas = [];
     foreach ($centrales as $central) {
         foreach ($central->rutas as $ruta) {
             $trayectoria = Ruta::find($ruta->id);
             $rutas[] = ['id' => $ruta->id, 'origen' => $central->load('ciudad'), 'destino' => $ruta->destino->load('ciudad'), 'trayectoria' => $trayectoria->trayectoria];
         }
     }
     return $rutas;
 }