Vous êtes ici :
InsClaimService:invokeProductRules
Utilisez ce service dans des flux de réclamation pour invoquer les règles de souscription que vous avez ajoutées à un produit.
Par exemple, si vous avez ajouté des règles qui envoient les réclamations supérieures à un montant donné à un assureur pour approbation, ce service invoque ces règles.
Fonctionnement
- Le service recherche l'objet réclamation sur la base de la
objectIDet extrait les produits de cet objet sur la base de cetteobjectID. - Recherche la
transitionNamespécifiée. - Exécute les règles associées au produit et applicables au
transitionName.Évalue chaque instance Partie impliquée et/ou Propriété impliquée séparément pour chaque règle de produit de réclamation.
- Si l'une des règles est évaluée à true, le service exécute l'action Vlocity spécifiée dans ces règles.
Par exemple, si l'action spécifie qu'une tâche doit être créée, le service crée une tâche.
- Recherche la valeur de l'option
includeStateTransition. Si la valeur =true, le service recherche le modèle d'état de cet objet, recherche la valeurfieldAPINameet change cette valeur en fonction de la transition. - Renvoie les résultats de l'évaluation de chaque règle dans chaque instance Partie impliquée et/ou Propriété impliquée.
Options distantes
Option |
Description |
|---|---|
|
Si true, le service change le champ d'état spécifié dans la Si false, le service n'effectue aucune transition d'état. |
|
L'ID de réclamation ou l'ID de couverture de réclamation à interroger. |
|
Le nom de la transition d'état associé aux règles que vous souhaitez exécuter. Le service exécute uniquement les règles associées aux Pour trouver un Nom de transition, accédez au modèle d'état de cet objet. |
|
Si
Si |
|
Facultatif. L'état vers lequel le service passe lorsque toutes les règles exécutées par le service sont évaluées sur false. Le service passe l'objet à cet état uniquement si |
JSON de sortie
Le service renvoie l'évaluation de la règle pour chaque instance d'un bien impliqué et/ou d'une partie impliquée.
Pour cet exemple, les entrées sont les suivantes :
-
objectId = claimId
-
transitionName = nom de la transition de la règle
{
"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"
}
}
]
}
}
Ce JSON inclut les paires clé/valeur suivantes :
Clé |
Valeur |
|---|---|
|
Décrit ce que le service a changé dans le champ Statut de l'objet Déclaration. |
|
Indique si le service passe ou non l'objet à un nouvel état. |
|
Si toutes les règles exécutées par le service renvoient false, Si l'une des règles exécutées par le service renvoie true, |
|
Un groupe d'un ou plusieurs Inclut toutes les règles exécutées par le service qui évaluent à false. |
|
Un groupe d'un ou plusieurs Inclut toutes les règles exécutées par le service qui évaluent à true. Affiché uniquement si |
|
Toute erreur rencontrée par le service. Si la valeur est ok, aucun message d'erreur n'est affiché dans l'interface utilisateur. |
Les tableaux falseRules et trueRules contiennent tous deux des paires clé/valeur 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"
}Le tableau de trueRules comprend une ou plusieurs actionResults, des paires clé/valeur supplémentaires et des rulesDetails.
Les actionResults sont la sortie de la classe d'action et de la méthode d'action Vlocity invoquées par le service.
"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"
}
}
]
}