From fe3b2466c68b5db70d38e78039703add3b8b1dfe Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 31 十二月 2020 19:29:43 +0800
Subject: [PATCH] 合并了代码

---
 ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs |  137 +++++++++++++++++++++++----------------------
 1 files changed, 70 insertions(+), 67 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs
index 9572805..df2c8d6 100755
--- a/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs
+++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/DoorLock.cs
@@ -6,6 +6,7 @@
 using Newtonsoft.Json.Linq;
 using Shared;
 using Shared.Common;
+using Shared.Common.ResponseEntity;
 using Shared.Phone.UserCenter;
 
 namespace ZigBee.Device
@@ -33,7 +34,7 @@
 
         public string currentUserDisplayMethod = string.Empty;//褰撳墠鐢ㄦ埛鏄剧ず鏂瑰紡
         //鏈湴鎵�鏈夎处鎴峰垪琛�
-        public List<Shared.Phone.MemberInfoRes> localAllAccountList = new List<Shared.Phone.MemberInfoRes> { };
+        public List<Shared.Phone.UserCenter.MemberInfoRes> localAllAccountList = new List<Shared.Phone.UserCenter.MemberInfoRes> { };
 
         /// <summary>
         /// 鏄惁甯稿紑妯″紡 
@@ -475,16 +476,15 @@
             return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<GetDoorLockTempPasswordDataRes>>)(async () =>
             {
                 GetDoorLockTempPasswordDataRes listInfo = null;
-                //鈽嗐優銉笺偗鈽�
-                //var revertObj = await SendDoorLockToServer(RequestName, getDoorLockTempPasswordData);
-                //if (revertObj != null && revertObj.ResponseData != null)
-                //{
-                //    var result = revertObj.ResponseData.ToString();
-                //    if (result != null)
-                //    {
-                //        listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetDoorLockTempPasswordDataRes>(result);
-                //    }
-                //}
+                var revertObj = await SendDoorLockToServer(RequestName, getDoorLockTempPasswordData);
+                if (revertObj != null && revertObj.ResponseData != null)
+                {
+                    var result = revertObj.ResponseData.ToString();
+                    if (result != null)
+                    {
+                        listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetDoorLockTempPasswordDataRes>(result);
+                    }
+                }
                 return listInfo;
             }));
         }
@@ -597,16 +597,15 @@
             return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<GetDoorLockDataRes>>)(async () =>
             {
                 GetDoorLockDataRes listInfo = null;
-                //鈽嗐優銉笺偗鈽�
-                //var revertObj = await SendDoorLockToServer(RequestName, getDoorLockData);
-                //if (revertObj != null && revertObj.ResponseData != null)
-                //{
-                //    var result = revertObj.ResponseData.ToString();
-                //    if (result != null)
-                //    {
-                //        listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetDoorLockDataRes>(result);
-                //    }
-                //}
+                var revertObj = await SendDoorLockToServer(RequestName, getDoorLockData);
+                if (revertObj != null && revertObj.ResponseData != null)
+                {
+                    var result = revertObj.ResponseData.ToString();
+                    if (result != null)
+                    {
+                        listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetDoorLockDataRes>(result);
+                    }
+                }
                 return listInfo;
             }));
         }
@@ -618,7 +617,7 @@
         /// <returns>鑾峰彇浠庢帴鍙i偅閲屽彇鍒扮殑ResponsePack</returns>
         /// <param name="RequestName">璁块棶鍦板潃</param>
         /// <param name="obj">涓�涓被</param>
-        public static async Task<Shared.Phone.ResponsePack> SendDoorLockToServer(string RequestName, object obj)
+        public static async Task<ResponsePack> SendDoorLockToServer(string RequestName, object obj)
         {
             try
             {
@@ -626,21 +625,21 @@
                 var requestJson = JsonConvert.SerializeObject(obj);
                 var byteData = System.Text.Encoding.UTF8.GetBytes(requestJson);
                 byte[] result1 = null;
-                //璁块棶鎺ュ彛 //鈽嗐優銉笺偗鈽�
-                if (Shared.Phone.HdlUserCenterResourse.ResidenceOption.AuthorityNo == 1)
+                //璁块棶鎺ュ彛
+                if (UserCenterResourse.UserInfo.AuthorityNo == 1)
                 {
-                    //result1 = CommonPage.Instance.RequestHttpsZigbeeBytesResultAsync(RequestName, byteData);
+                    result1 = CommonPage.Instance.RequestHttpsZigbeeBytesResultAsync(RequestName, byteData);
                 }
                 else
                 {
-                    //result1 = CommonPage.Instance.RequestZigbeeHttpsByAdmin(RequestName, byteData);
+                    result1 = CommonPage.Instance.RequestZigbeeHttpsByAdmin(RequestName, byteData);
                 }
                 if (result1 != null)
                 {
                     var result2 = Encoding.UTF8.GetString(result1);
                     if (result2 != null)
                     {
-                        var result = Newtonsoft.Json.JsonConvert.DeserializeObject<Shared.Phone.ResponsePack>(result2);
+                        var result = Newtonsoft.Json.JsonConvert.DeserializeObject<Shared.Common.ResponseEntity.ResponsePack>(result2);
                         return result;
                     }
                 }
@@ -656,13 +655,19 @@
         /// <summary>
         /// 鑾峰彇瀛愯处鎴蜂俊鎭�
         /// </summary>
-        static List<Shared.Phone.MemberInfoRes> DoorLockAccountList = new List<Shared.Phone.MemberInfoRes> { };
-        public static async System.Threading.Tasks.Task<List<Shared.Phone.MemberInfoRes>> GetSubAccountByDistributedMark()
+        static List<Shared.Phone.UserCenter.MemberInfoRes> DoorLockAccountList = new List<Shared.Phone.UserCenter.MemberInfoRes> { };
+        public static async System.Threading.Tasks.Task<List<Shared.Phone.UserCenter.MemberInfoRes>> GetSubAccountByDistributedMark()
         {
             DoorLockAccountList.Clear();
-            return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<List<Shared.Phone.MemberInfoRes>>>)(async () =>
+            return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<List<Shared.Phone.UserCenter.MemberInfoRes>>>)(async () =>
            {
-               var listInfo = Shared.Phone.HdlMemberLogic.Current.GetMemberListInfo();
+               var pra = new Shared.Phone.UserCenter.MemberListInfoPra();
+               string result = UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra);
+               if (result == null)
+               {
+                   return null;
+               }
+               var listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Shared.Phone.UserCenter.MemberInfoRes>>(result);
                return listInfo;
            }));
         }
@@ -960,7 +965,7 @@
             /// <summary>
             /// 缂栫▼浜嬩欢瑙﹀彂婧�
             /// 甯哥敤锛�
-            /// 0:Keypad(閿洏/瀵嗙爜)锛�3:RFID(灏勯鍗�)锛�15:鎸囩汗
+            /// 0:Keypad(閿洏/瀵嗙爜)锛�3:RFID(灏勯鍗�)锛�15:鎸囩汗 58锛歠ace  59锛氶潤鑴�
             ///涓嶅父鐢細
             /// 1:RF(Zigbee鏃犵嚎)锛�2:Manual(鎵嬪姩)锛�255:Indeterminate(涓嶇‘瀹�)
             /// </summary>
@@ -1245,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 { };
 
@@ -1302,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