Objetivo
El objetivo de esta mejora es implementar un nuevo front-end para el flujo de hoteles de Netsuite basado en los servicios de NetCoreApi. El nuevo diseño y alcance abarca el flujo de Sólo Hotel para versión Mobile & Desktop y las instancias de página de resultados, el detalle del hotel, detalle de habitaciones y la página de pasajeros.
¿Qué es el Front-end?
El Front-end de hoteles es un nuevo flujo gráfico basado en los servicios de las APIS de Netactica llamadas NetCoreApi. El nuevo diseño y alcance abarca el flujo de Sólo Hotel para versión Mobile & Desktop y las instancias de página de resultados, el detalle del hotel, detalle de habitaciones y la página de pasajeros.
Beneficios del Front-end
Nuevo flujo gráfico
Mejoras significativas en los tiempos de respuesta de la búsqueda
Mejoras en la experiencia de usuario en cuanto a navegación, visualización y performance
Tiene su propio versionado (no depende de una versión de Netsuite)
Funcionalidades implementadas en el nuevo front de hoteles:
Nuevo flujo gráfico para página de resultados, página de detalle del hotel, página de pasajeros utilizando el flujo de venta vía API
Flujo para Sólo Hotel
Funciona sólo con Static Content encendido
Versión Desktop y Versión Mobile
Manejo de idiomas en Español, Ingles y Portugues y customización por archivo de recursos
Nueva pantalla para ver el detalle de las habitaciones (imágenes, descripciones, amenities)
Manejo de Mapas
Activación por sucursal para canales B2C y B2B
Activación para búsqueda desde Netadmin
Manejo de scripts customizados
Multiples tipo de filtros:
Por nombre de hotel
Por precio
por categoría
Por puntuación (Score)
Por tipos de reembolso
Por tipos de alimentación
Por tipos de comodidades (Amenities)
Por zonas
Por etiquetas
Por tipos de propiedad
Por cadenas
Visible el RefundableType (Cancelación flexible/No Reembolsable) desde página de resultados
Visualización de puntuación (Score) en páginas de resultados y detalles del hotel
Visualización de puntuación por servicio (Meta Reviews) en página de detalles del hotel
Visualización de comentarios (reviews de hoteles) en página de detalles del hotel
Funcionalidades que aun no estan implementadas en el nuevo front de hoteles:
No incluye pedir 1 pasajero titular por habitación → En plan de producto
No incluye el flujo de paquetes, preincluidos ni venta cruzada
No incluye nuevo flujo gráfico para página de check-out, display de reserva
No incluye la visualización EXTENSA de página de resultados
No incluye la visualización de precio promedio por noche en página de resultados
No incluye las leyendas de puntos acumulados
No incluye flujo de puntos
No incluye cotizaciones en página de resultados
No incluye validación de afiliados ni aplicación de descuento por afiliado
Servicios de NetCoreAPI utilizados
search (SC) → Nuevo autocomplete de SC
HotelSearchV3 → Búsqueda de hotel
HotelResultsV2 → Página de resultados
GetDetails (SC) → Detalle del hotel y habitación
HotelValidate → Página de pasajeros
Estructura de la URL del nuevo flujo de hotel
Con la implementación del nuevo Front-end de hoteles definimos una nueva estructura de url para flujo de hoteles, con un nuevo sufijo que acompañará al flujo de hoteles desde la búsqueda, detalle del hotel hasta página de pasajeros.
Las 3 instancias de páginas del Front-end serán:
Página de resultados → results
Página de detalle del hotel → details
Página de pasajeros → passengers
Front-end | Tipo de Request NetCoreAPI | Estructura URL Front-end | Ejemplo |
Página de resultados | HotelSearchV3/ HotelResultsV2 | var url = $"{AgencyDomain}”+ | |
Página de detalle hotel | HotelDetails | var url = $"{AgencyDomain}" + | |
Página de pasajeros | HotelValidate | var url = $"{AgencyDomain}" + |
NOTAS:
{DestinationPoint} → puede ser un LocationId antepuesto por la l, por ejemplo: l190928. O un HotelId antepuesto por una h, por ejemplo: h77617
{Occupancy} → Las habitaciones son distinguidas por "!". Las personas son distinguidas por "-". El primer número de cada habitación es la cantidad de adultos. Cada "-" después de la cantidad de adultos debe presentar la edad de un niño. Ejemplo: Una búsqueda para dos habitaciones:
Habitación 1: 2 adultos y 1 niño de 6 años
Habitación 2: 1 adultos, 1 niño de 2 años y un niño de 0 años
"2-6!1-2-0"
{BranchCode} → Es opcional
{noHeaders=true/false} → Por defecto queda false, por eso creamos como "NoHeader". Así se pone true para sacar el header, en caso de que no se ponga nada entonces se presenta el header.
Estructura de los tokens:
Estructura del token página de detalles
btoa(culture/userService/destination/checkin/checkout/occupancy/hotelId/apiTokenId/searchId)Estructura del token página de pasajeros
btoa(culture/userService/destination/checkin/checkout/occupancy/hotelId/rateId/apiTokenId/searchId)btoa - Función que crea una string base64-encoded (edited)