后台线程配置
This commit is contained in:
@ -18,105 +18,105 @@ namespace WCS.BLL.Manager
|
|||||||
{
|
{
|
||||||
public static void InitBackgroundThread()
|
public static void InitBackgroundThread()
|
||||||
{
|
{
|
||||||
#region 定时任务:回传Mes入库出库
|
//#region 定时任务:回传Mes入库出库
|
||||||
Task.Run(() =>
|
//Task.Run(() =>
|
||||||
{
|
//{
|
||||||
while (true)
|
// while (true)
|
||||||
{
|
// {
|
||||||
//每5秒同步一次
|
// //每5秒同步一次
|
||||||
Thread.Sleep(5000);
|
// Thread.Sleep(5000);
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var records = DbHelp.db.Queryable<InOutRecord>()
|
// var records = DbHelp.db.Queryable<InOutRecord>()
|
||||||
.Where(t => t.OperateTime > DateTime.Now.AddDays(-3)) //只查询回传三天内数据
|
// .Where(t => t.OperateTime > DateTime.Now.AddDays(-3)) //只查询回传三天内数据
|
||||||
.Where(t => t.IsUpload == false)
|
// .Where(t => t.IsUpload == false)
|
||||||
.Includes(t => t.StoreInfo)
|
// .Includes(t => t.StoreInfo)
|
||||||
.OrderBy(t => t.Id)
|
// .OrderBy(t => t.Id)
|
||||||
.ToList();
|
// .ToList();
|
||||||
//入库记录上传
|
// //入库记录上传
|
||||||
var inventoryDetails = records.Where(t => t.Direction == DirectionEnum.入库)
|
// var inventoryDetails = records.Where(t => t.Direction == DirectionEnum.入库)
|
||||||
.WhereIF(!string.IsNullOrEmpty(LocalFile.Config.GroupName), t => t.GroupName == LocalFile.Config.GroupName)
|
// .WhereIF(!string.IsNullOrEmpty(LocalFile.Config.GroupName), t => t.GroupName == LocalFile.Config.GroupName)
|
||||||
.ToList();
|
// .ToList();
|
||||||
if (inventoryDetails != null && inventoryDetails.Count > 0)
|
// if (inventoryDetails != null && inventoryDetails.Count > 0)
|
||||||
{
|
// {
|
||||||
for (int i = 0; i < inventoryDetails.Count; i++)
|
// for (int i = 0; i < inventoryDetails.Count; i++)
|
||||||
{
|
// {
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
//请求WMS上传入库记录
|
// //请求WMS上传入库记录
|
||||||
var data = new InputStockInRequest
|
// var data = new InputStockInRequest
|
||||||
{
|
// {
|
||||||
materialBar = inventoryDetails[i].MatSN,
|
// materialBar = inventoryDetails[i].MatSN,
|
||||||
shelfCode = inventoryDetails[i].BigShelfCode,
|
// shelfCode = inventoryDetails[i].BigShelfCode,
|
||||||
shelfX = "R" + inventoryDetails[i].R,
|
// shelfX = "R" + inventoryDetails[i].R,
|
||||||
shelfY = "C" + inventoryDetails[i].C,
|
// shelfY = "C" + inventoryDetails[i].C,
|
||||||
shelfZ = inventoryDetails[i].Wei,
|
// shelfZ = inventoryDetails[i].Wei,
|
||||||
inUser = inventoryDetails[i].OperateUser,
|
// inUser = inventoryDetails[i].OperateUser,
|
||||||
inTime = inventoryDetails[i].OperateTime.ToString("yyyy-MM-dd HH:mm:ss"),
|
// inTime = inventoryDetails[i].OperateTime.ToString("yyyy-MM-dd HH:mm:ss"),
|
||||||
};
|
// };
|
||||||
Guid guid = Guid.NewGuid();
|
// Guid guid = Guid.NewGuid();
|
||||||
var result = ApiHelp.GetDataFromHttp<ResponseCommon>(LocalFile.Config.InputStockInStr, data, "POST", true);
|
// var result = ApiHelp.GetDataFromHttp<ResponseCommon>(LocalFile.Config.InputStockInStr, data, "POST", true);
|
||||||
if (result != null && (result.Code == 200))
|
// if (result != null && (result.Code == 200))
|
||||||
{
|
// {
|
||||||
//上传成功 更改上传状态
|
// //上传成功 更改上传状态
|
||||||
inventoryDetails[i].IsUpload = true;
|
// inventoryDetails[i].IsUpload = true;
|
||||||
DbHelp.db.Updateable(inventoryDetails[i]).ExecuteCommand();
|
// DbHelp.db.Updateable(inventoryDetails[i]).ExecuteCommand();
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
|
|
||||||
}
|
// }
|
||||||
Thread.Sleep(200);
|
// Thread.Sleep(200);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
//出库记录上传
|
// //出库记录上传
|
||||||
var outRecord = records.Where(t => t.Direction == DirectionEnum.出库)
|
// var outRecord = records.Where(t => t.Direction == DirectionEnum.出库)
|
||||||
.Where(t => !string.IsNullOrEmpty(t.OrderNumber))
|
// .Where(t => !string.IsNullOrEmpty(t.OrderNumber))
|
||||||
.WhereIF(!string.IsNullOrEmpty(LocalFile.Config.GroupName), t => t.GroupName == LocalFile.Config.GroupName)
|
// .WhereIF(!string.IsNullOrEmpty(LocalFile.Config.GroupName), t => t.GroupName == LocalFile.Config.GroupName)
|
||||||
.ToList();
|
// .ToList();
|
||||||
if (outRecord != null && outRecord.Count > 0)
|
// if (outRecord != null && outRecord.Count > 0)
|
||||||
{
|
// {
|
||||||
for (int i = 0; i < outRecord.Count; i++)
|
// for (int i = 0; i < outRecord.Count; i++)
|
||||||
{
|
// {
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var retString = string.Empty;
|
// var retString = string.Empty;
|
||||||
|
|
||||||
var data = new BunkerOutRequest()
|
// var data = new BunkerOutRequest()
|
||||||
{
|
// {
|
||||||
materialBar = outRecord[i].MatSN,
|
// materialBar = outRecord[i].MatSN,
|
||||||
outType = 0,
|
// outType = 0,
|
||||||
pickBillNumber = outRecord[i].OrderNumber,
|
// pickBillNumber = outRecord[i].OrderNumber,
|
||||||
qty = outRecord[i].MatQty,
|
// qty = outRecord[i].MatQty,
|
||||||
};
|
// };
|
||||||
var result = ApiHelp.GetDataFromHttp<ResponseCommon>(LocalFile.Config.BunkerOutStr, data, "POST", true);
|
// var result = ApiHelp.GetDataFromHttp<ResponseCommon>(LocalFile.Config.BunkerOutStr, data, "POST", true);
|
||||||
//请求成功
|
// //请求成功
|
||||||
if (result != null && result.Code == 200)
|
// if (result != null && result.Code == 200)
|
||||||
{
|
// {
|
||||||
//上传成功 更改上传状态
|
// //上传成功 更改上传状态
|
||||||
outRecord[i].IsUpload = true;
|
// outRecord[i].IsUpload = true;
|
||||||
DbHelp.db.Updateable(outRecord[i]).ExecuteCommand();
|
// DbHelp.db.Updateable(outRecord[i]).ExecuteCommand();
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
|
|
||||||
}
|
// }
|
||||||
Thread.Sleep(200);
|
// Thread.Sleep(200);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
Logs.Write("【定时任务】上传异常:" + ex.Message);
|
// Logs.Write("【定时任务】上传异常:" + ex.Message);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
});
|
//});
|
||||||
#endregion
|
//#endregion
|
||||||
|
|
||||||
#region 定时任务:超时退出 出库、入库、盘点模式
|
#region 定时任务:超时退出 出库、入库、盘点模式
|
||||||
Task.Run(() =>
|
Task.Run(() =>
|
||||||
@ -169,97 +169,97 @@ namespace WCS.BLL.Manager
|
|||||||
});
|
});
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 定时任务:海康未扫物料码的物料更新数据
|
//#region 定时任务:海康未扫物料码的物料更新数据
|
||||||
Task.Run(() =>
|
//Task.Run(() =>
|
||||||
{
|
//{
|
||||||
while (true)
|
// while (true)
|
||||||
{
|
// {
|
||||||
//间隔20秒同步一次
|
// //间隔20秒同步一次
|
||||||
Thread.Sleep(20000);
|
// Thread.Sleep(20000);
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var inventoryDetails = DbHelp.db.Queryable<InventoryDetail>()
|
// var inventoryDetails = DbHelp.db.Queryable<InventoryDetail>()
|
||||||
.Where(t => t.MatName == "暂时未知")
|
// .Where(t => t.MatName == "暂时未知")
|
||||||
.Where(t => t.InstoreTime > DateTime.Now.AddDays(-3))
|
// .Where(t => t.InstoreTime > DateTime.Now.AddDays(-3))
|
||||||
.ToList();
|
// .ToList();
|
||||||
if (inventoryDetails != null && inventoryDetails.Count > 0)
|
// if (inventoryDetails != null && inventoryDetails.Count > 0)
|
||||||
{
|
// {
|
||||||
for (int i = 0; i < inventoryDetails.Count; i++)
|
// for (int i = 0; i < inventoryDetails.Count; i++)
|
||||||
{
|
// {
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
//请求WMS获取物料的信息
|
// //请求WMS获取物料的信息
|
||||||
var request = new QueryBybarRequest()
|
// var request = new QueryBybarRequest()
|
||||||
{
|
// {
|
||||||
materialBar = inventoryDetails[i].MatSN
|
// materialBar = inventoryDetails[i].MatSN
|
||||||
};
|
// };
|
||||||
var result = ApiHelp.GetDataFromHttp<QueryBybarResponse>(LocalFile.Config.QueryBybar, request, "POST", true);
|
// var result = ApiHelp.GetDataFromHttp<QueryBybarResponse>(LocalFile.Config.QueryBybar, request, "POST", true);
|
||||||
if (result != null && (result.code == 200) && result.data != null && result.data.Count() > 0)
|
// if (result != null && (result.code == 200) && result.data != null && result.data.Count() > 0)
|
||||||
{
|
// {
|
||||||
//查询成功 更改数值
|
// //查询成功 更改数值
|
||||||
var instoreDto = result.data.FirstOrDefault();
|
// var instoreDto = result.data.FirstOrDefault();
|
||||||
inventoryDetails[i].MatCode = instoreDto.materialCode;
|
// inventoryDetails[i].MatCode = instoreDto.materialCode;
|
||||||
inventoryDetails[i].MatName = instoreDto.materialName;
|
// inventoryDetails[i].MatName = instoreDto.materialName;
|
||||||
inventoryDetails[i].MatBatch = instoreDto.batchNo;
|
// inventoryDetails[i].MatBatch = instoreDto.batchNo;
|
||||||
inventoryDetails[i].MatSpec = instoreDto.materialSpec;
|
// inventoryDetails[i].MatSpec = instoreDto.materialSpec;
|
||||||
inventoryDetails[i].MatQty = (int)instoreDto.materialQty;
|
// inventoryDetails[i].MatQty = (int)instoreDto.materialQty;
|
||||||
DbHelp.db.Updateable(inventoryDetails[i]).ExecuteCommand();
|
// DbHelp.db.Updateable(inventoryDetails[i]).ExecuteCommand();
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
|
|
||||||
}
|
// }
|
||||||
Thread.Sleep(500);
|
// Thread.Sleep(500);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
Logs.Write("【定时任务】更新海康物料信息异常:" + ex.Message);
|
// Logs.Write("【定时任务】更新海康物料信息异常:" + ex.Message);
|
||||||
}
|
// }
|
||||||
|
|
||||||
Thread.Sleep(3000);
|
// Thread.Sleep(3000);
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var inventoryDetails = DbHelp.db.Queryable<InventoryDetail>()
|
// var inventoryDetails = DbHelp.db.Queryable<InventoryDetail>()
|
||||||
.Where(t => t.WarehouseCode == null)
|
// .Where(t => t.WarehouseCode == null)
|
||||||
.Where(t => t.InstoreTime > DateTime.Now.AddDays(-30))
|
// .Where(t => t.InstoreTime > DateTime.Now.AddDays(-30))
|
||||||
.ToList();
|
// .ToList();
|
||||||
if (inventoryDetails != null && inventoryDetails.Count > 0)
|
// if (inventoryDetails != null && inventoryDetails.Count > 0)
|
||||||
{
|
// {
|
||||||
for (int i = 0; i < inventoryDetails.Count; i++)
|
// for (int i = 0; i < inventoryDetails.Count; i++)
|
||||||
{
|
// {
|
||||||
try
|
// try
|
||||||
{
|
// {
|
||||||
var url = $"http://192.168.2.23:9213/integrate/hkwsInventoryDetail/selectMaterialBar?materialBar={inventoryDetails[i].MatSN}";
|
// var url = $"http://192.168.2.23:9213/integrate/hkwsInventoryDetail/selectMaterialBar?materialBar={inventoryDetails[i].MatSN}";
|
||||||
var result = ApiHelp.GetDataFromHttp<SelectMaterialBarResponse>(url, null, "POST", false);
|
// var result = ApiHelp.GetDataFromHttp<SelectMaterialBarResponse>(url, null, "POST", false);
|
||||||
if (result != null && result.code == 200 && result.data != null && !string.IsNullOrEmpty(result.data.warehouseCode))
|
// if (result != null && result.code == 200 && result.data != null && !string.IsNullOrEmpty(result.data.warehouseCode))
|
||||||
{
|
// {
|
||||||
//查询成功 更改数值
|
// //查询成功 更改数值
|
||||||
inventoryDetails[i].WarehouseCode = result.data.warehouseCode;
|
// inventoryDetails[i].WarehouseCode = result.data.warehouseCode;
|
||||||
DbHelp.db.Updateable(inventoryDetails[i]).ExecuteCommand();
|
// DbHelp.db.Updateable(inventoryDetails[i]).ExecuteCommand();
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
Logs.Write("【定时任务】更新仓库代码异常:" + ex.Message);
|
// Logs.Write("【定时任务】更新仓库代码异常:" + ex.Message);
|
||||||
}
|
// }
|
||||||
Thread.Sleep(500);
|
// Thread.Sleep(500);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
catch (Exception ex)
|
// catch (Exception ex)
|
||||||
{
|
// {
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
});
|
//});
|
||||||
#endregion
|
//#endregion
|
||||||
|
|
||||||
#region 定时任务:监测警示灯关灯机制
|
#region 定时任务:监测警示灯关灯机制
|
||||||
//判断灯颜色和模式是否对应
|
//判断灯颜色和模式是否对应
|
||||||
|
@ -39,6 +39,9 @@ namespace WebApi
|
|||||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ط<EFBFBD><D8B7>߳<EFBFBD>
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ط<EFBFBD><D8B7>߳<EFBFBD>
|
||||||
WarningManager.StartWarningMessageThread();
|
WarningManager.StartWarningMessageThread();
|
||||||
|
|
||||||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2>״̬<D7B4>߳<EFBFBD> <20><>ʱ<EFBFBD>˳<EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD><EFBFBD>عصƵȻ<C6B5><C8BB><EFBFBD>
|
||||||
|
MXBackgroundThread.InitBackgroundThread();
|
||||||
|
|
||||||
//<2F><>Ѷ<EFBFBD><D1B6>˾<EFBFBD><CBBE>̨<EFBFBD>߳<EFBFBD>
|
//<2F><>Ѷ<EFBFBD><D1B6>˾<EFBFBD><CBBE>̨<EFBFBD>߳<EFBFBD>
|
||||||
if (LocalFile.Config.IsMx)
|
if (LocalFile.Config.IsMx)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user