Loading
Forsikring
InsClaimCoverageService:invokeProductRules

InsClaimCoverageService:invokeProductRules

Brug denne tjeneste, når du opretter skadesdækninger for at kalde produktregler for tilstandsovergange.

Kategori: InsClaimCoverageService

Metode: invokeProductRules

Sådan fungerer det

  1. Finder kravsobjektet baseret på objectID og udtrækker produkterne for det pågældende objekt baseret på det pågældende objectID.

  2. Søger efter den angivne transitionName.

  3. 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.

  4. Hvis nogen af reglerne evalueres til sand, udfører tjenesten den Vlocity-handling, der er angivet i disse regler.

  5. Søger efter værdien af includeStateTransition. Hvis værdien = true, søger tjenesten efter tilstandsmodellen for dette objekt, finder fieldAPIName-værdien og ændrer denne værdi baseret på overgangen.

  6. Viser resultaterne af evalueringen for hver regel på hver involveret part og/eller involveret egenskab-forekomst.

Fjernindstillinger

Indstilling

Beskrivelse

includeStateTransition

Hvis sand, ændrer tjenesten det tilstandsfelt, der er angivet i tilstandsmodellens fieldAPIName, til den tilstand, der er angivet i overgangen.

Hvis falsk, foretager tjenesten ikke nogen tilstandsovergang.

mode

Hvis den er indstillet til CoverageMode, køres kun InsuranceClaimCoverages__c-regler.

objectId

Skades-id, der skal forespørges på.

transitionName

Navnet på den statstransition, der er knyttet til de regler, du vil køre.

Tjenesten kører kun regler, der er tilknyttet de transitionName, du angiver.

Hvis du vil finde et overgangsnavn, skal du gå til tilstandsmodellen for dette objekt.

Input JSON

Denne tjeneste bruger ikke et input-JSON.

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
}
 
Indlæser
Salesforce Help | Article