using Rhea.Common;
using FluentScheduler;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Newtonsoft.Json;
using Tiger.IBusiness;
using Tiger.Model;
using Tiger.Model.Minsun;
namespace Tiger.Business.MES
{
///
/// 从U9C获取供应商信息
///
public class U9C_ME_GetSupplier : TigerJobBase, ITJob
{
public string Id { get; set; } = Guid.NewGuid().ToString("N");
public string Tag { get; set; }
public string Name { get; set; }
public U9C_ME_GetSupplier()
{
Id = Guid.NewGuid().ToString("N");
Tag = "U9C_ME_GetSupplier Interface Job";
GetJob(typeof(U9C_ME_GetSupplier).Name);
Name = Job.JobName;
}
public void Execute()
{
#region 固定写法
Logger.Scheduler.Info($"/**\r\n *进入计划调度(名称: {Name} )....\r\n */\r\n"); //固定写法
Schedule = JobManager.GetSchedule(Name); //固定写法
StartTime = DateTime.Now; //固定写法
#endregion
try
{
string msg = "";
string status = "Successed";
GetJob(typeof(U9C_ME_GetSupplier).Name);
TskJobInput tskJobInput = CheckHowToDo();
if (tskJobInput.result)
{
var result = DI.Resolve().GetSupplier(tskJobInput.input);
if (!result.IsSuccessed)
{
msg = $"获取供应商信息异常:{result.Message}";
Logger.Scheduler.Error(msg);
status = "Failed";
}
else
{
msg = $"从U9C获取供应商信息成功:{result.Message}";
//固定写法
Trig.LastRunTime = Args.ByInterval == "Y" ? tskJobInput.input.endTime.ToDateTime().AddHours(Args.Interval) : tskJobInput.input.endTime.ToDateTime();
Trig.NextRunTime = Schedule.NextRun;
}
}
SaveFluentSchedulerLog(status, $"{msg}");
Logger.Scheduler.Info($"计划调度(名称:{Name})完成,返回信息:{msg}\r\n");
}
catch (System.Exception ex)
{
Logger.Scheduler.Fatal(ex, "获取供应商信息异常");
SaveFluentSchedulerLog("Failed", ex.Message);
}
Logger.Scheduler.Info($"/* 计划调度(名称:{Name})结束 */\r\n"); //固定写法
}
}
}