Du är här:
InsClaimCoverageService:invokeProductRules
Använd denna tjänst när du skapar anspråkstäckningar för att åberopa produktregler för delstatsövergångar.
Klass: InsClaimCoverageService
Så här fungerar det
-
Hittar anspråksobjektet baserat på
objectIDoch extraherar produkterna för det objektet baserat på detobjectID. -
Letar efter den specificerade
transitionName. -
Kör reglerna som är associerade med produkten och gäller för
transitionName.Utvärderar varje instans av Inblandad part och/eller Inblandad egenskap separat för varje produktregel för anspråkstäckning.
-
Om någon av reglerna utvärderas till sant utför tjänsten åtgärden Vlocity som specificeras i dessa regler.
-
Leta efter värdet för alternativet
includeStateTransition. Om värdet =trueletar tjänsten efter statusmodellen för detta objekt, hittarfieldAPINameoch ändrar detta värde baserat på övergången. -
Matar ut resultaten av utvärderingen för varje regel för varje instans av Inblandad part och/eller Inblandad egenskap.
Fjärralternativ
Alternativ |
Beskrivning |
|---|---|
|
Om sant ändrar tjänsten det lägesfält som specificeras i lägesmodellens Om det är falskt utför tjänsten ingen statusövergång. |
|
Om satt till |
|
Anspråks-ID som ska frågas. |
|
Namnet på delstatsövergången som är associerad med de regler du vill köra. Tjänsten kör endast regler som är associerade med den För att hitta ett övergångsnamn, gå till lägesmodellen för detta objekt. |
JSON för utdata
Tjänsten returnerar regelutvärderingen för varje instans av en involverad egenskap och/eller involverad part.
Här är strukturen för JSON för utdata:
{
"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.>
}Här är ett exempel på en JSON för utdata med regler som har utvärderats till falskt och regler som har utvärderats till sant:
{
"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
}
