Пример #1
0
 private function createCliente($cliente)
 {
     $usuario = $this->crearUsuarioPasajero($cliente['identificacion']);
     $cliente = new Cliente();
     $cliente->identificacion = $cliente['identificacion'];
     $cliente->nombres = $cliente['nombres'];
     $cliente->telefono = $cliente['telefono'];
     $cliente->direccion = $cliente['direccion'];
     $cliente->usuario_id = $cliente->id;
     return array('cliente' => $cliente->save(), 'usuario' => $usuario);
 }
Пример #2
0
 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;
 }
 function enviarNotificacionClientes($mensaje, $cliente_id, $tipo)
 {
     $devices = null;
     $device_token = null;
     $key = env('KEY_CLIENTES');
     $reg_id = '';
     //llamar al usuario
     if (is_array($cliente_id)) {
         $devices = $cliente_id;
         $reg_id = true;
     } else {
         $reg_id = Cliente::find($cliente_id);
         if ($reg_id) {
             $reg_id->load('usuario');
             $device_token = $reg_id->usuario->reg_id;
         } else {
             $reg_id = Cliente::where('identificacion', $cliente_id)->first();
             if ($reg_id) {
                 $reg_id->load('usuario');
                 $device_token = $reg_id->usuario->reg_id;
             }
         }
     }
     if ($reg_id != false) {
         if ($devices) {
             $regId = $devices;
             $regArray = $regId;
         } else {
             $regId = $device_token;
             $regArray[] = $regId;
         }
         $msg = $mensaje;
         $message = array("title" => 'Viaja seguro', "message" => $msg, "sound" => 1, "tipo" => $tipo, "subtitle" => $tipo);
         $url = 'https://android.googleapis.com/gcm/send';
         $fields = array('registration_ids' => $regArray, 'data' => $message);
         $headers = array('Authorization: key=' . $key, 'Content-Type: application/json');
         $ch = curl_init();
         curl_setopt($ch, CURLOPT_URL, $url);
         curl_setopt($ch, CURLOPT_POST, true);
         curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
         curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
         $result = curl_exec($ch);
         curl_close($ch);
         return $result;
     } else {
         return 'No existe el conductor';
     }
 }
Пример #4
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function destroy($id)
 {
     try {
         $cliente = Cliente::select("*")->where("identificacion", $id)->first();
         if (is_null($cliente)) {
             App::abort(404);
         } else {
             $cliente->delete();
             return JsonResponse::create(array('message' => "Cleinte eliminado correctamente", "request" => json_encode($id)), 200);
         }
     } catch (Exception $ex) {
         return JsonResponse::create(array('message' => "No se pudo Eliminar el cliente", "exception" => $ex->getMessage(), "request" => json_encode($id)), 401);
     }
 }
Пример #5
0
 public function showUltimaSolicitud($id)
 {
     $cliente = Cliente::find($id);
     if (!$cliente) {
         return JsonResponse::create(["message" => 'No se encontro el cliente puede registrarlo si continua'], 400);
     }
     $solicitud = $cliente->solicitudes()->latest()->first();
     return $solicitud;
 }
Пример #6
0
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Request $request, $id)
 {
     try {
         if ($cliente = Cliente::find($id)) {
             $data = $request->json()->all();
             $cliente->identificacion = $data['identificaicon'];
             $cliente->nombres = $data['nombres'];
             $cliente->apellidos = $data['apellidos'];
             $cliente->telefono = $data['telefono'];
             $cliente->direccion = $data['direccion'];
             $cliente->fechaNac = $data['fechaNac'];
             $cliente->save();
             return response()->json(['mensaje' => 'Registro actualizado'], 201);
         } else {
             return response()->json(['mensaje' => 'El cliente no existe'], 400);
         }
     } catch (\Exception $exc) {
         return response()->json(array("exception" => $exc->getMessage(), '' => $exc->getLine()), 400);
     }
 }
 /**
  * @param $pasajero
  * @return bool
  */
 private function createNewClienteSiNoExiste($data)
 {
     $cliente = new Cliente();
     $pasajero = $data['pasajeros'];
     unset($data['pasajeros']);
     $usuario = $this->crearUsuarioPasajero($pasajero['identificacion']);
     if ($usuario) {
         $cliente->identificacion = $pasajero['identificacion'];
         $cliente->nombres = $pasajero['nombre'];
         $cliente->telefono = $pasajero['telefono'];
         $cliente->direccion = $data['ciudad_direccion'] . ' ' . $data['direccion_recogida'];
         $cliente->usuario_id = $usuario->id;
         if ($cliente->save()) {
             return $cliente;
         } else {
             $usuario->delete();
         }
     }
 }