From ff91162eb83dcf19402240ae8fa06f70cbf2b9e0 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sat, 30 Jan 2021 11:31:21 +0200 Subject: Separated comment models, controler and service from post's --- .../Models/Post/ReadPostServiceModel.cs | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/DevHive.Services/Models/Post/ReadPostServiceModel.cs (limited to 'src/DevHive.Services/Models/Post/ReadPostServiceModel.cs') diff --git a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs new file mode 100644 index 0000000..04ec6bd --- /dev/null +++ b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using DevHive.Services.Models.Comment; +using Microsoft.Extensions.FileProviders; + +namespace DevHive.Services.Models.Post +{ + public class ReadPostServiceModel + { + public Guid PostId { get; set; } + + public string CreatorFirstName { get; set; } + + public string CreatorLastName { get; set; } + + public string CreatorUsername { get; set; } + + public string Message { get; set; } + + public DateTime TimeCreated { get; set; } + + public List Comments { get; set; } = new(); + + public List Files { get; set; } + } +} -- cgit v1.2.3 From 640f50e19bf8aa598fcd63c5e27c2eda2451d86c Mon Sep 17 00:00:00 2001 From: transtrike Date: Mon, 1 Feb 2021 09:14:29 +0200 Subject: Post returns file urls --- src/DevHive.Services/Interfaces/ICloudService.cs | 3 +++ src/DevHive.Services/Models/Cloud/CloudinaryService.cs | 1 - src/DevHive.Services/Models/Post/ReadPostServiceModel.cs | 5 +++-- src/DevHive.Services/Services/PostService.cs | 1 + src/DevHive.Web/Models/Post/ReadPostWebModel.cs | 5 +++-- 5 files changed, 10 insertions(+), 5 deletions(-) (limited to 'src/DevHive.Services/Models/Post/ReadPostServiceModel.cs') diff --git a/src/DevHive.Services/Interfaces/ICloudService.cs b/src/DevHive.Services/Interfaces/ICloudService.cs index 6616444..3ae7a24 100644 --- a/src/DevHive.Services/Interfaces/ICloudService.cs +++ b/src/DevHive.Services/Interfaces/ICloudService.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; namespace DevHive.Services.Interfaces { @@ -8,6 +9,8 @@ namespace DevHive.Services.Interfaces { Task> UploadFilesToCloud(List formFiles); + // Task> GetFilesFromCloud(List fileUrls); + Task RemoveFilesFromCloud(List fileUrls); } } diff --git a/src/DevHive.Services/Models/Cloud/CloudinaryService.cs b/src/DevHive.Services/Models/Cloud/CloudinaryService.cs index bbf9606..13dffb6 100644 --- a/src/DevHive.Services/Models/Cloud/CloudinaryService.cs +++ b/src/DevHive.Services/Models/Cloud/CloudinaryService.cs @@ -4,7 +4,6 @@ using System.IO; using System.Threading.Tasks; using CloudinaryDotNet; using CloudinaryDotNet.Actions; -using DevHive.Data.Migrations; using DevHive.Services.Interfaces; using Microsoft.AspNetCore.Http; diff --git a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs index 04ec6bd..6bf3b7d 100644 --- a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs +++ b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using DevHive.Services.Models.Comment; -using Microsoft.Extensions.FileProviders; +using Microsoft.AspNetCore.Mvc; namespace DevHive.Services.Models.Post { @@ -21,6 +21,7 @@ namespace DevHive.Services.Models.Post public List Comments { get; set; } = new(); - public List Files { get; set; } + public List FileUrls { get; set; } + // public List Files { get; set; } = new(); } } diff --git a/src/DevHive.Services/Services/PostService.cs b/src/DevHive.Services/Services/PostService.cs index 0eaac94..8a37acd 100644 --- a/src/DevHive.Services/Services/PostService.cs +++ b/src/DevHive.Services/Services/PostService.cs @@ -69,6 +69,7 @@ namespace DevHive.Services.Services readPostServiceModel.CreatorFirstName = user.FirstName; readPostServiceModel.CreatorLastName = user.LastName; readPostServiceModel.CreatorUsername = user.UserName; + // readPostServiceModel.Files = await this._cloudService.GetFilesFromCloud(post.FileUrls); return readPostServiceModel; } diff --git a/src/DevHive.Web/Models/Post/ReadPostWebModel.cs b/src/DevHive.Web/Models/Post/ReadPostWebModel.cs index 1d2669e..64855cc 100644 --- a/src/DevHive.Web/Models/Post/ReadPostWebModel.cs +++ b/src/DevHive.Web/Models/Post/ReadPostWebModel.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; using DevHive.Web.Models.Comment; -using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; namespace DevHive.Web.Models.Post { @@ -21,6 +21,7 @@ namespace DevHive.Web.Models.Post public List Comments { get; set; } - public List Files { get; set; } + public List FileUrls { get; set; } + // public List Files { get; set; } } } -- cgit v1.2.3 From 84f9eebd0895e2c23b5718ee408f056e3cf3ebb2 Mon Sep 17 00:00:00 2001 From: transtrike Date: Mon, 1 Feb 2021 17:54:42 +0200 Subject: Read Post returns Comments as Ids --- src/DevHive.Services/Configurations/Mapping/CommentMappings.cs | 4 ++++ src/DevHive.Services/Models/Post/ReadPostServiceModel.cs | 3 ++- src/DevHive.Web/Models/Post/ReadPostWebModel.cs | 5 ++--- 3 files changed, 8 insertions(+), 4 deletions(-) (limited to 'src/DevHive.Services/Models/Post/ReadPostServiceModel.cs') diff --git a/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs b/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs index ad170d0..5ca2a9e 100644 --- a/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs +++ b/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs @@ -1,6 +1,7 @@ using DevHive.Data.Models; using AutoMapper; using DevHive.Services.Models.Comment; +using DevHive.Common.Models.Misc; namespace DevHive.Services.Configurations.Mapping { @@ -18,6 +19,9 @@ namespace DevHive.Services.Configurations.Mapping .ForMember(dest => dest.IssuerFirstName, src => src.MapFrom(p => p.Creator.FirstName)) .ForMember(dest => dest.IssuerLastName, src => src.MapFrom(p => p.Creator.LastName)) .ForMember(dest => dest.IssuerUsername, src => src.MapFrom(p => p.Creator.UserName)); + + CreateMap() + .ForMember(dest => dest.Id, src => src.MapFrom(p => p.Id)); } } } diff --git a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs index 6bf3b7d..2c4fb57 100644 --- a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs +++ b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using DevHive.Common.Models.Misc; using DevHive.Services.Models.Comment; using Microsoft.AspNetCore.Mvc; @@ -19,7 +20,7 @@ namespace DevHive.Services.Models.Post public DateTime TimeCreated { get; set; } - public List Comments { get; set; } = new(); + public List Comments { get; set; } = new(); public List FileUrls { get; set; } // public List Files { get; set; } = new(); diff --git a/src/DevHive.Web/Models/Post/ReadPostWebModel.cs b/src/DevHive.Web/Models/Post/ReadPostWebModel.cs index 64855cc..8238f47 100644 --- a/src/DevHive.Web/Models/Post/ReadPostWebModel.cs +++ b/src/DevHive.Web/Models/Post/ReadPostWebModel.cs @@ -1,7 +1,6 @@ using System; using System.Collections.Generic; -using DevHive.Web.Models.Comment; -using Microsoft.AspNetCore.Mvc; +using DevHive.Common.Models.Misc; namespace DevHive.Web.Models.Post { @@ -19,7 +18,7 @@ namespace DevHive.Web.Models.Post public DateTime TimeCreated { get; set; } - public List Comments { get; set; } + public List Comments { get; set; } public List FileUrls { get; set; } // public List Files { get; set; } -- cgit v1.2.3 From 1fe31bdb95c6e39c8919900f9f9926f819cc4d4c Mon Sep 17 00:00:00 2001 From: transtrike Date: Mon, 1 Feb 2021 18:59:18 +0200 Subject: Removed empty feed; Added mapping from List to ReadPageServiceModel --- .../Configurations/Mapping/PostMappings.cs | 4 ++++ .../Models/Post/ReadPostServiceModel.cs | 2 -- src/DevHive.Services/Services/FeedService.cs | 21 ++++++++------------- 3 files changed, 12 insertions(+), 15 deletions(-) (limited to 'src/DevHive.Services/Models/Post/ReadPostServiceModel.cs') diff --git a/src/DevHive.Services/Configurations/Mapping/PostMappings.cs b/src/DevHive.Services/Configurations/Mapping/PostMappings.cs index 13c9736..9362f90 100644 --- a/src/DevHive.Services/Configurations/Mapping/PostMappings.cs +++ b/src/DevHive.Services/Configurations/Mapping/PostMappings.cs @@ -2,6 +2,8 @@ using DevHive.Data.Models; using AutoMapper; using DevHive.Services.Models.Post; using DevHive.Common.Models.Misc; +using System.Collections.Generic; +using DevHive.Services.Models; namespace DevHive.Services.Configurations.Mapping { @@ -24,6 +26,8 @@ namespace DevHive.Services.Configurations.Mapping CreateMap() .ForMember(dest => dest.Id, src => src.MapFrom(x => x.Id)); + + CreateMap, ReadPageServiceModel>(); } } } diff --git a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs index 2c4fb57..a7aa882 100644 --- a/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs +++ b/src/DevHive.Services/Models/Post/ReadPostServiceModel.cs @@ -1,8 +1,6 @@ using System; using System.Collections.Generic; using DevHive.Common.Models.Misc; -using DevHive.Services.Models.Comment; -using Microsoft.AspNetCore.Mvc; namespace DevHive.Services.Models.Post { diff --git a/src/DevHive.Services/Services/FeedService.cs b/src/DevHive.Services/Services/FeedService.cs index 37d653c..af05607 100644 --- a/src/DevHive.Services/Services/FeedService.cs +++ b/src/DevHive.Services/Services/FeedService.cs @@ -45,13 +45,10 @@ namespace DevHive.Services.Services List posts = await this._feedRepository .GetFriendsPosts(friendsList, model.FirstRequestIssued, model.PageNumber, model.PageSize); - if (posts.Count <= 0) - throw new ArgumentException("No friends of user have posted anything yet!"); - - ReadPageServiceModel readPageServiceModel = new(); - foreach (Post post in posts) - readPageServiceModel.Posts.Add(this._mapper.Map(post)); - + // ReadPageServiceModel readPageServiceModel = new(); + // foreach (Post post in posts) + // readPageServiceModel.Posts.Add(this._mapper.Map(post)); + ReadPageServiceModel readPageServiceModel = this._mapper.Map(posts); return readPageServiceModel; } @@ -69,12 +66,10 @@ namespace DevHive.Services.Services List posts = await this._feedRepository .GetUsersPosts(user, model.FirstRequestIssued, model.PageNumber, model.PageSize); - if (posts.Count <= 0) - throw new ArgumentException("User hasn't posted anything yet!"); - - ReadPageServiceModel readPageServiceModel = new(); - foreach (Post post in posts) - readPageServiceModel.Posts.Add(this._mapper.Map(post)); + // ReadPageServiceModel readPageServiceModel = new(); + // foreach (Post post in posts) + // readPageServiceModel.Posts.Add(this._mapper.Map(post)); + ReadPageServiceModel readPageServiceModel = this._mapper.Map(posts); return readPageServiceModel; } -- cgit v1.2.3