diff --git a/process/OfferOrder_lib/process.js b/process/OfferOrder_lib/process.js index c4af78a93e33b85be5760a2026ffe4d4c0da557a..a2004d9bac18bdd97e1e977bd820063d6b1b879f 100644 --- a/process/OfferOrder_lib/process.js +++ b/process/OfferOrder_lib/process.js @@ -136,21 +136,6 @@ function ItemUtils(pOfferOrderId, pTableName) { } } -/** - * get a new SqlCondition Object with tablename + "ITEM." + tablename + "ITEMID" = pItemId - * - * @param {String} pItemId item id - * @param {String} [pTableName=this.tableName] table name, if this is not available - * - * @return {SqlCondition} - */ -ItemUtils.prototype.getNewItemIdCondition = function(pItemId, pTableName) -{ - if (pTableName == undefined) - pTableName = this.tableName; - return SqlCondition.begin().andPrepare(pTableName + "ITEM." + pTableName + "ITEMID", pItemId); -} - /** * get netto and vat for all items or for all given items. * @@ -350,7 +335,6 @@ ItemUtils.prototype.insertPartsList = function(columns, productId, assignedTo, c */ ItemUtils.prototype.deletePartsList = function(itemId) { var deletedItemIds = []; - //save address for this here to get class variables in recursive sub function __itemDeleteStatement var self = this; var statements = []; @@ -365,11 +349,14 @@ ItemUtils.prototype.deletePartsList = function(itemId) { return deletedItemIds; //recursive function for building item delete statements - function __itemDeleteStatement(itemId) { + function __itemDeleteStatement(itemId) { var itemsToDelete = self.ItemTree[itemId].ids; for (var i = 0; i < itemsToDelete.length; i++) { - //unshift due to foreign key constraints (Delete hierarchically starting at the bottom) - statements.unshift(self.getNewItemIdCondition(itemsToDelete[i], self.tableName).build("1 = 2")); + //unshift due to foreign key constraints (Delete hierarchically starting at the bottom) + statements.unshift([self.tableName + "ITEM", SqlCondition.begin() + .andPrepare(self.tableName + "ITEM." + self.tableName + "ITEMID", itemsToDelete[i]) + .build("1 = 2")]); + deletedItemIds.push(itemsToDelete[i]); __itemDeleteStatement(itemsToDelete[i]); }