Files
Examples/GerstITS.Examples.Api/Endpoints/Endpoints.CustomerNotes.cs
T

31 lines
963 B
C#

using GerstITS.Examples.Logic.Customers;
using Microsoft.AspNetCore.Mvc;
namespace GerstITS.Examples.Api.Endpoints;
internal static partial class Endpoints
{
internal static RouteGroupBuilder MapCustomerNoteEndpoints(this RouteGroupBuilder group)
{
CustomerNotes.MapGetByCustomer(group);
CustomerNotes.MapAdd(group);
return group;
}
internal static class CustomerNotes
{
internal static void MapGetByCustomer(RouteGroupBuilder group)
{
group.MapGet("customers/{id:int}/notes", (int id, ICustomerProvider customerProvider) =>
Results.Ok(customerProvider.GetNotes(id)));
}
internal static void MapAdd(RouteGroupBuilder group)
{
group.MapPost("customers/{id:int}/notes", (int id, [FromBody] CustomerNote note, ICustomerProvider customerProvider) =>
Results.Ok(customerProvider.AddNote(id, note.Text)));
}
}
}