詳細情報:
InsEnrollmentService:getRatedProducts
このサービスを使用して、特定の加入者とその扶養家族の対象商品のリストを返します。各商品のレート帯価格は、プランのレート種別が [Composite] の場合に表示されます。
仕組み
-
このサービスは、システムにログインしている登録者の
userIdまたはcontactIDとcontractId、および今日の日付を取得します。 -
サービスは加入者と扶養家族 (該当する場合) 情報を取得します。また、今日の日付で有効な契約 (今日が登録開始日と登録終了日の範囲内) も検出されます。
-
登録者の情報と契約に基づいて、サービスは登録者と扶養家族が登録できるすべての商品のリストを取得します。
-
サービスは検索条件オプションを使用して、使用可能な商品のリストをさらに絞り込みます。
-
各商品のレートが計算されます。評価プロセスは、計画レベルの評価種別設定または商品レベルで設定されたインテグレーション手順に基づきます。
-
評価種別が
Compositeに設定されている場合、レート帯域。情報は、契約品目レベルでPricingLogData__cからデータを解析するために使用されます。 -
評価種別が [
Age] に設定されている場合、価格は商品にリンクされている計算手順から計算されます。このサービスは、InsProductService.getRatedProductsでサポートされているすべてのリモートオプションをサポートします。詳細については、InsProductService:getRatedProducts を参照してください。
-
リモートオプション
オプション |
説明 |
|---|---|
|
デフォルトは今日の日付です。 サービスは、 |
|
API 参照名にはコロンを入力し、その後に値または変数を指定します。たとえば、OmniScript では、入力選択リストなどの要素の名前を変数にできます。 複数の検索条件パラメーターを指定する場合は、カンマで区切ります。 検索条件には、 |
|
デフォルトは 出力 JSON で、商品の配列と共に |
|
結果に値が含まれるのは、計算手順で使用される入力キーのみです。 |
|
デフォルトは 計算手順の結果全体を |
|
デフォルトは 同じ評価手順を使用する商品で評価手順コールをグループ化することで、評価コールを最適化します。入力オブジェクトの配列を使用して 1 つの評価コールを実行します。 これは、大量の商品リストを取り込む場合に役立ちます。複数の評価コールが SQL 制限に達する可能性があります。評価手順アーキテクチャは、入力オブジェクトの配列を処理し、必要な SQL クエリの数を最小限に抑えるように最適化されています。 集計ステップが含まれる計算手順はサポートされていません。 |
|
“ProductClassName1,ProductClassName2” 商品クラス名のカンマ区切りリスト。商品のリストを次の商品クラスに制限します。 |
|
IP の評価でスイッチとして使用されます。 |
Input JSON
censusIdが入力として使用される場合、サービスは次の入力 JSON を取ります (サンプル ID が表示されています)。
{"userId": "xxxx",
"contactId": "xxxx",
"contractId": "xxx"}このサービスは、国勢調査メンバーオブジェクト (具体的には [member.AttributeSelectedValue__c] フィールド) からuserInputsを取得します。これらの属性は、商品の予想される入力と一致する必要があります。
または、次の方法で独自の userInputs を定義することもできます。
"additionalInputs":
{
"stage": "Quote"
},
{"userId": "xxxx",
"contactId": "xxxx",
"contractId": "xxx",
"userInputs":
[
{"vBirthdate": "1969-09-20",
"FamilyTier": "Employee Only"}
]
} 出力 JSON
サービスは、商品 JSON 構造モデルを使用して、評価済み商品の配列を返します。これには、childProducts (存在する場合) に含まれる子補償範囲仕様が含まれます。各商品のすべてのレート帯の価格データも含まれます。
この例では、加入者の契約済みオプションによって 3 つの商品とそのレート帯層価格が返されます(「RateBandTierPriceData」ノードを参照)。ここでは、評価種別が Composite に設定されています。
{
"totalSize":3,
"records":[
{
"displaySequence":-1,
"CalculatedPriceData":{
"Family":900.5,
"Self + Child":555.5,
"Self + Spouse":590,
"Self":245
},
"Id":"01tf4000002ApR0AAK",
"Name":"Bronze PPO 5000 (HSA)",
"Family":"Commercial",
"ProductCode":"SG-PPO-5000-HSA",
"LineOfBusiness__c":"Group Health",
"MarketSegment__c":"Small Group",
"Type__c":"Medical",
"SubType__c":"HDHP",
"IsRecommended__c":false,
"Tier__c":"Bronze",
"ImageId__c":"01tf4000002ApR0AAK",
"PricingSource__c":"GrandTotal",
"RecordTypeName__c":"Product",
"IsConfigurable__c":false,
"productId":"01tf4000002ApR0AAK",
"Price":"",
"ImageId":"/sfc/servlet.shepherd/version/renditionDownload?rendition=ORIGINAL_Png&versionId=068f4000002yjYiAAI",
"planId":"a0sf4000001u0CmAAI",
"planRateType":"Composite",
"RateBandTierPriceData":{
"Self":{
"Price":245,
"Sequence":"1",
"Label":"Employee"
},
"Self + Spouse":{
"Price":590,
"Sequence":"2",
"Label":"Employee + Spouse"
},
"Self + Child":{
"Price":555.5,
"Sequence":"3",
"Label":"Employee + Child"
},
"Family":{
"Price":900.5,
"Sequence":"5",
"Label":"Family"
}
},
"childProducts":{
...
},
"attributeCategories":{
...
} {
"displaySequence":-1,
"CalculatedPriceData":{
"Family":1100.5,
"Self + Child":755.5,
"Self + Spouse":790,
"Self":445
},
"Id":"01tf4000002ApR8AAK",
"Name":"Gold PPO 35",
"Family":"Commercial",
"ProductCode":"SG-PPO-35",
"LineOfBusiness__c":"Group Health",
"MarketSegment__c":"Small Group",
"Type__c":"Medical",
"SubType__c":"PPO",
"IsRecommended__c":false,
"Tier__c":"Gold",
"ImageId__c":"01tf4000002ApR8AAK",
"PricingSource__c":"GrandTotal",
"RecordTypeName__c":"Product",
"IsConfigurable__c":true,
"PricingFormula__c":"Premium",
"productId":"01tf4000002ApR8AAK",
"ImageId":"/sfc/servlet.shepherd/version/renditionDownload?rendition=ORIGINAL_Png&versionId=068f4000002yjYjAAI",
"planId":"a0sf4000001u0ClAAI",
"planRateType":"Composite",
"RateBandTierPriceData":{
"Self":{
"Price":445,
"Sequence":"1",
"Label":"Employee"
},
"Self + Spouse":{
"Price":790,
"Sequence":"2",
"Label":"Employee + Spouse"
},
"Self + Child":{
"Price":755.5,
"Sequence":"3",
"Label":"Employee + Child"
},
"Family":{
"Price":1100.5,
"Sequence":"5",
"Label":"Family"
}
},
"childProducts":{
...
},
"attributeCategories":{
...
}
},
{
"displaySequence":-1,
"CalculatedPriceData":{
"Family":1000.5,
"Self + Child":655.5,
"Self + Spouse":690,
"Self":345
},
"Id":"01tf4000002ApQXAA0",
"Name":"Silver HMO 500",
"Family":"Commercial",
"ProductCode":"SG-HMO-500",
"LineOfBusiness__c":"Group Health",
"MarketSegment__c":"Small Group",
"Type__c":"Medical",
"SubType__c":"HMO",
"IsRecommended__c":false,
"Tier__c":"Silver",
"ImageId__c":"01tf4000002ApQXAA0",
"PricingSource__c":"GrandTotal",
"RecordTypeName__c":"Product",
"IsConfigurable__c":false,
"productId":"01tf4000002ApQXAA0",
"Price":"",
"ImageId":"/sfc/servlet.shepherd/version/renditionDownload?rendition=ORIGINAL_Png&versionId=068f4000002yjYkAAI",
"planId":"a0sf4000001u0CkAAI",
"planRateType":"Composite",
"RateBandTierPriceData":{
"Self":{
"Price":345,
"Sequence":"1",
"Label":"Employee"
},
"Self + Spouse":{
"Price":690,
"Sequence":"2",
"Label":"Employee + Spouse"
},
"Self + Child":{
"Price":655.5,
"Sequence":"3",
"Label":"Employee + Child"
},
"Family":{
"Price":1000.5,
"Sequence":"5",
"Label":"Family"
}
},
"attributeCategories":{
...
}
]
}