You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.3 KiB
40 lines
1.3 KiB
using Microsoft.Extensions.Logging;
|
|
using Tiobon.Core.Helper;
|
|
|
|
/// <summary>
|
|
/// 这里要注意下,命名空间和程序集是一样的,不然反射不到(任务类要去JobSetup添加注入)
|
|
/// </summary>
|
|
namespace Tiobon.Core.Tasks;
|
|
|
|
public class Job_URL_Quartz : JobBase, IJob
|
|
{
|
|
private readonly ILogger<Job_URL_Quartz> _logger;
|
|
|
|
public Job_URL_Quartz(ILogger<Job_URL_Quartz> logger, ITasksQzServices tasksQzServices, ITasksLogServices tasksLogServices)
|
|
: base(tasksQzServices, tasksLogServices)
|
|
{
|
|
_tasksQzServices = tasksQzServices;
|
|
_logger = logger;
|
|
}
|
|
public async Task Execute(IJobExecutionContext context)
|
|
{
|
|
// 可以直接获取 JobDetail 的值
|
|
var jobKey = context.JobDetail.Key;
|
|
var jobId = jobKey.Name;
|
|
var executeLog = await ExecuteJob(context, async () => await Run(context, jobId.ObjToInt()));
|
|
|
|
}
|
|
public async Task Run(IJobExecutionContext context, int jobid)
|
|
{
|
|
if (jobid > 0)
|
|
{
|
|
JobDataMap data = context.JobDetail.JobDataMap;
|
|
string pars = data.GetString("JobParam");
|
|
if (!string.IsNullOrWhiteSpace(pars))
|
|
{
|
|
var log = await HttpHelper.GetAsync(pars);
|
|
_logger.LogInformation(log);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|