private function getData($user)
 {
     $data = ['usuario' => ['id' => $user->id, 'nombre' => $user->email, 'estado' => $user->estado, 'rol' => $user->rol->nombre]];
     switch ($user->rol->nombre) {
         case 'EMPRESA':
             $empresa = Empresa::where('usuario_id', $user->id)->first();
             $data['usuario']['empresa'] = ['id' => $empresa->id, 'nombre' => $empresa->nombre, 'servicios' => $this->checkServiciosEmpresa($empresa->servicios)];
             $data['usuario']['imagen'] = $empresa->logo;
             break;
         case 'CENTRAL_EMPRESA':
             $central = Central::where('usuario_id', $user->id)->first();
             $data['usuario']['central'] = ['id' => $central->id, 'nombre' => $central->nombre, 'ciudad' => $central->ciudad, 'departamento' => $central->ciudad->departamento, 'empresa' => ['id' => $central->empresa->id, 'nombre' => $central->empresa->nombre, 'nit' => $central->empresa->nit, 'nresolucion' => $central->empresa->nresolucion, 'fecha_resolucion' => $central->empresa->fecha_resolucion, 'telefono' => $central->empresa->telefono, 'direccion' => $central->empresa->direccion, 'pjuridica' => $central->empresa->pjuridica, 'servicios' => $this->checkServiciosEmpresa($central->empresa->servicios)], 'miDireccionLa' => $central->miDireccionLa, 'miDireccionLo' => $central->miDireccionLo];
             $data['usuario']['imagen'] = $central->empresa->logo;
             break;
         case 'CLIENTE':
             $cliente = Cliente::where('usuario_id', $user->id)->first();
             $data['usuario']['nombre'] = $cliente->nombres . ' ' . $cliente->apellidos;
             $data['usuario']['email'] = $cliente->email;
             $data['usuario']['identificacion'] = $cliente->identificacion;
             $data['usuario']['telefono'] = $cliente->telefono;
             $data['usuario']['imagen'] = $cliente->imegen;
             $data['usuario']['cliente_id'] = $cliente->id;
             break;
     }
     return $data;
 }
 public function getRutas($central_id)
 {
     $central = Central::find($central_id);
     $rutas = [];
     foreach ($central->rutas as $ruta) {
         $rutas[] = ['id' => $ruta->id, 'destino' => $ruta->destino->load('ciudad'), 'n_conductores' => count($ruta->turnos)];
     }
     return $rutas;
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request, $central_id)
 {
     $data = $request->json()->all();
     $pasajero = new Pasajero($data);
     $conductor = Conductor::find($data['conductor_id']);
     $conductor->pasajeros()->save($pasajero);
     $mensaje = 'Se te asigno un nuevo pasajero';
     $this->enviarNotificacion('', $mensaje, $data['conductor_id']);
     $central = Central::find($central_id);
     if (!$central->pasajeros()->save($pasajero)) {
         return response()->json(['mensajeError' => 'no se ha podido almacenar el registro'], 400);
     }
 }
Example #4
0
 public function store(Request $request, $central_id)
 {
     try {
         $data = $request->json()->all();
         $giro = new Giro($data);
         Conductor::find($data['conductor_id'])->giros()->save($giro);
         $mensaje = 'Se te asigno un nuevo giro';
         $this->enviarNotificacion('', $mensaje, $data['conductor_id']);
         if (!Central::find($central_id)->giros()->save($giro)) {
             return response()->json(['mensajeError' => 'No se ha posido registrar al giro'], 400);
         }
         return response()->json($giro, 201);
     } catch (\Exception $exc) {
         return response()->json(array("exception" => $exc->getMessage()), 400);
     }
 }
 public function store(Request $request, $central_id)
 {
     $noty = new NotificacionController();
     try {
         $data = $request->json()->all();
         $paquete = new Paquete($data);
         Conductor::find($data['conductor_id'])->paquetes()->save($paquete);
         $mensaje = 'Se te asigno un nuevo paquete';
         if (!Central::find($central_id)->paquetes()->save($paquete)) {
             return response()->json(['mensajeError' => 'No se ha posido registrar al paquete'], 400);
         }
         return JsonResponse::create(array('message' => "Paquete asignado correctamente", json_decode($noty->enviarNotificacionConductores($mensaje, $data['conductor_id'], 'Paquetes'))), 200);
     } catch (\Exception $exc) {
         return response()->json(array("exception" => $exc->getMessage()), 400);
     }
 }
 private function getData($user)
 {
     $data = ['usuario' => ['id' => $user->id, 'nombre' => $user->email, 'estado' => $user->estado, 'rol' => $user->rol->nombre]];
     switch ($user->rol->nombre) {
         case 'EMPRESA':
             $empresa = Empresa::where('usuario_id', $user->id)->first();
             $data['usuario']['empresa'] = ['id' => $empresa->id, 'nombre' => $empresa->nombre, 'servicios' => $this->checkServiciosEmpresa($empresa->servicios)];
             $data['usuario']['imagen'] = $empresa->logo;
             break;
         case 'CENTRAL_EMPRESA':
             $central = Central::where('usuario_id', $user->id)->first();
             $data['usuario']['central'] = ['id' => $central->id, 'nombre' => $central->nombre, 'ciudad' => $central->ciudad, 'empresa' => ['id' => $central->empresa->id, 'nombre' => $central->empresa->nombre, 'servicios' => $this->checkServiciosEmpresa($central->empresa->servicios)], 'miDireccionLa' => $central->miDireccionLa, 'miDireccionLo' => $central->miDireccionLo];
             $data['usuario']['imagen'] = $central->empresa->logo;
             break;
     }
     return $data;
 }
 public function store(Request $request, $central_id)
 {
     $data = $request->json()->all();
     $ecliente = $this->verificarCliente($data['identificacion']);
     if (!$ecliente) {
         $cliente = $this->createCliente($data);
         if ($cliente['cliente']) {
             if ($cliente['usuario']) {
                 $pasajero = new Pasajero($data);
                 $pasajero->identificacion = $data['identificacion'];
                 $pasajero->nombres = $data['nombres'];
                 $pasajero->telefono = $data['telefono'];
                 $pasajero->direccion = $data['direccion'];
                 $pasajero->central_id = $central_id;
                 if ($pasajero->save()) {
                     return JsonResponse::create(array('message' => "Se puso en espera al pasajero correctamente", 200));
                 } else {
                     return response()->json(['message' => 'no se ha podido almacenar el registro'], 400);
                 }
             } else {
                 $cliente['usuario']->delete();
                 return response()->json(['message' => 'no se ha podido almacenar el registro'], 400);
             }
         } else {
             return response()->json(['message' => 'no se ha podido almacenar el registro'], 400);
         }
     } else {
         $pasajero = new Pasajero($data);
         $pasajero->identificacion = $data['identificacion'];
         $pasajero->nombres = $data['nombres'];
         $pasajero->telefono = $data['telefono'];
         $pasajero->direccion = $data['direccion'];
         $pasajero->central_id = $central_id;
         if ($pasajero->save()) {
             return JsonResponse::create(array('message' => "Se puso en espera al pasajero correctamente", 200));
         } else {
             return response()->json(['message' => 'no se ha podido almacenar el registro'], 400);
         }
     }
     $central = Central::find($central_id);
     if (!$central->pasajeros()->save($pasajero)) {
         $pasajero->delete();
         return response()->json(['message' => 'no se ha podido almacenar el registro'], 400);
     }
 }
 public function setDeducciones(Request $request, $central_id)
 {
     try {
         DB::beginTransaction();
         $central = Central::find($central_id);
         $data = $request->json()->all();
         $arr = [];
         foreach ($data as $item) {
             $arr[$item['id']] = ['valor_lunes' => $item['valor_lunes'], 'valor_martes' => $item['valor_martes'], 'valor_miercoles' => $item['valor_miercoles'], 'valor_jueves' => $item['valor_jueves'], 'valor_viernes' => $item['valor_viernes'], 'valor_sabado' => $item['valor_sabado'], 'valor_domingo' => $item['valor_domingo']];
         }
         $central->deducciones()->sync($arr);
         DB::commit();
         return response()->json(201);
     } catch (\Exception $exc) {
         DB::rollback();
         //            return response()->json(["exception"=>$exc->getMessage()], 500);
     }
 }
 private function verificartipoCentral($central_id)
 {
     return Central::find($central_id)->load('empresa');
 }
 public function generarNumeroPlanillaEspecial($central_id)
 {
     $central = Central::find($central_id)->load('empresa', 'ciudad.departamento');
     $cterritorial = $central->ciudad->departamento->codigoT;
     $nrE = $central->empresa->nresolucion;
     $dUano = substr($central->empresa->fecha_resolucion, 2, 2);
     $anoActual = date("Y");
     if (!$nrE) {
         $nrE = 00;
     }
     $cCompleto = $cterritorial . $nrE . $dUano . $anoActual;
     $planilla = \DB::table('planilla_especial')->where('numero_planilla', \DB::raw("(select max(`numero_planilla`) from planilla_especial)"))->where('central_id', $central_id)->get();
     if (!$planilla) {
         return $cCompleto . '00000001';
     } else {
         foreach ($planilla as $c) {
             $incrementar = substr($c->numero_planilla, 13, 8);
             //obtengo ultimos 8 digitos
             //$sumar = substr_count($incrementar, '0');//cuento la cantidad de ceros exitentes en esos numeros
             $incremento = ++$incrementar;
             //asigno el numero a incrementar
             $numero_completo = $cCompleto . str_pad($incremento, 8, "0", STR_PAD_LEFT);
             //porque lo parseas?
             //completo el codigo completo y concateno con sumar+1 ceros y el numero que incrementa hacia la izq
             return $numero_completo;
         }
     }
 }
 public function getVehiculos($id)
 {
     $vehiculos = Central::find($id)->vehiculos;
     return $vehiculos->load('conductor');
 }