From ef5c91a352788a2ad84afa18fa0c7cdadec70ed8 Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Mon, 20 Mar 2023 14:07:00 +0100 Subject: Issue #11: Service und Spring Data JPA Repository für Systemeinstellungen --- src/main/java/DNPM/services/SettingsService.java | 47 ++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/main/java/DNPM/services/SettingsService.java (limited to 'src/main/java/DNPM/services/SettingsService.java') diff --git a/src/main/java/DNPM/services/SettingsService.java b/src/main/java/DNPM/services/SettingsService.java new file mode 100644 index 0000000..b07a2f3 --- /dev/null +++ b/src/main/java/DNPM/services/SettingsService.java @@ -0,0 +1,47 @@ +package DNPM.services; + +import DNPM.database.SettingsRepository; + +import java.util.Optional; + +/** + * Implementiert den Dienst zur Ermittlung von Systemeinstellungen + */ +public class SettingsService { + + private final SettingsRepository settingsRepository; + + public SettingsService(final SettingsRepository settingsRepository) { + this.settingsRepository = settingsRepository; + } + + /** + * Übergibt ein Optional für die Einstellung mit angegebenen Namen + * @param name Name der Einstellung + * @return Optional mit Wert der Einstellung oder ein leeres Optional, wenn Einstellung nicht gefunden + */ + public Optional getSetting(String name) { + var sid = settingsRepository.findByName(name); + if (null == sid) { + return Optional.empty(); + } + return Optional.of(sid.getValue()); + } + + /** + * Übergibt die SID als Optional + * @return Optional mit Wert der SID + */ + public Optional getSID() { + return getSetting("SID"); + } + + /** + * Übergibt die Einstellung für mehrere_mtb_in_mtbepisode + * @return Übergibt true, wenn mehrere_mtb_in_mtbepisode auf "Ja" gesetzt ist. + */ + public boolean multipleMtbsInMtbEpisode() { + var setting = getSetting("SID"); + return setting.isPresent() && setting.get().equals("true"); + } +} -- cgit v1.2.3 From e9c25818d2966e175ef29f2d6663fd5292318bd8 Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Mon, 20 Mar 2023 22:16:08 +0100 Subject: Issue #11: Methode zum Auffinden referenzierter MTBs hinzugefügt --- src/main/java/DNPM/services/SettingsService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/DNPM/services/SettingsService.java') diff --git a/src/main/java/DNPM/services/SettingsService.java b/src/main/java/DNPM/services/SettingsService.java index b07a2f3..7459d4e 100644 --- a/src/main/java/DNPM/services/SettingsService.java +++ b/src/main/java/DNPM/services/SettingsService.java @@ -41,7 +41,7 @@ public class SettingsService { * @return Übergibt true, wenn mehrere_mtb_in_mtbepisode auf "Ja" gesetzt ist. */ public boolean multipleMtbsInMtbEpisode() { - var setting = getSetting("SID"); + var setting = getSetting("mehrere_mtb_in_mtbepisode"); return setting.isPresent() && setting.get().equals("true"); } } -- cgit v1.2.3