detect/detect.gui/Api/System/DetectTaskApi.cs
2025-02-07 12:16:01 +08:00

44 lines
1.6 KiB
C#

using detect.gui.Models.Entities;
using detect.gui.Services.Detect;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Routing;
using Splat;
using detect.gui.Services;
namespace detect.gui.Api.System;
public class DetectTaskApi
{
public DetectTaskApi(IEndpointRouteBuilder? webApp)
{
// all
webApp?.MapGet("/v1/data/task/all", () => Locator.Current.GetService<DetectTaskService>()!.ListAll());
// search
webApp?.MapGet("/v1/data/task/search",
([FromQuery] string? name, [FromQuery] int pageNum = 1, [FromQuery] int pageSize = 10) =>
Locator.Current.GetService<DetectTaskService>()!.Search(name, pageNum, pageSize));
// id
webApp?.MapGet("/v1/data/task/{id:long}", ([FromRoute] long id) =>
Locator.Current.GetService<DetectTaskService>()!.ListById(id));
// add
webApp?.MapPost("/v1/data/task/", ([FromBody] DetectTaskEntity entity) =>
Locator.Current.GetService<DetectTaskService>()!.AddData(entity));
// update
webApp?.MapPut("/v1/data/task/", ([FromBody] DetectTaskEntity entity) =>
Locator.Current.GetService<DetectTaskService>()!.UpdateData(entity));
// delete
webApp?.MapDelete("/v1/data/task/{id:long}", ([FromRoute] long id) =>
Locator.Current.GetService<DetectTaskService>()!.DeleteById(id));
// ocr
// webApp?.MapPost("/v1/data/task/ocr/",
// ([FromBody] string base64ImageString) =>
// Locator.Current.GetService<OCRService>()!.ImportByOCR(base64ImageString));
}
}