aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/DevHive.Services/Configurations/Mapping/CommentMappings.cs')
-rw-r--r--src/DevHive.Services/Configurations/Mapping/CommentMappings.cs27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs b/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs
new file mode 100644
index 0000000..5ca2a9e
--- /dev/null
+++ b/src/DevHive.Services/Configurations/Mapping/CommentMappings.cs
@@ -0,0 +1,27 @@
+using DevHive.Data.Models;
+using AutoMapper;
+using DevHive.Services.Models.Comment;
+using DevHive.Common.Models.Misc;
+
+namespace DevHive.Services.Configurations.Mapping
+{
+ public class CommentMappings : Profile
+ {
+ public CommentMappings()
+ {
+ CreateMap<CreateCommentServiceModel, Comment>();
+ CreateMap<UpdateCommentServiceModel, Comment>()
+ .ForMember(dest => dest.Id, src => src.MapFrom(p => p.CommentId))
+ .ForMember(dest => dest.Message, src => src.MapFrom(p => p.NewMessage));
+
+ CreateMap<Comment, ReadCommentServiceModel>()
+ .ForMember(dest => dest.CommentId, src => src.MapFrom(p => p.Id))
+ .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<Comment, IdModel>()
+ .ForMember(dest => dest.Id, src => src.MapFrom(p => p.Id));
+ }
+ }
+}