Loading
Страхование
InsClaimService:invokeProductRules

InsClaimService:invokeProductRules

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

Например, если вы добавили правила, отправляющие требования на сумму более определенной суммы страховщику на утверждение, эта служба вызывает эти правила.

Класс: InsClaimService

Метод: invokeProductRules

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

  1. Служба находит объект претензии на основе objectID и извлекает продукты для этого объекта на основе этого objectID.
  2. Ищет указанную transitionName.
  3. Выполняет правила, связанные с продуктом и применимые к transitionName.

    Оценивает каждый экземпляр вовлеченной стороны и/или экземпляр вовлеченного имущества отдельно для каждого правила продукта претензии.

  4. Если любое из правил оценивается как истинное, служба выполняет действие Vlocity, указанное в этих правилах.

    Например, если действие указывает на необходимость создания задачи, служба создает задачу.

  5. Ищет значение параметра includeStateTransition. Если значение = true, служба ищет модель состояния для этого объекта, находит значение fieldAPIName и изменяет это значение на основе перехода.
  6. Выводит результаты оценки для каждого правила в каждом экземпляре вовлеченной стороны и/или вовлеченного имущества.

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

Параметр

Описание

includeStateTransition

Если значение true, служба изменяет поле состояния, указанное в fieldAPIName модели состояния, на состояние, указанное в переходе.

Если значение false, то служба не выполняет переход в другое состояние.

objectId

Код претензии или код покрытия претензии для запроса.

transitionName

Имя перехода в состояние, связанное с выполняемыми правилами.

Служба будет выполнять только правила, связанные с указанным transitionName.

Чтобы найти имя перехода, перейдите к модели состояния для этого объекта.

mode

Если objectId является кодом претензии, существует два возможных значения mode: ItemMode или CoverageMode. Параметр mode определяет, какие объекты оцениваются для этого кода претензии.

  • Используйте ItemMode (по умолчанию) для оценки правил продукта с типом «Применимо», определенным как «Заявка-претензия». Служба применяет эти правила к каждой записи ClaimItem, связанной с кодом претензии. В ItemMode , объектами, доступными механизму правил, являются объекты ClaimItem и Claim.

    ItemMode помогает открывать покрытия претензий в конце первого уведомления о потере (например, при переходе с черновика на открытие). Представьте автоаварию с участием двух транспортных средств и трех человек. Любые правила, оцениваемые как истинные, могут использоваться для вызова действий, вызывающих процедуры интеграции для выполнения таких действий, как открытие корректного покрытия претензий для каждого элемента претензии. Покрытия претензий могут включать столкновение для первого транспортного средства, имущественный ущерб для стороннего транспортного средства, телесные повреждения для одного из водителей и т. д.

  • Используйте CoverageMode для оценки правил продукта с типом «Применимо», определенным как «Покрытие претензии». Служба применяет эти правила к каждой записи покрытия претензий, связанной с ClaimId. В CoverageMode механизму правил доступны объекты ClaimCoverage, InsurancePolicyCoverage и Claim.

    CoverageMode полезен при выполнении правил для всех покрытий претензий в претензии. Например, используйте CoverageMode при определении применения правил периода ожидания. Такие правила могут инициировать переход с открытого на отклоненный.

Если objectId является кодом покрытия претензии, механизм правил оценивает правила продукта с типом применимого, определенным как ClaimCoverage. Служба применяет эти правила к одному ClaimCoverageId. В данном случае mode не используется, поскольку служба оценивает только один объект, а не несколько объектов нижнего уровня.

falseTransitionState

Дополнительно.

Состояние, в которое служба переходит при оценке всех правил, выполняемых службой, как false.

Служба переводит объект в это состояние, только если includeStateTransition = true.

JSON ввода

Данная служба не использует ничего в JSON ввода.

Вывод JSON

Служба возвращает оценку правила для каждого экземпляра вовлеченного имущества и/или вовлеченной стороны.

В данном примере вводные данные:

  • objectId = claimId

  • transitionName = имя перехода правила

{
    "stateTransit": " updated ClaimStatus__c from Open to Closed",
    "canTransitState": true,
    "allFalse": false,
    "falseRules": {
        "Involved Property_a3lf4000000pcFUAAY": [
            {
                "ruleDetails": {
                    "instanceKey": "Involved Property_a3lf4000000pcFUAAY",
                    "involvedItemId": "a3lf4000000pcFUAAY",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ],
        "Involved Injury Cat Husky_a3kf4000000pLEuAAM": [
            {
                "ruleDetails": {
                    "instanceKey": "Involved Injury Cat Husky_a3kf4000000pLEuAAM",
                    "involvedItemId": "a3kf4000000pLEuAAM",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ]
    },
    "trueRules": {
        "Involved Injury Dog Husky_a3kf4000000pLEtAAM": [
            {
                "actionResults": {
                    "IPResult": {
                        "output": "TestOutput"
                    }
                },
                "ruleDetails": {
                    "instanceKey": "Involved Injury Dog Husky_a3kf4000000pLEtAAM",
                    "involvedItemId": "a3kf4000000pLEtAAM",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ]
    }
}

Этот JSON содержит следующие пары ключ/значение:

Клавиша

Значение

stateTransit

Описывает изменение службы в поле «Статус» объекта претензии.

canTransitState

true или false

Данный параметр определяет необходимость перехода объекта в новое состояние.

allFalse

Если все правила, выполняемые службой, оцениваются как false, allFalse = true.

Если любое из правил, выполняемых службой, оценивается как true, allFalse = false.

falseRules

Массив из одного или нескольких ruleDetails.

Содержит все правила, выполняемые службой, которые оцениваются как ложные.

trueRules

Массив одного или нескольких actionResults и ruleDetails.

Содержит все правила, выполняемые службой, которые оцениваются как истинные.

Отображается, только если allFalse = false. То есть одно или несколько правил, выполняемых службой, оцениваются как true.

error

Любые ошибки, возникающие в службе.

Если значение нормально, сообщения об ошибках не отображаются в пользовательском интерфейсе.

Массивы falseRules и trueRules содержат пары ключ/значение ruleDetails.

"ruleDetails": {
                    "instanceKey": "Involved Property_a3lf4000000pcFUAAY",
                    "involvedItemId": "a3lf4000000pcFUAAY",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }"ruleDetails": {
	"requirement name": "Operator Points >4",
	"conditions": "wcOperator.opPoints > 4",
	"message": "The applicant's prior citations require underwriting review prior to issuance.",
	"action method": "ReferToUnderwriting",
	"action class": "DROpenImplementationClass",
	"productId": "01tf4000001lKNQAA2",
	"transitionName": "Submit>Underwrite",
	"objectId": "0Q0f4000000ADatCAG"
}

Массив trueRules содержит как минимум одну actionResults, дополнительные пары ключ/значение и rulesDetails.

actionResults являются выводом класса действия Vlocity и метода действия, вызываемого службой.

 "trueRules": {
        "Involved Injury Dog Husky_a3kf4000000pLEtAAM": [
            {
                "actionResults": {
                    "IPResult": {
                        "output": "TestOutput"
                    }
                },
                "ruleDetails": {
                    "instanceKey": "Involved Injury Dog Husky_a3kf4000000pLEtAAM",
                    "involvedItemId": "a3kf4000000pLEtAAM",
                    "requirement name": "Maximum Aggregation Rule",
                    "conditions": "Pet.petType == 'dog' AND Pet.petBreed == 'Alaskan Husky' AND ptandev2__InsuranceClaim__c.ptandev2__ClaimStatus__c == 'Open'",
                    "message": "TestMessage",
                    "action method": "Product_Rule",
                    "action class": "IntegrationProcedureService",
                    "productId": "01tf4000004mGyhAAE",
                    "transitionName": "OpenToClosed",
                    "objectId": "a3qf4000000KtfKAAS"
                }
            }
        ]
    }

Примеры

Сервис обычно используется, когда вы хотите, чтобы правила определяли возможность автоматического утверждения претензии или переходили к страховщику для дальнейшего рассмотрения.

 
Загрузка
Salesforce Help | Article