aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline/Services
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-01-07 20:12:00 +0800
committercrupest <crupest@outlook.com>2021-01-07 20:12:00 +0800
commit97e6ac51ac4df58cd1229e7974d2b846b192558a (patch)
tree73a1baa078fa7a38dcdbdd38620bba0ef6a1298f /BackEnd/Timeline/Services
parentd3c9d0a9335ac6df3e330172b1b1a8a219cbdbaf (diff)
downloadtimeline-97e6ac51ac4df58cd1229e7974d2b846b192558a.tar.gz
timeline-97e6ac51ac4df58cd1229e7974d2b846b192558a.tar.bz2
timeline-97e6ac51ac4df58cd1229e7974d2b846b192558a.zip
refactor: Make mapper a service. Fix #202.
Diffstat (limited to 'BackEnd/Timeline/Services')
-rw-r--r--BackEnd/Timeline/Services/TimelinePostService.cs9
-rw-r--r--BackEnd/Timeline/Services/TimelineService.cs12
-rw-r--r--BackEnd/Timeline/Services/UserService.cs8
-rw-r--r--BackEnd/Timeline/Services/UserTokenManager.cs1
4 files changed, 9 insertions, 21 deletions
diff --git a/BackEnd/Timeline/Services/TimelinePostService.cs b/BackEnd/Timeline/Services/TimelinePostService.cs
index 9f0fd550..a8bdbf92 100644
--- a/BackEnd/Timeline/Services/TimelinePostService.cs
+++ b/BackEnd/Timeline/Services/TimelinePostService.cs
@@ -3,7 +3,6 @@ using Microsoft.Extensions.Logging;
using SixLabors.ImageSharp;
using System;
using System.Collections.Generic;
-using System.Globalization;
using System.Linq;
using System.Threading.Tasks;
using Timeline.Entities;
@@ -166,12 +165,12 @@ namespace Timeline.Services
if (modifiedSince.HasValue)
{
- query = query.Include(p => p.Author).Where(p => p.LastUpdated >= modifiedSince || (p.Author != null && p.Author.UsernameChangeTime >= modifiedSince));
+ query = query.Where(p => p.LastUpdated >= modifiedSince || (p.Author != null && p.Author.UsernameChangeTime >= modifiedSince));
}
query = query.OrderBy(p => p.Time);
- return await query.Include(p => p.Author!.Permissions).ToListAsync();
+ return await query.ToListAsync();
}
public async Task<string> GetPostDataETag(long timelineId, long postId)
@@ -270,8 +269,6 @@ namespace Timeline.Services
_database.TimelinePosts.Add(postEntity);
await _database.SaveChangesAsync();
- await _database.Entry(postEntity).Reference(p => p.Author).Query().Include(a => a.Permissions).LoadAsync();
-
return postEntity;
}
@@ -313,8 +310,6 @@ namespace Timeline.Services
_database.TimelinePosts.Add(postEntity);
await _database.SaveChangesAsync();
- await _database.Entry(postEntity).Reference(p => p.Author).Query().Include(a => a.Permissions).LoadAsync();
-
return postEntity;
}
diff --git a/BackEnd/Timeline/Services/TimelineService.cs b/BackEnd/Timeline/Services/TimelineService.cs
index e310951a..1d1bb320 100644
--- a/BackEnd/Timeline/Services/TimelineService.cs
+++ b/BackEnd/Timeline/Services/TimelineService.cs
@@ -244,7 +244,7 @@ namespace Timeline.Services
public async Task<TimelineEntity> GetTimeline(long id)
{
- var entity = await _database.Timelines.Where(t => t.Id == id).Include(t => t.Owner).ThenInclude(o => o.Permissions).Include(t => t.Members).ThenInclude(m => m.User).ThenInclude(u => u.Permissions).SingleOrDefaultAsync();
+ var entity = await _database.Timelines.Where(t => t.Id == id).SingleOrDefaultAsync();
if (entity is null)
throw new TimelineNotExistException(id);
@@ -397,7 +397,7 @@ namespace Timeline.Services
if (relate == null)
{
- entities = await ApplyTimelineVisibilityFilter(_database.Timelines).Include(t => t.Owner).ThenInclude(o => o.Permissions).Include(t => t.Members).ThenInclude(m => m.User).ThenInclude(u => u.Permissions).ToListAsync();
+ entities = await ApplyTimelineVisibilityFilter(_database.Timelines).ToListAsync();
}
else
{
@@ -405,16 +405,15 @@ namespace Timeline.Services
if ((relate.Type & TimelineUserRelationshipType.Own) != 0)
{
- entities.AddRange(await ApplyTimelineVisibilityFilter(_database.Timelines.Where(t => t.OwnerId == relate.UserId)).Include(t => t.Owner).ThenInclude(o => o.Permissions).Include(t => t.Members).ThenInclude(m => m.User).ThenInclude(u => u.Permissions).ToListAsync());
+ entities.AddRange(await ApplyTimelineVisibilityFilter(_database.Timelines.Where(t => t.OwnerId == relate.UserId)).ToListAsync());
}
if ((relate.Type & TimelineUserRelationshipType.Join) != 0)
{
- entities.AddRange(await ApplyTimelineVisibilityFilter(_database.TimelineMembers.Where(m => m.UserId == relate.UserId).Include(m => m.Timeline).ThenInclude(t => t.Members).ThenInclude(m => m.User).ThenInclude(u => u.Permissions).Include(t => t.Timeline.Owner.Permissions).Select(m => m.Timeline)).ToListAsync());
+ entities.AddRange(await ApplyTimelineVisibilityFilter(_database.TimelineMembers.Where(m => m.UserId == relate.UserId).Include(m => m.Timeline).Select(m => m.Timeline)).ToListAsync());
}
}
-
return entities;
}
@@ -435,9 +434,6 @@ namespace Timeline.Services
_database.Timelines.Add(entity);
await _database.SaveChangesAsync();
- await _database.Entry(entity).Reference(e => e.Owner).Query().Include(o => o.Permissions).LoadAsync();
- await _database.Entry(entity).Collection(e => e.Members).Query().Include(m => m.User).ThenInclude(u => u.Permissions).LoadAsync();
-
return entity;
}
diff --git a/BackEnd/Timeline/Services/UserService.cs b/BackEnd/Timeline/Services/UserService.cs
index d341759c..288d208c 100644
--- a/BackEnd/Timeline/Services/UserService.cs
+++ b/BackEnd/Timeline/Services/UserService.cs
@@ -115,7 +115,7 @@ namespace Timeline.Services
public async Task<UserEntity> GetUser(long id)
{
- var user = await _databaseContext.Users.Where(u => u.Id == id).Include(u => u.Permissions).SingleOrDefaultAsync();
+ var user = await _databaseContext.Users.Where(u => u.Id == id).SingleOrDefaultAsync();
if (user == null)
throw new UserNotExistException(id);
@@ -125,7 +125,7 @@ namespace Timeline.Services
public async Task<List<UserEntity>> GetUsers()
{
- return await _databaseContext.Users.Include(u => u.Permissions).ToListAsync();
+ return await _databaseContext.Users.ToListAsync();
}
public async Task<UserEntity> CreateUser(string username, string password)
@@ -153,8 +153,6 @@ namespace Timeline.Services
_logger.LogInformation(Log.Format(LogDatabaseCreate, ("Id", newEntity.Id), ("Username", username)));
- await _databaseContext.Entry(newEntity).Collection(e => e.Permissions).LoadAsync();
-
return newEntity;
}
@@ -172,7 +170,7 @@ namespace Timeline.Services
CheckNicknameFormat(param.Nickname, nameof(param));
}
- var entity = await _databaseContext.Users.Where(u => u.Id == id).Include(u => u.Permissions).SingleOrDefaultAsync();
+ var entity = await _databaseContext.Users.Where(u => u.Id == id).SingleOrDefaultAsync();
if (entity == null)
throw new UserNotExistException(id);
diff --git a/BackEnd/Timeline/Services/UserTokenManager.cs b/BackEnd/Timeline/Services/UserTokenManager.cs
index 4e24c922..78aa0b1f 100644
--- a/BackEnd/Timeline/Services/UserTokenManager.cs
+++ b/BackEnd/Timeline/Services/UserTokenManager.cs
@@ -3,7 +3,6 @@ using System;
using System.Threading.Tasks;
using Timeline.Entities;
using Timeline.Helpers;
-using Timeline.Models;
using Timeline.Services.Exceptions;
namespace Timeline.Services