Loading
保险
InsClaimCoverageService:invokeProductRules

InsClaimCoverageService:invokeProductRules

在创建索赔范围时使用此服务,以调用状态转换的产品规则。

类:InsClaimCoverageService

方法:invokeProductRules

工作原理

  1. 根据objectID查找索赔对象,并根据该objectID提取该对象的产品。

  2. 查找指定的transitionName。

  3. 运行与产品关联并适用于transitionName的规则。

    对于每个索赔范围产品规则,分别评估每个涉及方实例和/或涉及的财产实例。

  4. 如果任何规则评估为真,服务将执行这些规则中指定的 Vlocity 操作。

  5. 查找includeStateTransition选项的值。如果值 = true,服务会查找此对象的状态模型,查找fieldAPIName值,并根据转换更改该值。

  6. 输出每个相关方和/或相关财产实例上每个规则的评估结果。

远程选项

选项

说明

includeStateTransition

如果为真,服务会将状态模型fieldAPIName中指定的状态字段更改为转换中指定的状态。

如果为假,服务不会进行任何状态转换。

mode

如果设置为 CoverageMode,则仅运行InsuranceClaimCoverages__c规则。

objectId

要查询的索赔 ID。

transitionName

与您想要运行的规则关联的状态转换名称。

该服务将仅运行与您指定的transitionName关联的规则。

要查找迁移名称,请转到此对象的状态模型。

输入 JSON

此服务不需要输入 JSON。

输出 JSON

该服务会返回每个涉及房地产和/或涉及方实例的规则评估。

以下是输出 JSON 的结构:

{
  "falseRules" : {
    "<String identifier>" : [
      {
        "ruleDetails": {
          "requirement name": <ProductRequirement__c.Name>,
          "conditions": <ProductRequirement__c.Conditions__c>,
          "message": <ProductRequirement__c.Message__c>,
          "action method": <ProductRequirement__c.VlocityActionId__r.InvokeMethodName__c>,
          "action class": <ProductRequirement__c.VlocityActionId__r.InvokeClassName__c>,
          "productId": <ProductRequirement__c.Product2Id__c>,
          "transitionName": <input transitionName>,
          "objectId": <input objectid>,
          "ruleId": <<ProductRequirement__c.Id>
        }
      }
    ]
  }
},  
  "trueRules": {
    "<String identifier>" : [
      {
        "ruleDetails": {
          "requirement name": <ProductRequirement__c.Name>,
          "conditions": <ProductRequirement__c.Conditions__c>,
          "message": <ProductRequirement__c.Message__c>,
          "action method": <ProductRequirement__c.VlocityActionId__r.InvokeMethodName__c>,
          "action class": <ProductRequirement__c.VlocityActionId__r.InvokeClassName__c>,
          "productId": <ProductRequirement__c.Product2Id__c>,
          "transitionName": <input transitionName>,
          "objectId": <input objectid>,
          "ruleId": <<ProductRequirement__c.Id>
        }
      }
    ]
  },
  "transitionSuccess": <Boolean, transition result>,
  "stateTransit": <message with the object's state field, the old state, and the new state.>,
  "canTransitState": <Boolean. determine if the object has fulfilled its transit criterria>,
  "allFalse": <Boolean, if no rule executed true.>
}

以下是输出 JSON 的示例,其规则评估为假,规则评估为真:

{
  "falseRules": {
    "PetBodilyInjury_BMW 735i_a4m5w000000p6DE": [
      {
        "ruleDetails": {
          "requirement name": "Maximum Aggregation Rule",
          "conditions": "TardisCoverage.EACHPERSON == 30800",
          "message": "TestMessage",
          "action method": "Product_Rule",
          "action class": "IntegrationProcedureService",
          "productId": "01t5w00000E0L8xAAF",
          "transitionName": "OpenToClosed",
          "objectId": "a4J5w000001Z3ElEAK",
          "ruleId": "a5L5w000003Tl7EEAS"
        }
      }
    ]
  },
  "trueRules": {
    "PetBodilyInjury_BMW 735i Owner_a4m5w000000p6DE": [
      {
        "actionResults": {
          "IPResult": {
            "output": "TestOutput"
          }
        },
        "ruleDetails": {
          "requirement name": "Maximum Aggregation Rule",
          "conditions": "TardisCoverage.EACHPERSON == 30800",
          "message": "TestMessage",
          "action method": "Product_Rule",
          "action class": "IntegrationProcedureService",
          "productId": "01t5w00000E0L8xAAF",
          "transitionName": "OpenToClosed",
          "objectId": "a4J5w000001Z3EmEAK",
          "ruleId": "a5L5w000003Tl7EEAS"
        }
      }
    ]
  },
  "transitionSuccess": true,
  "stateTransit": " updated ClaimStatus__c from Open to Closed",
  "canTransitState": true,
  "allFalse": false
}
 
正在加载
Salesforce Help | Article