1.移植查询电压值功能

This commit is contained in:
hehaibing-1996
2024-05-28 20:09:24 +08:00
parent ac14b22507
commit 08850a2f15
9 changed files with 227 additions and 6 deletions

View File

@ -626,6 +626,15 @@ namespace WCS.BLL.HardWare
this.CurrentMode = Mode.;
}
public void QueryVoltage(int moduleId)
{
var moudle = Modules.Where(t => t.ModuleId == moduleId).First();
if (moudle != null)
{
moudle.QueryVoltage(TcpCleint);
}
}
void IShelfBase.SetCurrentMode()
{
throw new NotImplementedException();
@ -684,6 +693,15 @@ namespace WCS.BLL.HardWare
case 0x13://复位的返回信号
ResetReturnProcess(data, boardId, lightNumber);
break;
case 0x17://电压值1
QueryVoltageProcess(data, boardId, lightNumber);
break;
case 0x18://电压值2
QueryVoltageProcess(data, boardId, lightNumber);
break;
case 0x19://电压值3
QueryVoltageProcess(data, boardId, lightNumber);
break;
default:
;
break;
@ -1789,6 +1807,71 @@ namespace WCS.BLL.HardWare
module.CurrentMode = Mode.;
}
}
public void QueryVoltageProcess(byte[] data, int boardId, int lightNumber)
{
//第n帧
var n = (int)data[TcpCleint.PreFixLength + 3];
var voltage1 = (data[TcpCleint.PreFixLength + 4] << 8) + data[TcpCleint.PreFixLength + 5];
var voltage2 = (data[TcpCleint.PreFixLength + 6] << 8) + data[TcpCleint.PreFixLength + 7];
var voltage3 = (data[TcpCleint.PreFixLength + 8] << 8) + data[TcpCleint.PreFixLength + 9];
var number1 = (n - 1) * 3 + 1;
var number2 = (n - 1) * 3 + 2;
var number3 = (n - 1) * 3 + 3;
if (number1 <= 16)
{
var storeInfo1 = DbHelp.db.Queryable<StoreInfo>()
.Where(t => t.BoardId == boardId && t.LightNumber == number1 && t.ShelfId == ShelfId)
.First();
if (storeInfo1 != null)
{
if (data[TcpCleint.PreFixLength + 2] == 0x17)
storeInfo1.CurrentVoltage = voltage1;
else if (data[TcpCleint.PreFixLength + 2] == 0x18)
storeInfo1.OffsetVoltage = voltage1;
else
storeInfo1.StandardVoltage = voltage1;
DbHelp.db.Updateable(storeInfo1).ExecuteCommand();
}
}
if (number2 <= 16)
{
var storeInfo2 = DbHelp.db.Queryable<StoreInfo>()
.Where(t => t.BoardId == boardId && t.LightNumber == number2 && t.ShelfId == ShelfId)
.First();
if (storeInfo2 != null)
{
if (data[TcpCleint.PreFixLength + 2] == 0x17)
storeInfo2.CurrentVoltage = voltage2;
else if (data[TcpCleint.PreFixLength + 2] == 0x18)
storeInfo2.OffsetVoltage = voltage2;
else
storeInfo2.StandardVoltage = voltage2;
DbHelp.db.Updateable(storeInfo2).ExecuteCommand();
}
}
if (number1 <= 16)
{
var storeInfo3 = DbHelp.db.Queryable<StoreInfo>()
.Where(t => t.BoardId == boardId && t.LightNumber == number3 && t.ShelfId == ShelfId)
.First();
if (storeInfo3 != null)
{
if (data[TcpCleint.PreFixLength + 2] == 0x17)
storeInfo3.CurrentVoltage = voltage3;
else if (data[TcpCleint.PreFixLength + 2] == 0x18)
storeInfo3.OffsetVoltage = voltage3;
else
storeInfo3.StandardVoltage = voltage3;
DbHelp.db.Updateable(storeInfo3).ExecuteCommand();
}
}
}
#endregion
}