Ti trovi qui:
InsContractService:createUpdateContract
Utilizzare questo servizio per creare o aggiornare un contratto utilizzando l'output del servizio InsQuoteService:getQuoteDetail.
Lo stesso preventivo utilizzato per creare il contratto viene utilizzato anche nell'aggiornamento.
Il servizio viene in genere utilizzato per aggiungere prodotti sostitutivi a un contratto esistente, per piccoli gruppi.
Metodo: createUpdateContract
Funzionamento
-
Questo servizio cerca il valore di
inputKeynel JSON del prodotto di un preventivo, che contiene anche la mappa diproductConfigurationDetail. -
Se viene specificato un
contractId, il contratto viene aggiornato utilizzando l'output del servizio digetContractDetailscome input. -
Se non viene specificato un
contractId, viene creato un nuovocontractId.
Opzioni remote
Opzioni |
Descrizione |
|---|---|
|
ID del contratto target. |
|
Facoltativo. Nome del listino prezzi da utilizzare nel contratto creato o aggiornato. Se non si specifica un valore, il servizio viene impostato automaticamente su |
Input JSON
Quando si crea un nuovo contratto, il JSON di input è simile all'output del servizio InsQuoteService:getQuoteDetail. Quando si aggiorna un contratto esistente, il JSON di input rimane lo stesso.
Questo esempio mostra un nuovo JSON di input contratto, dove contractJson è la chiave di input e productConfigurationDetail contiene il JSON del prodotto restituito tramite 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 di output
Quando si crea un nuovo contratto, contractId del nuovo contratto viene restituito nel JSON di output ('{"contractId": "idOfNewContract"}'), come mostrato di seguito. Quando si aggiorna un contratto esistente, non viene restituito alcun JSON di output.
[{
'Name': 'Current Product'
}, {
'Name': 'Replacement Product',
'isReplacementProduct': true
}]