Du är här:
InsContractService:createUpdateContract
Använd denna tjänst för att skapa eller uppdatera ett kontrakt med hjälp av utdata från InsQuoteService:getQuoteDetail.
Samma offert som användes för att skapa kontraktet används också i uppdateringen.
Tjänsten används vanligtvis för att lägga till ersättningsprodukter i ett befintligt kontrakt, för små grupper.
Metod: createUpdateContract
Så här fungerar det
-
Denna tjänst letar efter
inputKeyi produktens JSON för en offert, som även innehållerproductConfigurationDetail. -
Om en
contractIdspecificeras uppdateras kontraktet med utdata frångetContractDetailssom indata. -
Om ingen
contractIdspecificeras skapas en nycontractId.
Fjärralternativ
Alternativ |
Beskrivning |
|---|---|
|
ID för målkontrakt. |
|
Valfritt. Namnet på prisboken att använda i det skapade eller uppdaterade kontraktet. Om du inte anger ett värde blir tjänsten som standard |
Indata-JSON
När ett nytt kontrakt skapas liknar JSON för indata utdatan för InsQuoteService:getQuoteDetail. Vid uppdatering av ett befintligt kontrakt förblir JSON för indata samma.
Detta exempel visar en ny JSON för kontraktinmatning, där contractJson är indatanyckeln och productConfigurationDetail innehåller produktens JSON som returneras via 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 för utdata
När ett nytt kontrakt skapas returneras contractId för det nya kontraktet i JSON för utdata ('{"contractId": "idOfNewContract"}'), enligt nedan. Vid uppdatering av ett befintligt kontrakt returneras ingen JSON för utdata.
[{
'Name': 'Current Product'
}, {
'Name': 'Replacement Product',
'isReplacementProduct': true
}]