Adds messages api

This commit is contained in:
Jonathan Bourdon
2024-06-27 12:37:59 -04:00
parent 891597fb08
commit 72e243cf84
21 changed files with 485 additions and 61 deletions

View File

@@ -0,0 +1,33 @@
using FastEndpoints;
using Hutopy.Web.Messages.Data;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
namespace Hutopy.Web.Messages.Handlers;
public record GetMessagesByUserRequest(
[FromRoute] Guid UserId);
public class GetMessagesByUser(
MessagingDbContext context)
: EndpointWithoutRequest<List<Message>>
{
public override void Configure()
{
Tags("Messages");
Get("/api/messages/by-user/{UserId:guid}");
}
public override async Task HandleAsync(
CancellationToken ct)
{
var userId = Route<Guid>("UserId");
var posts = await context
.Messages
.Where(c => c.CreatedBy == userId)
.ToListAsync(cancellationToken: ct);
await SendAsync(posts, cancellation: ct);
}
}