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)
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)