Template POS CET TD Example
Template POS CET TD Example
Template POS CET TD Example
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
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
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
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
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.
Nota: la pantalla deber notificar el resultado de la operacin, tanto para xito como
tambin cualquier mensaje de error recibido.
8Modificacin de BD ECP
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.
<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-
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>
</soapenv:Envelope>
11 Class Definition
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
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
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
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
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.
Accenture - 16 - 08 dic. 15