|
@@ -211,7 +211,7 @@ namespace NB_IOT_TCP_HP_SOCKET.WWKJUtil
|
|
|
cm._recordCount = data[8];
|
|
|
cm._cellVoltage = ((float)((data[11] * 0x100) + data[12])) / 100f;
|
|
|
cm._signalStrength = data[0x10];
|
|
|
- if ((data[13] & 8) == 8)
|
|
|
+ if ((data[13] & 8) == 8 && cm._funCode == 0x2c)
|
|
|
{
|
|
|
cm._isEnd = true;
|
|
|
}
|
|
@@ -235,12 +235,13 @@ namespace NB_IOT_TCP_HP_SOCKET.WWKJUtil
|
|
|
int num7 = 0;
|
|
|
for (num5 = 0; num5 < strReturnData.Length; num5++)
|
|
|
{
|
|
|
+ num7++;
|
|
|
if (strReturnData.Substring((strReturnData.Length - 1) - num5, 1) == "1")
|
|
|
{
|
|
|
-
|
|
|
- num7++;
|
|
|
if (num5 == 11) {
|
|
|
- CellMonitorConvertByType.ConvertData(data, 20 + ((i * (num + 1)) * 4) + ((num7) * 4), "int", "", out string str5);
|
|
|
+ //CellMonitorConvertByType.ConvertData(data, 20 + ((i * (num + 1)) * 4) + ((num7) * 4), "int", "", out string str5);
|
|
|
+ string str5 = BitConverter.ToString(data, 20 + ((i * (num + 1)) * 4) + ((num7) * 4), 4);
|
|
|
+
|
|
|
MonitorValue value2 = new MonitorValue();
|
|
|
value2.Name = "B" + num5.ToString();
|
|
|
value2.Value = str5;
|
|
@@ -624,45 +625,60 @@ namespace NB_IOT_TCP_HP_SOCKET.WWKJUtil
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- else if(record2.Funcode == 0x3d) // 添加历史记录新指令 默认 老指令先发, 新指令再发,否则会丢数据,已约定好,2c 先发 3d后发
|
|
|
+ else // 添加历史记录新指令 默认 老指令先发, 新指令再发,否则会丢数据,已约定好,2c 先发 3d后发
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
List<CommData> dataList = record2.DataList;
|
|
|
sb.Append("Update ").Append(tablename).Append(" SET ");
|
|
|
+ StringBuilder sbStr = new StringBuilder();
|
|
|
for (int i = 0; i < dataList.Count; i++)
|
|
|
{
|
|
|
CommData commData = dataList[i];
|
|
|
- sb.Append(commData.Name).Append("=");
|
|
|
+
|
|
|
if ((((commData.Value == null) || (commData.Value == "")) || ((commData.Value == "未知") || (commData.Value == "--"))) || (commData.Value == "非数字"))
|
|
|
{
|
|
|
- sb.Append("0");
|
|
|
+ // sb.Append("0");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
if (commData.Tag == null || "".Equals(commData.Tag) || "BIT".Equals(commData.Tag.ToUpper()))
|
|
|
{
|
|
|
- sb.Append("'").Append(commData.Value).Append("'");
|
|
|
+ sbStr.Append(commData.Name).Append("=");
|
|
|
+ sbStr.Append("'").Append(commData.Value).Append("'");
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- sb.Append(commData.Value);
|
|
|
+ sbStr.Append(commData.Name).Append("=");
|
|
|
+ sbStr.Append(commData.Value);
|
|
|
}
|
|
|
+ sbStr.Append(",");
|
|
|
}
|
|
|
|
|
|
- if (i < dataList.Count - 1) {
|
|
|
- sb.Append(",");
|
|
|
- }
|
|
|
+
|
|
|
}
|
|
|
- sb.Append("设备ID=").Append(deviceid).Append(" AND 采集时间 ='").Append(record2.RecordTime.ToString()).Append("'");
|
|
|
+ sb.Append(sbStr.ToString().TrimEnd(','));
|
|
|
+ sb.Append(" WHERE 设备ID=").Append(deviceid).Append(" AND 采集时间 ='").Append(record2.RecordTime.ToString()).Append("'");
|
|
|
|
|
|
int rs = DBHelper.Query(sb.ToString());
|
|
|
|
|
|
if (rs > 0)
|
|
|
{
|
|
|
- // 合并 最后状态
|
|
|
- var record = lastData[deviceid];
|
|
|
- record.DataList.AddRange(record2.DataList);
|
|
|
- lastData[deviceid] = record;
|
|
|
+ //// 合并 最后状态
|
|
|
+ //var record = lastData[deviceid];
|
|
|
+ //record.DataList.AddRange(record2.DataList);
|
|
|
+ //lastData[deviceid] = record;
|
|
|
+ if (lastData.ContainsKey(deviceid))
|
|
|
+ {
|
|
|
+ HistoryRecord historyRecord = lastData[deviceid];
|
|
|
+ if (record2.RecordTime >= historyRecord.RecordTime)
|
|
|
+ {
|
|
|
+ lastData[deviceid] = record2;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ lastData[deviceid] = record2;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -811,7 +827,7 @@ namespace NB_IOT_TCP_HP_SOCKET.WWKJUtil
|
|
|
{
|
|
|
if ((((commData.Value == null) || (commData.Value == "")) || ((commData.Value == "未知") || (commData.Value == "--"))) || (commData.Value == "非数字"))
|
|
|
{
|
|
|
- strSql.Append(",[").Append(commData.Name).Append("]='0'");
|
|
|
+ // strSql.Append(",[").Append(commData.Name).Append("]='0'");
|
|
|
}
|
|
|
else
|
|
|
{
|