您位於此處:
InsCensusServiceStd:getMembersWithPlans
使用此服務可針對指定的 censusId 提取普查成員清單。服務會對應至這些普查成員,從 GroupCensusMemberPlan 提取 ContractGroupPlanIds。此服務也會根據 fieldsetName 和 planFieldsetName 來提取標題。
類別:InsCensusServiceStd
方法:getMembersWithPlans
運作方式
此服務有兩個關鍵功能:
- 將
GroupCensusMember和GroupCensusMemberPlan中的欄位清單中取回。此服務會使用參數
fieldsetName取得GroupCensusMember欄位清單。若沒有值,則會從預設欄位集中提取欄位。若輸入的值找不到相符項目,則不會取回任何欄位。此服務會使用參數
planFieldsetName取得GroupCensusMemberPlan欄位清單。若沒有值,則會取回所有欄位。若輸入的值找不到相符項目,則系統將不取用任何欄位。即使這些欄位並未包含在
fieldsetName中,仍會取得結合為 JSON 標題節點的關係欄位。這些欄位有:PrimaryGroupCensusMemberId、RelationshipToPrimaryMember、SourceSystemIdentifier和PrimaryMemberSource。如果
參數有值,則會在契約條列記錄清單中填入契約的下列詳細資料:contractGroupPlanId契約群組計畫名稱
產品類型
契約群組計畫的識別碼
-
此服務使用
censusId來從每個成員的GroupCensusMember記錄和契約群組計畫中,從GroupCensusMemberPlan提取普查成員清單。-
如果位移有值,則會在位移之後,取用「主要
GroupCensusMember」列 (依識別碼排序),然後針對這些「主要成員」取用所有相依項目。 -
如果有限制值,則服務會取用不大於指定限制的主要
GroupCensusMember列 (依識別碼排序)。接著會針對「主要成員」中所有的相依性。限制不可超過 500 個。 -
如果
searchKey有值,則服務會將GroupCensusMember列 (依「識別碼」排序) 與對應的系列 (其中的searchKey作為子字串存在於其FirstName或LastName中) 連同。若GroupCensusMember包含相依性,則服務會提取對應至這些相依性的主要成員。 -
如果
memberIds含有值,則其會取用其 Id 屬於memberIds陣列一部分的GroupCensusMember列 (依識別碼排序)。必須在輸入中提供memberIds或searchKey。 -
針對每個成員的資訊是根據從
GroupCensusMember和GroupCensusMemberPlan取得的欄位。 -
成員清單會放置在
members節點中。
-
服務行為
瞭解不同的輸入如何影響服務輸出。
| 輸入 | 服務輸出 |
|---|---|
無 |
此服務不會提取任何普查成員。 |
無 fieldsetName 且有效的 censusId |
此服務會取得:
|
有效的 fieldsetName 和有效的 censusId |
此服務會根據指定的 fieldsetName 列出 GroupCensusMember 欄位,並檢索包含 ContractGroupPlanIds 的 GroupCensusMember 清單。 |
無 planFieldsetName 有效的 fieldsetName 和有效的 censusId |
服務會根據 GroupCensusMemberPlan 的指定 fieldsetName、ContractGroupPlanId 和「名稱」欄位列出 GroupCensusMember 欄位。此項目會使用 ContractGroupPlanIds 取得 清單。 |
有效的有效 planFieldsetName fieldsetName 和有效的 censusId |
此服務會取得:
|
有效的 contractId |
服務會將契約群組計畫名稱、產品類型、子系產品,以及契約群組計畫識別碼作為 ContractGroupPlanId 標題欄位中的選項。 |
有效的 limit |
此服務會取得:
|
有效的 offset |
此服務會取得:
|
有效 offset 和有效的 limit |
此服務會取得:
|
有效的 searchKey |
此服務會取得:
|
有效的 searchKey 和有效的 limit |
此服務會取得:
|
有效的 searchKey 和有效的 offset |
此服務會取得:
|
有效的 searchKey、有效的 limit 和有效的 offset |
此服務會取得:
|
遠端選項
| 選項 | 描述 |
|---|---|
|
必要。 必須取用其成員的普查識別碼。 |
|
必要。 帳戶目前契約的識別碼。 取得契約群組計畫名稱、產品類型和契約群組 |
|
選擇性。 此欄位的名稱是用來取用 GroupCensusMember 欄位。 如果值無效,則服務不會傳回任何欄位。 若沒有值,則服務會使用預設欄位集來檢取 GroupCensusMember 欄位。 |
|
選擇性。 當有有效的計畫欄位集值時,會取用 GroupCensusMemberPlan 和 GroupCensusMember 欄位。 如果值無效,則不會傳回任何欄位。 所有 GroupCensusMemberPlan 欄位都會在沒有值時傳回。 |
|
選擇性。 待取用的普查成員數。 |
|
選擇性 。 必須在接下來的普查成員識別碼。 |
|
用來搜尋相符普查成員記錄的字串。 |
輸入 JSON
此服務不會取得輸入 JSON。
輸出 JSON
服務會傳回格式為 JSON 的輸出,如下所示。輸出包含普查中成員的詳細資料,其中標題是 GroupCensusMember 和 GroupCensusMemberPlan 的欄位 API 名稱清單。members 節點會傳回成員的所選計畫清單,以及由 ; 分隔的 ContractGroupPlanId。lastOffset 欄位會顯示最後一個已提取的普查成員識別碼。此值可作為位移參數使用,以取得後續列。
以下是範例輸出 JSON 格式:
{
"census":{
"members":[
{
"ContractGroupPlanId":"ID1;ID2",
"Id":"ID",
"fieldAPI1":"value"
}
],
"headers":[
{
"type":"field type",
"label":"field label",
"fieldId":"",
"name":"fieldAPI1"
},
{
"options":[
{
"value":"ID",
"type":"Product Type",
"name":"Contract Group Plan Name"
}
],
"type":"REFERENCE",
"label":"Plan",
"fieldId":"",
"name":"ContractGroupPlanId"
}
]
},
"lastOffset" : "census member Id"
}以下是範例輸出 JSON:
{
"census":{
"members":[
{
"ContractGroupPlanId":"",
"Id":"a4C4P000000dNdbUAE",
"LastName":member1,
"FirstName":primary,
"Birthdate":"1999-08-08"
},
{
"ContractGroupPlanId":"a2N4P000006ygEjUAI",
"Id":"a4C4P000000dNdcUAE",
"LastName":member1,
"FirstName":dependent,
"Birthdate":"1994-08-08"
},
{
"ContractGroupPlanId":"a2N4P000006ygEjUAI;a2N4P000006ygEiUAI",
"Id":"a4C4P000000dNdeUAE",
"LastName":member2,
"FirstName":primary,
"Birthdate":"1985-08-08"
}
],
"headers":[
{
"type":"STRING",
"label":"First Name",
"fieldId":"",
"name":"FirstName"
},
{
"type":"DATE",
"label":"Birthday",
"fieldId":"",
"name":"Birthdate"
},
{
"type":"STRING",
"label":"Last Name",
"fieldId":"",
"name":"LastName"
},
{
"type":"REFERENCE",
"label":"Plan",
"fieldId":"",
"name":"ContractGroupPlanId",
"options":[
{
"value":"a2N4P000006ygEiUAI",
"type":"Medical",
"name":"rootProd",
"childProducts": [
{
"value": "0rgDC000000000RYAQ",
"IsOptional": false,
"name": "MandatoryCoverage"
},
{
"value": "0rgDC000000000RYBQ",
"IsOptional": true,
"name": "OptionalCoverage"
}
]
},
{
"value":"a2N4P000006ygEjUAI",
"type":"Dental",
"name":"rootProd2",
"childProducts": [
{
"value": "0rgDC000000000RYCQ",
"IsOptional": false,
"name": "MandatoryCoverage"
},
{
"value": "0rgDC000000000RYDQ",
"IsOptional": true,
"name": "OptionalCoverage"
}
]
}
]
}
]
},
"lastOffset" : "a4C4P000000dNdeUAE"
}