Você está aqui:
InsProductJSONService:getCoverageChanges
Use esse serviço para renovações para obter as alterações de cobertura entre dois JSONs de produto. Você pode usar o mapa de diferenças resultante para exibição na UI ou em um documento gerado.
Método: getCoverageChanges
O serviço retorna coberturas alteradas, além de coberturas adicionadas e removidas, e destaca alterações em atributos.
Como funciona
-
Usa o valor de
inputKey1para localizar um JSON de produto que contenha coberturas para comparação. -
Usa o valor de
inputKey2para localizar outro JSON de produto que contenha as coberturas para comparação. -
Retorna um mapa de alteração que destaca coberturas opcionais selecionadas, coberturas opcionais não selecionadas e alterações em
userValuesde atributo.
Opções remotas
Opção |
Descrição |
|---|---|
|
Identifica o primeiro JSON de produto para comparação. Padrão = |
|
Identifica o segundo JSON de produto para comparação. Padrão = |
JSON de entrada
Esse serviço usa dois JSONs de produto típicos.
Para aprender como os JSONs de produto são estruturados, consulte Modelo de estrutura de JSON de produto.
JSON de saída
O serviço retorna um mapa de diferença que inclui coberturas adicionadas e removidas da política e coberturas com valores de atributo diferentes.
Se a apólice incluir diferenças de cobertura em nível de neto, elas aparecerão no mapa de diferenças sob o productCode ou instanceKey.
Estas são as diferentes chaves no mapa de diferença:
Chave |
Descrição |
|---|---|
|
Lista de coberturas no primeiro JSON de produto, mas não no segundo JSON de produto. |
|
Lista de coberturas não no primeiro JSON de produto, mas no segundo JSON de produto. |
|
Lista de coberturas selecionadas no primeiro JSON de produto, mas não selecionadas no segundo JSON de produto. |
|
Lista de coberturas selecionadas não no primeiro JSON de produto, mas selecionadas no segundo JSON de produto. |
|
Lista de coberturas no primeiro JSON de produto com diferentes atributos userValues no segundo JSON de produto. |
{
"result": {
"root": {
"addedCoverages": [{
"displaySequence": 8,
"Id": "01t1J00000AvEx5QAF",
"Name": "BoCovNoAttr1",
"ProductCode": "BCNA1",
"IsRecommended__c": false,
"RecordTypeName__c": "CoverageSpec",
"IsConfigurable__c": false,
"productId": "01t1J00000AvEx5QAF",
"pciId": "a1x1J0000043KKDQA2",
"isOptional": false,
"isSelected": true,
"attributeCategories": {
"totalSize": 0
}
}],
"unselectedCoverages": [{
"attributeCategories": {
...
}
"isSelected": true,
"isOptional": false,
"ImageId": "/sfc/servlet.shepherd/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0681J000002tD9wQAE",
"pciId": "a1x1J000002FPmwQAG",
"productId": "01t1J000009rd2ZQAQ",
"IsConfigurable__c": true,
"RecordTypeName__c": "CoverageSpec",
"PricingSource__c": "premiumCamera__premiumCamera",
"IsRecommended__c": false,
"LineOfBusiness__c": "Property & Casualty",
"ProductCode": "C",
"Family": "Personal Lines",
"Name": "Camera",
"Id": "01t1J000009rd2ZQAQ",
"displaySequence": 7
}],
"selectedCoverages": [{
"displaySequence": 2,
"Id": "01t1J000009rd2VQAQ",
"Name": "Jewelry",
"Family": "Personal Lines",
"ProductCode": "J",
"IsRecommended__c": false,
"PricingSource__c": "premiumJewelry__premiumJewelry",
"RecordTypeName__c": "CoverageSpec",
"IsConfigurable__c": true,
"productId": "01t1J000009rd2VQAQ",
"pciId": "a1x1J000002bVjvQAE",
"ImageId": "/servlet/servlet.FileDownload?file=00P1J00000YMFBZUA5",
"eligibilityCriteria": "X.limitCovX > 3000",
"isOptional": true,
"isSelected": true,
"attributeCategories": {
...
}
}],
"changedCoverages": [{
"changedAttributes": {
"limitCoverageC": {
"newValue": "200000",
"oldValue": "100000"
}
}
