时序下发完善
This commit is contained in:
parent
ca10a4bc34
commit
635a578d55
@ -95,94 +95,6 @@ namespace InSituLaboratory.ViewModels.Pages.Dialogs
|
|||||||
set
|
set
|
||||||
{
|
{
|
||||||
_sensorID = value;
|
_sensorID = value;
|
||||||
|
|
||||||
//if (SequenceGroup == null)
|
|
||||||
//{
|
|
||||||
// System.Windows.Forms.MessageBox.Show("配置为空!!! 请选择配置后,必须重新选择传感器设备!!!", "提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation);
|
|
||||||
//}
|
|
||||||
//else
|
|
||||||
//{
|
|
||||||
// ///查询当前设备是否已存在数据库中
|
|
||||||
// var select = _sequentialService.Query<SysSequentialDetails>(m => m.SensorID == value && m.SequenceGroup == SequenceGroup && m.Sequential == kind && m.IsDelete == 0).ToList();
|
|
||||||
|
|
||||||
// if (select.Count() == 0)
|
|
||||||
// {
|
|
||||||
// //通过设备信息查询设备工作时长
|
|
||||||
// workTime = _deviceSvice.GetDeviceByDeviceName(_sensorID);
|
|
||||||
|
|
||||||
// this.ErrorList.Clear();
|
|
||||||
// if (_sensorID == "质谱仪")
|
|
||||||
// {
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(WorkTime) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "质谱仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else if (_sensorID == "二氧化碳同位素分析仪")
|
|
||||||
// {
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(WorkTime) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "二氧化碳同位素分析仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else if (_sensorID == "甲烷同位素分析仪")
|
|
||||||
// {
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(WorkTime) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "甲烷同位素分析仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else if (_sensorID == "气相色谱仪")
|
|
||||||
// {
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(WorkTime) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "气相色谱仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else if (_sensorID == "基因测序仪")
|
|
||||||
// {
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(WorkTime) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "基因测序仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
// this.RaiseErrorsChanged("WorkTime");
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// System.Windows.MessageBox.Show(kind + "中 配置" + SequenceGroup + " 已存在" + SensorID, "提示");
|
|
||||||
// workTime = _deviceSvice.GetDeviceByDeviceName(_sensorID);
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -198,77 +110,6 @@ namespace InSituLaboratory.ViewModels.Pages.Dialogs
|
|||||||
set
|
set
|
||||||
{
|
{
|
||||||
_workTime = value;
|
_workTime = value;
|
||||||
//this.ErrorList.Clear();
|
|
||||||
//if (string.IsNullOrEmpty(value))
|
|
||||||
//{
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "工作时长不能为空" });
|
|
||||||
//}
|
|
||||||
//else if (_sensorID == "质谱仪")
|
|
||||||
//{
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(value) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "质谱仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//else if (_sensorID == "二氧化碳同位素分析仪")
|
|
||||||
//{
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(value) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "二氧化碳同位素分析仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//else if (_sensorID == "甲烷同位素分析仪")
|
|
||||||
//{
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(value) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "甲烷同位素分析仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//else if (_sensorID == "气相色谱仪")
|
|
||||||
//{
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(value) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "气相色谱仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//else if (_sensorID == "基因测序仪")
|
|
||||||
//{
|
|
||||||
// workInt = Convert.ToInt64(workTime) * 60 * 60;
|
|
||||||
// if (Convert.ToInt64(value) > workInt)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("WorkTime", new List<string> { "基因测序仪已超出最大工作时长" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//else
|
|
||||||
//{
|
|
||||||
// ErrorList.Remove("WorkTime");
|
|
||||||
//}
|
|
||||||
//this.RaiseErrorsChanged("WorkTime");
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -284,22 +125,6 @@ namespace InSituLaboratory.ViewModels.Pages.Dialogs
|
|||||||
set
|
set
|
||||||
{
|
{
|
||||||
_durationTime = value;
|
_durationTime = value;
|
||||||
//ErrorList.Remove("DurationTime");
|
|
||||||
//if (SequenceGroup != null)
|
|
||||||
//{
|
|
||||||
// if (SysSequentialdata != null)
|
|
||||||
// {
|
|
||||||
// if (_durationTime != SysSequentialdata.DurationTime)
|
|
||||||
// {
|
|
||||||
// ErrorList.Add("DurationTime", new List<string> { "当前配置已存在循环时长:" + SysSequentialdata.DurationTime + "s" + ",无法修改" });
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// ErrorList.Remove("DurationTime");
|
|
||||||
// }
|
|
||||||
// this.RaiseErrorsChanged("DurationTime");
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -209,105 +209,7 @@ namespace InSituLaboratory.ViewModels.Pages
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DateTime startTime = (DateTime)sequentStatusModel.SequentialStartTime1;
|
List<byte> buffer = encode((DateTime)sequentStatusModel.SequentialStartTime1, (DateTime)sequentStatusModel.SequentialEndTime1, 0x01, "时序1");
|
||||||
DateTime endTime = (DateTime)sequentStatusModel.SequentialEndTime1;
|
|
||||||
|
|
||||||
ulong senddate;
|
|
||||||
ulong year;
|
|
||||||
ulong month;
|
|
||||||
ulong day;
|
|
||||||
ulong hour;
|
|
||||||
ulong min;
|
|
||||||
ulong sec;
|
|
||||||
|
|
||||||
ulong sendenddate;
|
|
||||||
ulong endyear;
|
|
||||||
ulong endmonth;
|
|
||||||
ulong endday;
|
|
||||||
ulong endhour;
|
|
||||||
ulong endmin;
|
|
||||||
ulong endsec;
|
|
||||||
|
|
||||||
//定义消息体数组
|
|
||||||
byte[] byteaq = new byte[26];
|
|
||||||
|
|
||||||
year = (ulong)startTime.Year * 10000000000UL;
|
|
||||||
month = (ulong)startTime.Month * 100000000UL;
|
|
||||||
day = (ulong)startTime.Day * 1000000UL;
|
|
||||||
hour = (ulong)startTime.Hour * 10000UL;
|
|
||||||
min = (ulong)startTime.Minute * 100UL;
|
|
||||||
sec = (ulong)startTime.Second;
|
|
||||||
senddate = year + month + day + hour + min + sec;
|
|
||||||
|
|
||||||
endyear = (ulong)endTime.Year * 10000000000UL;
|
|
||||||
endmonth = (ulong)endTime.Month * 100000000UL;
|
|
||||||
endday = (ulong)endTime.Day * 1000000UL;
|
|
||||||
endhour = (ulong)endTime.Hour * 10000UL;
|
|
||||||
endmin = (ulong)endTime.Minute * 100UL;
|
|
||||||
endsec = (ulong)endTime.Second;
|
|
||||||
sendenddate = endyear + endmonth + endday + endhour + endmin + endsec;
|
|
||||||
|
|
||||||
//消息头
|
|
||||||
byteaq[0] = 0x91;
|
|
||||||
byteaq[1] = 0x00;
|
|
||||||
byteaq[2] = 0x10;
|
|
||||||
byteaq[3] = 0x01;
|
|
||||||
byteaq[4] = 0x00;
|
|
||||||
byteaq[5] = 0x00;
|
|
||||||
byteaq[6] = 0x00;
|
|
||||||
byteaq[7] = 0x00;
|
|
||||||
|
|
||||||
//时序组号
|
|
||||||
byteaq[8] = 0x01;
|
|
||||||
|
|
||||||
//操作类型
|
|
||||||
byteaq[9] = 0x01;
|
|
||||||
|
|
||||||
//开始时间
|
|
||||||
byteaq[10] = (byte)((senddate >> 56) & 0xff);
|
|
||||||
byteaq[11] = (byte)((senddate >> 48) & 0xff);
|
|
||||||
byteaq[12] = (byte)((senddate >> 40) & 0xff);
|
|
||||||
byteaq[13] = (byte)((senddate >> 32) & 0xff);
|
|
||||||
byteaq[14] = (byte)((senddate >> 24) & 0xff);
|
|
||||||
byteaq[15] = (byte)((senddate >> 16) & 0xff);
|
|
||||||
byteaq[16] = (byte)((senddate >> 8) & 0xff);
|
|
||||||
byteaq[17] = (byte)(senddate & 0xff);
|
|
||||||
|
|
||||||
//结束时间
|
|
||||||
byteaq[18] = (byte)((sendenddate >> 56) & 0xff);
|
|
||||||
byteaq[19] = (byte)((sendenddate >> 48) & 0xff);
|
|
||||||
byteaq[20] = (byte)((sendenddate >> 40) & 0xff);
|
|
||||||
byteaq[21] = (byte)((sendenddate >> 32) & 0xff);
|
|
||||||
byteaq[22] = (byte)((sendenddate >> 24) & 0xff);
|
|
||||||
byteaq[23] = (byte)((sendenddate >> 16) & 0xff);
|
|
||||||
byteaq[24] = (byte)((sendenddate >> 8) & 0xff);
|
|
||||||
byteaq[25] = (byte)(sendenddate & 0xff);
|
|
||||||
|
|
||||||
var datalist = _sysSequentialService.Query<SysSequentialTotal>(m => m.StartTime == startTime && m.EndTime == endTime && m.IsDelete == 0 && m.Sequential == "时序1").OrderBy(n => n.SequenceGroup).ThenBy(s => s.CreateTime).ToArray();
|
|
||||||
|
|
||||||
//定义传感器个数
|
|
||||||
int num = 0;
|
|
||||||
for (int i = 0; i < datalist.Length; i++)
|
|
||||||
{
|
|
||||||
if (datalist[1].SequenceGroup == datalist[i + 1].SequenceGroup)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1209,7 +1111,7 @@ namespace InSituLaboratory.ViewModels.Pages
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="x1">时序号</param>
|
/// <param name="x1">时序号</param>
|
||||||
/// <param name="x2">操作类型</param>
|
/// <param name="x2">操作类型</param>
|
||||||
public void dosend(byte x1,byte x2)
|
public void dosend(byte x1, byte x2)
|
||||||
{
|
{
|
||||||
//消息体
|
//消息体
|
||||||
byte[] byteaq = new byte[] { 0x91, 0x00, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, x1, x2 };
|
byte[] byteaq = new byte[] { 0x91, 0x00, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, x1, x2 };
|
||||||
@ -1219,5 +1121,216 @@ namespace InSituLaboratory.ViewModels.Pages
|
|||||||
byte[] bytea = tools.ConvertHexStringToBytes(list);
|
byte[] bytea = tools.ConvertHexStringToBytes(list);
|
||||||
RelayViewModel.clientModel.SendData(bytea);
|
RelayViewModel.clientModel.SendData(bytea);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 时序下发封装数据域
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="StartTime">时序开始时间</param>
|
||||||
|
/// <param name="EndTime">时序结束时间</param>
|
||||||
|
/// <param name="GroupNumber">时序组号</param>
|
||||||
|
/// <param name="kind">时序类型</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public List<byte> encode(DateTime StartTime, DateTime EndTime, byte GroupNumber, string kind)
|
||||||
|
{
|
||||||
|
DateTime startTime = StartTime;
|
||||||
|
DateTime endTime = EndTime;
|
||||||
|
|
||||||
|
ulong senddate;
|
||||||
|
ulong year;
|
||||||
|
ulong month;
|
||||||
|
ulong day;
|
||||||
|
ulong hour;
|
||||||
|
ulong min;
|
||||||
|
ulong sec;
|
||||||
|
|
||||||
|
ulong sendenddate;
|
||||||
|
ulong endyear;
|
||||||
|
ulong endmonth;
|
||||||
|
ulong endday;
|
||||||
|
ulong endhour;
|
||||||
|
ulong endmin;
|
||||||
|
ulong endsec;
|
||||||
|
|
||||||
|
//定义消息体数组
|
||||||
|
List<byte> byteaq = new List<byte>();
|
||||||
|
|
||||||
|
year = (ulong)startTime.Year * 10000000000UL;
|
||||||
|
month = (ulong)startTime.Month * 100000000UL;
|
||||||
|
day = (ulong)startTime.Day * 1000000UL;
|
||||||
|
hour = (ulong)startTime.Hour * 10000UL;
|
||||||
|
min = (ulong)startTime.Minute * 100UL;
|
||||||
|
sec = (ulong)startTime.Second;
|
||||||
|
senddate = year + month + day + hour + min + sec;
|
||||||
|
|
||||||
|
endyear = (ulong)endTime.Year * 10000000000UL;
|
||||||
|
endmonth = (ulong)endTime.Month * 100000000UL;
|
||||||
|
endday = (ulong)endTime.Day * 1000000UL;
|
||||||
|
endhour = (ulong)endTime.Hour * 10000UL;
|
||||||
|
endmin = (ulong)endTime.Minute * 100UL;
|
||||||
|
endsec = (ulong)endTime.Second;
|
||||||
|
sendenddate = endyear + endmonth + endday + endhour + endmin + endsec;
|
||||||
|
|
||||||
|
//消息头
|
||||||
|
byteaq.Add(0x91);
|
||||||
|
byteaq.Add(0x00);
|
||||||
|
byteaq.Add(0x10);
|
||||||
|
byteaq.Add(0x01);
|
||||||
|
byteaq.Add(0x00);
|
||||||
|
byteaq.Add(0x00);
|
||||||
|
byteaq.Add(0x00);
|
||||||
|
byteaq.Add(0x00);
|
||||||
|
|
||||||
|
|
||||||
|
//时序组号
|
||||||
|
byteaq.Add(GroupNumber);
|
||||||
|
|
||||||
|
//操作类型
|
||||||
|
byteaq.Add(0x01);
|
||||||
|
|
||||||
|
//开始时间
|
||||||
|
byteaq.Add((byte)((senddate >> 56) & 0xff));
|
||||||
|
byteaq.Add((byte)((senddate >> 48) & 0xff));
|
||||||
|
byteaq.Add((byte)((senddate >> 40) & 0xff));
|
||||||
|
byteaq.Add((byte)((senddate >> 32) & 0xff));
|
||||||
|
byteaq.Add((byte)((senddate >> 24) & 0xff));
|
||||||
|
byteaq.Add((byte)((senddate >> 16) & 0xff));
|
||||||
|
byteaq.Add((byte)((senddate >> 8) & 0xff));
|
||||||
|
byteaq.Add((byte)(senddate & 0xff));
|
||||||
|
|
||||||
|
|
||||||
|
//结束时间
|
||||||
|
byteaq.Add((byte)((sendenddate >> 56) & 0xff));
|
||||||
|
byteaq.Add((byte)((sendenddate >> 48) & 0xff));
|
||||||
|
byteaq.Add((byte)((sendenddate >> 40) & 0xff));
|
||||||
|
byteaq.Add((byte)((sendenddate >> 32) & 0xff));
|
||||||
|
byteaq.Add((byte)((sendenddate >> 24) & 0xff));
|
||||||
|
byteaq.Add((byte)((sendenddate >> 16) & 0xff));
|
||||||
|
byteaq.Add((byte)((sendenddate >> 8) & 0xff));
|
||||||
|
byteaq.Add((byte)(sendenddate & 0xff));
|
||||||
|
|
||||||
|
|
||||||
|
var datalist = _sysSequentialService.Query<SysSequentialTotal>(m => m.StartTime == startTime && m.EndTime == endTime && m.IsDelete == 0 && m.Sequential == kind).OrderBy(n => n.SequenceGroup).ThenBy(s => s.CreateTime).ToArray();
|
||||||
|
|
||||||
|
//单体循环数量
|
||||||
|
List<int> b = new List<int>();
|
||||||
|
|
||||||
|
//这个m 在每次SequenceGroup变化的时候记录一下 变化的节点
|
||||||
|
//拿下一次的节点i - 上一次的节点m 就是当前的长度,同时把新的节点赋到m上
|
||||||
|
//最后只要把总长度减去最后一个节点的长度,就是最后一个的长度
|
||||||
|
int m = 0;
|
||||||
|
//先遍历 datalist 确定 SequenceGroup的种类和数量
|
||||||
|
for (int i = 0; i < datalist.Length; i++)
|
||||||
|
{
|
||||||
|
if (i != 0 && datalist.Length >= 1)
|
||||||
|
{
|
||||||
|
if (datalist[i].SequenceGroup != datalist[i - 1].SequenceGroup)
|
||||||
|
{
|
||||||
|
b.Add(i - m);
|
||||||
|
m = i;
|
||||||
|
}
|
||||||
|
if (i == datalist.Length - 1)
|
||||||
|
{
|
||||||
|
b.Add(datalist.Length - m);
|
||||||
|
m = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//b = new List<int>() { 4, 3, 4, 6 };
|
||||||
|
//3 3 2 1
|
||||||
|
for (int i = 0; i < b.Count; i++)
|
||||||
|
{
|
||||||
|
//添加循环传感器的个数
|
||||||
|
byteaq.Add((byte)b[i]);
|
||||||
|
|
||||||
|
//定义一个循环间隔时长
|
||||||
|
int d = 0;
|
||||||
|
//添加传感器识别码和工作时长
|
||||||
|
for (int j = 0; j < b[i]; j++)
|
||||||
|
{
|
||||||
|
//去b[i - 1]之前的和
|
||||||
|
int n = 0;
|
||||||
|
for (int k = 0; k < i; k++)
|
||||||
|
{
|
||||||
|
n += b[k];
|
||||||
|
}
|
||||||
|
//获取传感器的ID 用字典获取 datalist[i == 0 ? j:n + j].SensorID
|
||||||
|
switch (datalist[i == 0 ? j : n + j].SensorID)
|
||||||
|
{
|
||||||
|
case "工控机":
|
||||||
|
byteaq.Add(0x00);
|
||||||
|
break;
|
||||||
|
case "色质联用":
|
||||||
|
byteaq.Add(0x01);
|
||||||
|
break;
|
||||||
|
case "备用串口1":
|
||||||
|
byteaq.Add(0x02);
|
||||||
|
break;
|
||||||
|
case "备用串口2":
|
||||||
|
byteaq.Add(0x03);
|
||||||
|
break;
|
||||||
|
case "光通讯机":
|
||||||
|
byteaq.Add(0x04);
|
||||||
|
break;
|
||||||
|
case "ADCP":
|
||||||
|
byteaq.Add(0x05);
|
||||||
|
break;
|
||||||
|
case "CTD":
|
||||||
|
byteaq.Add(0x06);
|
||||||
|
break;
|
||||||
|
case "气相色谱仪":
|
||||||
|
byteaq.Add(0x07);
|
||||||
|
break;
|
||||||
|
case "甲烷传感器":
|
||||||
|
byteaq.Add(0x08);
|
||||||
|
break;
|
||||||
|
case "二氧化碳同位素分析仪":
|
||||||
|
byteaq.Add(0x09);
|
||||||
|
break;
|
||||||
|
case "备用网口设备":
|
||||||
|
byteaq.Add(0x0a);
|
||||||
|
break;
|
||||||
|
case "ICL":
|
||||||
|
byteaq.Add(0x0b);
|
||||||
|
break;
|
||||||
|
case "显微拉曼分析仪":
|
||||||
|
byteaq.Add(0x0c);
|
||||||
|
break;
|
||||||
|
case "质谱仪":
|
||||||
|
byteaq.Add(0x0d);
|
||||||
|
break;
|
||||||
|
case "声学定位":
|
||||||
|
byteaq.Add(0x0e);
|
||||||
|
break;
|
||||||
|
case "摄像1":
|
||||||
|
byteaq.Add(0x0f);
|
||||||
|
break;
|
||||||
|
case "摄像2":
|
||||||
|
byteaq.Add(0x10);
|
||||||
|
break;
|
||||||
|
case "电交换机2":
|
||||||
|
byteaq.Add(0x11);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//定义接收工作时长
|
||||||
|
int w = Convert.ToInt32(datalist[i == 0 ? j : n + j].WorkTime);
|
||||||
|
byteaq.Add((byte)(w & 0xFF));
|
||||||
|
byteaq.Add((byte)((w & 0xFF00) >> 8));
|
||||||
|
byteaq.Add((byte)((w & 0xFF0000) >> 16));
|
||||||
|
byteaq.Add((byte)((w >> 24) & 0xFF));
|
||||||
|
|
||||||
|
//接收循环间隔时长
|
||||||
|
d = Convert.ToInt32(datalist[i == 0 ? j : n + j].DurationTime);
|
||||||
|
}
|
||||||
|
byteaq.Add((byte)(d & 0xFF));
|
||||||
|
byteaq.Add((byte)((d & 0xFF00) >> 8));
|
||||||
|
byteaq.Add((byte)((d & 0xFF0000) >> 16));
|
||||||
|
byteaq.Add((byte)((d >> 24) & 0xFF));
|
||||||
|
}
|
||||||
|
return byteaq;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user