fix удаления пакетов если среди них есть черновик

This commit is contained in:
2023-12-15 20:29:24 +03:00
parent b4b7a8e183
commit ac5757160e
7 changed files with 51 additions and 7 deletions

View File

@@ -77,7 +77,7 @@ public class AddDVMPackage extends AddObjectPass<DVMPackage> {
}
@Override
protected void body() throws Exception {
//черновик не вставляется в бд.
//черновик не вставляется в бд. идет только как элемент списка.
Global.testingServer.db.dvmPackages.Data.put(target.id, target);
}
}

View File

@@ -0,0 +1,4 @@
package Visual_DVM_2021.Passes.All;
import Visual_DVM_2021.Passes.Pass_2021;
public class AddSapforPackage extends Pass_2021 {
}

View File

@@ -1,11 +1,14 @@
package Visual_DVM_2021.Passes.All;
import Common.Constants;
import Common.Global;
import Common.UI.UI;
import TestingSystem.Common.TestingServer;
import TestingSystem.DVM.DVMPackage.DVMPackage;
import TestingSystem.DVM.TasksPackage.TasksPackageState;
import Visual_DVM_2021.Passes.DeleteServerObjects;
import java.util.Vector;
public class DeleteDVMPackage extends DeleteServerObjects<TestingServer, DVMPackage> {
boolean delete_draft;
public DeleteDVMPackage() {
super(Global.testingServer, DVMPackage.class);
}
@@ -26,10 +29,39 @@ public class DeleteDVMPackage extends DeleteServerObjects<TestingServer, DVMPack
}
@Override
protected boolean canStart(Object... args) throws Exception {
return super.canStart(args) && checkActivity();
delete_draft = false;
Vector<Object> target_ = new Vector<>();
if (super.canStart(args) && checkActivity()) {
for (Object key : target) {
int id = (int) key;
if (id == Constants.Nan) {
delete_draft = true;
} else {
target_.add(id);
}
}
//-
if (delete_draft) {
if (target.size() == 1) {
DeleteDraftOnly();
return false;
} else {
target = target_;
return true;
}
}
return true;
}
return false;
}
void DeleteDraftOnly() throws Exception {
showPreparation();
server.db.dvmPackages.Data.remove(Constants.Nan);
server.db.dvmPackages.ShowUI();
}
@Override
protected void showPreparation() throws Exception {
super.showPreparation();
UI.getMainWindow().getTestingWindow().DropTestRunTasksComparison();
}
}

View File

@@ -315,11 +315,15 @@ public enum PassCode_2021 {
DeleteDVMPackage,
AbortDVMPackage,
//->
AddSapforPackage,
//->
TestPass;
public String getDescription() {
switch (this) {
case Undefined:
return "?";
case AddSapforPackage:
return "Добавить пакет задач SAPFOR";
case AbortDVMPackage:
return "Прервать пакет тестирования DVM";
case DeleteDVMPackage: