34 lines
1.1 KiB
C#
34 lines
1.1 KiB
C#
using Infrastructure;
|
|
using Infrastructure.Attribute;
|
|
using Quartz;
|
|
using Quartz.Impl;
|
|
using Quartz.Impl.Triggers;
|
|
using System.Threading.Tasks;
|
|
using ZR.Service.System.IService;
|
|
|
|
namespace ZR.Tasks.TaskScheduler
|
|
{
|
|
[AppService(ServiceType = typeof(Job_HttpRequest), ServiceLifetime = LifeTime.Scoped)]
|
|
internal class Job_HttpRequest : JobBase, IJob
|
|
{
|
|
private readonly ISysTasksQzService tasksQzService;
|
|
|
|
public Job_HttpRequest(ISysTasksQzService tasksQzService)
|
|
{
|
|
this.tasksQzService = tasksQzService;
|
|
}
|
|
public async Task Execute(IJobExecutionContext context)
|
|
{
|
|
await ExecuteJob(context, async () => await Run(context));
|
|
}
|
|
public async Task Run(IJobExecutionContext context)
|
|
{
|
|
AbstractTrigger trigger = (context as JobExecutionContextImpl).Trigger as AbstractTrigger;
|
|
var info = await tasksQzService.GetByIdAsync(trigger.Name);
|
|
|
|
var result = await HttpHelper.HttpPostAsync("http://" + info.ApiUrl, info.JobParams);
|
|
//Console.WriteLine(result);
|
|
}
|
|
}
|
|
}
|