Update spam circle cache after updating circle status.

This commit is contained in:
2025-09-11 00:26:11 -04:00
parent 3c0a39b324
commit 39274165cb
10 changed files with 70 additions and 37 deletions

View File

@@ -11,6 +11,7 @@ public class CircleWriter(AppDbContext context) : ICircleWriter
public async Task<UpdateCircleStatusResponse> UpdateStatusAsync(UpdateCircleStatusRequest request, CancellationToken cancellationToken = default)
{
Circle circle = await GetCircleAsync(request.CircleId, cancellationToken);
CircleStatus oldStatus = GetCircleStatus(circle);
switch (request.CircleStatus)
{
@@ -38,7 +39,23 @@ public class CircleWriter(AppDbContext context) : ICircleWriter
await context.SaveChangesAsync(cancellationToken);
return new UpdateCircleStatusResponse(request.CircleId, request.CircleStatus);
CircleStatus newStatus = GetCircleStatus(circle);
return new UpdateCircleStatusResponse(request.CircleId, oldStatus, newStatus);
}
private static CircleStatus GetCircleStatus(Circle circle)
{
if (circle.Favorite)
return CircleStatus.Favorite;
if (circle.Blacklisted)
return CircleStatus.Blacklisted;
if (circle.Spam)
return CircleStatus.Spam;
return CircleStatus.Neutral;
}
private async Task<Circle> GetCircleAsync(int circleId, CancellationToken cancellationToken)