Loading
Страхование
InsContractService:createUpdateContract

InsContractService:createUpdateContract

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

Важно!
Важно! Начиная с выпуска Winter '23, у нас включена служба InsContractServiceStd:createUpdateContract для работы со стандартной моделью данных Salesforce для Financial Services Cloud и Health Cloud. Текущие клиенты могут продолжать использовать эту услугу, но дополнительные улучшения не будут предоставлены в управляемом пакете страхования.
Примечание
Примечание

Аналогичная смета, используемая для создания контракта, также используется в обновлении.

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

Класс: InsContractService

Метод: createUpdateContract

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

  1. Данная служба ищет значение inputKey в продукте JSON сметы, которая также содержит карту productConfigurationDetail.

  2. Если указан contractId, контракт обновляется посредством вывода службы getContractDetails в качестве ввода.

  3. Если contractId не указан, создается новая contractId.

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

Параметры

Описание

contractId

Код целевого контракта.

pricebook

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

Имя прайс-листа для использования в созданном или обновленном контракте.

Если вы не предоставите значение, служба по умолчанию будет Standard.

JSON ввода

При создании нового контракта ввод JSON аналогичен выводу службы InsQuoteService:getQuoteDetail. При обновлении существующего контракта вводной JSON остается неизменным.

Данный образец отображает новый JSON ввода контракта, где contractJson является ключом ввода, а productConfigurationDetail содержит продукт JSON, возвращенный посредством InsQuoteService:getQuoteDetail:

{
  "productConfigurationDetail": {
    "records": [...]
    "totalSize": 1
  },
  "insuredItems": {
    "Driver": [{
        "instanceKey": "Joan Smith",
        "isPrimary": false,
        "isParent": false,
        "LN": "Smith",
        "AGE": 20,
        "FN": "Joan",
        "GENDER": "Female",
        "FirstName": "Joan",
        "LastName": "Smith"
      },
      {
        ...
      }
    ],
    "Auto": [{
        "instanceKey": "2015 Lexus LX250",
        "autoAntiTheft": true,
        "est_annual_mileage": "1-10000",
        "autoLicNum": "Lexus",
        "autoModel": "LX250",
        "autoYear": 2015,
        "BodyClass": "Sedan/Saloon",
        "VehicleType": "PASSENGER CAR",
        "isPrimary": true
        "isParent": false,
      },
      {
        ...
      }
    ]
  },
  "quoteDetail": {
    "attributes": {
      "type": "Quote",
      "url": "/services/data/v43.0/sobjects/Quote/0Q01I000000qeWLSAY"
    },
    "ins_daily4__EffectiveDate__c": "2018-07-27",
    "ins_daily4__TotalSumInsured__c": 0,
    "AccountId": "0011I00000QknfjQAB",
    "ins_daily4__RootItemTotal__c": 0,
    "Id": "0Q01I000000qeWLSAY"
  },
  "error": "OK"
}

Вывод JSON

При создании нового контракта contractId нового контракта возвращается в выводе JSON ('{"contractId": "idOfNewContract"}"), как показано ниже. При обновлении существующего контракта вывод JSON не возвращается.

[{
	'Name': 'Current Product'
}, {
	'Name': 'Replacement Product',
	'isReplacementProduct': true
}]
 
Загрузка
Salesforce Help | Article