You are on page 1of 16

|

Technical Design

Posadas CET

Versin V1.0

Junio-2014
POSADAS Technical Design

Contenidos
1 Version history template....................................................................................................................... 4
2 Document Information........................................................................................................................... 4
3 Version history document..................................................................................................................... 4
4 Document Description........................................................................................................................... 4
5 Reference Documents........................................................................................................................... 4
6 Detail functional design........................................................................................................................ 5
6.1 Modificacin de Interfaz HMP.............................................................................................................. 5
6.2 Modificacin de BD ECP...................................................................................................................... 7
6.3 Generar mensaje Rate para New Contract Initial.................................................................................7
6.4 Diagrama de secuencia del proceso de Alta de un nuevo contrato.....................................................9
7 Class Definition...................................................................................................................................... 9
7.1 EcaContract.java.................................................................................................................................. 9
7.1.1 Description..................................................................................................................................... 9
7.1.2 Specification................................................................................................................................. 10
7.1.3 Attributes...................................................................................................................................... 10
7.1.4 Operations.................................................................................................................................... 10
7.2 EcaContractId.java............................................................................................................................. 10
7.2.1 Description................................................................................................................................... 10
7.2.2 Specification................................................................................................................................. 10
7.2.3 Attributes...................................................................................................................................... 10
7.2.4 Operations.................................................................................................................................... 10
7.3 AbstractEcaContractId.java................................................................................................................ 10
7.3.1 Description................................................................................................................................... 10
7.3.2 Specification................................................................................................................................. 10
7.3.3 Attributes...................................................................................................................................... 11
7.3.4 Operations.................................................................................................................................... 11
7.4 EcaContractDao.java......................................................................................................................... 11
7.4.1 Description................................................................................................................................... 11
7.4.2 Specification................................................................................................................................. 11
7.4.3 Attributes...................................................................................................................................... 11
7.4.4 Operations.................................................................................................................................... 11
7.5 EcaContractDaoImpl.java................................................................................................................... 11
7.5.1 Description................................................................................................................................... 11
7.5.2 Specification................................................................................................................................. 11
7.5.3 Attributes...................................................................................................................................... 12
7.5.4 Operations.................................................................................................................................... 12
7.6 InitialUploadTaskTC.java................................................................................................................... 12
7.6.1 Description................................................................................................................................... 12
7.6.2 Specification................................................................................................................................. 12
7.6.3 Attributes...................................................................................................................................... 12
7.6.4 Operations.................................................................................................................................... 12
7.7 ASECPQueueTask.java..................................................................................................................... 12
7.7.1 Description................................................................................................................................... 12
7.7.2 Specification................................................................................................................................. 12
7.7.3 Attributes...................................................................................................................................... 13
7.7.4 Operations.................................................................................................................................... 13
7.8 StoreConversation.java...................................................................................................................... 13
7.8.1 Description................................................................................................................................... 13
7.8.2 Specification................................................................................................................................. 13
7.8.3 Attributes...................................................................................................................................... 13
7.8.4 Operations.................................................................................................................................... 13
7.9 ValidateRSNewInitial.java.................................................................................................................. 13
7.9.1 Description................................................................................................................................... 14
7.9.2 Specification................................................................................................................................. 14
7.9.3 Attributes...................................................................................................................................... 14
7.9.4 Operations.................................................................................................................................... 14
7.10 AvailabilityBusinessNoTier.java...................................................................................................... 14

Accenture -2- 08 dic. 15


POSADAS Technical Design

7.10.1 Description................................................................................................................................... 14
7.10.2 Specification................................................................................................................................. 14
7.10.3 Attributes...................................................................................................................................... 14
7.10.4 Operations.................................................................................................................................... 14
8 Class Diagram and components............................................................................................... 15
9 Database objects changed or used......................................................................................... 15
10 Environment/Infrastructure changes......................................................................................15
11 List access control......................................................................................................................... 15

Accenture -3- 08 dic. 15


POSADAS Technical Design

1 Version history template


Version Review Description Date Author/Aproved

1.0 Versin inicial del documento 07-may-2013 Osvaldo Prez


2.0 Ajustes a la organizacin del documento 14-Junio-2013 Csar Amaya
- Se ajusta el ndice y ttulos de tablas en ingls 24-jun-2013 Mnica Rubio
3.0 - Se aade en la seccin 2. Document Information la
columna Located at.

2 Document Information
Identification Document Document Quantity to Located at
Code Name Type Generate
ECP2015- Diseo Entregable Uno por
002A Tcnico especificacin
de la solucin

3 Version history document

1.0 Documento inicial 09/21/2015 Cateri Ponce

4 Document Description
Este documento plasma el diseo tcnico de la solucin para el requerimiento
ECP2015-002B, para la generacin de mensajes de carga inicial para contratos nuevos
a travs del plugin de travelclick.

5 Reference Documents
Anlisis y estimacin:
Documents/Projects/Desarrollo/CANALES ELECTRONICOS/ECP2015-002/Input

SAR:
Documents/Projects/Desarrollo/CANALES ELECTRONICOS/ECP2015-002//Input

SS:
Documents/Projects/Desarrollo/CANALES ELECTRONICOS/ECP2015-002/Design

Accenture -4- 08 dic. 15


POSADAS Technical Design

6 Detail functional design

Modificar la interfaz de HMP para que permita enviar de los contratos nuevos
hacia el ECP Y el AS.
o Se debe agregar un botn el cual permita notificar manualmente al ECP
una vez que se han agregado nuevos contratos
Modificar la base de datos del ECP
o Agregar la columna INITIALUPLOAD sobre la tabla ECA_CONTRACT para
guardar el valor del estatus del proceso de carga.
Modificar la tarea de Carga Inicial
o Se debe modificar el proceso actual, de forma tal que en vez de enviar
mensajes individuales de alta seguidos de mensajes delta, el procso
enviar nicamente un solo mensaje por tarfia agrupando todas las
habitaciones para el horizonte configurado.
o El tipo de mensaje a enviar es del tipo OTA_HotelRatePlanNotifRQ y
para indicar que es un mensaje de tarfia nueva se deben incluir los
atributos @RatePlanNotifType="New" y @RatePlanStatusType="Initial"
Incluir la etiqueta @DistributionOption=Web para todos los
contratos (esta etiqueta se debe incluir leyendo la propiedad
newrateinitial.include.DistributionOption.web en caso de ser true
este atributo se enviar).
Incluir la etiqueta @DistributionOption=Mobile para todos los
contratos (esta etiqueta se debe incluir leyendo la propiedad
newrateinitial.include.DistributionOption.mobile en caso de ser
true este atributo se enviar).
Incluir la etiqueta @DistributionOption=ODD para todos los
contratos (esta etiqueta se debe incluir leyendo la propiedad
newrateinitial.include.DistributionOption.odd en caso de ser true
este atributo se enviar).
Incluir la etiqueta @DistributionOption=Direct Connect para
todos los contratos (esta etiqueta se debe incluir leyendo la
propiedad newrateinitial.include.DistributionOption.directconnect en
caso de ser true este atributo se enviar).
Incluir la etiqueta @DistributionOption=Call Center para todos
los contratos (esta etiqueta se debe incluir leyendo la propiedad
newrateinitial.include.DistributionOption.callcenter en caso de ser
true este atributo se enviar).
Inlcuir la etiqueta @CRSRatePlanCode=XXXX con el cdigo de la
tarifa (el cdigo cambia para cada mensaje).
Incluir la etiqueta @DistributionOption=Rate Access Code
Required nicamente para aquellos contratos negociados, esta
informacin se obtiene de la tabla ICP_CONTRACTMSTR, columna
CONTRACTTYPE = 1.

7Modificacin de Interfaz HMP


o Las siguientes pantallas muestran la interaccin en la interfaz HMP al dar
de alta un nuevo contrato, el primer paso es agregar el nuevo mapeo Add
Mapping, esta funcionalidad no se ver afectada solo se enumera.

Accenture -5- 08 dic. 15


POSADAS Technical Design

Una vez generado el nuevo mapeo, el botn de Publish to ECP se habilitar, al


presionarlo, HMP notificara al ECP la existencia de un nuevo contrato para el canal
travelclick.

Accenture -6- 08 dic. 15


POSADAS Technical Design

Nota: la pantalla deber notificar el resultado de la operacin, tanto para xito como
tambin cualquier mensaje de error recibido.

Accenture -7- 08 dic. 15


POSADAS Technical Design

8Modificacin de BD ECP

Modificar la Tabla ECP_CONTRACTagregando una columna numrica INITIALUPLOAD


con precisin de 1 dgito

La nueva columna guardara el estatus del proceso de carga, con los siguientes status
(que se actualizan confome el proceso va avanzando).

STATU DESCRIPCION
S
1 Inicial:
Cuando hace el nuevo mapeo, HMP notifica al ECP y se actualizan
con estado inicial,
Listo para ser tomados en el proceso de alta.
2 En proceso:
Se ha enviado el mensaje New/Initial al Canal esperando response-
El acknowledge ya se recibi.
3 Finalizado:
Al terminar el proceso de carga hace count sobre ARI_SNAPSHOT
del nuevo contrato y si es igual o mayor al 80% del horizonte o
vigencia del contrato.
4 Error: Se recibi una respuesta de Error en New
Se reintenta n veces el reenvo de carga inicial.

9Generar mensaje Rate para New Contract Initial


A continuacin se muestra un ejemplo de la estructura de un mensaje
OTA_HotelRatePlanNotifRQ

<soapenv:Envelope xmlns:htn="http://pms-t5.ihotelier.com/HTNGService/services/HTNG2011BService"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"
xmlns:wsa="http://www.w3.org/2005/08/addressing">
<soapenv:Header>
<wsa:MessageID>TEST INVENTORY MESSAGE</wsa:MessageID>
<wsa:To>
https://pms-t5.ihotelier.com/HTNGService/services/HTNG2011BService</wsa:To>
<wsa:ReplyTo>
<wsa:Address>https://pms.vendor.com/ServiceName</wsa:Address>
</wsa:ReplyTo>
<wsa:Action>https://pms-

Accenture -8- 08 dic. 15


POSADAS Technical Design

t5.ihotelier.com/HTNGService/services/HTNG2011BService/HTNG2011B_SubmitRequest</wsa:Action>
<wsse:Security>
<wsse:UsernameToken>
<wsse:Username>1466</wsse:Username>
<wsse:Password>C0nn3ct1466</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
<wsa:From>
<wsa:ReferenceProperties>
<htn:HotelCode>1466</htn:HotelCode>
</wsa:ReferenceProperties>
</wsa:From>
</soapenv:Header>
<soapenv:Body>
<OTA_HotelRatePlanNotifRQ MessageContentCode="8"
TimeStamp="2015-07-27T07:20:13" HotelCode="1466" EchoToken="21102015_01"
Version="1.001">
<RatePlans HotelCode="1466">
<RatePlan RatePlanQualifier="10" RatePlanStatusType="Initial"
End="2016-01-02" Start="2015-10-13" RatePlanCategory="RACK" RatePlanCode="JASS"
RatePlanNotifType="New">
<Rates>
<Rate End="2015-12-31" Start="2015-10-13" RateTimeUnit="Day" UnitMultiplier="1"
CurrencyCode="USD" InvTypeCode="LD">
<BaseByGuestAmts>
<BaseByGuestAmt AmountBeforeTax="450.7" NumberOfGuests="1"
AgeQualifyingCode="10" />
<BaseByGuestAmt AmountBeforeTax="490.3" NumberOfGuests="2"
AgeQualifyingCode="10" />
</BaseByGuestAmts>
<AdditionalGuestAmounts>
<AdditionalGuestAmount AgeQualifyingCode="10" Amount="28.56" />
<AdditionalGuestAmount AgeQualifyingCode="8" Amount="11.00" />
</AdditionalGuestAmounts>
</Rate>
<Rate End="2016-01-31" Start="2016-01-01" RateTimeUnit="Day" UnitMultiplier="1"
CurrencyCode="USD" InvTypeCode="LD">
<BaseByGuestAmts>
<BaseByGuestAmt AmountBeforeTax="450.7" NumberOfGuests="1"
AgeQualifyingCode="10" />
<BaseByGuestAmt AmountBeforeTax="490.3" NumberOfGuests="2"
AgeQualifyingCode="10" />
</BaseByGuestAmts>
<AdditionalGuestAmounts>
<AdditionalGuestAmount AgeQualifyingCode="10" Amount="28.56" />
<AdditionalGuestAmount AgeQualifyingCode="8" Amount="11.00" />
</AdditionalGuestAmounts>
</Rate>
</Rates>
<Description Name="Short description">
<Text>JASS TEST rate</Text>
</Description>
<Description Name="Long description">
<Text>JASS TEST Rate Long Description</Text>
</Description>
</RatePlan>
</RatePlans>
<TPA_Extension>
<DistributionOptions>
<DistributionOption>Web</DistributionOption>
<DistributionOption>Rate Access Code Required</DistributionOption>
<CRSRatePlanCode>XXXX</CRSRatePlanCode>
</DistributionOptions>
</TPA_Extension>
</OTA_HotelRatePlanNotifRQ>
</soapenv:Body>

Accenture -9- 08 dic. 15


POSADAS Technical Design

</soapenv:Envelope>

10 Diagrama de secuencia del proceso de Alta de un nuevo contrato

HMP ECP AS Travel Click

1 : Add Maps/Publish to Channel() 2 : Carga mapeos de Hotel/contrato/habitacin()

3 : Carga mapeos de Hotel/contrato/habitacin()

4 : Se ejecuta tarea de Carga Inicial()


5 : Solicita informacin de contrato a AS()

6 : Envia informacin de contrato a ECP()

7 : Genera mensaje Rate New()

8 : Envia mensaje OTA_HotelRatePlanNotifRQ New()

9 : Enva mensaje OTA_HotelRatePlanNotifRS Success()


10 : Genera Mensaje Rate Delta()

11 : Envia mensaje OTA_HotelRatePlanNotifRQ Delta()

11 Class Definition

Generar mensaje Rate para New Contract Initial


Las clases que se describen a continuacin son las que se consideran para poder
generar el mensaje OTA_HotelRatePlanNotifRQ para el envo de la carga inicial de un
nuevo contrato para el horizonte configurado para el canal y/o vigencia del contrato.

12 EcaContract.java
coreWSB: com.altiuspar.cmf.core.controlhistory.domain

12.1.1Description
Clase que carga la informacin del contrato en el ECP.

Accenture - 10 - 08 dic. 15
POSADAS Technical Design

12.1.2Specification
NA

12.1.3Attributes
NA

12.1.4Operations

Name Getters y Setters


Description Mtodos de acceso a a atributos
Inputs Strings
Outputs Strings
Exceptions void
Visibility public static
Implementation Agregar atributos para mapear nuevos atributos del modelo
Specification de datos.

13 EcaContractId.java
coreWSB: com.altiuspar.cmf.core.controlhistory.domain

13.1.1Description
Clase del Id compuesto de la clase EcaContract.

13.1.2Specification
NA

13.1.3Attributes
NA

13.1.4Operations
Name Getters y Setters
Description Mtodos de acceso a a atributos
Inputs Strings
Outputs Strings
Exceptions void
Visibility public static
Implementation Agregar atributos para mapear nuevos atributos del modelo
Specification de datos.

14 AbstractEcaContractId.java
coreWSB: com.altiuspar.cmf.core.controlhistory.domain

14.1.1Description
Clase del Id compuesto de la clase EcaContract.

14.1.2Specification
NA

Accenture - 11 - 08 dic. 15
POSADAS Technical Design

14.1.3Attributes
NA

14.1.4Operations
Name Getters y Setters
Description Mtodos de acceso a a atributos
Inputs Strings
Outputs Strings
Exceptions void
Visibility public static
Implementation Agregar atributos para mapear nuevos atributos del modelo
Specification de datos.

15 EcaContractDao.java
WSB: com.altiuspar.cmf.core.controlhistory.domain

15.1.1Description
Interface del DAO que guarda los registros en la BD del ECP.

15.1.2Specification
NA

15.1.3Attributes
NA

15.1.4Operations

Name save, delete, merge, findById


Description Metodos para acceso y atualizaciin de la entidad Contrato.
Inputs EcaContract
Outputs Void
Exceptions void
Visibility public static
Implementation Modificar mtodos para que incluyan en las consultas y
Specification modificaciones los nuevos campos aadidos.

16 EcaContractDaoImpl.java
WSB: com.posadas.wsb.persistence.impl.ecp

16.1.1Description
Clase que implementa aplica las querys

16.1.2Specification
NA

Accenture - 12 - 08 dic. 15
POSADAS Technical Design

16.1.3Attributes
NA

16.1.4Operations
Name save, delete, merge, findById
Description Metodos para acceso y atualizaciin de la entidad Contrato.
Inputs EcaContract
Outputs Void
Exceptions void
Visibility public static
Implementation Modificar mtodos para que incluyan en las consultas y
Specification modificaciones los nuevos campos aadidos.

17 InitialUploadTaskTC.java
CMF_Scheduler: com.altiuspar.cmf.scheduler.task.system

17.1.1Description
Clase java que tiene el detalle para la ejecucin de la tarea de carga inicial.

17.1.2Specification
NA

17.1.3Attributes
NA

17.1.4Operations

Name execute
Description Metodo que executa la tarea de carga inicial.
Inputs JobExecutionContext
Outputs Void
Exceptions JobExecutionContext
Visibility public static
Implementation Este mtodo lanza la ejecucin de la tarea de carga inicial,
Specification por lo cual es necesario adaptar el mtodo para que se
ejecute en base a la tabla ECA_CONTRACT del ECP que
presentara 1 columna adicional para poder identificar la carga
inicial y generar el mensaje OTA_HotelRatePlanNotifRQ con los
atributos New/Initial.

18 ASECPQueueTask.java
CMF_Scheduler:com.altiuspar.cmf.scheduler.task.system

18.1.1Description
Clase Java que lanza la ejecucin de la tarea que jala las actualizaciones quee sern
enviadas al canal de Travel Click.

18.1.2Specification
NA

Accenture - 13 - 08 dic. 15
POSADAS Technical Design

18.1.3Attributes
NA

18.1.4Operations

Name execute
Description Metodo que lanza la ejecucin de la tarea de actualizaciones.
Inputs JobExecutionContext
Outputs Void
Exceptions JobExecutionContext
Visibility public static
Implementation Este mtodo permite lanzar la ejecucin de la tarea de
Specification actualiciones generadas de los contratos ligados al canal, por
lo cual es necesario que se valide que cuando hay
actualizaciones sobre un nuevo contrato que se mandara al
canal a travs de la tarea de carga inicial, ignore las
actualizaciones generadas del contrato en cuestin.

19 StoreConversation.java
ECA_InteractionManager: com.altiuspar.eca.interactionmanager.conversation.activities

19.1.1Description
Clase encargada de guardar el mensaje de la conversacin generada de los mensajes
OTA.

19.1.2Specification
NA

19.1.3Attributes
NA

19.1.4Operations
Name execute
Description Metodo que recibe el mensaje final de la conversacin OTA.
Inputs ProcessContext
Outputs ProcessContext
Exceptions WorkFlowException
Visibility public static
Implementation Este mtodo valida cuando la conversacin de los mensajes
Specification OTA ha finalizado obteniendo la respuesta generada, valida el
status y guarda el mensaje, aqu debemos validar que cuando
el mensaje de respuesta OTA_HotelRatePlanNotifRS del
New/Initial sea exitoso para que en base a esto no se generen
los mensajes OTA_HotelRatePlanNotifRQ Delta/Active para
cubrir el horizonte del canal y/o del contrato (vigencia).

Accenture - 14 - 08 dic. 15
POSADAS Technical Design

20 ValidateRSNewInitial.java
ECA_TravelC_Plugin: com.altiuspar.eca.travelc.plugin.conversation

20.1.1Description
Esta Clase se deber de crear para hacer las validaciones de la respuesta obtenida del
OTA_HotelRatePlanNotifRS New/Initial para que al obtener el Success avise o genere
una accin sobre la tarea de carga Inicial para generar el resto de los mensajes
OTA_HotelRatePlanNotifRQ Delta/Active.

20.1.2Specification
NA

20.1.3Attributes
NA

20.1.4Operations

Name execute
Description Implementacion para generar la cabecera documento con
formato SOAP 1.2.
Inputs ProcessContext
Outputs Void
Exceptions WorkFlowException
Visibility public static
Implementation Este mtodo deber de tomar el objeto generado de la clase
Specification StoreConversation para poder validar si la respuesta fue
exitosa y en base a eso se continue con la ejecucin del resto
de los mensajes OTA_HotelRatePlanNotifRQ Delta/Active.

21 AvailabilityBusinessNoTier.java
ECA_TravelC_Plugin: com.altiuspar.eca.globogo.plugin.business

21.1.1Description
Esta Clase se deber de modifcar para incluir lgica que permita mandar peticiones
agrupadas hacia el AS y reducir el nmero de mensajes enviados.

21.1.2Specification
NA

21.1.3Attributes
NA

21.1.4Operations

Name execute
Description Implementacion de lgica de negocio previo al envio de la
respuesta al canal en formato xml cannico.
Inputs Object
Outputs Void
Exceptions WorkFlowException

Accenture - 15 - 08 dic. 15
POSADAS Technical Design

Visibility public static


Implementation Implementar vadaciones para interactuar con el servicio del
Specification AS para obtener tarifas y disponibilidad agrupando las
llamadas para disminuir los roundrips hacia el AS.

22 travelc.properties
ECA_TravelC_Plugin:

22.1.1Description
Archivo de propiedades dentro del canal travel click.

22.1.2Specification
NA

22.1.3Attributes
newrateinitial.include.DistributionOption.web=true
newrateinitial.include.DistributionOption.odd=false
newrateinitial.include.DistributionOption.directconnect=false
newrateinitial.include.DistributionOption.callcenter=false
newrateinitial.include.DistributionOption.mobile=true

22.1.4Operations

23 Class Diagram and components

24 Database objects changed or used

25 Environment/Infrastructure changes
Se necesita la configuracin de un jboss para montar el plugin, en caso de ser
necesario y se requiera que tenga su propio AS y FBE ser necesario la configuracin
de sus respectivos jboss, en este caso habra que revisar el servidor donde se requiera
instalar y analizar la capacidad del mismo.

26 List access control

Accenture - 16 - 08 dic. 15

You might also like