Loading
保险
InsPolicyService:getModifiedPolicy

InsPolicyService:getModifiedPolicy

当用户更改现有保单中的受保项目或受保方时,使用此服务。该服务接受用户所做的更改,并返回修改后的保单数据,包括重新计算的价格。

类:InsPolicyService

方法:getModifiedPolicy

此服务适用于 Salesforce Financial Services Cloud。

更新通过输入中的两个节点提供:modifiedItems 和 newInsuredItemsRelationships。

备注
备注 该服务可以添加新的保险项目,也可以更新现有保险项目的属性,但无法删除项目。

工作原理

  1. 服务会assetId或policyId要修改的策略。

  2. 获取包含保险项目映射的转换 JSON。这是目标保单上保险项目和当事人以及所有修改属性的映射。这还可以包括目前目标保单上不存在的新保险项目。

  3. 使用保险项目地图中指定的值,更新产品 JSON 中的保险项目和被保险方属性值。将新保险项目添加到产品 JSON。

    备注
    备注 InsPolicyService:getModifiedPolicy 不支持将可选承保范围添加到保险项目。
  4. 处理保险项目或保险方之间的任何新关联,newInsuredItemsRelationships并根据需要在产品 JSON 中添加子产品。例如,将司机与汽车配对的新关联会在产品 JSON 的特定汽车实例下生成新的子产品。 

    提示
    提示

    仅可指定新关联;无法通过密钥中的信息删除现有关联。

  5. 使用aggByKey、effectiveDate、filters和includeInputKey选项重新定价保单,并在产品 JSON 中设置新价格。

  6. 如果计算税费,仅计算新记录的费用。例如,如果将其他汽车(保险项目)添加到保单中,服务会计算新汽车的新税费。保单上的累计税和费用值将更新。

    如果没有新的保险项目或承保范围或添加到保单中,则不会重新计算税费。

  7. 返回带有修改信息的产品 JSON。如果子产品是受保方,则会创建/更新 primaryParty 和 otherParties 节点。

    备注
    备注

    如果不存在primaryParty,则从newInsuredItemsRelationships中为父实例指定的第一个新关系创建primaryParty。然后,父实例的其他newInsuredItemsRelationships新关系被添加到otherParties数组中。

    但是,如果primaryParty已经存在,在newInsuredItemsRelationships中为父实例指定的第一个新关系以及该父实例的所有其他新关系都会添加到otherParties数组中。

    如果目标保单有税和/或费用,此 JSON 会在保单 JSON 中包含taxesAndFees、taxAmount、feeAmount、totalTaxForTermDiff,和totalFeeForTermDiff字段。

    备注
    备注

    JSON 仅包含此策略中使用的税和/或费用字段。

备注
备注

在 ⁇ InsProductService:getRatedProducts ⁇ service 中使用的所有远程选项也可以与此服务一起使用。

输入

输入

描述

modifiedItems

更新的保险项目或保险方的详细信息)。

newInsuredItemsRelationships

保险项目与其他项目或投保方之间的新关联,例如将司机添加到汽车或将珠宝添加到家庭。

远程选项

选项

说明

aggByKey

产品。instanceKey

服务会将此选项发送到包含聚合步骤的计算程序,以便计算程序返回正确的金额。

例如,汽车保险单为每个保险车辆附加了多个驾驶员。对于保单中的每个实例,被保险车辆都有一个单独的 instanceKey。aggByKey 获取车辆的所有实例密钥,并为每个实例密钥创建保险金阵列,并将其传递给计算程序,以便正确计算保险金。

服务使用此值重新定价保单。

assetId 或 policyId

%theIdYouNeed%

正在修改的策略 ID。

effectiveDate

“YYYY-MM-DD HH:MM:SS” 或 %OmniScriptDataElement%

已修改保单的原始生效日期,用于重新定价保单。

filters

Product2FieldName:Value,Product2FieldName:%Element Name%

使用带有冒号的 API 名称,后跟值或变量。例如,在 OmniScript 中,变量可以是元素的名称,例如输入选项列表。

使用逗号分隔多个筛选器参数。

筛选器可以包括Product2 对象上的任何字段。

服务用filters 于重新定价保单。

getDataDRBundleName

此服务用于检索保单(资产)信息的 Omnistudio 数据映射器的名称。

如果您正在使用 Salesforce FSC,您必须指定此选项或getDataCustomClassName。

getDataCustomClassName

此服务用于检索保单(资产)信息的自定义类的名称。

如果您正在使用 Salesforce FSC,您必须指定此选项或getDataDRBundleName。

includeInputKeys

包含在CalculatedPriceData对象中的输出产品对象中的逗号分隔键字符串。

只有计算程序使用的密钥在结果中具有值。

该服务使用includeInputKeys重新定价保单。

备注
备注

此选项与inputKey选项无关。

inputKey

一个密钥,告诉我们在输入映射中何处查找修改后的保险项目。

calculateTaxesAndFees

true 或 false

计算目标产品的税费。

如果设置为真,重新计算修改后保单的所有税费。

如果您使用 Salesforce FSC 并将此选项设置为 true,您还必须指定 getDataDRBundleName 或 getDataCustomClassName 选项。

ratingDate

确定重新定价保单的评级程序。如果未提供,将根据修改策略的生效日期定价。

备注
备注 您无法为 ratingField 传递特定时间,因为字段类型是日期。因此,评级日期时间戳默认为 12:00 am。

taxAndFeeEffectiveDate

此服务用于计算税费的生效日期。此选项与用于为产品定价的 ⁇ effectiveDate ⁇ 选项不同。

如果提供了值,服务会使用该值。

如果未提供值,并且产品 JSON 不是策略,服务将默认设置为今天的日期。

useLocalTimezone

true 或 false

默认为 true。

在设置为 true 时,此服务使用创建策略版本的本地时区。

在设置为 false 时,此服务使用 GMT 作为时区。

withTaxFeeRounding

可选

如果为真,使用半偶数舍入方法将计算的税费金额舍入到小数点后两位。withTaxFeeRounding仅在calculateTaxesAndFees选项也为真时有效。

如果为假,禁用舍入。

默认值为 false。

输入 JSON

以下是如何在输入映射中指定 modifiedItems 和 ⁇ newInsuredItemsRelationships 键的示例。modifiedItems 应包含每个产品代码的实例数组,以及每个实例的属性数据。newInsuredItemsRelationships 应包含数组,其中每个元素是指定子级( instanceKey)及其父级(parentInstanceKey)之间关系的映射。

"modifiedItems": {
  "DRIVER": [{
      "LN": "Smith",
      "GENDER": "Female",
      "FN": "Joan",
      "instanceKey": "Joan Smith",
      "AGE": 20
    },
    {
      "LN": "Smith",
      "GENDER": "Male",
      "FN": "John",
      "instanceKey": "John Smith",
      "AGE": 30
    },
    {
      "LN": "Henderson",
      "GENDER": "Male",
      "FN": "Robert",
      "instanceKey": "Robert Henderson",
      "AGE": 30
    },
    {
      "LN": "Schell",
      "GENDER": "Female",
      "FN": "Kinsey",
      "instanceKey": "Kinsey Schell",
      "AGE": 20
    }
  ],
  "AUTO": [{
      "VehicleType": "PASSENGER CAR",
      "BodyClass": "Sedan/Saloon",
      "autoYear": 2017,
      "autoModel": "LX350",
      "autoLicNum": "Lexus",
      "instanceKey": "2015 Lexus LX250"
    },
    {
      "VehicleType": "MULTIPURPOSE PASSENGER VEHICLE (MPV)",
      "BodyClass": "Minivan",
      "autoYear": 2006,
      "autoModel": "Odyssey",
      "autoLicNum": "Honda",
      "instanceKey": "2006 Honda Odyssey"
    },
    {
      "VehicleType": "PASSENGER CAR",
      "BodyClass": "Sedan/Saloon",
      "autoYear": 2018,
      "autoModel": "BMW",
      "autoLicNum": "530",
      "instanceKey": "2018 530 BMW"
    },
    {
      "VehicleType": "PASSENGER CAR",
      "BodyClass": "Sedan/Saloon",
      "autoYear": 2016,
      "autoModel": "Toyota",
      "autoLicNum": "Camry",
      "instanceKey": "2016 Camry Toyota"
    }
  ]
},
"newInsuredItemsRelationships": [
    {
      "instanceKey": "Joan Smith",
      "parentInstanceKey": "2015 Lexus LX250"
    },
    {
      "instanceKey": "Robert Henderson",
      "parentInstanceKey": "2018 530 BMW"
    }
  ]

输出 JSON

该服务返回产品 JSON,其中包含所有用户修改和添加。它还包括反映用户修改的计算priceDiff和totalPremiumForTermDiff值。特别是对于税费,也会返回totalTaxForTermDiff和totalFeeForTermDiff字段。它们仅在计算税费时显示,并代表目标保单的按比例分配的税费与修改保单的按比例分配的税费之间的差异(类似于totalPremiumForTermDiff字段)。

{       
  "totalSize" : 1,
  "records" : [ {
    "displaySequence" : -1,
    "accountId" : "02i000000000000000",
    "EffectiveEnd" : "2019-12-31T08:00:00.000+0000",
    "EffectiveStart" : "2019-01-01T08:00:00.000+0000",
    "Name" : "policy",
    "policyNumber" : "4ec13580-2208-5109-095e-b39bdbaaeb56",
    "Price" : 25.50,
    "productId" : "01tRN000000LCquYAG",
    "RecordTypeName__c" : "Product",
    "term" : "Annual",
    "TotalPremiumForTerm__c" : 25.50,
    "totalSumInsured" : 19.25,
    "key" : "value",
    "feeAmount" : 10,
    "taxAmount" : 10,
    "nat_test__TotalFeeAmount__c" : 10,
    "TotalFeeForTerm__c" : 10.00,
    "nat_test__TotalTaxAmount__c" : 10,
    "TotalTaxForTerm__c" : 10.00,
    "hasAttributes" : false,
    "productName" : "AutoRoot",
    "ProductCode" : "AutoRoot",
    "currencyCode" : "USD",
    "currencySymbol" : "$",
    "taxesAndFees" : [ {
      "PriceListEntryName__c" : null,
      "PriceListEntryId__c" : "02i000000000000002",
      "isRefundable" : null,
      "Id" : null,
      "currencySymbol" : "$",
      "currencyCode" : "USD",
      "calculatedAmount" : 10,
      "Amount__c" : 10,
      "AdjustmentType__c" : "Tax"
    }, {
      "PriceListEntryName__c" : null,
      "PriceListEntryId__c" : "02i000000000000003",
      "isRefundable" : null,
      "Id" : null,
      "currencySymbol" : "$",
      "currencyCode" : "USD",
      "calculatedAmount" : 20,
      "Amount__c" : 20,
      "AdjustmentType__c" : "Fee"
    } ],
    "coverageCount" : 0,
    "childProducts" : {
      "totalSize" : 2,
      "records" : [ {
        "displaySequence" : -1,
        "hasAttributes" : true,
        "productName" : "Auto",
        "ProductCode" : "Auto",
        "nat_test__RecordTypeName__c" : "InsuredItemSpec",
        "productId" : "01tRN000000LCqrYAG",
        "Name" : "1998 Honda Civic",
        "instanceKey" : "1998 Honda Civic",
        "currencyCode" : "USD",
        "currencySymbol" : "$",
        "hasCoverages" : true,
        "primaryParty" : {
          "instanceKey" : "BobJones"
        },
        "otherParties" : [ {
          "productCode" : "Driver",
          "instanceKey" : "SarahJones",
          "LastName" : "Jones",
          "FirstName" : "Sarah"
        } ],
        "attributeCategories" : {
          "totalSize" : 1,
          "records" : [ {
            "displaySequence" : 1,
            "Code__c" : "Auto",
            "Name" : "Auto",
            "id" : "a0ZRN0000009TMm2AM",
            "productAttributes" : {
              "totalSize" : 3,
              "records" : [ {
                "code" : "Make",
                "dataType" : "text",
                "inputType" : "text",
                "multiselect" : false,
                "required" : false,
                "readonly" : false,
                "disabled" : false,
                "filterable" : true,
                "attributeId" : "a0aRN00000067pjYAA",
                "label" : "Make",
                "displaySequence" : -1,
                "hasRules" : false,
                "hidden" : false,
                "cloneable" : true,
                "isNotTranslatable" : false,
                "values" : [ {
                  "readonly" : false,
                  "disabled" : false
                } ],
                "userValues" : "Honda",
                "isNotAssetizable" : false
              }, {
                "code" : "Model",
                "dataType" : "text",
                "inputType" : "text",
                "multiselect" : false,
                "required" : false,
                "readonly" : false,
                "disabled" : false,
                "filterable" : true,
                "attributeId" : "a0aRN00000067pkYAA",
                "label" : "Model",
                "displaySequence" : -1,
                "hasRules" : false,
                "hidden" : false,
                "cloneable" : true,
                "isNotTranslatable" : false,
                "values" : [ {
                  "readonly" : false,
                  "disabled" : false
                } ],
                "userValues" : "Civic",
                "isNotAssetizable" : false
              }, {
                "code" : "ModelYear",
                "dataType" : "number",
                "inputType" : "number",
                "multiselect" : false,
                "required" : false,
                "readonly" : false,
                "disabled" : false,
                "filterable" : true,
                "attributeId" : "a0aRN00000067plYAA",
                "label" : "ModelYear",
                "displaySequence" : -1,
                "hasRules" : false,
                "hidden" : false,
                "cloneable" : true,
                "isNotTranslatable" : false,
                "values" : [ {
                  "readonly" : false,
                  "disabled" : false
                } ],
                "userValues" : 1998,
                "isNotAssetizable" : false
              } ]
            }
          } ]
        },
        "childProducts" : {
          "totalSize" : 2,
          "records" : [ {
            "displaySequence" : -1,
            "hasAttributes" : true,
            "productName" : "Driver",
            "ProductCode" : "Driver",
            "nat_test__RecordTypeName__c" : "InsuredPartySpec",
            "productId" : "01tRN000000LCqsYAG",
            "Name" : "BobJones",
            "instanceKey" : "BobJones",
            "currencyCode" : "USD",
            "currencySymbol" : "$",
            "hasCoverages" : true,
            "isPrimaryChild" : true,
            "attributeCategories" : {
              "totalSize" : 1,
              "records" : [ {
                "displaySequence" : 2,
                "Code__c" : "Driver",
                "Name" : "Driver",
                "id" : "a0ZRN0000009TMn2AM",
                "productAttributes" : {
                  "totalSize" : 2,
                  "records" : [ {
                    "code" : "FirstName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pmYAA",
                    "label" : "FirstName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "isNotTranslatable" : false,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Bob",
                    "isNotAssetizable" : false
                  }, {
                    "code" : "LastName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pnYAA",
                    "label" : "LastName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "isNotTranslatable" : false,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Jones",
                    "isNotAssetizable" : false
                  } ]
                }
              } ]
            }
          }, {
            "displaySequence" : -1,
            "Id" : "01tRN000000LCqsYAG",
            "Name" : "Driver",
            "productId" : "01tRN000000LCqsYAG",
            "productName" : "Driver",
            "ProductCode" : "Driver",
            "nat_test__RecordTypeName__c" : "InsuredPartySpec",
            "instanceKey" : "SarahJones",
            "attributeCategories" : {
              "totalSize" : 0,
              "records" : [ {
                "displaySequence" : -1,
                "Code__c" : "Driver",
                "Name" : "Driver",
                "id" : "a0ZRN0000009TMn2AM",
                "productAttributes" : {
                  "totalSize" : 0,
                  "records" : [ {
                    "code" : "FirstName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pmYAA",
                    "label" : "FirstName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Sarah",
                    "isNotAssetizable" : false
                  }, {
                    "code" : "LastName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pnYAA",
                    "label" : "LastName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Jones",
                    "isNotAssetizable" : false
                  } ]
                }
              } ]
            }
          } ]
        }
      }, {
        "displaySequence" : -1,
        "hasAttributes" : true,
        "productName" : "Auto",
        "ProductCode" : "Auto",
        "nat_test__RecordTypeName__c" : "InsuredItemSpec",
        "productId" : "01tRN000000LCqrYAG",
        "Name" : "1999 Toyota Camry",
        "instanceKey" : "1999 Toyota Camry",
        "currencyCode" : "USD",
        "currencySymbol" : "$",
        "hasCoverages" : true,
        "primaryParty" : {
          "instanceKey" : "MaryJones"
        },
        "otherParties" : [ {
          "instanceKey" : "BobJones"
        } ],
        "attributeCategories" : {
          "totalSize" : 1,
          "records" : [ {
            "displaySequence" : 1,
            "Code__c" : "Auto",
            "Name" : "Auto",
            "id" : "a0ZRN0000009TMm2AM",
            "productAttributes" : {
              "totalSize" : 3,
              "records" : [ {
                "code" : "Make",
                "dataType" : "text",
                "inputType" : "text",
                "multiselect" : false,
                "required" : false,
                "readonly" : false,
                "disabled" : false,
                "filterable" : true,
                "attributeId" : "a0aRN00000067pjYAA",
                "label" : "Make",
                "displaySequence" : -1,
                "hasRules" : false,
                "hidden" : false,
                "cloneable" : true,
                "isNotTranslatable" : false,
                "values" : [ {
                  "readonly" : false,
                  "disabled" : false
                } ],
                "userValues" : "Toyota",
                "isNotAssetizable" : false
              }, {
                "code" : "Model",
                "dataType" : "text",
                "inputType" : "text",
                "multiselect" : false,
                "required" : false,
                "readonly" : false,
                "disabled" : false,
                "filterable" : true,
                "attributeId" : "a0aRN00000067pkYAA",
                "label" : "Model",
                "displaySequence" : -1,
                "hasRules" : false,
                "hidden" : false,
                "cloneable" : true,
                "isNotTranslatable" : false,
                "values" : [ {
                  "readonly" : false,
                  "disabled" : false
                } ],
                "userValues" : "Camry",
                "isNotAssetizable" : false
              }, {
                "code" : "ModelYear",
                "dataType" : "number",
                "inputType" : "number",
                "multiselect" : false,
                "required" : false,
                "readonly" : false,
                "disabled" : false,
                "filterable" : true,
                "attributeId" : "a0aRN00000067plYAA",
                "label" : "ModelYear",
                "displaySequence" : -1,
                "hasRules" : false,
                "hidden" : false,
                "cloneable" : true,
                "isNotTranslatable" : false,
                "values" : [ {
                  "readonly" : false,
                  "disabled" : false
                } ],
                "userValues" : 1999,
                "isNotAssetizable" : false
              } ]
            }
          } ]
        },
        "childProducts" : {
          "totalSize" : 0,
          "records" : [ {
            "displaySequence" : -1,
            "hasAttributes" : true,
            "productName" : "Driver",
            "ProductCode" : "Driver",
            "nat_test__RecordTypeName__c" : "InsuredPartySpec",
            "productId" : "01tRN000000LCqsYAG",
            "Name" : "BobJones",
            "instanceKey" : "BobJones",
            "currencyCode" : "USD",
            "currencySymbol" : "$",
            "hasCoverages" : true,
            "isPrimaryChild" : false,
            "attributeCategories" : {
              "totalSize" : 1,
              "records" : [ {
                "displaySequence" : 2,
                "Code__c" : "Driver",
                "Name" : "Driver",
                "id" : "a0ZRN0000009TMn2AM",
                "productAttributes" : {
                  "totalSize" : 2,
                  "records" : [ {
                    "code" : "FirstName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pmYAA",
                    "label" : "FirstName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "isNotTranslatable" : false,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Bob",
                    "isNotAssetizable" : false
                  }, {
                    "code" : "LastName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pnYAA",
                    "label" : "LastName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "isNotTranslatable" : false,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Jones",
                    "isNotAssetizable" : false
                  } ]
                }
              } ]
            }
          }, {
            "displaySequence" : -1,
            "hasAttributes" : true,
            "productName" : "Driver",
            "ProductCode" : "Driver",
            "nat_test__RecordTypeName__c" : "InsuredPartySpec",
            "productId" : "01tRN000000LCqsYAG",
            "Name" : "MaryJones",
            "instanceKey" : "MaryJones",
            "currencyCode" : "USD",
            "currencySymbol" : "$",
            "hasCoverages" : true,
            "isPrimaryChild" : true,
            "attributeCategories" : {
              "totalSize" : 1,
              "records" : [ {
                "displaySequence" : 2,
                "Code__c" : "Driver",
                "Name" : "Driver",
                "id" : "a0ZRN0000009TMn2AM",
                "productAttributes" : {
                  "totalSize" : 2,
                  "records" : [ {
                    "code" : "FirstName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pmYAA",
                    "label" : "FirstName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "isNotTranslatable" : false,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Mary",
                    "isNotAssetizable" : false
                  }, {
                    "code" : "LastName",
                    "dataType" : "text",
                    "inputType" : "text",
                    "multiselect" : false,
                    "required" : false,
                    "readonly" : false,
                    "disabled" : false,
                    "filterable" : true,
                    "attributeId" : "a0aRN00000067pnYAA",
                    "label" : "LastName",
                    "displaySequence" : -1,
                    "hasRules" : false,
                    "hidden" : false,
                    "cloneable" : true,
                    "isNotTranslatable" : false,
                    "values" : [ {
                      "readonly" : false,
                      "disabled" : false
                    } ],
                    "userValues" : "Jones",
                    "isNotAssetizable" : false
                  } ]
                }
              } ]
            }
          } ]
        }
      } ]
    }
  } ]
}
 
正在加载
Salesforce Help | Article