Ti trovi qui:
InsProductService:repriceProduct
Utilizzare questo servizio per assegnare un prezzo a un prodotto utilizzando la procedura di valutazione associata a quel prodotto. Questo servizio viene in genere chiamato quando un utente seleziona un prodotto e ne personalizza la copertura.
Metodo: repriceProduct
Il servizio prende un oggetto prodotto nel suo JSON di input e restituisce il prodotto con il prezzo totale e la somma totale assicurata. Restituisce anche il JSON del risultato completo della procedura di valutazione.
Questo servizio funziona per uno o più assicurati (persone coperte dal prodotto della polizza) e uno o più articoli assicurati (più auto su una polizza auto, ad esempio).
Questo servizio non esegue le regole di copertura facoltative Idoneità, Obbligatorio e Predefinito quando si modifica un preventivo.
Funzionamento
-
Il servizio cerca nel JSON di input la chiave prodotto selezionata, quindi ne recupera il valore. Questo oggetto contiene un oggetto prodotto.
-
Utilizzando i dati del prodotto per cercare Salesforce, il servizio trova il prodotto e recupera la procedura di valutazione.
-
Il servizio valuta il prodotto con la struttura JSON del prodotto.
-
Il servizio restituisce gli oggetti prodotto con il prezzo totale e la somma totale assicurata. Il JSON di output include il JSON del risultato analizzato della procedura di valutazione come valore di
CalculatedPriceData. Il servizio imposta anche prezzo etotalSumInsuredse le formule sono impostate sul prodotto.
Opzioni remote
Opzione |
Descrizione |
|---|---|
|
Quando Ad esempio, un preventivo o una polizza di assicurazione auto ha più conducenti collegati a ogni auto assicurata. L'auto assicurata ha un |
|
Impostare questa opzione su Omettere questa opzione per i prodotti che non soddisfano tutti questi criteri. Per formattare i |
|
oppure %OmniScriptDataElement% Per impostazione predefinita, la data odierna. |
|
Se questa opzione = |
|
Nome del Data Mapper Omnistudio utilizzato da questo servizio per recuperare le informazioni sulle policy (asset). Se si utilizza Salesforce FSC, è necessario specificare questa opzione o |
|
Nome della classe personalizzata utilizzata da questo servizio per recuperare le informazioni sulla policy (asset). Se si utilizza Salesforce FSC, è necessario specificare questa opzione o |
|
Stringa di coppie chiave/valore separate da virgole che il servizio trasmette all'interno e all'esterno della procedura di calcolo. Queste coppie chiave/valore sono incluse nell'oggetto prodotto di output all'interno dell'oggetto Solo le chiavi di input utilizzate dalla procedura di calcolo hanno un valore nei risultati. |
|
Per impostazione predefinita, Include tutti i risultati della procedura di calcolo nella chiave |
|
Impostare su |
|
Facoltativo
Impostare su Se si utilizza Salesforce FSC e si imposta questa opzione su |
|
Elenco stringato di ID Utilizzato in combinazione con l'opzione Calcola solo le imposte e le spese associate alle giurisdizioni specificate. |
taxAndFeeEffectiveDate
|
Data di validità utilizzata da questo servizio per calcolare le imposte e le spese. Questa opzione è separata dall'opzione Se viene fornito un valore, il servizio lo utilizza. Se non viene fornito un valore e il JSON del prodotto non è una policy, il servizio viene impostato automaticamente sulla data odierna. Se il valore non viene fornito e il JSON del prodotto è una policy, il servizio utilizza la data di validità della versione della policy originale. |
withTaxFeeRounding
|
Facoltativo Se true, gli importi calcolati delle imposte e delle spese vengono arrotondati alla seconda cifra decimale utilizzando il metodo di arrotondamento alla metà. La Il valore predefinito è false. |
Input JSON
InsProductService: repriceProduct cerca un oggetto prodotto nella chiave selectedProduct nel suo JSON di input. Questo oggetto contiene gli input necessari per la procedura di valutazione come mappato negli attributi del prodotto, incluse le specifiche di copertura associate, le specifiche dell'articolo assicurato, le specifiche dell'assicurato e le specifiche Fatto della valutazione. Questo oggetto può essere creato da altri servizi come getRatedProducts. Include il prodotto radice, i prodotti secondari e i prodotti secondari. Il servizio analizza la struttura del prodotto e passa i dati all'insieme di espressioni o alla procedura di calcolo. Se gli attributi mappati per la valutazione non sono inclusi nell'oggetto, il servizio utilizza le impostazioni predefinite impostate dall'amministratore del prodotto.
Questo servizio cerca anche una chiave userInputs nel JSON di input, in modo da trovare tutti i fattori di valutazione non inclusi nel nodo selectedProduct. Utilizzare il formato di userInputs appropriato a seconda della definizione del prodotto e della configurazione di valutazione. Il servizio accetta un solo tipo di formato di userInputs alla volta.
JSON di output
Il servizio restituisce la stessa struttura JSON del nodo selectedProduct con informazioni aggiornate sui prezzi. Vedere Modello struttura JSON del prodotto per informazioni dettagliate sui contenuti e la struttura di questo oggetto.
Se si utilizzano i servizi di imposte e commissioni, l'output JSON viene mantenuto nel record JSON, in modo simile al modo in cui getRatedProducts scrive nel JSON.
Per ogni prodotto, il JSON di output del calcolo della procedura di valutazione viene aggiunto al prodotto con la chiave CaculatedPriceData. Se la formula prezzi è impostata sul prodotto, il valore di price viene impostato sul valore calcolato. Se sul prodotto è impostata la formula totale assicurata, il valore di TotalInsured viene impostato sul valore calcolato.
La struttura in CalculatedPriceData include il supporto dell'istanza. Le metriche dei prezzi sono raggruppate a livello di istanza.
Il JSON di output include un nodo priceDiff a livello di radice che somma i prezzi a livello di istanza. Include anche il campo totalPremiumForTermDiff al livello principale. Questo valore è la differenza tra il premio totale originale per la durata e la somma tra il premio totale per la durata della nuova versione della polizza e il premio aggiornato per la durata della vecchia versione della polizza.
In questo esempio, la formula prezzi è impostata sul prodotto, ma la formula totale assicurata non lo è. Il servizio aggiunge il CalculatedPriceData ai risultati della procedura di valutazione. Il servizio calcola il prezzo in base alla formula. La formula totale assicurata non è impostata sul prodotto e non viene visualizzata nei dati (nemmeno TotalInsured).
"totalSize": null,
"records": [{
"displaySequence": -1,
"rootProductId": "01t1I000002fuBoQAI",
"rootProductCode": "AUTOROOT",
"timestamp": 1533948385704,
"hasInstanceKeys": true,
"childProductsCount": 8,
"instanceKeyChildren": 2,
"pathFromChild": "[0]",
"pathFromRoot": "[0]",
"Price": 80,
"productId": "01t1I000002fuBoQAI",
"Term__c": "Semi-Annual",
"PricingFormula__c": "SUM(AutoPremium__autoPremium + rentalTotal + medicalTotal + roadsideTotal + dedWaiverTotal + uninsuredMotoristPDTotal + uninsuredMotoristBITotal)",
"IsConfigurable__c": true,
"RecordTypeName__c": "Product",
"IsRecommended__c": false,
"ProductCode": "AUTOROOT",
"Name": "Auto Root",
"Id": "01t1I000002fuBoQAI",
"RawPriceData": [{
"calculationResults": [{
"DRIVER.LN": null,
"DRIVER.FN": null,
"AUTO.instanceKey": "2015 Lexus LX250",
"uninsuredMotoristBITotal": 100,
"uninsuredMotoristPDTotal": 0,
"dedWaiverTotal": 10,
"roadsideTotal": 10,
"medicalTotal": 10,
"rentalTotal": 40,
"comprehensiveTotal": 500,
"ID": "0"
}],
"aggregationResults": {}
},
{
"calculationResults": [{
"DRIVER.LN": null,
"DRIVER.FN": null,
"AUTO.instanceKey": "2006 Honda Odyssey",
"uninsuredMotoristBITotal": 100,
"uninsuredMotoristPDTotal": 0,
"dedWaiverTotal": 10,
"roadsideTotal": 10,
"medicalTotal": 10,
"rentalTotal": 40,
"comprehensiveTotal": 500,
"ID": "1"
}],
"aggregationResults": {}
}
],
"CalculatedPriceData": {
"2015 Lexus LX250": {
"DRIVER.LN": null,
"DRIVER.FN": null,
"AUTO.instanceKey": "2015 Lexus LX250",
"uninsuredMotoristBITotal": 100,
"uninsuredMotoristPDTotal": 0,
"dedWaiverTotal": 10,
"roadsideTotal": 10,
"medicalTotal": 10,
"rentalTotal": 40,
"comprehensiveTotal": 500,
"ID": "0"
},
"2006 Honda Odyssey": {
"DRIVER.LN": null,
"DRIVER.FN": null,
"AUTO.instanceKey": "2006 Honda Odyssey",
"uninsuredMotoristBITotal": 100,
"uninsuredMotoristPDTotal": 0,
"dedWaiverTotal": 10,
"roadsideTotal": 10,
"medicalTotal": 10,
"rentalTotal": 40,
"comprehensiveTotal": 500,
"ID": "1"
}
},
"priceDiff": 0,
"totalPremiumForTermDiff": 0,
"attributeCategories": {
"totalSize": 1,
"records": [{
"displaySequence": 5,
"id": "a1V1I0000007xJSUAY",
"Name": "Alan Health Attributes",
"Code__c": "AHA",
"productAttributes": {
"totalSize": 1,
"records": [{
"code": "ALANDEDUCTIBLE",
"dataType": "text",
"inputType": "text",
"required": false,
"readonly": false,
"disabled": false,
"filterable": true,
"attributeId": "a1W1I000000Bu1jUAC",
"label": "Deductible",
"displaySequence": 2,
"hasRules": false,
"hidden": false,
"values": [{
"readonly": false,
"disabled": false
}],
"userValues": "test",
"parentProductId": "01t1I000002fuBoQAI",
"parentProductCode": "AUTOROOT",
"pathFromChild": "attributeCategories.records[0].productAttributes.records[0]",
"pathFromRoot": "attributeCategories.records[0].productAttributes.records[0]"
}]
}
}]
},
"childProducts": {
...
}- Una procedura di valutazione per prodotto per repriceProduct
Formattare iInsProductService:repriceProduct userInputsper i prodotti che utilizzano una singola procedura di valutazione per prodotto radice. - Più procedure di valutazione per prodotto o più specifiche a qualsiasi livello per repriceProduct
Formattare iInsProductService:repriceProduct userInputsper i prodotti che utilizzano più procedure di valutazione nella gerarchia dei prodotti o più specifiche controllate in qualsiasi livello della gerarchia.
