From a954a183c6e368eca39622e795fe5dd4e7f363ac Mon Sep 17 00:00:00 2001 From: juanf <juanf> Date: Tue, 31 Jan 2017 10:32:56 +0000 Subject: [PATCH] SSDM-4727 : Fix to avoid V3 API Bug until is fixed. SVN: 37648 --- .../eln-lims/html/js/server/ServerFacade.js | 47 +++++++++++-------- .../views/SampleForm/SampleFormController.js | 2 +- .../SampleTable/SampleTableController.js | 6 +-- 3 files changed, 31 insertions(+), 24 deletions(-) diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/server/ServerFacade.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/server/ServerFacade.js index 309d35d35d7..af17617d228 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/server/ServerFacade.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/server/ServerFacade.js @@ -362,26 +362,33 @@ function ServerFacade(openbisServer) { this.openbisServer.deleteDataSets(datasetIds, reason, "TRASH", callback); } - this.deleteSamples = function(samplePermIds, reason, callback, confirmDeletions) { - require(["as/dto/sample/id/SamplePermId", "as/dto/sample/delete/SampleDeletionOptions" ], - function(SamplePermId, SampleDeletionOptions) { - var samplePermIdsObj = []; - for(var sPIdx = 0; sPIdx < samplePermIds.length; sPIdx++) { - samplePermIdsObj.push(new SamplePermId(samplePermIds[sPIdx])); - } - - var deletionOptions = new SampleDeletionOptions(); - deletionOptions.setReason(reason); - - // logical deletion (move objects to the trash can) - mainController.openbisV3.deleteSamples(samplePermIdsObj, deletionOptions).done(function(deletionId) { - if(confirmDeletions) { - mainController.openbisV3.confirmDeletions([deletionId]).then(callback); - } else { - callback(deletionId); - } - }); - }); + + this.deleteSamples = function(samplePermIdsOrIds, reason, callback, confirmDeletions) { + if(!confirmDeletions) { + var sampleIds = samplePermIdsOrIds; + this.openbisServer.deleteSamples(sampleIds, reason, "TRASH", callback); + } else { + var samplePermIds = samplePermIdsOrIds; + require(["as/dto/sample/id/SamplePermId", "as/dto/sample/delete/SampleDeletionOptions" ], + function(SamplePermId, SampleDeletionOptions) { + var samplePermIdsObj = []; + for(var sPIdx = 0; sPIdx < samplePermIds.length; sPIdx++) { + samplePermIdsObj.push(new SamplePermId(samplePermIds[sPIdx])); + } + + var deletionOptions = new SampleDeletionOptions(); + deletionOptions.setReason(reason); + + // logical deletion (move objects to the trash can) + mainController.openbisV3.deleteSamples(samplePermIdsObj, deletionOptions).done(function(deletionId) { + if(confirmDeletions) { + mainController.openbisV3.confirmDeletions([deletionId]).then(callback); + } else { + callback(deletionId); + } + }); + }); + } } this.deleteExperiments = function(experimentIds, reason, callback) { diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormController.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormController.js index 3b0293b1479..214205526c9 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormController.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleForm/SampleFormController.js @@ -90,7 +90,7 @@ function SampleFormController(mainController, mode, sample) { this.deleteSample = function(reason) { var _this = this; - mainController.serverFacade.deleteSamples([this._sampleFormModel.sample.permId], reason, function(data) { + mainController.serverFacade.deleteSamples([this._sampleFormModel.sample.id], reason, function(data) { if(data.error) { Util.showError(data.error.message); } else { diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js index e45bd922413..76202417ca7 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SampleTable/SampleTableController.js @@ -81,14 +81,14 @@ function SampleTableController(parentController, title, experimentIdentifier, pr Util.showError("Please select at least one sample to delete!"); } else { var warningText = "The next " + ELNDictionary.samples + " will be deleted: "; - var samplePermIds = []; + var sampleTechIds = []; for(var sIdx = 0; sIdx < selected.length; sIdx++) { - samplePermIds.push(selected[sIdx].permId); + sampleTechIds.push(selected[sIdx].id); warningText += selected[sIdx].identifier + " "; } var modalView = new DeleteEntityController(function(reason) { - mainController.serverFacade.deleteSamples(samplePermIds, reason, function(data) { + mainController.serverFacade.deleteSamples(sampleTechIds, reason, function(data) { if(data.error) { Util.showError(data.error.message); } else { -- GitLab