aboutsummaryrefslogtreecommitdiff
path: root/src/Data/DevHive.Data
diff options
context:
space:
mode:
authorDanail Dimitrov <danaildimitrov321@gmail.com>2021-02-21 22:21:08 +0200
committerDanail Dimitrov <danaildimitrov321@gmail.com>2021-02-21 22:21:08 +0200
commita851adfac47a26cae83e9161d37902a219e5ebf3 (patch)
treef8b214b22d83c78c3036796383cc4edba6483a28 /src/Data/DevHive.Data
parent1d2f0ea1665b6eb2d9cc3334841318a39ab41e0e (diff)
downloadDevHive-a851adfac47a26cae83e9161d37902a219e5ebf3.tar
DevHive-a851adfac47a26cae83e9161d37902a219e5ebf3.tar.gz
DevHive-a851adfac47a26cae83e9161d37902a219e5ebf3.zip
model update for rating
Diffstat (limited to 'src/Data/DevHive.Data')
-rw-r--r--src/Data/DevHive.Data/DevHiveContext.cs5
-rw-r--r--src/Data/DevHive.Data/Interfaces/IRatingRepository.cs3
-rw-r--r--src/Data/DevHive.Data/Repositories/PostRepository.cs2
-rw-r--r--src/Data/DevHive.Data/Repositories/RatingRepository.cs5
4 files changed, 8 insertions, 7 deletions
diff --git a/src/Data/DevHive.Data/DevHiveContext.cs b/src/Data/DevHive.Data/DevHiveContext.cs
index ece3439..b0bbdc6 100644
--- a/src/Data/DevHive.Data/DevHiveContext.cs
+++ b/src/Data/DevHive.Data/DevHiveContext.cs
@@ -88,11 +88,10 @@ namespace DevHive.Data
builder.Entity<Rating>()
.HasOne(x => x.Post)
- .WithOne(x => x.Rating)
- .HasForeignKey<Rating>(x => x.PostId);
+ .WithMany(x => x.Ratings);
builder.Entity<Post>()
- .HasOne(x => x.Rating)
+ .HasMany(x => x.Ratings)
.WithOne(x => x.Post);
/* User Rated Posts */
diff --git a/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs b/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs
index b5aff88..c8636b6 100644
--- a/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs
+++ b/src/Data/DevHive.Data/Interfaces/IRatingRepository.cs
@@ -1,4 +1,5 @@
using System;
+using System.Collections.Generic;
using System.Threading.Tasks;
using DevHive.Data.Models;
using DevHive.Data.Repositories.Interfaces;
@@ -7,7 +8,7 @@ namespace DevHive.Data.Interfaces
{
public interface IRatingRepository : IRepository<Rating>
{
- Task<Rating> GetRatingByPostId(Guid postId);
+ Task<List<Rating>> GetRatingsByPostId(Guid postId);
Task<bool> UserRatedPost(Guid userId, Guid postId);
}
}
diff --git a/src/Data/DevHive.Data/Repositories/PostRepository.cs b/src/Data/DevHive.Data/Repositories/PostRepository.cs
index b6c5e37..0ab1afb 100644
--- a/src/Data/DevHive.Data/Repositories/PostRepository.cs
+++ b/src/Data/DevHive.Data/Repositories/PostRepository.cs
@@ -36,7 +36,7 @@ namespace DevHive.Data.Repositories
.Include(x => x.Comments)
.Include(x => x.Creator)
.Include(x => x.Attachments)
- // .Include(x => x.Rating)
+ .Include(x => x.CurrentRating)
.FirstOrDefaultAsync(x => x.Id == id);
}
diff --git a/src/Data/DevHive.Data/Repositories/RatingRepository.cs b/src/Data/DevHive.Data/Repositories/RatingRepository.cs
index b361693..2f56aee 100644
--- a/src/Data/DevHive.Data/Repositories/RatingRepository.cs
+++ b/src/Data/DevHive.Data/Repositories/RatingRepository.cs
@@ -1,4 +1,5 @@
using System;
+using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using DevHive.Data.Interfaces;
@@ -19,10 +20,10 @@ namespace DevHive.Data.Repositories
this._postRepository = postRepository;
}
- public async Task<Rating> GetRatingByPostId(Guid postId)
+ public async Task<List<Rating>> GetRatingsByPostId(Guid postId)
{
return await this._context.Rating
- .FirstOrDefaultAsync(x => x.Post.Id == postId);
+ .Where(x => x.Post.Id == postId).ToListAsync();
}
public async Task<bool> UserRatedPost(Guid userId, Guid postId)