From 98e17766b203734a1817eed94338e2d25f4395f7 Mon Sep 17 00:00:00 2001 From: transtrike Date: Sat, 13 Feb 2021 16:20:18 +0200 Subject: Project Restructure P.1 --- .../DevHive.Data/Interfaces/Models/IComment.cs | 16 ++++++++++++++++ .../DevHive.Data/Interfaces/Models/ILanguage.cs | 11 +++++++++++ src/Data/DevHive.Data/Interfaces/Models/IModel.cs | 9 +++++++++ src/Data/DevHive.Data/Interfaces/Models/IPost.cs | 22 ++++++++++++++++++++++ .../Interfaces/Models/IProfilePicture.cs | 13 +++++++++++++ src/Data/DevHive.Data/Interfaces/Models/IRating.cs | 14 ++++++++++++++ src/Data/DevHive.Data/Interfaces/Models/IRole.cs | 10 ++++++++++ .../DevHive.Data/Interfaces/Models/ITechnology.cs | 11 +++++++++++ src/Data/DevHive.Data/Interfaces/Models/IUser.cs | 21 +++++++++++++++++++++ 9 files changed, 127 insertions(+) create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IComment.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IModel.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IPost.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IRating.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IRole.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs create mode 100644 src/Data/DevHive.Data/Interfaces/Models/IUser.cs (limited to 'src/Data/DevHive.Data/Interfaces/Models') diff --git a/src/Data/DevHive.Data/Interfaces/Models/IComment.cs b/src/Data/DevHive.Data/Interfaces/Models/IComment.cs new file mode 100644 index 0000000..97c1578 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IComment.cs @@ -0,0 +1,16 @@ +using System; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IComment : IModel + { + Post Post { get; set; } + + User Creator { get; set; } + + string Message { get; set; } + + DateTime TimeCreated { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs b/src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs new file mode 100644 index 0000000..9eed09d --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/ILanguage.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces.Models +{ + public interface ILanguage : IModel + { + string Name { get; set; } + HashSet Users { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IModel.cs b/src/Data/DevHive.Data/Interfaces/Models/IModel.cs new file mode 100644 index 0000000..f903af3 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IModel.cs @@ -0,0 +1,9 @@ +using System; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IModel + { + Guid Id { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IPost.cs b/src/Data/DevHive.Data/Interfaces/Models/IPost.cs new file mode 100644 index 0000000..712d955 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IPost.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using DevHive.Data.Models; +using DevHive.Data.RelationModels; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IPost : IModel + { + User Creator { get; set; } + + string Message { get; set; } + + DateTime TimeCreated { get; set; } + + List Comments { get; set; } + + // Rating Rating { get; set; } + + List Attachments { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs b/src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs new file mode 100644 index 0000000..c3fcbea --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IProfilePicture.cs @@ -0,0 +1,13 @@ +using System; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IProfilePicture : IModel + { + Guid UserId { get; set; } + User User { get; set; } + + string PictureURL { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IRating.cs b/src/Data/DevHive.Data/Interfaces/Models/IRating.cs new file mode 100644 index 0000000..d1b968f --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IRating.cs @@ -0,0 +1,14 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IRating : IModel + { + // Post Post { get; set; } + + int Rate { get; set; } + + // HashSet UsersThatRated { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IRole.cs b/src/Data/DevHive.Data/Interfaces/Models/IRole.cs new file mode 100644 index 0000000..c8b7068 --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IRole.cs @@ -0,0 +1,10 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IRole + { + HashSet Users { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs b/src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs new file mode 100644 index 0000000..153f75f --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/ITechnology.cs @@ -0,0 +1,11 @@ +using System.Collections.Generic; +using DevHive.Data.Models; + +namespace DevHive.Data.Interfaces.Models +{ + public interface ITechnology : IModel + { + string Name { get; set; } + HashSet Users { get; set; } + } +} diff --git a/src/Data/DevHive.Data/Interfaces/Models/IUser.cs b/src/Data/DevHive.Data/Interfaces/Models/IUser.cs new file mode 100644 index 0000000..fcd741c --- /dev/null +++ b/src/Data/DevHive.Data/Interfaces/Models/IUser.cs @@ -0,0 +1,21 @@ +using System.Collections.Generic; +using DevHive.Data.Models; +using DevHive.Data.RelationModels; + +namespace DevHive.Data.Interfaces.Models +{ + public interface IUser : IModel + { + string FirstName { get; set; } + + string LastName { get; set; } + + ProfilePicture ProfilePicture { get; set; } + + HashSet Languages { get; set; } + + HashSet Technologies { get; set; } + + HashSet Roles { get; set; } + } +} -- cgit v1.2.3