Loading
保險
InsClaimCoverageService:invokeProductRules

InsClaimCoverageService:invokeProductRules

建立索賠涵蓋範圍以針對狀態轉換叫用產品規則時,請使用此服務。

類別:InsClaimCoverageService

方法:invokeProductRules

運作方式

  1. 根據該 objectID 尋找索賠物件,並根據該 objectID 提取該物件的產品。

  2. 尋找指定的 transitionName。

  3. 執行與產品相關聯且適用於該 transitionName 的規則。

    針對每個索賠涵蓋範圍產品規則,分別評估每個「參與對象」例項和/或「參與的內容」例項。

  4. 如果任何規則評估為 true,則服務會執行這些規則中指定的 Vlocity 動作。

  5. 尋找 includeStateTransition 選項的值。如果值 = true,則服務會尋找此物件的狀態模型、尋找 fieldAPIName 值,並根據轉換變更該值。

  6. 輸出每個「參與對象」和/或「參與內容」例項上每個規則的評估結果。

遠端選項

選項

描述

includeStateTransition

如果為 true,則服務會將狀態模式 fieldAPIName 中指定的狀態欄位變更為轉換中指定的狀態。

如果為 false,則服務不會執行任何狀態轉換。

mode

若設定為 CoverageMode,則僅執行 InsuranceClaimCoverages__c 規則。

objectId

要查詢的「索賠識別碼」。

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 的範例,其中包含已評估為 false 的規則和已評估為 true 的規則:

{
  "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