Files
KArtSell.Aegis/docs/Design/kbx-foundation-v36/backend/Modules/OMS/Lookups/Customers/ResolveEndpoint.cs
T

26 lines
881 B
C#

using Dapper;
using FastEndpoints;
using Npgsql;
namespace Modules.OMS.Lookups.Customers;
public sealed class ResolveEndpoint(NpgsqlDataSource dataSource) : EndpointWithoutRequest
{
public override void Configure()
{
Get("/api/lookups/customers/{id}");
Permissions("oms.order.read");
}
public override async Task HandleAsync(CancellationToken ct)
{
var id = Route<Guid>("id");
await using var connection = await dataSource.OpenConnectionAsync(ct);
var item = await connection.QuerySingleOrDefaultAsync(new CommandDefinition(@"
select id, code, name as DisplayName, case when is_active then '사용' else '중지' end as Status
from oms.customers where id=@Id;", new { Id = id }, cancellationToken: ct));
if (item is null) { await Send.NotFoundAsync(ct); return; }
await Send.OkAsync(item, ct);
}
}