From 993ecf49ae04ccea89f6bc4a32cfc0c45def1215 Mon Sep 17 00:00:00 2001
From: 温居城 <wenjucheng@wenjuchengdeMacBook-Pro.local>
Date: 星期三, 27 十月 2021 14:23:30 +0800
Subject: [PATCH] 2021-10-27-01
---
ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs | 68 ++++++++++++++++-----------------
1 files changed, 33 insertions(+), 35 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs
index 9057ab5..df2c8d6 100755
--- a/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs
+++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs
@@ -1250,27 +1250,26 @@
var sbString = new System.Text.StringBuilder();
foreach (var userId in userIdList)
{
- string temp = Convert.ToString(userId, 16);
- switch (temp.Length)
+ var tempBytes = new byte[2];
+ for (int i = 0; i < 2; i++)
{
- case 1:
- userIdStr = "0" + temp + "00";
- break;
- case 2:
- userIdStr = temp + "00";
- break;
- case 3:
- var thirdBit = temp.Substring(temp.Length - 2, 1);
- userIdStr = temp + "0" + thirdBit;
- break;
- case 4:
- userIdStr = temp;
- break;
+ tempBytes[i] = (byte)(userId >> (i * 8) & 0xff);
}
- sbString.Append(userIdStr.ToString().ToUpper());
+ var curV1 = Convert.ToString(tempBytes[0], 16);
+ var curV2 = Convert.ToString(tempBytes[1], 16);
+ if (curV1.Length == 1)
+ {
+ curV1 = "0" + curV1;
+ }
+ if (curV2.Length == 1)
+ {
+ curV2 = "0" + curV2;
+ }
+
+ userIdStr = (curV1 + curV2).ToUpper();
}
data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength +
- delUserTypeStr + sbString;
+ delUserTypeStr + userIdStr;
}
catch { };
@@ -1307,28 +1306,27 @@
delUserTypeStr = "21";
break;
}
- var sbString = new System.Text.StringBuilder();
- string temp = Convert.ToString(userId, 16);
- switch (temp.Length)
+ var tempBytes = new byte[2];
+ for (int i = 0; i < 2; i++)
{
- case 1:
- userIdStr = "0" + temp + "00";
- break;
- case 2:
- userIdStr = temp + "00";
- break;
- case 3:
- var thirdBit = temp.Substring(temp.Length - 2, 1);
- userIdStr = temp + "0" + thirdBit;
- break;
- case 4:
- userIdStr = temp;
- break;
+ tempBytes[i] = (byte)(userId >> (i * 8) & 0xff);
}
- sbString.Append(userIdStr.ToString().ToUpper());
+ var curV1 = Convert.ToString(tempBytes[0], 16);
+ var curV2 = Convert.ToString(tempBytes[1], 16);
+ if (curV1.Length == 1)
+ {
+ curV1 = "0" + curV1;
+ }
+ if (curV2.Length == 1)
+ {
+ curV2 = "0" + curV2;
+ }
+
+ userIdStr = (curV1 + curV2).ToUpper();
+
data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength +
- delUserTypeStr + sbString;
+ delUserTypeStr + userIdStr;
}
catch { };
--
Gitblit v1.8.0