namespace Admin.NET.Core.Service; /// /// 系统作业任务服务 /// [ApiDescriptionSettings(Order = 188)] [AllowAnonymous] public class SysJobService : IDynamicApiController, ITransient { private readonly ISchedulerFactory _schedulerFactory; public SysJobService(ISchedulerFactory schedulerFactory) { _schedulerFactory = schedulerFactory; } /// /// 获取所有作业任务列表 /// [HttpGet("/sysJob/list")] public async Task> GetJobList() { var JobDetails = _schedulerFactory.GetJobsOfModels(); return await Task.FromResult(JobDetails.ToList()); } /// /// 增加作业任务 /// /// [HttpPost("/sysJob/add")] public async Task AddJob() { var jobBuilder = JobBuilder.From(@" { ""jobId"": ""job1"", ""groupName"": null, ""jobType"": ""Admin.NET.Application"", ""assemblyName"": ""Admin.NET.Application"", ""description"": null, ""concurrent"": true, ""includeAnnotations"": false, ""properties"": ""{}"", ""updatedTime"": ""2022-11-22 18:00:00"" }"); var schedulerResult = _schedulerFactory.TryAddJob(jobBuilder, new[] { Triggers.PeriodSeconds(10) }, out _); return await Task.FromResult(schedulerResult); } /// /// 删除作业任务 /// /// [HttpPost("/sysJob/delete")] public async Task DeleteJob(JobInput input) { var schedulerResult = _schedulerFactory.TryRemoveJob(input.Name, out _); return await Task.FromResult(schedulerResult); } }