Merge remote-tracking branch 'origin/master'

# Conflicts:
#	WCS.BLL/Tool/Helper.cs
This commit is contained in:
hehaibing-1996
2024-06-29 20:06:41 +08:00
2 changed files with 59 additions and 6 deletions

View File

@ -979,6 +979,8 @@ namespace WCS.BLL.Services.Service
}
}
}
//发送间隔
Thread.Sleep(300);
foreach (string shelfcode in WarnLightShelfCode)
{
List<ShelfInfo> si = DbHelp.db.Queryable<ShelfInfo>().Where(it => it.ShelfCode == shelfcode).ToList();
@ -987,7 +989,8 @@ namespace WCS.BLL.Services.Service
for (int i = 0; i < si.Count; i++)
{
TCPClient tCPClient = TCPClientManager.GetTCPClientByIPHost(si[i].ClientIp);
byte[] warnlightOn = Helper.OutstoreWarnLight(si[i].LightId, LightColor, 1, 0);
//byte[] warnlightOn = Helper.OutstoreWarnLight(si[i].LightId, LightColor, 1, 0);
byte[] warnlightOn = Helper.OutstoreWarnLight_1(si[i].LightId, LightColor, 1, 1);
tCPClient.Send(warnlightOn);
Logs.Write("出库,报警灯亮:" + BitConverter.ToString(warnlightOn));
Thread.Sleep(100);
@ -1270,7 +1273,6 @@ namespace WCS.BLL.Services.Service
DbHelp.db.Updateable<InventoryDetail>().SetColumns(it => it.IsLocked == false).Where(it => it.MatSN == listdetail.MatSN).ExecuteCommand();
}
DbHelp.db.Updateable<OrderLight>().SetColumns(it => it.OrderNumber == null).Where(it => it.OrderNumber == request.OrderNumber).ExecuteCommand();
//灭灯
//获取需要出库的物料明细
var outOrderMatDetails = DbHelp.db.Queryable<OutOrderMatDetail>()
@ -1350,15 +1352,18 @@ namespace WCS.BLL.Services.Service
for (int i = 0; i < si.Count; i++)
{
TCPClient tCPClient = TCPClientManager.GetTCPClientByIPHost(si[i].ClientIp);
byte[] warnlightOn = Helper.OutstoreWarnLight(si[i].LightId, LightColor, 0, 0);
//byte[] warnlightOn = Helper.OutstoreWarnLight(si[i].LightId, LightColor, 0, 0);
byte[] warnlightOn = Helper.OutstoreWarnLight_1(si[i].LightId, LightColor, 0, 0);
tCPClient.Send(warnlightOn);
Logs.Write("出库,报警灯灭:" + BitConverter.ToString(warnlightOn));
Thread.Sleep(100);
}
}
}
if (isComplete == true)
{
DbHelp.db.Updateable<OrderLight>().SetColumns(it => it.OrderNumber == null).Where(it => it.OrderNumber == request.OrderNumber).ExecuteCommand();
}
return new ResponseCommon()
{

View File

@ -354,5 +354,53 @@ namespace WCS.BLL.Tool
}
}
public static byte[] OutstoreWarnLight_1(int lightid, string lightcolor, int status, int beestatus)
{
byte color = 0x00;
switch (lightcolor)
{
case "红":
color = 0x01;
break;
case "绿":
color = 0x02;
break;
case "黄":
color = 0x03;
break;
case "蓝":
color = 0x04;
break;
case "紫":
color = 0x05;
break;
case "青":
color = 0x06;
break;
case "白":
color = 0x07;
break;
case "无":
color = 0x00;
break;
}
byte[] data1 = new byte[5 + 3 * 6];
data1[0] = 0xff;
data1[1] = 0x01;
data1[2] = 0x00;
data1[3] = (byte)(data1.Length + 2);
data1[4] = 0x06;
for (int i = 0; i < 6; i++)
{
data1[5 + i * 3] = (byte)(lightid + i);
data1[6 + i * 3] = (byte)status;
data1[7 + i * 3] = color;
}
//data1[5 + 3 * 7 - 3] = (byte)(lightid + 6);
//data1[5 + 3 * 7 - 2] =(byte)beestatus;
//data1[5 + 3 * 7 - 1] = 0x00;
byte[] data2 = Crc16(data1, data1.Length, true);
return data2;
}
}
}