|
|
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
|
using Quartz;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using zzz.Common.Helper;
|
|
|
|
|
using zzz.Services.ReadPLC;
|
|
|
|
|
using zzz.Services.Sys.TasksQzs;
|
|
|
|
|
|
|
|
|
|
namespace zzz.Tasks
|
|
|
|
|
{
|
|
|
|
|
public class Job_PLC_read_line20 : JobBase, IJob
|
|
|
|
|
{
|
|
|
|
|
public ILogger<Job_PLC_read_line20> _logger = null;
|
|
|
|
|
private readonly IReadPLCDataService _readPlcDataService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public Job_PLC_read_line20(
|
|
|
|
|
ILogger<Job_PLC_read_line20> logger,
|
|
|
|
|
IReadPLCDataService readPlcDataService,
|
|
|
|
|
ITasksQzServices tasksQzServices
|
|
|
|
|
)
|
|
|
|
|
{
|
|
|
|
|
_logger = logger;
|
|
|
|
|
_readPlcDataService = readPlcDataService;
|
|
|
|
|
_tasksQzServices = tasksQzServices;
|
|
|
|
|
}
|
|
|
|
|
public async Task Execute(IJobExecutionContext context)
|
|
|
|
|
{
|
|
|
|
|
var executeLog = await ExecuteJob(context, async () => await Run(context));
|
|
|
|
|
}
|
|
|
|
|
public async Task Run(IJobExecutionContext context)
|
|
|
|
|
{
|
|
|
|
|
//var list = await _blogArticleServices.Query();
|
|
|
|
|
// 也可以通过数据库配置,获取传递过来的参数
|
|
|
|
|
//JobDataMap data = context.JobDetail.JobDataMap;
|
|
|
|
|
//int jobId = data.GetInt("JobParam");
|
|
|
|
|
//ConsoleHelper.WriteColorLine("执行任务具体XXXXXXXXXXX", ConsoleColor.Red);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 可以直接获取 JobDetail 的值
|
|
|
|
|
var jobKey = context.JobDetail.Key;
|
|
|
|
|
var jobId = jobKey.Name;
|
|
|
|
|
// 也可以通过数据库配置,获取传递过来的参数
|
|
|
|
|
JobDataMap data = context.JobDetail.JobDataMap;
|
|
|
|
|
|
|
|
|
|
_logger.LogInformation($"执行任务{jobKey}-{jobId}");
|
|
|
|
|
|
|
|
|
|
var jobParam = JsonHelper.JsonToObj<EquipInput>(data["JobParam"].ToString());
|
|
|
|
|
|
|
|
|
|
await _readPlcDataService.ReadDataLine20(jobParam);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|