summaryrefslogtreecommitdiff
path: root/src/main/java/DNPM/dto
diff options
context:
space:
mode:
authorPaul-Christian Volkmer2023-10-10 12:21:27 +0200
committerPaul-Christian Volkmer2023-10-10 12:22:23 +0200
commit14e9fcab1a400d04b21c2ea5cf3a3e02dd30f043 (patch)
tree1ae56e17877eaa30267c947f8ff908b2db01d247 /src/main/java/DNPM/dto
parentf0f09d43a319f6facde3e774dd0f90a9b3c79815 (diff)
Issue #54: Add common EcogService interface
Diffstat (limited to 'src/main/java/DNPM/dto')
-rw-r--r--src/main/java/DNPM/dto/EcogStatusWithDate.java68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/main/java/DNPM/dto/EcogStatusWithDate.java b/src/main/java/DNPM/dto/EcogStatusWithDate.java
new file mode 100644
index 0000000..d48a3ff
--- /dev/null
+++ b/src/main/java/DNPM/dto/EcogStatusWithDate.java
@@ -0,0 +1,68 @@
+/*
+ * MIT License
+ *
+ * 2023 Comprehensive Cancer Center Mainfranken
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+package DNPM.dto;
+
+import org.springframework.util.Assert;
+
+import java.util.Date;
+
+/**
+ * Datenklasse zum Abbilden des ECOG-Status und Datum
+ */
+public class EcogStatusWithDate {
+ private Date date;
+ private String status;
+
+ public EcogStatusWithDate(Date date, String status) {
+ Assert.notNull(date, "Date cannot be null");
+ Assert.hasText(status, "Status cannot be empty String");
+ Assert.isTrue(isValidEcogCode(status), "Not a valid ADT.LeistungszustandECOG code");
+ this.date = date;
+ this.status = status;
+ }
+
+ private boolean isValidEcogCode(String status) {
+ switch (status) {
+ case "0":
+ case "1":
+ case "2":
+ case "3":
+ case "4":
+ case "5":
+ case "U":
+ return true;
+ default:
+ return false;
+ }
+ }
+
+ public Date getDate() {
+ return date;
+ }
+
+ public String getStatus() {
+ return status;
+ }
+}