From aa6f50e3c8f4b94c2a957686fe66122442a9534a Mon Sep 17 00:00:00 2001 From: Wanja Krah Date: Thu, 15 May 2025 18:38:36 +0200 Subject: [PATCH] set basis and model --- .gitignore | 3 + .mvn/maven.config | 3 + .mvn/settings-local.xml | 265 ++++++++++++++++++ agiledancers-be/pom.xml | 23 ++ .../java/nl/agilecc/agiledancers/Main.java | 17 ++ .../nl/agilecc/agiledancers/model/Coach.java | 6 + .../agiledancers/model/DanceGroup.java | 17 ++ .../nl/agilecc/agiledancers/model/Dancer.java | 7 + .../agilecc/agiledancers/model/DayPart.java | 12 + .../nl/agilecc/agiledancers/model/Show.java | 8 + .../model/specifications/DanceGroupStyle.java | 5 + .../model/specifications/DanceGroupType.java | 18 ++ .../model/specifications/DayPartType.java | 5 + pom.xml | 51 ++++ 14 files changed, 440 insertions(+) create mode 100644 .gitignore create mode 100644 .mvn/maven.config create mode 100644 .mvn/settings-local.xml create mode 100644 agiledancers-be/pom.xml create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/Main.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Coach.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DanceGroup.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Dancer.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DayPart.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Show.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupStyle.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupType.java create mode 100644 agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DayPartType.java create mode 100644 pom.xml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c2e74c4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.iml +.idea +target \ No newline at end of file diff --git a/.mvn/maven.config b/.mvn/maven.config new file mode 100644 index 0000000..d267dac --- /dev/null +++ b/.mvn/maven.config @@ -0,0 +1,3 @@ +-s.mvn\settings-local.xml + +-Dmaven.repo.local=D:\workspace\private\.m2repo \ No newline at end of file diff --git a/.mvn/settings-local.xml b/.mvn/settings-local.xml new file mode 100644 index 0000000..24c1925 --- /dev/null +++ b/.mvn/settings-local.xml @@ -0,0 +1,265 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + maven-default-http-blocker + external:http:* + Pseudo repository to mirror external repositories initially using HTTP. + http://0.0.0.0/ + true + + + + + + + + + + + + diff --git a/agiledancers-be/pom.xml b/agiledancers-be/pom.xml new file mode 100644 index 0000000..477cbba --- /dev/null +++ b/agiledancers-be/pom.xml @@ -0,0 +1,23 @@ + + + 4.0.0 + + + nl.agilecc.agiledancers + agiledancers + 1.0-SNAPSHOT + + + agiledancers-be + jar + + + + com.google.ortools + ortools-java + + + + \ No newline at end of file diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/Main.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/Main.java new file mode 100644 index 0000000..00ddbb4 --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/Main.java @@ -0,0 +1,17 @@ +package nl.agilecc.agiledancers; + +//TIP To Run code, press or +// click the icon in the gutter. +public class Main { + public static void main(String[] args) { + //TIP Press with your caret at the highlighted text + // to see how IntelliJ IDEA suggests fixing it. + System.out.printf("Hello and welcome!"); + + for (int i = 1; i <= 5; i++) { + //TIP Press to start debugging your code. We have set one breakpoint + // for you, but you can always add more by pressing . + System.out.println("i = " + i); + } + } +} \ No newline at end of file diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Coach.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Coach.java new file mode 100644 index 0000000..f008c3c --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Coach.java @@ -0,0 +1,6 @@ +package nl.agilecc.agiledancers.model; + +public class Coach { + private Long id; + private String name; +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DanceGroup.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DanceGroup.java new file mode 100644 index 0000000..5914190 --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DanceGroup.java @@ -0,0 +1,17 @@ +package nl.agilecc.agiledancers.model; + +import nl.agilecc.agiledancers.model.specifications.DanceGroupStyle; +import nl.agilecc.agiledancers.model.specifications.DanceGroupType; + +import java.util.Set; + +public class DanceGroup { + private Long id; + private String category; + private DanceGroupType type; + private int startAge; + private int endAge; + private Set dancers; + private Set styles; + private Coach coach; +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Dancer.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Dancer.java new file mode 100644 index 0000000..5b3dfec --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Dancer.java @@ -0,0 +1,7 @@ +package nl.agilecc.agiledancers.model; + +public class Dancer { + private Long id; + private String name; + private int age; +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DayPart.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DayPart.java new file mode 100644 index 0000000..ba068f5 --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/DayPart.java @@ -0,0 +1,12 @@ +package nl.agilecc.agiledancers.model; + +import nl.agilecc.agiledancers.model.specifications.DayPartType; + +import java.util.List; + +public class DayPart { + private Long id; + + private DayPartType type; + private List danceGroups; +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Show.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Show.java new file mode 100644 index 0000000..b23a772 --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/Show.java @@ -0,0 +1,8 @@ +package nl.agilecc.agiledancers.model; + +import java.util.List; + +public class Show { + private Long id; + private List dayParts; +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupStyle.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupStyle.java new file mode 100644 index 0000000..daa408c --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupStyle.java @@ -0,0 +1,5 @@ +package nl.agilecc.agiledancers.model.specifications; + +public enum DanceGroupStyle { + HIPHOP, JAZZ, MODERN, STREETDANCE, CLASSIC, BREAKDANCE +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupType.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupType.java new file mode 100644 index 0000000..0c494ae --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DanceGroupType.java @@ -0,0 +1,18 @@ +package nl.agilecc.agiledancers.model.specifications; + +import lombok.Getter; + +public enum DanceGroupType { + SHOW_CASE(3), + PRE_EDUCATION(1), // TODO check if this is one group mentioned with different docent each time, or three different groups - and thus if they are required 1 day or 3 + SELECTION(2), + REGULAR(2), + PRE_SCHOOLER(1); + + @Getter + private int dayPartsRequired; + + DanceGroupType(int dayPartsRequired) { + this.dayPartsRequired = dayPartsRequired; + } +} diff --git a/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DayPartType.java b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DayPartType.java new file mode 100644 index 0000000..7bfdefa --- /dev/null +++ b/agiledancers-be/src/main/java/nl/agilecc/agiledancers/model/specifications/DayPartType.java @@ -0,0 +1,5 @@ +package nl.agilecc.agiledancers.model.specifications; + +public enum DayPartType { + MORNING, AFTERNOON, EVENING; +} diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..eb10361 --- /dev/null +++ b/pom.xml @@ -0,0 +1,51 @@ + + + 4.0.0 + + nl.agilecc.agiledancers + agiledancers + 1.0-SNAPSHOT + pom + + Agile Dancers + To map multiple dance groups to multiple dance performance dayparts with respect to certain constraints. + + + agiledancers-be + + + + + + 21 + 21 + UTF-8 + UTF-8 + + 9.12.4544 + 1.18.38 + + + + + + + com.google.ortools + ortools-java + ${ortools-java.version} + + + + + + + + org.projectlombok + lombok + ${lombok.version} + + + + \ No newline at end of file