Ti trovi qui:
InsurancePolicyTransactionService:reverseTransaction
Utilizzare questo servizio per annullare una transazione di polizza assicurativa.
Questo servizio crea una transazione di inversione per una transazione di polizza assicurativa. Inoltre, ricrea la policy in base a un'istantanea della policy dal momento in cui è stata creata la transazione originale.
Classe: InsurancePolicyTransactionService
Metodo: reverseTransaction
Funzionamento
Per annullare una transazione di polizza assicurativa, questo servizio:
-
Verifica che il
Iddi input specificato sia un'istanza dell'oggettoInsurancePolicyTransaction. -
Recupera il record
InsurancePolicyTransactione verifica che la transazione da annullare sia:-
L'ultima transazione della polizza.
-
Collegato a una policy attiva (non invertita).
-
Collegato all'ultima versione della policy attiva.
-
Collegato a un'istantanea della policy.
I record collegati a un'istantanea della policy hanno un allegato denominato
<policyId>_PolicySnapshot. Le istantanee delle policy sono abilitate per i servizi che creano transazioni, in particolare InsPolicyService:createUpdatePolicy, InsPolicyService:createPolicyVersion, InsPolicyService:cancelPolicy e InsPolicyService:createTransaction. -
Non una transazione di inversione.
-
-
Crea un record transazione Inversione con:
-
Ammontare negativo della transazione originale.
-
valori transactionDate e postDate basati sulle opzioni specificate.
-
Tipo di transazione e nome impostati su Inversione.
-
parentTransactionId uguale all'ID transazione della transazione invertita.
-
policyVersionId uguale all'ID policy dell'istantanea.
-
-
Imposta lo stato della policy corrente e della policy sulle istantanee su Invertito.
-
Ricrea la policy in base all'istantanea. Il servizio:
-
Rimuove gli ID esistenti in modo che vengano creati nuovi record durante il salvataggio.
-
Ricrea le pianificazioni dei pagamenti e del reddito tramite inserimento con eliminazione, conservando la ricerca originale delle transazioni.
-
-
Chiama
InsuranceCommissionDataService.reverseCommissionsper creare e risparmiare una commissione di storno per la commissione correlata alla transazione originale.
Input
Input |
Descrizione |
|---|---|
|
ID del |
Opzioni remote
Tutte le opzioni remote sono facoltative.
Opzione remota |
Descrizione |
|---|---|
|
Valore assegnato alla data della transazione di inversione |
|
Data di pubblicazione della transazione di inversione (predefinita: |
|
Pacchetto Omnistudio Data Mapper per recuperare i record |
|
Classe per recuperare i record |
|
Pacchetto Data Mapper per la creazione e l'aggiornamento dei record |
|
Classe per la creazione e l'aggiornamento dei record |
|
Pacchetto Data Mapper per la creazione e l'aggiornamento dei record |
|
Classe per la creazione e l'aggiornamento dei record |
Output
Output |
Descrizione |
|---|---|
|
ID del record transazione di inversione. Questo valore corrisponde al |
|
ID del record commissione di inversione |
|
Ammontare della commissione invertita |
Input JSON
Di seguito viene descritto come formattare il JSON di input.
{
"Id": <transaction id>
}Ecco come formattare le opzioni.
{
"effectiveDate": <Date>,
"postDate" : <Date>,
"getCustomClassname" : <String>,
"postPolicyCustomClassName" : <String>,
"postTxnCustomClassName" : <String>
}Ecco un esempio di input.
{
"Id": "0k9R000000003KjIAI"
}Ecco un esempio di opzioni di input.
{
"effectiveDate": "4/1/2021",
"postDate" : "4/5/2021",
"getCustomClassname" : "GetPolicyTransactionReversalFields",
"postPolicyCustomClassName" : "PostInsurancePolicy",
"postTxnCustomClassName" : "PostInsurancePolicyTransaction"
}JSON di output
Di seguito è riportato il formato del JSON di output.
{
"transactionIdForReversal": <transaction id>,
"reversalCommissionId": <commission id>,
"reversedCommissionAmount": <Decimal>
}Ecco un esempio di output.
{
"transactionIdForReversal": "0k9R000000003KjIAI",
"reversalCommissionId": "0k9R000000003KjIAI",
"reversedCommissionAmount": 123.00
}