Correct export of Delivery Unit EON_EMOBILITY_VIRTA (42 files, replaces incomplete initial export)
This commit is contained in:
@@ -0,0 +1,684 @@
|
||||
var output = {};
|
||||
var outMessages = [];
|
||||
var outMsg = {};
|
||||
var outStatus = "success";
|
||||
var myDebug = {};
|
||||
|
||||
var serviceName = "eon.virta.v2.reloadfields.xsjs";
|
||||
var serviceVersion = '1.4';
|
||||
|
||||
var startTS = new Date();
|
||||
|
||||
var debugLevel = 0;
|
||||
switch ($.request.parameters.get("debug")) {
|
||||
case "true":
|
||||
case "yes":
|
||||
case "1":
|
||||
debugLevel = 1;
|
||||
break;
|
||||
case "full":
|
||||
case "2":
|
||||
debugLevel = 2;
|
||||
break;
|
||||
}
|
||||
|
||||
if (debugLevel > 0) {
|
||||
output.requestParams = $.request.parameters;
|
||||
}
|
||||
|
||||
function setOutputMessage() {
|
||||
output.status = outStatus;
|
||||
output.durationSeconds = Math.floor((new Date() - startTS) / 1000);
|
||||
if (debugLevel > 0) {
|
||||
output.debugInfos = myDebug;
|
||||
}
|
||||
output.messages = outMessages;
|
||||
$.response.contentType = "application/json";
|
||||
$.response.setBody(JSON.stringify(output));
|
||||
//$.response.status = $.net.http.OK;
|
||||
}
|
||||
|
||||
function exceptionHandler(ex) {
|
||||
if (outMsg.method && outMessages.indexOf(outMsg) === -1) {
|
||||
outMsg.status = "canceled";
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
outMsg = {};
|
||||
outMsg.method = "exceptionHandler";
|
||||
outMsg.status = "error";
|
||||
outMsg.message = ex.toString();
|
||||
if (debugLevel > 0) {
|
||||
outMsg.exceptionInfo = {};
|
||||
outMsg.exceptionInfo.name = ex.name;
|
||||
outMsg.exceptionInfo.message = ex.message;
|
||||
outMsg.exceptionInfo.fileName = ex.fileName;
|
||||
outMsg.exceptionInfo.lineNumber = ex.lineNumber;
|
||||
outMsg.exceptionInfo.columnNumber = ex.columnNumber;
|
||||
outMsg.exceptionInfo.stack = ex.stack;
|
||||
//outMsg.exceptionInfo.source = ex.toSource();
|
||||
}
|
||||
outMessages.push(outMsg);
|
||||
outStatus = "error";
|
||||
output.status = outStatus;
|
||||
if (debugLevel > 0) {
|
||||
output.debugInfos = myDebug;
|
||||
}
|
||||
output.messages = outMessages;
|
||||
|
||||
var errbody = JSON.stringify(output);
|
||||
$.response.contentType = 'application/json';
|
||||
$.response.setBody(errbody);
|
||||
//$.response.status = $.net.http.INTERNAL_SERVER_ERROR;
|
||||
// Workaround, weil CRM scheinbar Probleme mit anderen Statuscodes hat
|
||||
$.response.status = $.net.http.OK;
|
||||
}
|
||||
|
||||
function checkParams() {
|
||||
var isValid = true;
|
||||
var missingParams = [];
|
||||
try {
|
||||
if (!$.request.parameters.get("field")) {
|
||||
missingParams.push("field");
|
||||
isValid = false;
|
||||
}
|
||||
if (!$.request.parameters.get("datefrom")) {
|
||||
missingParams.push("datefrom");
|
||||
isValid = false;
|
||||
}
|
||||
if (!$.request.parameters.get("dateto")) {
|
||||
missingParams.push("dateto");
|
||||
isValid = false;
|
||||
}
|
||||
} catch (e) {
|
||||
exceptionHandler(e);
|
||||
isValid = false;
|
||||
}
|
||||
if (!isValid) {
|
||||
outMsg = {};
|
||||
outMsg.method = "checkParams";
|
||||
outMsg.status = "error";
|
||||
outStatus = "error";
|
||||
outMsg.message = "missing mandatory parameters: " + missingParams.join();
|
||||
outMessages.push(outMsg);
|
||||
$.response.status = $.net.http.BAD_REQUEST;
|
||||
}
|
||||
return isValid;
|
||||
}
|
||||
|
||||
function getCpoTransactionData() {
|
||||
var datefrom = $.request.parameters.get("datefrom");
|
||||
var dateto = $.request.parameters.get("dateto");
|
||||
var limit = 1000;
|
||||
var offset = 0;
|
||||
outMsg = {};
|
||||
outMsg.method = "getCpoTransactionData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var resultSet = [];
|
||||
var conn = $.hdb.getConnection();
|
||||
do {
|
||||
if (debugLevel > 1) {
|
||||
outMsg.limit = limit;
|
||||
outMsg.offset = offset;
|
||||
}
|
||||
var queryResult = conn.executeQuery(
|
||||
"select CDRID, JSONRAW \
|
||||
from VIRTAPORTAL.CPO_CHARGES \
|
||||
where STARTTIME >= ? and STARTTIME <= ? and JSONRAW is not null \
|
||||
order by CDRID \
|
||||
limit ? offset ?",
|
||||
datefrom, dateto, limit, offset);
|
||||
var iterator = queryResult.getIterator();
|
||||
while (iterator.next()) {
|
||||
resultSet.push(JSON.parse(JSON.stringify(iterator.value())));
|
||||
}
|
||||
offset += limit;
|
||||
} while (queryResult.length === limit)
|
||||
conn.close();
|
||||
resultData = {
|
||||
count: resultSet.length,
|
||||
rows: resultSet
|
||||
};
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
if (debugLevel > 0 || outMsg.status === "error") {
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
return resultData;
|
||||
}
|
||||
|
||||
function updateCpoValidationResults() {
|
||||
var cpoTransData = getCpoTransactionData();
|
||||
var completeData = [];
|
||||
if (cpoTransData.count > 0) {
|
||||
completeData = cpoTransData.rows.map(function(row) {
|
||||
var parsedData = {};
|
||||
var valid = true;
|
||||
try {
|
||||
parsedData = JSON.parse(row.JSONRAW);
|
||||
if (!parsedData.hasOwnProperty('businessValidationResult') || !parsedData.hasOwnProperty('techValidationResult') || !parsedData.hasOwnProperty('notBillableReason')) {
|
||||
valid = false;
|
||||
}
|
||||
} catch (e) {
|
||||
valid = false;
|
||||
}
|
||||
return {
|
||||
CDRID: row.CDRID,
|
||||
BUSINESSVALIDATIONRESULT: parsedData.businessValidationResult,
|
||||
TECHVALIDATIONRESULT: parsedData.techValidationResult,
|
||||
NOTBILLABLEREASON: parsedData.notBillableReason,
|
||||
valid: valid
|
||||
};
|
||||
});
|
||||
}
|
||||
if (completeData.some(function(row) {
|
||||
return row.valid;
|
||||
})) {
|
||||
var paramList = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
return [row.BUSINESSVALIDATIONRESULT, row.TECHVALIDATIONRESULT, row.NOTBILLABLEREASON, row.CDRID];
|
||||
});
|
||||
outMsg = {};
|
||||
outMsg.method = "updateData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var conn = $.hdb.getConnection();
|
||||
var statement = "update VIRTAPORTAL.CPO_CHARGES \
|
||||
set BUSINESSVALIDATIONRESULT=?,TECHVALIDATIONRESULT=?,NOTBILLABLEREASON=? \
|
||||
where CDRID = ?";
|
||||
if (debugLevel > 1) {
|
||||
outMsg.statement = statement;
|
||||
outMsg.paramList = paramList;
|
||||
}
|
||||
var affectedRows = conn.executeUpdate(statement, paramList);
|
||||
conn.commit();
|
||||
conn.close();
|
||||
resultData = {
|
||||
count: affectedRows.reduce(function(cur, acc) {
|
||||
return cur + acc;
|
||||
}, 0)
|
||||
};
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
}
|
||||
|
||||
function getEmpTransactionData() {
|
||||
var datefrom = $.request.parameters.get("datefrom");
|
||||
var dateto = $.request.parameters.get("dateto");
|
||||
var limit = 1000;
|
||||
var offset = 0;
|
||||
outMsg = {};
|
||||
outMsg.method = "getEmpTransactionData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var resultSet = [];
|
||||
var conn = $.hdb.getConnection();
|
||||
do {
|
||||
if (debugLevel > 1) {
|
||||
outMsg.limit = limit;
|
||||
outMsg.offset = offset;
|
||||
}
|
||||
var queryResult = conn.executeQuery(
|
||||
"select UUID, JSONRAW \
|
||||
from VIRTAPORTAL.EMP_TRANSACTIONS \
|
||||
where STARTTIME >= ? and STARTTIME <= ? and JSONRAW is not null \
|
||||
order by UUID \
|
||||
limit ? offset ?",
|
||||
datefrom, dateto, limit, offset);
|
||||
var iterator = queryResult.getIterator();
|
||||
while (iterator.next()) {
|
||||
resultSet.push(JSON.parse(JSON.stringify(iterator.value())));
|
||||
}
|
||||
offset += limit;
|
||||
} while (queryResult.length === limit)
|
||||
conn.close();
|
||||
resultData = {
|
||||
count: resultSet.length,
|
||||
rows: resultSet
|
||||
};
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
if (debugLevel > 0 || outMsg.status === "error") {
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
return resultData;
|
||||
}
|
||||
|
||||
function updateEmpFreeMinutes() {
|
||||
var empTransData = getEmpTransactionData();
|
||||
var completeData = [];
|
||||
if (empTransData.count > 0) {
|
||||
completeData = empTransData.rows.map(function(row) {
|
||||
var parsedData = {};
|
||||
var valid = true;
|
||||
try {
|
||||
parsedData = JSON.parse(row.JSONRAW);
|
||||
if (!parsedData.hasOwnProperty('empFreeMinutes')) {
|
||||
valid = false;
|
||||
}
|
||||
} catch (e) {
|
||||
valid = false;
|
||||
}
|
||||
return {
|
||||
UUID: row.UUID,
|
||||
FREEMINUTES: parsedData.empFreeMinutes,
|
||||
valid: valid
|
||||
};
|
||||
});
|
||||
}
|
||||
// myDebug.completeData = completeData;
|
||||
/*var updateData = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
return {
|
||||
UUID: row.UUID,
|
||||
FREEMINUTES: row.parsedData.empFreeMinutes
|
||||
};
|
||||
});*/
|
||||
//myDebug.updateData = updateData;
|
||||
if (completeData.some(function(row) {
|
||||
return row.valid;
|
||||
})) {
|
||||
var paramList = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
return [row.FREEMINUTES, row.UUID];
|
||||
});
|
||||
outMsg = {};
|
||||
outMsg.method = "updateData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var conn = $.hdb.getConnection();
|
||||
var statement = "update VIRTAPORTAL.EMP_TRANSACTIONS \
|
||||
set FREEMINUTES = ? \
|
||||
where UUID = ?";
|
||||
if (debugLevel > 1) {
|
||||
outMsg.statement = statement;
|
||||
outMsg.paramList = paramList;
|
||||
}
|
||||
var affectedRows = conn.executeUpdate(statement, paramList);
|
||||
conn.commit();
|
||||
conn.close();
|
||||
resultData = {
|
||||
count: affectedRows.reduce(function(cur, acc) {
|
||||
return cur + acc;
|
||||
}, 0)
|
||||
};
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
}
|
||||
|
||||
function updateEmpValidationResults() {
|
||||
var empTransData = getEmpTransactionData();
|
||||
var completeData = [];
|
||||
if (empTransData.count > 0) {
|
||||
completeData = empTransData.rows.map(function(row) {
|
||||
var parsedData = {};
|
||||
var valid = true;
|
||||
try {
|
||||
parsedData = JSON.parse(row.JSONRAW);
|
||||
if (!parsedData.hasOwnProperty('businessValidationResult') || !parsedData.hasOwnProperty('techValidationResult') || !parsedData.hasOwnProperty('notBillableReason')) {
|
||||
valid = false;
|
||||
}
|
||||
} catch (e) {
|
||||
valid = false;
|
||||
}
|
||||
return {
|
||||
UUID: row.UUID,
|
||||
BUSINESSVALIDATIONRESULT: parsedData.businessValidationResult,
|
||||
TECHVALIDATIONRESULT: parsedData.techValidationResult,
|
||||
NOTBILLABLEREASON: parsedData.notBillableReason,
|
||||
valid: valid
|
||||
};
|
||||
});
|
||||
}
|
||||
if (completeData.some(function(row) {
|
||||
return row.valid;
|
||||
})) {
|
||||
var paramList = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
return [row.BUSINESSVALIDATIONRESULT, row.TECHVALIDATIONRESULT, row.NOTBILLABLEREASON, row.UUID];
|
||||
});
|
||||
outMsg = {};
|
||||
outMsg.method = "updateData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var conn = $.hdb.getConnection();
|
||||
var statement = "update VIRTAPORTAL.EMP_TRANSACTIONS \
|
||||
set BUSINESSVALIDATIONRESULT=?,TECHVALIDATIONRESULT=?,NOTBILLABLEREASON=? \
|
||||
where UUID = ?";
|
||||
if (debugLevel > 1) {
|
||||
outMsg.statement = statement;
|
||||
outMsg.paramList = paramList;
|
||||
}
|
||||
var affectedRows = conn.executeUpdate(statement, paramList);
|
||||
conn.commit();
|
||||
conn.close();
|
||||
resultData = {
|
||||
count: affectedRows.reduce(function(cur, acc) {
|
||||
return cur + acc;
|
||||
}, 0)
|
||||
};
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
}
|
||||
|
||||
function checkEmpFreePeriod() {
|
||||
var empTransData = getEmpTransactionData();
|
||||
var completeData = [];
|
||||
if (empTransData.count > 0) {
|
||||
completeData = empTransData.rows.map(function(row) {
|
||||
var parsedData = {};
|
||||
var valid = true;
|
||||
try {
|
||||
parsedData = JSON.parse(row.JSONRAW);
|
||||
if (!parsedData.hasOwnProperty('empFreePeriod')) {
|
||||
valid = false;
|
||||
}
|
||||
} catch (e) {
|
||||
valid = false;
|
||||
}
|
||||
return {
|
||||
UUID: row.UUID,
|
||||
FREEPERIOD: parsedData.empFreePeriod,
|
||||
valid: valid
|
||||
};
|
||||
});
|
||||
}
|
||||
// myDebug.completeData = completeData;
|
||||
/*var updateData = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
return {
|
||||
UUID: row.UUID,
|
||||
FREEMINUTES: row.parsedData.empFreeMinutes
|
||||
};
|
||||
});*/
|
||||
//myDebug.updateData = updateData;
|
||||
var foundData = completeData.filter(function(row) {
|
||||
return row.valid && row.FREEPERIOD !== null;
|
||||
}).map(function(row) {
|
||||
return {
|
||||
FreePeriod: row.FREEPERIOD,
|
||||
UUID: row.UUID
|
||||
};
|
||||
});
|
||||
outMsg = {};
|
||||
outMsg.method = "updateData";
|
||||
outMsg.foundData = foundData;
|
||||
outMsg.status = "success";
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
|
||||
function getEoperateTransactionData() {
|
||||
var datefrom = $.request.parameters.get("datefrom");
|
||||
var dateto = $.request.parameters.get("dateto");
|
||||
var limit = 1000;
|
||||
var offset = 0;
|
||||
outMsg = {};
|
||||
outMsg.method = "getEoperateTransactionData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var resultSet = [];
|
||||
var conn = $.hdb.getConnection();
|
||||
do {
|
||||
if (debugLevel > 1) {
|
||||
outMsg.limit = limit;
|
||||
outMsg.offset = offset;
|
||||
}
|
||||
var queryResult = conn.executeQuery(
|
||||
"select BDR_ID, JSONRAW \
|
||||
from EOPERATE.CHARGEDATA \
|
||||
where CHARGE_DATA_BEGIN_UTC >= ? and CHARGE_DATA_BEGIN_UTC <= ? and JSONRAW is not null \
|
||||
order by BDR_ID \
|
||||
limit ? offset ?",
|
||||
datefrom, dateto, limit, offset);
|
||||
var iterator = queryResult.getIterator();
|
||||
while (iterator.next()) {
|
||||
resultSet.push(JSON.parse(JSON.stringify(iterator.value())));
|
||||
}
|
||||
offset += limit;
|
||||
} while (queryResult.length === limit)
|
||||
conn.close();
|
||||
resultData = {
|
||||
count: resultSet.length,
|
||||
rows: resultSet
|
||||
};
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
if (debugLevel > 0 || outMsg.status === "error") {
|
||||
outMessages.push(outMsg);
|
||||
}
|
||||
return resultData;
|
||||
}
|
||||
|
||||
function roundTo(n, digits) {
|
||||
var negative = false;
|
||||
if (digits === undefined) {
|
||||
digits = 0;
|
||||
}
|
||||
if (n < 0) {
|
||||
negative = true;
|
||||
n = n * -1;
|
||||
}
|
||||
var multiplicator = Math.pow(10, digits);
|
||||
n = parseFloat((n * multiplicator).toFixed(11));
|
||||
n = (Math.round(n) / multiplicator).toFixed(digits);
|
||||
if (negative) {
|
||||
n = (n * -1).toFixed(digits);
|
||||
}
|
||||
return Number(n);
|
||||
}
|
||||
|
||||
function updateEoperatePricingItems() {
|
||||
var transData = getEoperateTransactionData();
|
||||
|
||||
var completeData = [];
|
||||
|
||||
if (transData.count > 0) {
|
||||
completeData = transData.rows.map(function(row) {
|
||||
var parsedData = {};
|
||||
var valid = false;
|
||||
var pricingItemsArray = [];
|
||||
|
||||
try {
|
||||
parsedData = JSON.parse(row.JSONRAW)[0];
|
||||
|
||||
if (parsedData.hasOwnProperty('PRICING') && parsedData.PRICING.hasOwnProperty('ITEMS')) {
|
||||
valid = true;
|
||||
|
||||
pricingItemsArray = parsedData.PRICING.ITEMS.filter(function(pricingItem) {
|
||||
return pricingItem.TYPE === "CUS";
|
||||
});
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
valid = false;
|
||||
}
|
||||
return {
|
||||
BDR_ID: row.BDR_ID,
|
||||
ITEMS: pricingItemsArray,
|
||||
valid: valid
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
myDebug.completeData = completeData;
|
||||
|
||||
if (completeData.some(function(row) {
|
||||
return row.valid;
|
||||
})) {
|
||||
var paramList = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
/*
|
||||
"TYPE": "CUS",
|
||||
"UNIT": "KWH",
|
||||
"UNIT_PRICE": "0.74710000",
|
||||
"QUANTITY": "1.97050000",
|
||||
"NET_AMOUNT": "1.47207941",
|
||||
"CURRENCY": "EUR"
|
||||
|
||||
*/
|
||||
var params = [];
|
||||
|
||||
for (let ii = 0; ii < 4; ii++) {
|
||||
var item = row.ITEMS[ii];
|
||||
|
||||
if (item) {
|
||||
params.push(item.TYPE, item.UNIT, roundTo(item.UNIT_PRICE, 4), roundTo(item.QUANTITY, 3), roundTo(item.NET_AMOUNT, 3), item.CURRENCY);
|
||||
} else {
|
||||
params.push(null, null, null, null, null, null);
|
||||
}
|
||||
}
|
||||
params.push(row.BDR_ID);
|
||||
|
||||
return params;
|
||||
});
|
||||
|
||||
// myDebug.paramList = paramList;
|
||||
|
||||
outMsg = {};
|
||||
outMsg.method = "updateData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var conn = $.hdb.getConnection();
|
||||
|
||||
var statement =
|
||||
"UPDATE EOPERATE.CHARGEDATA SET PRICING_ITEMS_1_TYPE= ?,PRICING_ITEMS_1_UNIT= ?,PRICING_ITEMS_1_UNIT_PRICE= ?,PRICING_ITEMS_1_QUANTITY= ?,PRICING_ITEMS_1_NET_AMOUNT= ?,PRICING_ITEMS_1_CURRENCY= ?,PRICING_ITEMS_2_TYPE= ?,PRICING_ITEMS_2_UNIT= ?,PRICING_ITEMS_2_UNIT_PRICE= ?,PRICING_ITEMS_2_QUANTITY= ?,PRICING_ITEMS_2_NET_AMOUNT= ?,PRICING_ITEMS_2_CURRENCY= ?,PRICING_ITEMS_3_TYPE= ?,PRICING_ITEMS_3_UNIT= ?,PRICING_ITEMS_3_UNIT_PRICE= ?,PRICING_ITEMS_3_QUANTITY= ?,PRICING_ITEMS_3_NET_AMOUNT= ?,PRICING_ITEMS_3_CURRENCY= ?,PRICING_ITEMS_4_TYPE= ?,PRICING_ITEMS_4_UNIT= ?,PRICING_ITEMS_4_UNIT_PRICE= ?,PRICING_ITEMS_4_QUANTITY= ?,PRICING_ITEMS_4_NET_AMOUNT= ?,PRICING_ITEMS_4_CURRENCY= ? where BDR_ID = ?";
|
||||
|
||||
if (debugLevel > 1) {
|
||||
outMsg.statement = statement;
|
||||
outMsg.paramList = paramList;
|
||||
}
|
||||
|
||||
var affectedRows = conn.executeUpdate(statement, paramList);
|
||||
conn.commit();
|
||||
conn.close();
|
||||
|
||||
resultData = {
|
||||
count: affectedRows.reduce(function(cur, acc) {
|
||||
return cur + acc;
|
||||
}, 0)
|
||||
};
|
||||
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
outMessages.push(outMsg);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function updateEoperateValidationResults() {
|
||||
var transData = getEoperateTransactionData();
|
||||
|
||||
var completeData = [];
|
||||
|
||||
if (transData.count > 0) {
|
||||
completeData = transData.rows.map(function(row) {
|
||||
var parsedData = {};
|
||||
var valid = true;
|
||||
try {
|
||||
parsedData = JSON.parse(row.JSONRAW)[0];
|
||||
if (!parsedData.hasOwnProperty('BUSINESS_VALIDATION_RESULT') || !parsedData.hasOwnProperty('TECH_VALIDATION_RESULT') || !parsedData.hasOwnProperty('NOT_BILLABLE_REASON')) {
|
||||
valid = false;
|
||||
}
|
||||
} catch (e) {
|
||||
valid = false;
|
||||
}
|
||||
return {
|
||||
BDR_ID: row.BDR_ID,
|
||||
BUSINESSVALIDATIONRESULT: parsedData.BUSINESS_VALIDATION_RESULT,
|
||||
TECHVALIDATIONRESULT: parsedData.TECH_VALIDATION_RESULT,
|
||||
NOTBILLABLEREASON: parsedData.NOT_BILLABLE_REASON,
|
||||
valid: valid
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
myDebug.completeData = completeData;
|
||||
|
||||
if (completeData.some(function(row) {
|
||||
return row.valid;
|
||||
})) {
|
||||
var paramList = completeData.filter(function(row) {
|
||||
return row.valid;
|
||||
}).map(function(row) {
|
||||
return [row.BUSINESSVALIDATIONRESULT, row.TECHVALIDATIONRESULT, row.NOTBILLABLEREASON, row.BDR_ID];
|
||||
});
|
||||
|
||||
// myDebug.paramList = paramList;
|
||||
|
||||
outMsg = {};
|
||||
outMsg.method = "updateData";
|
||||
outMsg.status = "error";
|
||||
var resultData = {};
|
||||
var conn = $.hdb.getConnection();
|
||||
|
||||
var statement =
|
||||
"UPDATE EOPERATE.CHARGEDATA SET BUSINESSVALIDATIONRESULT=?,TECHVALIDATIONRESULT=?,NOTBILLABLEREASON=? where BDR_ID = ?";
|
||||
|
||||
if (debugLevel > 1) {
|
||||
outMsg.statement = statement;
|
||||
outMsg.paramList = paramList;
|
||||
}
|
||||
|
||||
var affectedRows = conn.executeUpdate(statement, paramList);
|
||||
conn.commit();
|
||||
conn.close();
|
||||
|
||||
resultData = {
|
||||
count: affectedRows.reduce(function(cur, acc) {
|
||||
return cur + acc;
|
||||
}, 0)
|
||||
};
|
||||
|
||||
outMsg.status = "success";
|
||||
outMsg.result = resultData;
|
||||
outMessages.push(outMsg);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function chooseMode(field) {
|
||||
switch (field) {
|
||||
case 'empfreeminutes':
|
||||
updateEmpFreeMinutes();
|
||||
break;
|
||||
case 'empfreeperiod':
|
||||
checkEmpFreePeriod();
|
||||
break;
|
||||
case 'empValidationResults':
|
||||
updateEmpValidationResults();
|
||||
break;
|
||||
case 'cpoValidationResults':
|
||||
updateCpoValidationResults();
|
||||
break;
|
||||
case 'updateEoperatePricingItems':
|
||||
updateEoperatePricingItems();
|
||||
break;
|
||||
case 'eoperateValidationResults':
|
||||
updateEoperateValidationResults();
|
||||
break;
|
||||
default:
|
||||
exceptionHandler(new Error("unsupported mode: field=" + field));
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
if (checkParams()) {
|
||||
chooseMode($.request.parameters.get("field"));
|
||||
|
||||
}
|
||||
} catch (e) {
|
||||
exceptionHandler(e);
|
||||
}
|
||||
setOutputMessage();
|
||||
Reference in New Issue
Block a user