using Autofac;
|
using Rhea.Common;
|
using Sundial;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading;
|
using System.Threading.Tasks;
|
using Tiger.IBusiness;
|
using Tiger.Model;
|
using Tiger.Model.Entitys.WMS.DTOS;
|
using Tiger.Model.Minsun;
|
|
namespace Tiger.Business.WMS
|
{
|
/// <summary>
|
/// XCXJ据点到货单推T100
|
/// </summary>
|
public class ReceiptHToErpXCSJJob : TigerJobBase, ITigerJob
|
{
|
public string Id { get; set; } = Guid.NewGuid().ToString("N");
|
public string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
public string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
try
|
{
|
var result = iWMS.ReceiptHToErp("XCSJ", context.Trigger.ConvertToMonitor());
|
if (!result.IsSuccessed)
|
{
|
Logger.Scheduler.Error($"生成到货异常:{result.Message}");
|
}
|
//SaveLog(context, "XCXJ据点到货单推T100");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "生成到货单异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// DGXC据点到货单推T100
|
/// </summary>
|
public class ReceiptHToErpDGXCJob : TigerJobBase, ITigerJob
|
{
|
public string Id { get; set; } = Guid.NewGuid().ToString("N");
|
public string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
public string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
try
|
{
|
var result = iWMS.ReceiptHToErp("DGXC", context.Trigger.ConvertToMonitor());
|
//Thread.Sleep(10*60*1000);
|
if (!result.IsSuccessed)
|
{
|
Logger.Scheduler.Error($"生成到货异常:{result.Message}");
|
}
|
//SaveLog(context, "DGXC据点到货单推T100");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "生成到货单异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// AHXC据点到货单推T100
|
/// </summary>
|
public class ReceiptHToErpAHXCJob : TigerJobBase, ITigerJob
|
{
|
public string Id { get; set; } = Guid.NewGuid().ToString("N");
|
public string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
public string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
try
|
{
|
var result = iWMS.ReceiptHToErp("AHXC", context.Trigger.ConvertToMonitor());
|
if (!result.IsSuccessed)
|
{
|
Logger.Scheduler.Error($"生成到货异常:{result.Message}");
|
}
|
//SaveLog(context, "AHXC据点到货单推T100");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "生成到货单异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 从T100获取物料信息
|
/// </summary>
|
public class MaterialInfoToT100Job : TigerJobBase, ITigerJob
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="materialInfoBusiness"></param>
|
//public MaterialInfoToT100Job(IMaterialInfoBusiness materialInfoBusiness)
|
//{
|
// _materialInfoBusiness = materialInfoBusiness;
|
//}
|
|
/// <summary>
|
/// 同步物料信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
Logger.Scheduler.Info(context.Trigger.ConvertToMonitor()); //计划任务开始日志
|
foreach (var item in BIZ_WMS_TRANSFER.strongHoldList)
|
{
|
var model = new InputDTO()
|
{
|
site = item,
|
startdt = starttime.AddHours(-24),
|
enddt = starttime
|
};
|
var result = _materialInfoBusiness.GetMaterialFromT100(model);
|
}
|
|
SaveLog(context, "同步T100物料信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100物料信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 从T100获取物料信息
|
/// </summary>
|
public class PurchaseInfoFromT100Job : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
///// <summary>
|
///// 构造函数
|
///// </summary>
|
///// <param name="materialInfoBusiness"></param>
|
//public PurchaseInfoFromT100Job(IMaterialInfoBusiness materialInfoBusiness)
|
//{
|
// _materialInfoBusiness = materialInfoBusiness;
|
//}
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步物料信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
Logger.Scheduler.Info(context.Trigger.ConvertToMonitor());
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item,
|
startdt = starttime.AddHours(-24),
|
enddt = starttime
|
};
|
var result = _materialInfoBusiness.GetPurchaseInfoFromT100(model);
|
}
|
SaveLog(context, "同步T100采购单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100采购单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public class CustomerInfoFromT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
///// <summary>
|
///// 构造函数
|
///// </summary>
|
///// <param name="materialInfoBusiness"></param>
|
//public CustomerInfoFromT100(IMaterialInfoBusiness materialInfoBusiness)
|
//{
|
// _materialInfoBusiness = materialInfoBusiness;
|
//}
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步采购单信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
Logger.Scheduler.Info(context.Trigger.ConvertToMonitor());
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item,
|
startdt = starttime.AddHours(-24),
|
enddt = starttime
|
};
|
var result = _materialInfoBusiness.GetCustomerInfoFromT100(model);
|
}
|
|
SaveLog(context, "同步T10采购单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100采购单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public class InspectionNoInfoFromT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步送检单信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var result = _materialInfoBusiness.GetInspectionNoFromT100();
|
SaveLog(context, "同步T100送检单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100采购单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 其他出库单定时推送给T100——过账
|
/// </summary>
|
public class OtherOutInfoToT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步其他出库单单信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item
|
};
|
var result = _materialInfoBusiness.GetOtherOutInfoToT100(model);
|
}
|
|
SaveLog(context, "同步T100调拨单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100调拨单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 其他出库单定时推送给T100——过账
|
/// </summary>
|
public class SaaleOutInfoToT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步送检单信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item
|
};
|
var result = _materialInfoBusiness.PutSaleOutInfoToT100(model);
|
}
|
|
SaveLog(context, "同步T100调拨单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100调拨单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 过账调拨单定时推送给T100——创单并过账
|
/// </summary>
|
public class TrasferInfoToT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 过账调拨单定时推送给T100——创单并过账
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
var DB = Biz.Db;
|
var jobData = DB.Queryable<TSK_JOB>().Where(i => i.JobName == "TrasferInfoToT100").First();// 获取定时任务内容
|
if (!jobData.IsNullOrEmpty() && jobData.ISRUNNING == 1)
|
{
|
Logger.Scheduler.Info("调拨定时任务正在执行中,本次任务已主动终止!");
|
//throw new Exception("调拨定时任务正在执行中,本次任务已主动终止!");
|
}
|
else
|
{
|
jobData.ISRUNNING = 1;
|
DB.Updateable(jobData).ExecuteCommand();// 如果当前定时任务不在执行中的状态,则在开始执行前,设定为执行中
|
}
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item
|
};
|
var result = _materialInfoBusiness.GetTrasferInfoToT100(model);
|
}
|
|
SaveLog(context, "同步T100调拨单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100调拨单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 过账调拨单定时推送给T100——直接过账
|
/// </summary>
|
public class TrasferInfoToT100Plan2 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 过账调拨单定时推送给T100——直接过账
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item
|
};
|
var result = _materialInfoBusiness.GetTrasferInfoToT100Plan2(model);
|
}
|
|
SaveLog(context, "同步T100调拨单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100调拨单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 过账调拨单定时推送给T100
|
/// </summary>
|
public class TrasferInfoFromT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步送检单信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item,
|
startdt = starttime.AddHours(-24),
|
enddt = starttime
|
};
|
var result = _materialInfoBusiness.GetTrasferInfoFromT100(model);
|
}
|
SaveLog(context, "同步T100调拨单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100调拨单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 过账调拨单定时推送给T100
|
/// </summary>
|
public class OtheroUTInfoFromT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步送检单信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item,
|
startdt = starttime.AddHours(-24),
|
enddt = starttime
|
};
|
var result = _materialInfoBusiness.GetOtherOutInfoFromT100(model);
|
}
|
|
SaveLog(context, "同步T100调拨单信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100调拨单信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
///
|
/// </summary>
|
public class WarehouseCodeInfoFromT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步仓库信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
Logger.Scheduler.Info(context.Trigger.ConvertToMonitor());
|
var orgList = WMS_ITEMExtension.GetOrgList();
|
foreach (var item in orgList)
|
{
|
var model = new InputDTO()
|
{
|
site = item,
|
startdt = starttime.AddHours(-24),
|
enddt = starttime
|
};
|
var result = _materialInfoBusiness.GetWarehouseCodeInfoFromT100(model);
|
}
|
SaveLog(context, "同步T100仓库代码信息数据");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步T100仓库代码信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 从MES获取成品入库信息
|
/// </summary>
|
public class ProductInputInfoFromT100 : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 同步MES成品入库信息定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var DB = Biz.Db;
|
var jobData = DB.Queryable<TSK_JOB>().Where(i => i.JobName == "ProductInputInfoFromT100").First();// 获取定时任务内容
|
if (!jobData.IsNullOrEmpty() && jobData.ISRUNNING == 1)
|
{
|
Logger.Scheduler.Info("成品入库定时任务正在执行中,本次任务已主动终止!");
|
return;
|
//throw new Exception("成品入库定时任务正在执行中,本次任务已主动终止!");
|
}
|
else
|
{
|
jobData.ISRUNNING = 1;
|
DB.Updateable(jobData).ExecuteCommand();// 如果当前定时任务不在执行中的状态,则在开始执行前,设定为执行中
|
}
|
var result = _materialInfoBusiness.ProductInputInfoFromT100();
|
|
SaveLog(context, "同步MES成品入库信息数据成功");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "同步MES成品入库信息数据异常");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
|
/// <summary>
|
/// 物料超期预警
|
/// </summary>
|
public class MaterialExtended : TigerJobBase, ITigerJob
|
{
|
#region 常量
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Id { get; set; } = Guid.NewGuid().ToString("N");
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Tag { get; set; } = "Receipt Header To Erp Interface Job";
|
|
/// <summary>
|
///
|
/// </summary>
|
public new string Name { get; set; } = "Receipt Header To Erp Interface Job";
|
|
#endregion 常量
|
|
#region DI
|
|
/// <summary>
|
///
|
/// </summary>
|
private readonly IMaterialInfoBusiness _materialInfoBusiness = BizContext.Container.Resolve<IMaterialInfoBusiness>();
|
|
#endregion DI
|
|
/// <summary>
|
/// 物料超期预警定时任务
|
/// </summary>
|
/// <param name="context"></param>
|
/// <param name="stoppingToken"></param>
|
/// <returns></returns>
|
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
|
{
|
var starttime = DateTime.Now;
|
try
|
{
|
var result = _materialInfoBusiness.MaterialExtended();
|
|
SaveLog(context, "物料超期预警定时任务执行成功");
|
}
|
catch (System.Exception ex)
|
{
|
Logger.Scheduler.Fatal(ex, "物料超期预警定时任务执行成功");
|
}
|
await Task.CompletedTask;
|
}
|
}
|
}
|