Ti trovi qui:
InsEnrollmentServiceStd:enrollPlans
Utilizzare questo servizio per creare record di polizze assicurative (InsurancePolicy) per i piani medici, dentali, visivi e di altro tipo selezionati dal membro.
Classe: InsEnrollmentServiceStd
Metodo: enrollPlans
Funzionamento
Il servizio esegue le seguenti operazioni:
- Il servizio prende il JSON di input e cerca le informazioni per creare le polizze (Polizza assicurativa).
defaultIsFSCOption Parametro isFsc Output True False Crea record Polizza assicurativa ( InsurancePolicy)False False Restituisce un messaggio di errore - "FSC disabilitato; Utilizza il vecchio metodo enrollPlans per creare oggetti asset ". True True Crea record Polizza assicurativa ( InsurancePolicy)False True Crea il record Polizza assicurativa ( InsurancePolicy)Nota I servizi di iscrizione possono scrivere nella Polizza assicurativa e negli oggetti correlati (modello di dati della polizza armonizzata) o negli oggetti Asset (modello Vlocity), a seconda del parametro isFsc, e dell'impostazione personalizzata perdefaultIsFSCOption. Per creare record asset, utilizzare InsEnrollmentService:enrollPlans service -
Per un record Polizza assicurativa, il membro può essere rappresentato come Referente o Account personale. Se il membro è rappresentato come referente, il
Account.Iddel contratto di iscrizione viene impostato come Account della polizza. Quando un membro è rappresentato come account personale, l'ID account personale del membro viene impostato come Account della policy.Quando un membro (principale o dipendente) è rappresentato sia come account che come referente, il servizio utilizza la rappresentazione dell'account.
-
Associa i dipendenti alle polizze come partecipanti alle polizze assicurative (
InsurancePolicyParticipants). Crea un altro partecipante alla polizza assicurativa (InsurancePolicyParticipant) per il membro principale. - I record per
InsurancePolicyParticipantsvengono compilati in base alle seguenti regole:Primary InsurancePolicyParticipant (Partecipante polizza assicurativa primaria)
Partecipante polizza assicurativa dipendente
ID membro principale = PersonAccount
PrimaryParticipant.PrimaryParticipantAccountId = PersonAccount PrimaryParticipant.PrimaryParticipantContactId = PersonAccount.personContactId
DependentParticipant.PrimaryParticipantAccountId = PersonAccount DependentParticipant.PrimaryParticipantContactId = PersonAccount.personContactId
ID membro principale = ContactId
PrimaryParticipant.PrimaryParticipantContactId = ContactId
DependentParticipant.PrimaryParticipantContactId = ContactId
ID membro dipendente = ContactId/AccountId
La popolazione dei record partecipante principale avviene in base all'ID membro principale.
La popolazione dei membri dipendenti segue la stessa logica descritta in precedenza per i membri primari.
-
Recupera il
ProductIddal piano e imprime ilInsurancePolicy.ProductIda quell'ID. -
Crea le seguenti relazioni:
Polizza assicurativa
InsurancePolicy.EffectiveDate=Contract.StartDateo EffectiveStart nel JSON di input.InsurancePolicy.ExpirationDate=Contract.EndDateo EffectiveEnd nel JSON di input.InsurancePolicy.ContractGroupPlanId=ContractGroupPlan.Id -
Il servizio calcola i
InsurancePolicy.PolicyTermin base alleContract.ContractTerm:Polizza assicurativa
InsurancePolicy.PolicyTerm= Annual.InsurancePolicy.PolicyTerm= SemestraleInsurancePolicy.PolicyTerm= Mensile -
Recupera la chiave
Pricedal JSON di input e crea le seguenti relazioni:Polizza assicurativa
InsurancePolicy.StandardPremiumAmount= PrezzoInsurancePolicy.TermPremiumAmount= prezzo ripartito in base alle date effettive. -
Crea coperture polizze assicurative (
InsurancePolicyCoverages) per le voci copertura.
Opzioni remote
Opzione |
Descrizione |
|---|---|
|
Obbligatorio. Chiave di una struttura JSON pre-trasformata che contiene le informazioni necessarie al servizio. |
Input JSON
Il servizio accetta il JSON di input specificato dal inputKey. In questo esempio, inputKey = enrollmentJson.
Il servizio richiede:
-
contractId: <valore> -
Dependents: <elenco di mappe per contactId e relationshipType dei dipendenti>
Questo JSON di input può avere un elenco di oggetti o una mappa perché il servizio supporta la creazione di una policy o di più policy.
Il primaryMemberId può essere un ID account personale o un ID referente. In base al tipo di ID del primaryMemberId, il servizio funziona come descritto in precedenza.
Analogamente, per le persone a carico, il servizio dispone del nodo memberId per supportare sia l'ID account personale che l'ID referente. In base al tipo di ID del memberId, il servizio funziona come descritto in precedenza.
Di seguito è riportato il JSON di input di esempio:
{
"enrollmentJson": {
"dependents": [
{
"IsSpouse": false,
"memberId": "001RO000003NTBtYAO",
"LastName": "Jones",
"FirstName": "Jean",
"relationshipType": "Child"
}
],
"coverages": {
"records": [
{
"Price": "13",
"productcode": "CI"
}
]
},
"Price": 20,
"planId": "0rgRO000000000zYAA",
"primaryMemberId": "001RO000003Zr0AYAS",
"contractId": "800RO000000TFXdYAO"
}
}