Files
EmailBill/WebApi/Controllers/JobController.cs
SunCheng d052ae5197 fix
2026-02-10 17:49:19 +08:00

44 lines
1.0 KiB
C#

using Application;
namespace WebApi.Controllers;
[ApiController]
[Route("api/[controller]/[action]")]
public class JobController(
IJobApplication jobApplication
) : ControllerBase
{
[HttpGet]
public async Task<BaseResponse<List<JobStatus>>> GetJobsAsync()
{
var jobs = await jobApplication.GetJobsAsync();
return jobs.Ok();
}
[HttpPost]
public async Task<BaseResponse<bool>> ExecuteAsync([FromBody] JobRequest request)
{
await jobApplication.ExecuteAsync(request.JobName);
return true.Ok();
}
[HttpPost]
public async Task<BaseResponse<bool>> PauseAsync([FromBody] JobRequest request)
{
await jobApplication.PauseAsync(request.JobName);
return true.Ok();
}
[HttpPost]
public async Task<BaseResponse<bool>> ResumeAsync([FromBody] JobRequest request)
{
await jobApplication.ResumeAsync(request.JobName);
return true.Ok();
}
public class JobRequest
{
public string JobName { get; set; } = string.Empty;
}
}