diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/AnonymousDonation.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/AnonymousDonation.java new file mode 100644 index 0000000..6f991e9 --- /dev/null +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/AnonymousDonation.java @@ -0,0 +1,4 @@ +package ntnu.sytemutvikling.team6.models; + +public class AnonymousDonation extends Donation { +} diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Charity.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Charity.java index 47c8056..92ebbf1 100644 --- a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Charity.java +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Charity.java @@ -1,4 +1,4 @@ package ntnu.sytemutvikling.team6.models; -public class Charity { +abstract class Charity { } diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/CharityRegistry.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/CharityRegistry.java new file mode 100644 index 0000000..e69de29 diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/DonationRegistry.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/DonationRegistry.java new file mode 100644 index 0000000..f565298 --- /dev/null +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/DonationRegistry.java @@ -0,0 +1,5 @@ +package ntnu.sytemutvikling.team6.models; + +public class DonationRegistry { + +} diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Role.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Inbox.java similarity index 63% rename from helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Role.java rename to helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Inbox.java index db49013..75fed79 100644 --- a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Role.java +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Inbox.java @@ -1,4 +1,5 @@ package ntnu.sytemutvikling.team6.models; -public class Role { +public class Inbox { + } diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Message.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Message.java new file mode 100644 index 0000000..e69de29 diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/PublicDonation.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/PublicDonation.java new file mode 100644 index 0000000..7da3000 --- /dev/null +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/PublicDonation.java @@ -0,0 +1,5 @@ +package ntnu.sytemutvikling.team6.models; + +public class PublicDonation extends Donation { + +} diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Settings.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Settings.java new file mode 100644 index 0000000..71e218a --- /dev/null +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/Settings.java @@ -0,0 +1,5 @@ +package ntnu.sytemutvikling.team6.models; + +public class Settings { + +} diff --git a/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/UserRegistry.java b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/UserRegistry.java new file mode 100644 index 0000000..da4ce2b --- /dev/null +++ b/helpmehelpapplication/src/main/java/ntnu/sytemutvikling/team6/models/UserRegistry.java @@ -0,0 +1,5 @@ +package ntnu.sytemutvikling.team6.models; + +public class UserRegistry { + +} diff --git a/helpmehelpapplication/src/main/resources/tempClassDiagram.puml b/helpmehelpapplication/src/main/resources/tempClassDiagram.puml new file mode 100644 index 0000000..c32ad2a --- /dev/null +++ b/helpmehelpapplication/src/main/resources/tempClassDiagram.puml @@ -0,0 +1,307 @@ +@startuml + + + +' ========================= + +' DOMAIN LAYER + +' ========================= + + + +package "Domain Layer" { + + + +class User { + + - idNext : static int + + - id : int + + - name : String + + - email : String + + - passwordHash : String + + - role : String + + - settings : Settings + + - inbox : Inbox + + + + + getUserId() : int + + + setUserId(id : int) + + + getUserName() : String + + + setUserName(name : String) + + + getUserEmail() : String + + + setUserEmail(email : String) + + + getUserPasswordHash() : String + + + setUserPasswordHash(passwordHash : String) + + + getUserRole() : String + + + setUserRole(role : String) + +} + + + +class Settings { + + - lightmode : boolean + + - language : String + + - anonymous : boolean + + + + + getSettings() : String + +} + + + +class Inbox { + + - messages : ArrayList + + + + + getMessages() : ArrayList + + + addMessage(message : Message) + + + removeMessage(message : Message) + +} + + + +class Message { + + - title : String + + - from : Charity + + - date : LocalDateTime + + + + + getTitle() : String + + + getFrom() : Charity + + + getDate() : LocalDateTime + +} + + + +class Charity { + + - idNext : static int + + - id : int + + - name : String + + - description : String + + - totalDonations : double + + - verified : boolean + + - category : String + + + + + getCharityId() : int + + + setCharityId(id : int) + + + getCharityName() : String + + + setCharityName(name : String) + + + getCharityDescription() : String + + + setCharityDescription(description : String) + + + getCharityTotalDonations() : double + + + setCharityTotalDonations(totalDonations : double) + +} + + + +abstract class Donation { + + - idNext : static int + + - id : int + + - amount : double + + - date : LocalDateTime + + - charity : Charity + + - user : User + + + + + getDonationId() : int + + + setDonationId(id : int) + + + getDonationAmount() : double + + + setDonationAmount(amount : double) + + + getDonationDate() : LocalDateTime + + + setDonationDate(date : LocalDateTime) + + + getDonorInfo() : String + +} + + + +class AnonymousDonation { + + - comment : String + +} + + + +class PublicDonation { + + - comment : String + +} + + + +class Feedback { + + - id : int + + - message : String + + - date : LocalDateTime + + - charityId : int + + + + + getId() : int + + + setId(id : int) + + + getMessage() : String + + + setMessage(message : String) + + + getDate() : LocalDateTime + + + setDate(date : LocalDateTime) + +} + + + +class UserRegistry { + + - users : List + + + addUser(user : User) + + + removeUser(user : User) + + + getUserById(id : int) : User + + + getAllUsers() : List + +} + + + +class CharityRegistry { + + - charities : List + + + addCharity(charity : Charity) + + + removeCharity(charity : Charity) + + + getCharityById(id : int) : Charity + + + getAllCharities() : List + +} + + + +class DonationRegistry { + + - donations : List + + + addDonation(donation : Donation) + + + removeDonation(donation : Donation) + + + getDonationById(id : int) : Donation + + + getAllDonations() : List + +} + + + +' Associations + +User "1" -- "0..*" Donation + +Charity "1" -- "0..*" Donation + + + +User "1" -- "0..*" Feedback + +Charity "1" -- "0..*" Feedback + + + +Donation <|-- AnonymousDonation + +Donation <|-- PublicDonation + + + +User "1" *-- "1" Settings + +User "1" *-- "1" Inbox + +Inbox "1" -- "0..*" Message + +Message "1" --> "1" Charity + + + +} \ No newline at end of file diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/AnonymousDonation.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/AnonymousDonation.class new file mode 100644 index 0000000..5d26bc1 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/AnonymousDonation.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Charity.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Charity.class new file mode 100644 index 0000000..42f6e49 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Charity.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Donation.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Donation.class new file mode 100644 index 0000000..17aeae8 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Donation.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/DonationRegistry.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/DonationRegistry.class new file mode 100644 index 0000000..3974903 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/DonationRegistry.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Feedback.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Feedback.class new file mode 100644 index 0000000..5dfb005 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Feedback.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Inbox.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Inbox.class new file mode 100644 index 0000000..7b4a306 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Inbox.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/PublicDonation.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/PublicDonation.class new file mode 100644 index 0000000..7bd1d8f Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/PublicDonation.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Settings.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Settings.class new file mode 100644 index 0000000..38f482a Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/Settings.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/User.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/User.class new file mode 100644 index 0000000..7623153 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/User.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/UserRegistry.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/UserRegistry.class new file mode 100644 index 0000000..970aced Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/models/UserRegistry.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/AuthenticationService.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/AuthenticationService.class new file mode 100644 index 0000000..559ce48 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/AuthenticationService.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/CharityService.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/CharityService.class new file mode 100644 index 0000000..c52d762 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/CharityService.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/DonationService.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/DonationService.class new file mode 100644 index 0000000..86d2996 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/DonationService.class differ diff --git a/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/FeedbackService.class b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/FeedbackService.class new file mode 100644 index 0000000..4b0e587 Binary files /dev/null and b/helpmehelpapplication/target/classes/ntnu/sytemutvikling/team6/service/FeedbackService.class differ diff --git a/helpmehelpapplication/target/classes/tempClassDiagram.puml b/helpmehelpapplication/target/classes/tempClassDiagram.puml new file mode 100644 index 0000000..c32ad2a --- /dev/null +++ b/helpmehelpapplication/target/classes/tempClassDiagram.puml @@ -0,0 +1,307 @@ +@startuml + + + +' ========================= + +' DOMAIN LAYER + +' ========================= + + + +package "Domain Layer" { + + + +class User { + + - idNext : static int + + - id : int + + - name : String + + - email : String + + - passwordHash : String + + - role : String + + - settings : Settings + + - inbox : Inbox + + + + + getUserId() : int + + + setUserId(id : int) + + + getUserName() : String + + + setUserName(name : String) + + + getUserEmail() : String + + + setUserEmail(email : String) + + + getUserPasswordHash() : String + + + setUserPasswordHash(passwordHash : String) + + + getUserRole() : String + + + setUserRole(role : String) + +} + + + +class Settings { + + - lightmode : boolean + + - language : String + + - anonymous : boolean + + + + + getSettings() : String + +} + + + +class Inbox { + + - messages : ArrayList + + + + + getMessages() : ArrayList + + + addMessage(message : Message) + + + removeMessage(message : Message) + +} + + + +class Message { + + - title : String + + - from : Charity + + - date : LocalDateTime + + + + + getTitle() : String + + + getFrom() : Charity + + + getDate() : LocalDateTime + +} + + + +class Charity { + + - idNext : static int + + - id : int + + - name : String + + - description : String + + - totalDonations : double + + - verified : boolean + + - category : String + + + + + getCharityId() : int + + + setCharityId(id : int) + + + getCharityName() : String + + + setCharityName(name : String) + + + getCharityDescription() : String + + + setCharityDescription(description : String) + + + getCharityTotalDonations() : double + + + setCharityTotalDonations(totalDonations : double) + +} + + + +abstract class Donation { + + - idNext : static int + + - id : int + + - amount : double + + - date : LocalDateTime + + - charity : Charity + + - user : User + + + + + getDonationId() : int + + + setDonationId(id : int) + + + getDonationAmount() : double + + + setDonationAmount(amount : double) + + + getDonationDate() : LocalDateTime + + + setDonationDate(date : LocalDateTime) + + + getDonorInfo() : String + +} + + + +class AnonymousDonation { + + - comment : String + +} + + + +class PublicDonation { + + - comment : String + +} + + + +class Feedback { + + - id : int + + - message : String + + - date : LocalDateTime + + - charityId : int + + + + + getId() : int + + + setId(id : int) + + + getMessage() : String + + + setMessage(message : String) + + + getDate() : LocalDateTime + + + setDate(date : LocalDateTime) + +} + + + +class UserRegistry { + + - users : List + + + addUser(user : User) + + + removeUser(user : User) + + + getUserById(id : int) : User + + + getAllUsers() : List + +} + + + +class CharityRegistry { + + - charities : List + + + addCharity(charity : Charity) + + + removeCharity(charity : Charity) + + + getCharityById(id : int) : Charity + + + getAllCharities() : List + +} + + + +class DonationRegistry { + + - donations : List + + + addDonation(donation : Donation) + + + removeDonation(donation : Donation) + + + getDonationById(id : int) : Donation + + + getAllDonations() : List + +} + + + +' Associations + +User "1" -- "0..*" Donation + +Charity "1" -- "0..*" Donation + + + +User "1" -- "0..*" Feedback + +Charity "1" -- "0..*" Feedback + + + +Donation <|-- AnonymousDonation + +Donation <|-- PublicDonation + + + +User "1" *-- "1" Settings + +User "1" *-- "1" Inbox + +Inbox "1" -- "0..*" Message + +Message "1" --> "1" Charity + + + +} \ No newline at end of file