Name
sn_decision_table.AnswerRepository
Description
No description available
Script
var AnswerRepository = Class.create();
AnswerRepository.prototype = {
initialize: function() {},
getOrCreateMultipleAnswerRecords: function(decisionTableSysId, answerElementValuesDetails) {
var answerElementValuesMap = this._getAnswerElementValuesMap(answerElementValuesDetails);
var dt = new sn_dt.DecisionTableAPI();
var multiAnswerRecordDetails = dt.findOrCreateMultipleAnswerRecords(decisionTableSysId, answerElementValuesMap);
var answerElementValuesList = [];
for (var key in multiAnswerRecordDetails) {
if (multiAnswerRecordDetails.hasOwnProperty(key)) {
answerElementValuesList.push({
decisionQuestionSysId: key,
answerSysId: multiAnswerRecordDetails[key]
});
}
}
return answerElementValuesList;
},
_getAnswerElementValuesMap: function(answerElementValuesDetails) {
var answerElementValuesMap = new Object();
for (var i = 0; i < answerElementValuesDetails.length; i++) {
var currentAnswerElementValueDetails = answerElementValuesDetails[i];
var decisionQuestionId = currentAnswerElementValueDetails.decisionQuestionSysId;
var label = currentAnswerElementValueDetails.label;
var answerElementValues = currentAnswerElementValueDetails.answerElementValues;
var answerElementValuesObj = new Object();
for (var j = 0; j < answerElementValues.length; j++) {
answerElementValuesObj[answerElementValues[j].name] = answerElementValues[j].value;
}
answerElementValuesObj.label = label;
answerElementValuesMap[decisionQuestionId] = answerElementValuesObj;
}
return answerElementValuesMap;
},
getOrCreateMultipleAnswerRecord: function(decisionTableSysId, answerElementValues, answerLabel) {
var answerElementValuesObj = new Object();
for (var i = 0; i < answerElementValues.length; i++) {
answerElementValuesObj[answerElementValues[i].name] = answerElementValues[i].value;
}
answerElementValuesObj.label = answerLabel;
var dt = new sn_dt.DecisionTableAPI();
return dt.findOrCreateMultipleAnswerRecord(decisionTableSysId, answerElementValuesObj);
},
type: 'AnswerRepository'
};
Sys ID
544bc6af53f7011097a3ddeeff7b128b