Loading
Страхование
InsurancePolicyTransactionService:reverseTransaction

InsurancePolicyTransactionService:reverseTransaction

Используйте эту службу для отмены транзакции страхового полиса.

Эта служба создает транзакцию отмены для транзакции страхового полиса. Он также воссоздает политику на основе снимка политики с момента создания исходной транзакции.

Класс: InsurancePolicyTransactionService

Метод: reverseTransaction

Принцип работы

Чтобы отменить транзакцию страхового полиса, данная услуга:

  1. Проверяет данный Id ввода на наличие экземпляра объекта InsurancePolicyTransaction.

  2. Извлекает запись InsurancePolicyTransaction и проверяет транзакцию на наличие:

    • Последняя транзакция полиса.

    • Связано с активной (не отмененной) политикой.

    • Связано с последней активной версией политики.

    • Связано со снимком политики.

      Записи, связанные со снимком политики, содержат вложение под именем <policyId>_PolicySnapshot. Снимки политик включены для служб, создающих транзакции, в частности, InsPolicyService:createUpdatePolicy, InsPolicyService:createPolicyVersion, InsPolicyService:cancelPolicy и InsPolicyService:createTransaction.

    • Не транзакция отмены.

  3. Создает запись транзакции отмены с помощью:

    • Отрицательные суммы исходной транзакции.

    • Значения transactionDate и postDate на основе указанных параметров.

    • Тип транзакции и имя установлены на «Отмена».

    • parentTransactionId, равный коду транзакции, которую нужно отменить.

    • policyVersionId равно коду политики снимка.

  4. Задает статус текущей политики и политики снимка на «Отменено».

  5. Воссоздание политики на основе снимка. Услуга:

    • Удаляет существующие коды, чтобы создавать новые записи при сохранении.

    • Воссоздание расписаний оплаты и дохода посредством удаления-вставки, сохраняя оригинальный поиск транзакций.

  6. Вызывает InsuranceCommissionDataService.reverseCommissions для создания и сохранения комиссии отмены для комиссии, связанной с исходной транзакцией.

Вводные данные

Ввод

Описание

Id

Код InsurancePolicyTransaction для отмены. Недопустимые значения создают ошибку.

Удаленные параметры

Все удаленные параметры необязательны.

Удаленный параметр

Описание

effectiveDate

Значение, назначенное дате транзакции отмены

postDate

Дата публикации для обратной транзакции (по умолчанию: effectiveDate)

getDRBundleName

Пакет Omnistudio Data Mapper для извлечения записей InsurancePolicy и InsurancePolicyTransaction, необходимых для обработки отмены

getCustomClassName

Класс извлечения записей InsurancePolicy и InsurancePolicyTransaction, необходимых для обработки отмены (по умолчанию: GetPolicyTransactionReversalFields)

postPolicyDRBundleName

Пакет Data Mapper для создания и обновления записей InsurancePolicy

postPolicyCustomClassName

Класс для создания и обновления записей InsurancePolicy (по умолчанию: PostInsurancePolicy)

postTxnDRBundleName

Пакет Data Mapper для создания и обновления записей InsurancePolicyTransaction

postTxnCustomClassName

Класс для создания и обновления записей InsurancePolicyTransaction (по умолчанию: PostInsurancePolicyTransaction)

Вывод

Вывод

Описание

transactionIdForReversal

Код записи транзакции отмены. Это значение соответствует Id ввода.

reversalCommissionId

Код записи комиссии отмены

reversedCommissionAmount

Сумма обратной комиссии

JSON ввода

Ниже указан способ форматирования JSON ввода.

{
    "Id": <transaction id>
}

Ниже указан способ форматирования параметров.

{
    "effectiveDate": <Date>,
    "postDate" : <Date>,
    "getCustomClassname" : <String>,
    "postPolicyCustomClassName" : <String>,
    "postTxnCustomClassName" : <String>
}

Вот пример ввода.

{
    "Id": "0k9R000000003KjIAI"
}

А вот пример вариантов ввода.

{
    "effectiveDate": "4/1/2021",
    "postDate" : "4/5/2021",
    "getCustomClassname" : "GetPolicyTransactionReversalFields",
    "postPolicyCustomClassName" : "PostInsurancePolicy",
    "postTxnCustomClassName" : "PostInsurancePolicyTransaction"
}

Вывод JSON

Ниже указан формат вывода JSON.

{
    "transactionIdForReversal": <transaction id>,
    "reversalCommissionId": <commission id>,
    "reversedCommissionAmount": <Decimal>
}

Ниже указан образец вывода.

{
    "transactionIdForReversal": "0k9R000000003KjIAI",
    "reversalCommissionId": "0k9R000000003KjIAI",
    "reversedCommissionAmount": 123.00
}
 
Загрузка
Salesforce Help | Article