Ti trovi qui:
InsProductService: runRules
Utilizzare questo servizio per eseguire regole su un prodotto senza assegnare nuovamente un prezzo a quel prodotto.
Metodo: runRules
Funzionamento
-
Il servizio cerca la chiave
selectedProductnel JSON di input. -
Esegue le regole sul nodo
selectedProduct.Gli insiemi di regole eseguiti dipendono dalle opzioni remote impostate su true.
-
Restituisce il JSON con i risultati delle regole aggiunti al nodo
selectedProduct.
Opzioni remote
Opzione |
Descrizione |
|---|---|
|
Per impostazione predefinita, Se true, service esegue le regole di valore dell'insieme di attributi. |
|
Per impostazione predefinita, Quando questa opzione è impostata su |
|
Quando è impostato su true, esegue le regole di copertura selezionate predefinite per il prodotto selezionato. |
|
Se impostato su true, esegue le regole di idoneità per il prodotto selezionato. Se le regole restituiscono |
|
Quando è impostato su true, esegue regole di copertura obbligatorie per la copertura facoltativa. |
|
Il valore predefinito è false. Quando questa opzione è impostata su Il servizio aggiunge un nodo messaggio al record copertura facoltativo interessato se la regola restituisce false. |
Input JSON
Questo servizio cerca un oggetto prodotto nella chiave selectedProduct nel suo JSON di input. Questo oggetto può essere creato da altri servizi come getRatedProducts. Include il prodotto radice, i prodotti secondari e i prodotti secondari.
Questo esempio contiene un solo nodo di input prima che il servizio esegua le regole.
"Name": "Accidental Death",
"Description": "An accidental death benefit rider also known as a double indemnity clause provides a higher death benefit to the beneficiaries of the policy in case the insured dies because of an accident. The death benefit is generally a multiple of the face value of the base coverage.",
"Family": "Individual Life",
"ProductCode": "ADDCOV",
"LineOfBusiness__c": "Individual Health",
"Type__c": "Coverages",
"IsRecommended__c": false,
"PricingSource__c": "premiumADD",
"RecordTypeName__c": "CoverageSpec",
"IsConfigurable__c": true,
"productId": "01t1U000000OEamQAG",
"pciId": "a2w1U0000001G4YQAU",
"selectValidationCriteria": "[{\"expression\":\"WOP.isSelected == true\",\"code\":\"code_0\"}]",
"selectValidationMessage": "[{\"message\":\"WOP must be true\",\"severity\":\"INFO\",\"code\":\"code_0\"}]",
"isOptional": true,
"isSelected": true,
"parentInstanceKey": "Jack Kirkland",
"Price": 358,
"pathFromRoot": "[0].childProducts.records[2].childProducts.records[2]",
"formattedParentInstanceKey": "jack-kirkland",
"parentProductName": "Jack Kirkland",
"originalIndex": 2,
"numberCategories": 18,
"numberAttributes": 18,
"popoverOpen": false,
"isOriginalOptional": true,
"isAddedOptional": true,
"showTypeHeader": true,
"displaySequence": 1
Alternativa preTransformBundle
In alternativa, è possibile definire una trasformazione Omnistudio Data Mapper che mappa i dati passati nel JSON di input nel modulo necessario al servizio. Il JSON di output di questo Data Mapper è il nodo selectedProducts richiesto da runRules. Quando si aggiunge questo servizio a un OmniScript, impostare preTransformBundle sul nome del Data Mapper per fare in modo che il servizio utilizzi il Data Mapper.
JSON di output
Il servizio restituisce la stessa struttura JSON del nodo selectedProduct con i risultati delle regole eseguite. Vedere Modello struttura JSON del prodotto per informazioni dettagliate sui contenuti e la struttura di questo oggetto.
Questo esempio contiene un solo nodo di output dopo che il servizio ha eseguito le regole con i risultati delle regole.
"messages": [
{
"code": "code_0",
"severity": "INFO",
"message": "WOP must be true"
}
],
"displaySequence": 1,
"lastNonOptional": true,
"firstOptional": true,
"Id": "01t1U000000OEamQAG",
"Name": "Accidental Death",
"Description": "An accidental death benefit rider also known as a double indemnity clause provides a higher death benefit to the beneficiaries of the policy in case the insured dies because of an accident. The death benefit is generally a multiple of the face value of the base coverage.",
"Family": "Individual Life",
"ProductCode": "ADDCOV",
"LineOfBusiness__c": "Individual Health",
"Type__c": "Coverages",
"IsRecommended__c": false,
"PricingSource__c": "premiumADD",
"RecordTypeName__c": "CoverageSpec",
"IsConfigurable__c": true,
"productId": "01t1U000000OEamQAG",
"pciId": "a2w1U0000001G4YQAU",
"selectValidationCriteria": "[{\"expression\":\"WOP.isSelected == true\",\"code\":\"code_0\"}]",
"selectValidationMessage": "[{\"message\":\"WOP must be true\",\"severity\":\"INFO\",\"code\":\"code_0\"}]",
"isOptional": true,
"isSelected": true,
"parentInstanceKey": "Jack Kirkland",
"Price": 358,
"pathFromRoot": "[0].childProducts.records[2].childProducts.records[2]",
"formattedParentInstanceKey": "jack-kirkland",
"parentProductName": "Jack Kirkland",
"originalIndex": 2,
"numberCategories": 18,
"numberAttributes": 18,
"popoverOpen": false,
"isOriginalOptional": true,
"isAddedOptional": true,
"showTypeHeader": true, 