breadcrumbDescription
InsClaimCoverageService:invokeProductRules
Brug denne tjeneste, når du opretter skadesdækninger for at kalde produktregler for tilstandsovergange.
Kategori: InsClaimCoverageService
Sådan fungerer det
-
Finder kravsobjektet baseret på
objectIDog udtrækker produkterne for det pågældende objekt baseret på det pågældendeobjectID. -
Søger efter den angivne
transitionName. -
Kører de regler, der er tilknyttet produktet og gælder for
transitionName.Evaluerer hver involveret partsforekomst og/eller involveret ejendomsforekomst separat for hver produktregel for skadesdækning.
-
Hvis nogen af reglerne evalueres til sand, udfører tjenesten den Vlocity-handling, der er angivet i disse regler.
-
Søger efter værdien af
includeStateTransition. Hvis værdien =true, søger tjenesten efter tilstandsmodellen for dette objekt, finderfieldAPIName-værdien og ændrer denne værdi baseret på overgangen. -
Viser resultaterne af evalueringen for hver regel på hver involveret part og/eller involveret egenskab-forekomst.
Fjernindstillinger
Indstilling |
Beskrivelse |
|---|---|
|
Hvis sand, ændrer tjenesten det tilstandsfelt, der er angivet i tilstandsmodellens Hvis falsk, foretager tjenesten ikke nogen tilstandsovergang. |
|
Hvis den er indstillet til |
|
Skades-id, der skal forespørges på. |
|
Navnet på den statstransition, der er knyttet til de regler, du vil køre. Tjenesten kører kun regler, der er tilknyttet de Hvis du vil finde et overgangsnavn, skal du gå til tilstandsmodellen for dette objekt. |
Output JSON
Tjenesten returnerer regelvalueringen for hver forekomst af en involveret egenskab og/eller involveret part.
Her er strukturen af output-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.>
}Her er et eksempel på en output-JSON med regler, der er evalueret til false, og regler, der er evalueret til 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
}
