Vous êtes ici :
InsProductService:getRatedGroupProducts
Ce service est utilisé uniquement avec des produits de petit groupe qui utilisent un recensement. Le service permet de conserver les produits avec le service produit.
Vous pouvez utiliser ce service de deux façons différentes, selon l'utilisation des options accountId, censusId et userInput. Voici quelques concepts importants que vous devez garder à l'esprit :
-
Vous pouvez utiliser accountId ou censusId, ou les deux, pour extraire un recensement ;
-
Si vous utilisez un accountId et qu'aucun censusId n'est spécifié, le recensement système est utilisé, où le statut est Actif et le type de recensement est Groupe ;
-
Si vous utilisez un censusId, il remplace tout recensement associé au accountId ;
-
userInputs de la carte d'entrée sera prise, mais si la carte d'entrée ne contient pas userInputs, le service les générera à partir des membres du recensement;
-
Vous pouvez toutefois utiliser userInputs du service getRatedProducts si nécessaire.
getRatedProducts contient les entrées requises par la procédure de tarification, telles que mappées dans les attributs du produit, y compris ses spécifications de couverture associées, les spécifications d'articles assurés, les spécifications de partie assurée et les spécifications de fait de tarification.
Fonctionnement
-
Le service reçoit le recensement de groupe actif, fourni via
censusId. Alternativement, vous pouvez transmettre le service unaccountIdet le service utilise leaccountIdpour obtenir un recensement de type Système.Alternativement, il peut prendre
userInputs, si aucun censusId ou accountId n'est fourni.Si vous fournissez à la fois
userInputsetcensusIdouaccountId, le service fusionne leuserInputsavec lesuserInputsgénérés à partir du recensement du groupe si l'option distantemergeUserInputsest définie sur true (par défaut = false). -
Récupère le type Notation du compte et accepte le Type de produit en tant que filtre d'entrée.
-
Appelle
getRatedProductpour la tarification et renvoie des plans. Le nombre de plans renvoyés par page est basé sur l'option depageSize(décrite ci-dessous). -
Extrait le
employerContributiondu recensement, puis utilise le prix degetRatedProductpour calculer la contribution de l'employeur à chaque produit. -
Place un nœud dans la racine JSON pour
EmployerContribution.
Options distantes
Toutes les options distantes utilisées dans le service getRatedProducts peuvent également être utilisées ici.
Option |
Description |
|---|---|
|
Facultatif. ID de compte. Doit utiliser this ou censusId. |
|
Facultatif. ID de recensement. Doit utiliser this ou accountId. |
|
Médical, Dentaire, Vision ou Vie. Filtres au-dessus de l'entrée par Product.Type, GroupClass.Type, GroupClassContribution.ProductCategory |
|
Booléen. Si true, la
|
|
Booléen. Si true, |
|
Définissez cette option sur true uniquement si vous définissez également |
|
Si |
|
Valeur de chaîne, Généralement, si la taille du recensement est inférieure ou égale à 20 ans, utilisez Âge. Transmettre à la procédure d'intégration et accédé via |
|
Nombre de plans à charger par page OmniScript. Important
Il est vivement recommandé de définir cette valeur sur 9 pour éviter tout problème de chargement. |
Définissez sur |
|
|
Par défaut = Fusionne les Pour plus d'informations, consultez JSON d'entrée ci-dessous. |
JSON d'entrée
Ce service n'utilise pas de JSON d'entrée.
Vous pouvez également fournir des nœuds de userInputs ici, par exemple si vous utilisez l'option distante mergeUserInputs. Dans ce cas, une clé d'instance unique doit être définie dans le userInput et dans l'enregistrement du membre du recensement (elle doit être la même clé) afin que le service puisse mapper chaque userInput avec chaque enregistrement du membre du recensement. (Il est recommandé d'utiliser l'ID de membre du recensement comme clé d'instance).
"userInputs": [
{
"SG-Census-RF.SG_CM_Calculate": "true",
"SG-Census-RF.SG_CM_Age": 48,
"SG-Census-RF.Id": "a57g00000009i0wAAA",
"SG-Census-RF.SG_CM_Zip": "48005",
"SG-Census-RF.instanceKey": "a57g00000009i0wAAA"
},
{
"SG-Census-RF.SG_CM_Calculate": "true",
"SG-Census-RF.SG_CM_Age": 32,
"SG-Census-RF.Id": "a57g00000009i0rAAA",
"SG-Census-RF.SG_CM_Zip": "48005",
"SG-Census-RF.instanceKey": "a57g00000009i0rAAA"
}
]
}Vous devez également remplir le CensusMember.AttributeSelectedValue__c du champ Membre du recensement avec un JSON similaire, avec la même clé d'instance :
{
"SG_empOnlyCount": "",
"SG_empSpouseCount": "",
"SG_empChildCount": "",
"SG_empFamilyCount": "",
"SG_CM_MemberClass": null,
"SG_CM_Age": 48,
"SG_CM_State": null,
"SG_CM_Gender": null,
"SG_CM_Smoker": false,
"SG_CM_IsPrimary": false,
"SG_CM_IsSpouse": false,
"SG_CM_DOB": null,
"SG_CM_Relationship": null,
"SG_CM_Zip": null,
"Id": null,
"SG_CM_MemberType": null,
"SG_CM_Calculate": true,
"instanceKey":”a57g00000009i0wAAA”
}JSON de sortie
Le service renvoie des employerContributions basées sur la productId. Les résultats sont mis en forme conformément à l'objet JSONResult.
-
Si le type de contribution est Montant, seul l'attribut
contributionAmountest renvoyé -
Si le type de contribution est Pourcentage,
contributionPercentest renvoyé -
Si le Prix du produit est disponible, le
contributionAmountcalculé est renvoyé
{
"employerContributions": {
"01tf4000002U25LAAS": [
{
"contributionAmount": 363.999,
"contributionPercent": 30,
"Member.Id": "a3ef4000000mPIaAAM"
},
{
"contributionAmount": 363.999,
"contributionPercent": 30,
"Member.Id": "a3ef4000000mPIbAAM"
}
],
"01tf4000002U25KAAS": [
{
"contributionAmount": 100,
"Member.Id": "a3ef4000000mPIaAAM"
},
{
"contributionAmount": 100,
"Member.Id": "a3ef4000000mPIbAAM"
}
]
},
"result": {
"totalSize": 2,
"records": [
{
"uiStates": {},
"nameResult": {
"childProducts": {
"totalSize": 2,
"records": [
{
"uiStates": {},
"nameResult": {},
"messages": [],
"fields": {
"pciId": "a2mf4000000lTZiAAM",
"productId": "01tf4000002U25MAAS",
"TotalInsuredFormula__c": null,
"Term__c": "Annual",
"PricingFormula__c": null,
"IsConfigurable__c": false,
"RecordTypeName__c": "RatingFactSpec",
"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": null,
"ProductCode": "RF0",
"Family": null,
"Description": null,
"Name": "censusRatingFact",
"Id": "01tf4000002U25MAAS"
},
"displaySequence": 1,
"actions": {}
},
{
"uiStates": {},
"nameResult": {},
"messages": [],
"fields": {
"pciId": "a2mf4000000lTZjAAM",
"productId": "01tf4000002U25NAAS",
"TotalInsuredFormula__c": null,
"Term__c": "Annual",
"PricingFormula__c": null,
"IsConfigurable__c": false,
"RecordTypeName__c": "RatingFactSpec",
"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": null,
"ProductCode": "RF1",
"Family": null,
"Description": null,
"Name": "censusMemRatingFact",
"Id": "01tf4000002U25NAAS"
},
"displaySequence": 2,
"actions": {}
}
],
"name": null,
"messages": [],
"description": null,
"data": {
"totalSize": null,
"messages": [],
"dataMap": {},
"actions": {}
},
"actions": {}
}
},
"messages": [],
"fields": {
"Price": "",
"productId": "01tf4000002U25KAAS",
"TotalInsuredFormula__c": null,
"Term__c": null,
"PricingFormula__c": null,
"IsConfigurable__c": false,
"RecordTypeName__c": "Product",
"PricingSource__c": "AggOutput",
"ImageId__c": null,
"Tier__c": null,
"IsRecommended__c": false,
"RateBandId__c": null,
"SubType__c": null,
"Type__c": "Medical",
"MarketSegment__c": null,
"LineOfBusiness__c": null,
"ProductCode": "rootProd",
"Family": null,
"Description": null,
"Name": "rootProd",
"Id": "01tf4000002U25KAAS",
"RawPriceData": [
{
"calculationResults": [
{
"ProcedureOutput": 1000,
"TheMatrix__Premium": "100",
"TheMatrix__PremiumRBSelf": "90",
"TheMatrix__PremiumRBSpouse": "110",
"ID": "0"
},
{
"ProcedureOutput": 1500,
"TheMatrix__Premium": "150",
"TheMatrix__PremiumRBSelf": "140",
"TheMatrix__PremiumRBSpouse": "160",
"ID": "1"
},
{
"ProcedureOutput": 2000,
"TheMatrix__Premium": "200",
"TheMatrix__PremiumRBSelf": "190",
"TheMatrix__PremiumRBSpouse": "210",
"ID": "2"
},
{
"ProcedureOutput": 1300,
"TheMatrix__Premium": "130",
"TheMatrix__PremiumRBSelf": "120",
"TheMatrix__PremiumRBSpouse": "240",
"ID": "3"
},
{
"ProcedureOutput": 2000,
"TheMatrix__Premium": "200",
"TheMatrix__PremiumRBSelf": "190",
"TheMatrix__PremiumRBSpouse": "210",
"ID": "4"
},
{
"ProcedureOutput": 1300,
"TheMatrix__Premium": "130",
"TheMatrix__PremiumRBSelf": "120",
"TheMatrix__PremiumRBSpouse": "240",
"ID": "5"
}
],
"aggregationResults": null
}
],
"CalculatedPriceData": {}
},
"displaySequence": -1,
"actions": {}
},
{
"uiStates": {},
"nameResult": {
"childProducts": {
"totalSize": 2,
"records": [
{
"uiStates": {},
"nameResult": {},
"messages": [],
"fields": {
"pciId": "a2mf4000000lTZkAAM",
"productId": "01tf4000002U25MAAS",
"TotalInsuredFormula__c": null,
"Term__c": "Annual",
"PricingFormula__c": null,
"IsConfigurable__c": false,
"RecordTypeName__c": "RatingFactSpec",
"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": null,
"ProductCode": "RF0",
"Family": null,
"Description": null,
"Name": "censusRatingFact",
"Id": "01tf4000002U25MAAS"
},
"displaySequence": 1,
"actions": {}
},
{
"uiStates": {},
"nameResult": {},
"messages": [],
"fields": {
"pciId": "a2mf4000000lTZlAAM",
"productId": "01tf4000002U25NAAS",
"TotalInsuredFormula__c": null,
"Term__c": "Annual",
"PricingFormula__c": null,
"IsConfigurable__c": false,
"RecordTypeName__c": "RatingFactSpec",
"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": null,
"ProductCode": "RF1",
"Family": null,
"Description": null,
"Name": "censusMemRatingFact",
"Id": "01tf4000002U25NAAS"
},
"displaySequence": 2,
"actions": {}
}
],
"name": null,
"messages": [],
"description": null,
"data": {
"totalSize": null,
"messages": [],
"dataMap": {},
"actions": {}
},
"actions": {}
}
},
"messages": [],
"fields": {
"Price": 1213.33,
"productId": "01tf4000002U25LAAS",
"TotalInsuredFormula__c": null,
"Term__c": null,
"PricingFormula__c": null,
"IsConfigurable__c": false,
"RecordTypeName__c": "Product",
"PricingSource__c": "AggOutput",
"ImageId__c": null,
"Tier__c": null,
"IsRecommended__c": false,
"RateBandId__c": "a4Gf4000000kocZEAQ",
"SubType__c": null,
"Type__c": "Dental",
"MarketSegment__c": null,
"LineOfBusiness__c": null,
"ProductCode": "rootProd2",
"Family": null,
"Description": null,
"Name": "rootProd2",
"Id": "01tf4000002U25LAAS",
"RawPriceData": [
{
"calculationResults": [
{
"ProcedureOutput": 800,
"TheMatrix__Premium": "100",
"TheMatrix__PremiumRBSelf": "90",
"TheMatrix__PremiumRBSpouse": "110",
"ID": "0"
},
{
"ProcedureOutput": 1200,
"TheMatrix__Premium": "150",
"TheMatrix__PremiumRBSelf": "140",
"TheMatrix__PremiumRBSpouse": "160",
"ID": "1"
},
{
"ProcedureOutput": 1600,
"TheMatrix__Premium": "200",
"TheMatrix__PremiumRBSelf": "190",
"TheMatrix__PremiumRBSpouse": "210",
"ID": "2"
},
{
"ProcedureOutput": 1040,
"TheMatrix__Premium": "130",
"TheMatrix__PremiumRBSelf": "120",
"TheMatrix__PremiumRBSpouse": "240",
"ID": "3"
},
{
"ProcedureOutput": 1600,
"TheMatrix__Premium": "200",
"TheMatrix__PremiumRBSelf": "190",
"TheMatrix__PremiumRBSpouse": "210",
"ID": "4"
},
{
"ProcedureOutput": 1040,
"TheMatrix__Premium": "130",
"TheMatrix__PremiumRBSelf": "120",
"TheMatrix__PremiumRBSpouse": "240",
"ID": "5"
}
],
"aggregationResults": {
"AggOutput": 1213.33
}
}
],
"CalculatedPriceData": {
"AggOutput": 1213.33
}
},
"displaySequence": -1,
"actions": {}
}
],
"name": null,
"messages": [],
"description": null,
"data": {
"totalSize": null,
"messages": [],
"dataMap": {},
"actions": {}
},
"actions": {}
}
}