рефакторинг дерева версий пакета. добавил категорию по совпадениям.

This commit is contained in:
2023-11-06 22:20:18 +03:00
parent 51f67594c2
commit 5a857878d1
15 changed files with 186 additions and 94 deletions

View File

@@ -1,5 +1,6 @@
package SapforTestingSystem.Json;
import GlobalData.Tasks.TaskState;
import SapforTestingSystem.SapforTask.MatchState;
import SapforTestingSystem.SapforTask.SapforTask;
import com.google.gson.annotations.Expose;
@@ -13,29 +14,6 @@ public class SapforTasksResults_json {
public long EndDate = 0;
@Expose
public List<SapforTask> tasks = new Vector<>();
public LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>> sortTasksByConfigurationsAndGroups() {
LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>> tasksByConfigurations = new LinkedHashMap<>();
//--
for (SapforTask task : tasks) {
LinkedHashMap<String, Vector<SapforTask>> groups_tasks = null;
if (tasksByConfigurations.containsKey(task.sapfor_configuration_id)) {
groups_tasks = tasksByConfigurations.get(task.sapfor_configuration_id);
} else {
groups_tasks = new LinkedHashMap<>();
tasksByConfigurations.put(task.sapfor_configuration_id, groups_tasks);
}
Vector<SapforTask> tasks = null;
if (groups_tasks.containsKey(task.group_description)) {
tasks = groups_tasks.get(task.group_description);
} else {
tasks = new Vector<>();
groups_tasks.put(task.group_description, tasks);
}
tasks.add(task);
}
return tasksByConfigurations;
}
//--
public LinkedHashMap<TaskState, LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>>> sortTasksByStatesConfigurationsAndGroups() {
LinkedHashMap<TaskState, LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>>> res = new LinkedHashMap<>();
//рассортировать задачи по конфигурациям.
@@ -65,4 +43,41 @@ public class SapforTasksResults_json {
}
return res;
}
//---
public LinkedHashMap<MatchState, LinkedHashMap<TaskState, LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>>>> sortTasksForTree() {
LinkedHashMap<MatchState, LinkedHashMap<TaskState, LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>>>> res = new LinkedHashMap<>();
for (MatchState matchState : MatchState.values()) {
LinkedHashMap<TaskState, LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>>> state_tasks = new LinkedHashMap<>();
res.put(matchState, state_tasks);
//--
for (TaskState state : TaskState.values()) {
LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>> configuration_tasks = new LinkedHashMap<>();
state_tasks.put(state, configuration_tasks);
//--
for (SapforTask task : tasks) {
if (task.match.equals(matchState) && task.state.equals(state)) {
LinkedHashMap<String, Vector<SapforTask>> groups_tasks = null;
if (configuration_tasks.containsKey(task.sapfor_configuration_id)) {
groups_tasks = configuration_tasks.get(task.sapfor_configuration_id);
} else {
groups_tasks = new LinkedHashMap<>();
configuration_tasks.put(task.sapfor_configuration_id, groups_tasks);
}
Vector<SapforTask> tasks = null;
if (groups_tasks.containsKey(task.group_description)) {
tasks = groups_tasks.get(task.group_description);
} else {
tasks = new Vector<>();
groups_tasks.put(task.group_description, tasks);
}
tasks.add(task);
}
}
}
//--
}
//--
//рассортировать задачи по конфигурациям.
return res;
}
}