Du är här:
InsurancePolicyTransactionService:reverseTransaction
Använd denna tjänst för att ångra en transaktion med försäkringspolicy.
Denna tjänst skapar en Återföring-transaktion för en försäkringspolicytransaktion. Den återskapar även policyn baserat på en ögonblicksbild av policyn från när den ursprungliga transaktionen skapades.
Klass: InsurancePolicyTransactionService
Metod: reverseTransaction
Så här fungerar det
För att ångra en transaktion med försäkringspolicy:
-
Kontrollerar att
Idför indata är en instans av objektetInsurancePolicyTransaction. -
Hämtar
InsurancePolicyTransactionoch validerar att transaktionen att ångra är:-
Policyns senaste transaktion.
-
Länkad till en aktiv (inte omvänd) policy.
-
Länkad till den senaste aktiva policyversionen.
-
Länkad till en ögonblicksbild av policyn.
Poster som är länkade till en ögonblicksbild av policyn har en bilaga som heter
<policyId>_PolicySnapshot. Policyögonblicksbilder är aktiverade för tjänster som skapar transaktioner, specifikt InsPolicyService:createUpdatePolicy, InsPolicyService:createPolicyVersion, InsPolicyService:cancelPolicy och InsPolicyService:createTransaction. -
Inte en Återföring-transaktion.
-
-
Skapar en transaktionspost för Återföring med:
-
Negativa belopp från den ursprungliga transaktionen.
-
transactionDate- och postDate-värden baserat på specificerade alternativ.
-
Transaktionstyp och namn satt till Återkalla.
-
parentTransactionId är lika med transaktions-ID för transaktionen som återställs.
-
policyVersionId är lika med policy-ID för ögonblicksbilden.
-
-
Ställer in status för den aktuella policyn och ögonblicksbildpolicyn till Omvänd.
-
Återskapar policyn baserat på ögonblicksbilden. Tjänsten:
-
Tar bort befintliga ID:n så att nya poster skapas när du sparar.
-
Återskapar betalnings- och intäktsscheman via delete-insert, vilket bevarar den ursprungliga sökningen till transaktionerna.
-
-
Anropar
InsuranceCommissionDataService.reverseCommissionsför att skapa och spara en återföringsprovision för provisionen som är relaterad till den ursprungliga transaktionen.
Indata
Indata |
Beskrivning |
|---|---|
|
ID för |
Fjärralternativ
Alla fjärralternativ är valfria.
Fjärralternativ |
Beskrivning |
|---|---|
|
Värde tilldelat till återföringstransaktionens transaktionsdatum |
|
Postdatum för återföringstransaktionen (Standard: |
|
Omnistudio Data Mapper-paket för att hämta de |
|
Klass för att hämta |
|
Datamappningspaket för att skapa och uppdatera |
|
Klass för att skapa och uppdatera |
|
Datamappningspaket för att skapa och uppdatera |
|
Klass för att skapa och uppdatera |
Utdata
Utdata |
Beskrivning |
|---|---|
|
ID för posten för återföringstransaktion. Detta värde matchar |
|
ID för posten för återföringsprovision |
|
Belopp för den omvända provisionen |
Indata-JSON
Så här formaterar du JSON för indata.
{
"Id": <transaction id>
}Så här formaterar du alternativ.
{
"effectiveDate": <Date>,
"postDate" : <Date>,
"getCustomClassname" : <String>,
"postPolicyCustomClassName" : <String>,
"postTxnCustomClassName" : <String>
}Här är ett exempel på indata.
{
"Id": "0k9R000000003KjIAI"
}Här är ett exempel på indataalternativ.
{
"effectiveDate": "4/1/2021",
"postDate" : "4/5/2021",
"getCustomClassname" : "GetPolicyTransactionReversalFields",
"postPolicyCustomClassName" : "PostInsurancePolicy",
"postTxnCustomClassName" : "PostInsurancePolicyTransaction"
}JSON för utdata
Här är formatet för JSON för utdata.
{
"transactionIdForReversal": <transaction id>,
"reversalCommissionId": <commission id>,
"reversedCommissionAmount": <Decimal>
}Här är ett exempel på utdata.
{
"transactionIdForReversal": "0k9R000000003KjIAI",
"reversalCommissionId": "0k9R000000003KjIAI",
"reversedCommissionAmount": 123.00
}