From 2e30d3b84b03092d4858afd1641b487e230bf7ac Mon Sep 17 00:00:00 2001 From: Lars Johansson <lars.johansson@ess.eu> Date: Mon, 4 Apr 2022 17:10:11 +0200 Subject: [PATCH] Add option to sort on date / time for read endpoints for names and structures --- .../openepics/names/repository/DeviceGroupRepository.java | 4 ++++ .../org/openepics/names/repository/DeviceTypeRepository.java | 4 ++++ .../org/openepics/names/repository/DisciplineRepository.java | 4 ++++ .../java/org/openepics/names/repository/NameRepository.java | 4 ++++ .../org/openepics/names/repository/SubsystemRepository.java | 4 ++++ .../openepics/names/repository/SystemGroupRepository.java | 4 ++++ .../org/openepics/names/repository/SystemRepository.java | 4 ++++ src/main/java/org/openepics/names/rest/api/v1/INames.java | 5 ++--- .../java/org/openepics/names/rest/api/v1/IStructures.java | 5 ++--- src/main/java/org/openepics/names/rest/beans/FieldName.java | 3 ++- .../java/org/openepics/names/rest/beans/FieldStructure.java | 3 ++- 11 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java b/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java index 9d608063..f157efe2 100644 --- a/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java +++ b/src/main/java/org/openepics/names/repository/DeviceGroupRepository.java @@ -183,6 +183,8 @@ public class DeviceGroupRepository { cq.orderBy(cb.asc(cb.function("get_mnemonic_path_devicegroup", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -197,6 +199,8 @@ public class DeviceGroupRepository { cq.orderBy(cb.desc(cb.function("get_mnemonic_path_devicegroup", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("name"))); } diff --git a/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java b/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java index 133a728c..e6d3c5bf 100644 --- a/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java +++ b/src/main/java/org/openepics/names/repository/DeviceTypeRepository.java @@ -183,6 +183,8 @@ public class DeviceTypeRepository { cq.orderBy(cb.asc(cb.function("get_mnemonic_path_devicetype", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -197,6 +199,8 @@ public class DeviceTypeRepository { cq.orderBy(cb.desc(cb.function("get_mnemonic_path_devicetype", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("name"))); } diff --git a/src/main/java/org/openepics/names/repository/DisciplineRepository.java b/src/main/java/org/openepics/names/repository/DisciplineRepository.java index 44e99978..4d6e8adb 100644 --- a/src/main/java/org/openepics/names/repository/DisciplineRepository.java +++ b/src/main/java/org/openepics/names/repository/DisciplineRepository.java @@ -183,6 +183,8 @@ public class DisciplineRepository { cq.orderBy(cb.asc(from.get("mnemonic"))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -197,6 +199,8 @@ public class DisciplineRepository { cq.orderBy(cb.asc(from.get("mnemonic"))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("name"))); } diff --git a/src/main/java/org/openepics/names/repository/NameRepository.java b/src/main/java/org/openepics/names/repository/NameRepository.java index be1ef023..d31a74f5 100644 --- a/src/main/java/org/openepics/names/repository/NameRepository.java +++ b/src/main/java/org/openepics/names/repository/NameRepository.java @@ -173,6 +173,8 @@ public class NameRepository { cq.orderBy(cb.asc(cb.function("get_mnemonic_path_device_structure", String.class, from.get("convention_name")))); } else if (FieldName.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldName.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -187,6 +189,8 @@ public class NameRepository { cq.orderBy(cb.desc(cb.function("get_mnemonic_path_device_structure", String.class, from.get("convention_name")))); } else if (FieldName.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldName.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("convention_name"))); } diff --git a/src/main/java/org/openepics/names/repository/SubsystemRepository.java b/src/main/java/org/openepics/names/repository/SubsystemRepository.java index da5c5b79..2be94490 100644 --- a/src/main/java/org/openepics/names/repository/SubsystemRepository.java +++ b/src/main/java/org/openepics/names/repository/SubsystemRepository.java @@ -183,6 +183,8 @@ public class SubsystemRepository { cq.orderBy(cb.asc(cb.function("get_mnemonic_path_subsystem", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -197,6 +199,8 @@ public class SubsystemRepository { cq.orderBy(cb.desc(cb.function("get_mnemonic_path_subsystem", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("name"))); } diff --git a/src/main/java/org/openepics/names/repository/SystemGroupRepository.java b/src/main/java/org/openepics/names/repository/SystemGroupRepository.java index 1dac1430..ebefc1f7 100644 --- a/src/main/java/org/openepics/names/repository/SystemGroupRepository.java +++ b/src/main/java/org/openepics/names/repository/SystemGroupRepository.java @@ -179,6 +179,8 @@ public class SystemGroupRepository { cq.orderBy(cb.asc(from.get("mnemonic"))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -193,6 +195,8 @@ public class SystemGroupRepository { cq.orderBy(cb.desc(from.get("mnemonic"))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("name"))); } diff --git a/src/main/java/org/openepics/names/repository/SystemRepository.java b/src/main/java/org/openepics/names/repository/SystemRepository.java index 90c2fc73..0403e349 100644 --- a/src/main/java/org/openepics/names/repository/SystemRepository.java +++ b/src/main/java/org/openepics/names/repository/SystemRepository.java @@ -183,6 +183,8 @@ public class SystemRepository { cq.orderBy(cb.asc(cb.function("get_mnemonic_path_system", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.asc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.asc(from.get("requested"))); } else { cq.orderBy(cb.asc(from.get("convention_name"))); } @@ -197,6 +199,8 @@ public class SystemRepository { cq.orderBy(cb.desc(cb.function("get_mnemonic_path_system", String.class, from.get("uuid")))); } else if (FieldStructure.DESCRIPTION.equals(orderBy)) { cq.orderBy(cb.desc(from.get("description"))); + } else if (FieldStructure.WHEN.equals(orderBy)) { + cq.orderBy(cb.desc(from.get("requested"))); } else { cq.orderBy(cb.desc(from.get("name"))); } diff --git a/src/main/java/org/openepics/names/rest/api/v1/INames.java b/src/main/java/org/openepics/names/rest/api/v1/INames.java index 9fa26817..0fdcf3be 100644 --- a/src/main/java/org/openepics/names/rest/api/v1/INames.java +++ b/src/main/java/org/openepics/names/rest/api/v1/INames.java @@ -107,9 +107,8 @@ public interface INames { read GET /names/{name} - both name and uuid (name - exact and search, uuid exact) */ - public static final String DEFAULT_FALSE = "false"; - public static final String DEFAULT_PAGE = "0"; - public static final String DEFAULT_PAGE_SIZE = "100"; + public static final String DEFAULT_PAGE = "0"; + public static final String DEFAULT_PAGE_SIZE = "100"; /** * Create names by list of name elements. diff --git a/src/main/java/org/openepics/names/rest/api/v1/IStructures.java b/src/main/java/org/openepics/names/rest/api/v1/IStructures.java index f8606bbb..c28d0976 100644 --- a/src/main/java/org/openepics/names/rest/api/v1/IStructures.java +++ b/src/main/java/org/openepics/names/rest/api/v1/IStructures.java @@ -114,9 +114,8 @@ public interface IStructures { update PATCH /structures/reject - rejectStructures (List<StructureElement>) */ - public static final String DEFAULT_FALSE = "false"; - public static final String DEFAULT_PAGE = "0"; - public static final String DEFAULT_PAGE_SIZE = "100"; + public static final String DEFAULT_PAGE = "0"; + public static final String DEFAULT_PAGE_SIZE = "100"; /** * Create (propose) structures by list of structure elements. diff --git a/src/main/java/org/openepics/names/rest/beans/FieldName.java b/src/main/java/org/openepics/names/rest/beans/FieldName.java index 5ed6b831..f73973c7 100644 --- a/src/main/java/org/openepics/names/rest/beans/FieldName.java +++ b/src/main/java/org/openepics/names/rest/beans/FieldName.java @@ -30,6 +30,7 @@ public enum FieldName { NAMEEQUIVALENCE, SYSTEMSTRUCTURE, DEVICESTRUCTURE, - DESCRIPTION; + DESCRIPTION, + WHEN; } diff --git a/src/main/java/org/openepics/names/rest/beans/FieldStructure.java b/src/main/java/org/openepics/names/rest/beans/FieldStructure.java index 2958fd8d..f8cf33e9 100644 --- a/src/main/java/org/openepics/names/rest/beans/FieldStructure.java +++ b/src/main/java/org/openepics/names/rest/beans/FieldStructure.java @@ -31,6 +31,7 @@ public enum FieldStructure { MNEMONIC, MNEMONICEQUIVALENCE, MNEMONICPATH, - DESCRIPTION; + DESCRIPTION, + WHEN; } -- GitLab