您位於此處:
InsClaimService:invokeProductRules
在索賠流程中使用此服務可叫用您已新增至產品的簽署規則。
例如,如果您新增的規則會將超過特定美元金額的索賠傳送給承包商進行批准,則此服務會叫用這些規則。
運作方式
- 服務會根據該
objectID尋找索賠物件,並根據該objectID提取該物件的產品。 - 尋找指定的
transitionName。 - 執行與產品相關聯且適用於該
transitionName的規則。針對每個索賠產品規則,分別評估每個「參與對象」例項和/或「參與的內容」例項。
- 如果任何規則評估為 true,則服務會執行這些規則中指定的 Vlocity 動作。
例如,如果動作指定要建立工作,則服務會建立工作。
- 尋找
includeStateTransition選項的值。如果值 =true,則服務會尋找此物件的狀態模型、尋找fieldAPIName值,並根據轉換變更該值。 - 輸出每個「參與對象」和/或「參與內容」例項上每個規則的評估結果。
遠端選項
選項 |
描述 |
|---|---|
|
如果為 true,則服務會將狀態模式 如果為 false,則服務不會執行任何狀態轉換。 |
|
要查詢的「索賠識別碼」或「索賠涵蓋範圍識別碼」。 |
|
與您要執行的規則相關聯的狀態轉換名稱。 服務只會執行與您指定的 若要尋找「轉換名稱」,請移至此物件的狀態模型。 |
|
如果
如果 |
|
選擇性。 服務所執行所有規則評估為 false 時,服務轉換物件的狀態。 只有在 |
輸出 JSON
服務會傳回「涉及的內容」和/或「涉及對象」之每個例項的規則評估。
針對此範例,輸入包括:
-
objectId = claimId
-
transitionName = 規則轉換名稱
{
"stateTransit": " updated ClaimStatus__c from Open to Closed",
"canTransitState": true,
"allFalse": false,
"falseRules": {
"Involved Property_a3lf4000000pcFUAAY": [
{
"ruleDetails": {
"instanceKey": "Involved Property_a3lf4000000pcFUAAY",
"involvedItemId": "a3lf4000000pcFUAAY",
"requirement name": "Maximum Aggregation Rule",
"conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
"message": "TestMessage",
"action method": "Product_Rule",
"action class": "IntegrationProcedureService",
"productId": "01tf4000004mGyhAAE",
"transitionName": "OpenToClosed",
"objectId": "a3qf4000000KtfKAAS"
}
}
],
"Involved Injury Cat Husky_a3kf4000000pLEuAAM": [
{
"ruleDetails": {
"instanceKey": "Involved Injury Cat Husky_a3kf4000000pLEuAAM",
"involvedItemId": "a3kf4000000pLEuAAM",
"requirement name": "Maximum Aggregation Rule",
"conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
"message": "TestMessage",
"action method": "Product_Rule",
"action class": "IntegrationProcedureService",
"productId": "01tf4000004mGyhAAE",
"transitionName": "OpenToClosed",
"objectId": "a3qf4000000KtfKAAS"
}
}
]
},
"trueRules": {
"Involved Injury Dog Husky_a3kf4000000pLEtAAM": [
{
"actionResults": {
"IPResult": {
"output": "TestOutput"
}
},
"ruleDetails": {
"instanceKey": "Involved Injury Dog Husky_a3kf4000000pLEtAAM",
"involvedItemId": "a3kf4000000pLEtAAM",
"requirement name": "Maximum Aggregation Rule",
"conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
"message": "TestMessage",
"action method": "Product_Rule",
"action class": "IntegrationProcedureService",
"productId": "01tf4000004mGyhAAE",
"transitionName": "OpenToClosed",
"objectId": "a3qf4000000KtfKAAS"
}
}
]
}
}
此 JSON 包含下列金鑰/值配對:
關鍵字 |
值 |
|---|---|
|
描述在索賠物件的「狀態」欄位中服務變更的內容。 |
|
告知服務是否將物件轉換為新狀態。 |
|
如果服務執行的所有規則都評估為 false,則 如果服務執行的任何規則評估為 true,則 |
|
一或多個 包含由服務所執行且評估為 false 的所有規則。 |
|
一或多個 包含評估為 true 之服務執行的所有規則。 只有在 |
|
服務遇到的任何錯誤。 如果值為 OK,則 UI 上不會顯示錯誤訊息。 |
falseRules 和 trueRules 陣列皆包含 ruleDetails 金鑰/值配對。
"ruleDetails": {
"instanceKey": "Involved Property_a3lf4000000pcFUAAY",
"involvedItemId": "a3lf4000000pcFUAAY",
"requirement name": "Maximum Aggregation Rule",
"conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
"message": "TestMessage",
"action method": "Product_Rule",
"action class": "IntegrationProcedureService",
"productId": "01tf4000004mGyhAAE",
"transitionName": "OpenToClosed",
"objectId": "a3qf4000000KtfKAAS"
}"ruleDetails": {
"requirement name": "Operator Points >4",
"conditions": "wcOperator.opPoints > 4",
"message": "The applicant's prior citations require underwriting review prior to issuance.",
"action method": "ReferToUnderwriting",
"action class": "DROpenImplementationClass",
"productId": "01tf4000001lKNQAA2",
"transitionName": "Submit>Underwrite",
"objectId": "0Q0f4000000ADatCAG"
}trueRules 陣列包含一或多個 actionResults、其他金鑰/值配對和 rulesDetails。
actionResults 是服務叫用的 Vlocity 動作類別和動作方法輸出。
"trueRules": {
"Involved Injury Dog Husky_a3kf4000000pLEtAAM": [
{
"actionResults": {
"IPResult": {
"output": "TestOutput"
}
},
"ruleDetails": {
"instanceKey": "Involved Injury Dog Husky_a3kf4000000pLEtAAM",
"involvedItemId": "a3kf4000000pLEtAAM",
"requirement name": "Maximum Aggregation Rule",
"conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
"message": "TestMessage",
"action method": "Product_Rule",
"action class": "IntegrationProcedureService",
"productId": "01tf4000004mGyhAAE",
"transitionName": "OpenToClosed",
"objectId": "a3qf4000000KtfKAAS"
}
}
]
}