报警灯
This commit is contained in:
@ -219,8 +219,11 @@ namespace WCS.BLL.HardWare
|
|||||||
shelfModel.WarningBoardId = shelfInfo.LightId;
|
shelfModel.WarningBoardId = shelfInfo.LightId;
|
||||||
shelfModel.ClientIp = ClientIp;
|
shelfModel.ClientIp = ClientIp;
|
||||||
shelfModel.StoreList = new List<SingleLightStoreModel>();
|
shelfModel.StoreList = new List<SingleLightStoreModel>();
|
||||||
|
|
||||||
|
Logs.Write($"[单灯后台刷新线程]亮灯任务数量{currentTasks.Count}!");
|
||||||
currentTasks.ForEach(task =>
|
currentTasks.ForEach(task =>
|
||||||
{
|
{
|
||||||
|
Logs.Write($"[单灯后台刷新线程]亮灯任务{task.ModuleCode}!");
|
||||||
var module = MXL4Modules.Where(t => t.ModuleCode == task.ModuleCode).First();
|
var module = MXL4Modules.Where(t => t.ModuleCode == task.ModuleCode).First();
|
||||||
if (module != null)
|
if (module != null)
|
||||||
{
|
{
|
||||||
@ -406,19 +409,23 @@ namespace WCS.BLL.HardWare
|
|||||||
var tcpClient = TCPClientManager.Service.GetClients().Where(t => t.IP + ":" + t.Port.ToString() == ClientIp).FirstOrDefault();
|
var tcpClient = TCPClientManager.Service.GetClients().Where(t => t.IP + ":" + t.Port.ToString() == ClientIp).FirstOrDefault();
|
||||||
if (tcpClient != null)
|
if (tcpClient != null)
|
||||||
{
|
{
|
||||||
try
|
lock (tcpClient)
|
||||||
{
|
{
|
||||||
tcpClient.Send(sendData, 0, sendData.Length);
|
try
|
||||||
Logs.Write("【单灯单独控制】发送指令" + BitConverter.ToString(sendData));
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
Logs.Write($"【单灯单独控制】{client}以下指令发送中遇到异常{ex.Message}" + BitConverter.ToString(sendData));
|
|
||||||
return new ResponseCommon<object>()
|
|
||||||
{
|
{
|
||||||
Code = 201,
|
tcpClient.Send(sendData, 0, sendData.Length);
|
||||||
Message = $"【单灯单独控制】{client}指令发送中遇到异常{ex.Message}",
|
Logs.Write("【单灯单独控制】发送指令" + BitConverter.ToString(sendData));
|
||||||
};
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
Logs.Write($"【单灯单独控制】{client}以下指令发送中遇到异常{ex.Message}" + BitConverter.ToString(sendData));
|
||||||
|
return new ResponseCommon<object>()
|
||||||
|
{
|
||||||
|
Code = 201,
|
||||||
|
Message = $"【单灯单独控制】{client}指令发送中遇到异常{ex.Message}",
|
||||||
|
};
|
||||||
|
}
|
||||||
|
Thread.Sleep(100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -352,25 +352,6 @@ namespace WCS.BLL.Tool
|
|||||||
var lightCount = 0;
|
var lightCount = 0;
|
||||||
foreach (var shelf in shelfs)
|
foreach (var shelf in shelfs)
|
||||||
{
|
{
|
||||||
//6个报警灯需要发送指令
|
|
||||||
|
|
||||||
if (shelf.WarningLightMode != -1)
|
|
||||||
{
|
|
||||||
for (int i = 0; i < 6; i++)
|
|
||||||
{
|
|
||||||
var singleLightData = GenerateSingleLightData(shelf.WarningBoardId + i, shelf.WarningLightMode, shelf.WarningLightColor);
|
|
||||||
lightCount++;
|
|
||||||
dataBase = dataBase.Concat(singleLightData).ToArray();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//蜂鸣器需要发送指令
|
|
||||||
if (shelf.WarningLightMode == 3)//单灯短亮一次的情况下 蜂鸣器短鸣一次
|
|
||||||
{
|
|
||||||
var singleLightData = GenerateSingleLightData(shelf.WarningBoardId + 6, 3, shelf.WarningLightColor);
|
|
||||||
lightCount++;
|
|
||||||
dataBase = dataBase.Concat(singleLightData).ToArray();
|
|
||||||
}
|
|
||||||
|
|
||||||
//库位灯指令
|
//库位灯指令
|
||||||
if (shelf.StoreList != null && shelf.StoreList.Count > 0)
|
if (shelf.StoreList != null && shelf.StoreList.Count > 0)
|
||||||
{
|
{
|
||||||
@ -384,6 +365,26 @@ namespace WCS.BLL.Tool
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//6个报警灯需要发送指令
|
||||||
|
|
||||||
|
if (shelf.WarningLightMode != -1)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < 6; i++)
|
||||||
|
{
|
||||||
|
var singleLightData = GenerateSingleLightData(shelf.WarningBoardId + i, shelf.WarningLightMode, shelf.WarningLightColor);
|
||||||
|
lightCount++;
|
||||||
|
dataBase = dataBase.Concat(singleLightData).ToArray();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//蜂鸣器需要发送指令
|
||||||
|
//if (shelf.WarningLightMode == 3)//单灯短亮一次的情况下 蜂鸣器短鸣一次
|
||||||
|
//{
|
||||||
|
// var singleLightData = GenerateSingleLightData(shelf.WarningBoardId + 6, 3, shelf.WarningLightColor);
|
||||||
|
// lightCount++;
|
||||||
|
// dataBase = dataBase.Concat(singleLightData).ToArray();
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
byte[] length_base = BitConverter.GetBytes(dataBase.Length + 2);
|
byte[] length_base = BitConverter.GetBytes(dataBase.Length + 2);
|
||||||
|
@ -124,7 +124,8 @@ namespace WCS.WebApi.Controllers
|
|||||||
if (row == 1)
|
if (row == 1)
|
||||||
{
|
{
|
||||||
//之前已经占用的id
|
//之前已经占用的id
|
||||||
var id = (shelf.Rowcounts - 1) * (shelf.Columncounts + 7);
|
var id = (shelf.Rowcounts - 1) * (shelf.Columncounts + 6);
|
||||||
|
|
||||||
//奇数行 灯Id是最后一个灯
|
//奇数行 灯Id是最后一个灯
|
||||||
for (int i = shelf.Columncounts; i > 0; i--)
|
for (int i = shelf.Columncounts; i > 0; i--)
|
||||||
{
|
{
|
||||||
@ -177,11 +178,11 @@ namespace WCS.WebApi.Controllers
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
//之前已经占用的id
|
//之前已经占用的id
|
||||||
var id = (shelf.Rowcounts - 1) * (shelf.Columncounts + 7);
|
var id = (shelf.Rowcounts - 1) * (shelf.Columncounts + 6);
|
||||||
shelf.LightId = ++id;
|
shelf.LightId = ++id;
|
||||||
|
|
||||||
//灯占7个ID
|
//灯占6个ID
|
||||||
id = id + 6;
|
id = id + 5;
|
||||||
//奇数行 灯Id是最后一个灯
|
//奇数行 灯Id是最后一个灯
|
||||||
for (int i = 1; i <= shelf.Columncounts; i++)
|
for (int i = 1; i <= shelf.Columncounts; i++)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user