...
El presente manual tiene como finalidad la capacitación al usuario que desee integrar su aplicación de ventas con ellos servicios que expone Promo y su integración mediante colas de mensajes.
Se provee una descripción detallada de los mensajes que deben ser enviados al mismo y de cómo interpretar los mensajes de respuesta que dará ante un requerimiento.
...
Introducción
...
CONSIDERACIONES EN EL USO DE COLAS DE MENSAJES
Actualmente las aplicaciones se disponen en la nube (SAS) y esto trajo nuevos paradigmas de soluciones de arquitectura. Uno de ellos es el desacoplar dichas aplicaciones en pequeños componentes o bloques independientes que puedan ser más fáciles de desarrollar, implementar y a futuro mantener. Obviamente tal arquitectura exige un mecanismo confiable y seguro de comunicación entre los mencionados bloques y sobre todo un mecanismo más flexible que la comunicación interproceso tradicional con las limitaciones que éstas imponen.
...
Informações |
---|
El Json de la consola se enviará cuando esté activa y operando (con cada ejecución del proceso). |
El Json de RabbitMQ, contendrá el siguiente formato:
cada La configuración de Rabbit se realizará de acuerdo a lo indicado en:Configuración
Cada vez que se realiza una transaccion, se detalla en la consola:
y en la cola RabbitMq;
http://10.4.201.50:15672/#/queues
la respuesta de la cola Rabbit tiene un formato, como el ejemplo:
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"companyId" : "farme",
"transactionId" : "farme_0079_6_20210217112812",
"transactionType" : "SALE",
"offline" : false,
"originalTransactionId" : "",
"terminalCode" : "6",
"storeCode" : "0079",
"zoneCode" : "",
"subZoneCode" : "",
"storeChainCode" : "003",
"storeTerminal" : "farme_0079_6",
"channelCode" : "",
"mapVersion" : 958,
"engineVersion" : "7.0.0-FP1",
"messageId" : "0001",
"iDate" : 20210217,
"iHour" : 11,
"iTime" : 112812,
"transactionDate" : "2021-02-17T14:28:12Z",
"processDate" : "2022-06-22T19:22:13Z",
"headerExtraFields" :
{
"processed" : false,
"headerExtension" : { },
"formatCode" : "",
"tenderGroupCode" : "",
"currencyCode" : "",
"externalReferenceId" : "farme_0079_6_20210217112812",
"_id" : "60478417939d591f28df2a73"
},
"benefitTotal" : 1.292,
"subtotal" : 4.23,
"total" : 2.9380000000000006,
"promotions" :
[
{
"promoId" : "60398ad1cff31c19a864f0b8",
"promoName" : null,
"campaingName" : null,
"promoCode" : null,
"benefits" :
[
{ "benefitNro" : "60398ad1cff31c19a864f0b6",
"benefitType" : "CalculatedCouponApplicationBenefit",
"hasLimit" : false,
"qty" : 0.0,
"value" : 1.292,
"valueWithTaxes" : 1.292,
"tipoPromo" : "DV",
"reqdig" : "NO",
"rqdevpremio" : "NO",
"lpcobro" : "PVP",
"cobrounidad" : "NO",
"fecha_fin_promo" : "2021/12/31",
"ajus_pvp_pc" : "NO",
"couponId" : "tqa006"
}
],
"discount" : 1.292
}
],
"events" : [],
"customers" :
[
{ "cardNumber" : "0",
"sequence" : 1,
"valuesAsMap" : { },
"id" : "1000938173",
"points" : 0.0,
"POINTS" : 0,
"creditCampaignCode" : null,
"hasLimitsError" : false,
"name" : "guevara arturo ",
"raffleData" : null,
"REMAININGAMOUNT" : 1,
"type" : "c",
"redeemPointsPriceFactor" : 0.0,
"identifierType" : "c",
"lastName" : "guevara arturo ",
"AMOUNT" : 2,
"segment" : [],
"amount" : 0.0,
"balance1" : 0.0,
"profileCode" : null,
"limitedBenefits" : "",
"email" : "[email protected]",
"identifier" : "1000938173",
"externalId" : "1000938173",
"remainingAmount" : 0.0,
"balance2" : 0.0
}
],
"payments" :
[
{
"plan" : "-",
"sequence" : 1,
"id" : "efe",
"valuesAsMap" : { },
"balance" : false,
"prefix" : "-",
"payCreditCampaign" : "-",
"type" : "efe",
"AMOUNT" : 0,
"bank" : "-",
"amount" : 3.98,
"prefixGroup" : [],
"prefixGroupStr" : "-",
"installments" : "-",
"itemamount" : 0.0,
"externalId" : "efe",
"pocket" : "-"
}
],
"coupons" :
[
{ "type" : "tqa006",
"QTY" : 1,
"qty" : 0.0,
"sequence" : 1,
"valuesAsMap" : { },
"id" : "0016150041992",
"AMOUNT" : 0,
"amount" : 1.292,
"externalId" : "0016150041992",
"participants" :
[
{
"promoId" : "60398ad1cff31c19a864f0b8",
"promoName" : null,
"campaingName" : null,
"qty" : "0.0",
"magnitude" : null,
"xprice" : null
}
]
}
],
"loyaltycards" : [],
"items" :
[
{ "magnitude" : 0.0,
"supplierFinancial" : null,
"supplierItemAmount" : 0.0,
"priceResponseFields" :
{ "code" : "0000132311",
"xprice" : "4.2300",
"qty" : "1.0000",
"unitprice" : "4.2300",
"magnitude" : "0.0000",
"seq" : "1",
"priceLastUpdate" : "-",
"priceListId" : null,
"discountable" : "true",
"originalDiscountable" : "true",
"manualDiscount" : "false"
},
"MAGNITUDE" : 2,
"priceListId" : null,
"level2" : "34",
"unitXPriceOriginal" : 4.23,
"qty" : 1.0,
"unitCostPrice" : 0.0,
"sequence" : 1,
"valuesAsMap" : { },
"taxes" : 0.0,
"code" : "0000132311",
"brand" : "5491",
"applyCatalogRedeem" : false,
"level4" : "623",
"supplierItem" : null,
"unitprice" : 4.23,
"discountable" : "true",
"calCouponVal" : 0.0,
"priceListLastUpdate" : null,
"lowTurnover" : false,
"level3" : "299",
"discontinuous" : false,
"xprice" : 4.23,
"redeemOption" : null,
"QTY" : 1,
"supplierFinancialAmount" : 0.0,
"originalDiscountable" : "true",
"PRICE_WITH_TAXES" : 3,
"priceWithTaxes" : 4.23,
"level1" : "5",
"xpriceOriginal" : 4.23,
"supplier" : "-",
"XPRICE" : 0,
"keyProduct" : false,
"externalId" : null,
"manualDiscount" : false,
"benefitApplies" :
[
{ "type" : null,
"hasLimit" : false,
"qty" : 0.0,
"benefitNro" : "60398ad1cff31c19a864f0b6",
"transactionComboParticipants" : [],
"additionalData" :
{
"tipoPromo" : "DV",
"reqdig" : "NO",
"rqdevpremio" : "NO",
"lpcobro" : "PVP",
"cobrounidad" : "NO",
"fecha_fin_promo" : "2021/12/31",
"ajus_pvp_pc" : "NO",
"couponId" : "tqa006"
},
"promotionName" : "TPV3-Redencion cupon impreso no nominado si calculado cod 0000132311 probar consumo total (tqa006)",
"benefitType" : "CalculatedCouponApplicationBenefit",
"transactionBenefitApplies" :
[
{ "magnitude" : 0.0,
"value" : 1.292,
"valueWithTaxes" : 1.292,
"xprice" : 4.23,
"seq" : 1,
"qty" : 1.0,
"points" : 0.0,
"minimumApplied" : ""
}
],
"promotionNro" : "60398ad1cff31c19a864f0b8",
"promotionCode" : "3377"
}
],
"participants" :
[
{ "promoId" : "60398ad1cff31c19a864f0b8",
"promoName" : null, "campaingName" : null,
"qty" : "1.0",
"magnitude" : "0.0",
"xprice" : "4.23"
}
]
}
],
"totalItemsSold" : 1.0
}
|
...
Gestión de Errores
En el caso de existir registros de posteos a server RabbitMQ con ERROR, se mostrara un aviso (banner) en la cabecera de Promo, indicando de forma general la incidencia.
...