Vous êtes ici :
InsProductAsyncRatingService:fetchProductsPrice
Utilisez ce service pour récupérer les résultats d'évaluation asynchrone.
Classe: InsProductAsyncRatingService
Méthode : fetchProductsPrice
Ce service est conçu pour les cas d'utilisation de devis de grand groupe d'avantages sociaux collectifs.
Fonctionnement
- Ce service prend l'ID d'une demande de tarification d'assurance en entrée.
- Le service interroge la demande d'évaluation stockée et récupère des informations, notamment le statut, les ID de produit évalués, les options d'évaluation, les entrées d'évaluation et les sorties d'évaluation.Remarque Les prix des produits évalués sont fournis par le service uniquement si le statut de la demande d'évaluation est Terminé ou Évalué.
- Le service calcule les prix totaux de chaque produit racine en fonction des résultats de tarification.
- Si l'option de
includeProductJsonest définie surfalse, une carte de prix de tous les produits évalués est renvoyée. Si l'optionincludeProductJsonest définie surtrue, un JSON produit est renvoyé.
Entrées
| Entrée | Description |
|---|---|
requestId
|
Obligatoire. L'ID de la demande de tarification d'assurance. Cet ID est généré au démarrage du processus de tarification asynchrone. |
Options distantes
| Option | Description |
|---|---|
includeMemberPrices
|
Indique si les prix au niveau du membre doivent être inclus dans la sortie. La valeur par défaut est |
includeProductJson
|
Indique si le JSON du produit doit être inclus dans la réponse. La valeur par défaut est Lorsque cette option est |
includeRawCalculationResult
|
Indique si le résultat du calcul brut doit être inclus dans la réponse. La valeur par défaut est Cette option est valide uniquement lorsque |
JSON d'entrée
Voici l'exemple de JSON d'entrée :
{
"requestId": "8zkRO000000004D",
}Options JSON
Voici les exemples de JSON d'options :
{
"includeProductJson": false,
"includeRawCalculationResult": false,
"includeMemberPrices": false
}JSON de sortie
Voici l'exemple de JSON de sortie :
{
"productPriceMap": {
"parsedCalcData": {
"01t8c00000PLIiEAAX": {
"01t8c00000PLIiEAAX": {
"MedicalCalcMatrixAgeBased__QuotePremium":1020.0
}
},
"01t8c00000P49yeAAB":{
"01t8c00000P49yeAAB": {
"DentalPremiumCalcMatrixAgeBased__QuotePremium":325.0
}
}
}
},
"Status":"Completed"
}JSON de sortie avec JSON de produit
Voici l'exemple de JSON de sortie avec le JSON du produit :
{
"result": {
"totalSize": 2,
"records": [
{
"nameResult": {
"childProducts": {},
"attributeCategories": {}
},
"fields": {
"Price": 325.0,
"currencySymbol": "$",
"currencyCode": "USD",
"productId": "01t8c00000P49yeAAB",
"ParentClassCode__c": null,
"ParentClassId__c": null,
"TotalInsuredFormula__c": null,
"Term__c": null,
"PricingFormula__c": "aggTotalPrem",
"IsConfigurable__c": true,
"RecordTypeName__c": "Product",
"PricingSource__c": null,
"ImageId__c": null,
"Tier__c": null,
"IsRecommended__c": false,
"RateBandId__c": null,
"SubType__c": null,
"Type__c": null,
"MarketSegment__c": null,
"LineOfBusiness__c": "Group Benefits",
"ProductCode": "dentalPremium",
"Family": null,
"Description": null,
"Name": "dentalPremium",
"Id": "01t8c00000P49yeAAB",
"CalculatedPriceData": {
"aggTotalPrem": 325.0,
"DentalPremiumCalcMatrixAgeBased__QuotePremium": 325.0
}
},
"displaySequence": -1
},
{
"nameResult": {
"childProducts": {},
"attributeCategories": {}
},
"fields": {
"Price": 1020.0,
"currencySymbol": "$",
"currencyCode": "USD",
"productId": "01t8c00000PLIiEAAX",
"ParentClassCode__c": null,
"ParentClassId__c": null,
"TotalInsuredFormula__c": null,
"Term__c": null,
"PricingFormula__c": "aggTotalPrem",
"IsConfigurable__c": true,
"RecordTypeName__c": "Product",
"PricingSource__c": null,
"ImageId__c": null,
"Tier__c": null,
"IsRecommended__c": false,
"RateBandId__c": null,
"SubType__c": null,
"Type__c": "Medical",
"MarketSegment__c": null,
"LineOfBusiness__c": "Group Benefits",
"ProductCode": "MEDICAL",
"Family": null,
"Description": null,
"Name": "Medical",
"Id": "01t8c00000PLIiEAAX",
"CalculatedPriceData": {
"aggTotalPrem": 325.0,
"MedicalCalcMatrixAgeBased__QuotePremium": 325.0
}
},
"displaySequence": -1
}
]
},
"Status": "Completed"
}