Usted está aquí:
InsClaimService:invokeProductRules
Utilice este servicio en flujos de reclamación para invocar reglas de suscripción que agregó a un producto.
Por ejemplo, si agregó reglas que envían reclamaciones por encima de un importe en dólares a un suscriptor para su aprobación, este servicio invoca esas reglas.
Funcionamiento
- El servicio encuentra el objeto de reclamación basándose en el
objectIDy extrae los productos para ese objeto basándose en eseobjectID. - Busca el
transitionNameespecificado. - Ejecuta las reglas asociadas con el producto y aplicables al
transitionName.Evalúa cada instancia de Parte implicada y/o instancia de Propiedad implicada por separado para cada regla de producto de reclamación.
- Si cualquiera de las reglas se evalúa como verdadera, el servicio ejecuta la acción Vlocity especificada en esas reglas.
Por ejemplo, si la acción especifica que se cree una tarea, el servicio crea una tarea.
- Busca el valor de la opción
includeStateTransition. Si el valor =true, el servicio busca el modelo de estado para este objeto, encuentra el valor defieldAPINamey cambia ese valor basándose en la transición. - Da como resultado los resultados de la evaluación para cada regla en cada instancia de Parte implicada y/o Propiedad implicada.
Opciones remotas
Opción |
Descripción |
|---|---|
|
Si es verdadero, el servicio cambia el campo de estado especificado en el Si es falso, el servicio no realiza ninguna transición de estado. |
|
El Id. de reclamación o Id. de cobertura de reclamación que se va a consultar. |
|
El nombre de transición de estado asociado con las reglas que desea ejecutar. El servicio solo ejecutará reglas asociadas con el Para buscar un Nombre de transición, vaya al modelo de estado para este objeto. |
|
Si
Si |
|
Opcional El estado al que el servicio realiza la transición del objeto cuando todas las reglas ejecutadas por el servicio se evalúan como falsas. El servicio realiza la transición del objeto a este estado solo si |
JSON de salida
El servicio devuelve la evaluación de regla para cada instancia de una Propiedad implicada y/o Parte implicada.
Para este ejemplo, las entradas son:
-
objectId = claimId
-
transitionName = nombre de transición de regla
{
"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"
}
}
]
}
}
Este JSON incluye los siguientes pares clave/valor:
Clave |
Valor |
|---|---|
|
Describe lo que cambió el servicio en el campo Estado en el objeto de reclamación. |
|
Indica si el servicio realiza o no la transición del objeto a un nuevo estado. |
|
Si todas las reglas ejecutadas por el servicio se evalúan como falsas, Si cualquiera de las reglas ejecutadas por el servicio se evalúa como verdadera, |
|
Una matriz de uno o más Incluye todas las reglas ejecutadas por el servicio que se evalúan como falsas. |
|
Una matriz de uno o más Incluye todas las reglas ejecutadas por el servicio que se evalúan como verdaderas. Aparece solo si |
|
Cualquier error encontrado por el servicio. Si el valor está bien, no aparece ningún mensaje de error en la interfaz de usuario. |
Las matrices falseRules y trueRules incluyen pares clave/valor de 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"
}La matriz trueRules incluye uno o más actionResults, pares clave/valor adicionales y rulesDetails.
Los actionResults son el resultado de la clase de acción Vlocity y el método de acción invocados por el servicio.
"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"
}
}
]
}