From a251442d9fc088b3d8cf74d20b959f0f6103b095 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期一, 14 九月 2020 17:42:10 +0800
Subject: [PATCH] 20200914

---
 HDL_ON/DAL/Server/HttpServerRequest.cs |  195 ++++++++++++++++++++++++++++--------------------
 1 files changed, 115 insertions(+), 80 deletions(-)

diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index b58ed71..15b98dc 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -38,11 +38,7 @@
 
         public HttpServerRequest()
         {
-#if DEBUG1
-            severAddress = debugSever;
-#else
             severAddress = relaseaSever;
-#endif
         }
 
         /// <summary>
@@ -89,7 +85,7 @@
                     result = Language.StringByID(StringId.FailedToSendVerificationCode);
                     break;
                 case "EXIST":
-                    result = Language.StringByID(StringId.AccountAlreadyExists);
+                    result = Language.StringByID(StringId.AccountAlreadyUse);
                     break;
                 case "Self:Net_Error":
                     result = Language.StringByID(StringId.NetworkAnomaly);
@@ -184,7 +180,7 @@
                                 "\"Account\":" + "\"" + account + "\"" + "," +
                                 "\"Company\":" + MainPage.Company + "," +
                                 "\"Language\":" + "\"" + Language.CurrentLanguage.ToLower() + "\"" + "," +
-                                "\"AreaCode\":" + OnAppConfig.Instance.CountryNumber +
+                                "\"AreaCode\":" + MainPage.LoginUser.areaCode +
                                 "}";
             return RequestHttps($"{severAddress}/ZigbeeUsers/RegisterSendVerCode", jsonString, false);
 
@@ -206,19 +202,19 @@
             return RequestHttps($"{severAddress}/ZigbeeUsers/LoginSendVerCode", jsonString, false);
         }
 
-        /// <summary>
-        /// 鍙戦�侀獙璇佺爜
-        /// </summary>
-        public ResponsePack SendSms(string account)
-        {
-            string jsonString = "{" +
-                                "\"Account\":" + "\"" + account + "\"" + "," +
-                                "\"Company\":" + MainPage.Company + "," +
-                                "\"Language\":" + "\"" + Language.CurrentLanguage + "\"" + "," +
-                                "\"AreaCode\":" + OnAppConfig.Instance.CountryNumber +
-                                "}";
-            return RequestHttps($"{severAddress}/ZigbeeUsers/LoginSendVerCode", jsonString, false);
-        }
+        ///// <summary>
+        ///// 鍙戦�侀獙璇佺爜
+        ///// </summary>
+        //public ResponsePack SendSms(string account)
+        //{
+        //    string jsonString = "{" +
+        //                        "\"Account\":" + "\"" + account + "\"" + "," +
+        //                        "\"Company\":" + MainPage.Company + "," +
+        //                        "\"Language\":" + "\"" + Language.CurrentLanguage + "\"" + "," +
+        //                        "\"AreaCode\":" + OnAppConfig.Instance.CountryNumber +
+        //                        "}";
+        //    return RequestHttps($"{severAddress}/ZigbeeUsers/LoginSendVerCode", jsonString, false);
+        //}
 
         /// <summary>
         /// 楠岃瘉楠岃瘉鐮�
@@ -274,15 +270,17 @@
                 try
                 {
                     var headImageString = dataStr.GetValue("HeadImage").ToString();
-                    var jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(headImageString);
-                    var headImageBytes = Newtonsoft.Json.JsonConvert.DeserializeObject<byte[]>(jsonString);
-                    MainPage.LoginUser.headImagePageBytes = headImageBytes;
-                    var filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "/", "headImage.png");
-
-                    fs = new FileStream(filePath, FileMode.Create, FileAccess.Write);
-                    fs.Write(headImageBytes, 0, headImageBytes.Length);
-                    fs.Flush();
-                    MainPage.LoginUser.headImagePagePath = filePath;
+                    if (!string.IsNullOrEmpty(headImageString))
+                    {
+                        var jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(headImageString);
+                        var headImageBytes = Newtonsoft.Json.JsonConvert.DeserializeObject<byte[]>(jsonString);
+                        MainPage.LoginUser.headImagePageBytes = headImageBytes;
+                        var filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "/", "headImage.png");
+                        fs = new FileStream(filePath, FileMode.Create, FileAccess.Write);
+                        fs.Write(headImageBytes, 0, headImageBytes.Length);
+                        fs.Flush();
+                        MainPage.LoginUser.headImagePagePath = filePath;
+                    }
                 } catch (Exception ex)
                 {
                     MainPage.Log($"download headImage error : {ex.Message}");
@@ -415,7 +413,12 @@
                             Name = homeJsonStr.GetValue("Name").ToString(),
                             Address = homeJsonStr.GetValue("Address").ToString(),
                             IsOthreShare = (bool)homeJsonStr.GetValue("IsOthreShare"),
+                            homeGateways = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HomeGateways>>(homeJsonStr.GetValue("HomeGateways").ToString()),
                         };
+                        if (home.IsOthreShare)
+                        {
+                            continue;
+                        }
                         MainPage.LoginUser.regionList.Add(home);
                         if (string.IsNullOrEmpty(DB_ResidenceData.residenceData.CurReginID))
                         {
@@ -686,6 +689,53 @@
 
         #endregion
 
+        #region mqtt杩滅▼杩炴帴锛堟棫锛�
+        /// <summary>
+        /// 璇锋眰Mqtt鏁版嵁
+        /// </summary>
+        /// <param name="dataStringJson">璇锋眰鐨勫弬鏁�.</param>
+        public ResponsePack RequestMqttInfo( string dataStringJson)
+        {
+            ResponsePack revertObj = null;
+
+            var webClient = new WebClient();
+            #region
+            webClient.Headers.Add("CONTENT-TYPE", "application/json");
+            var url = "https://global.hdlcontrol.com/ProposedProductionApi/EmqMqtt/GetConnMqttInfo";
+
+            byte[] bytes = null;
+            try
+            {
+                bytes = webClient.UploadData(url, Encoding.UTF8.GetBytes(dataStringJson));
+            }
+            catch (Exception ex)
+            {
+                Console.WriteLine(ex.Message);
+                revertObj = new ResponsePack() { StateCode = "Net_Error" };
+            }
+
+            string responseString = null;
+            if (bytes != null)
+            {
+                responseString = Encoding.UTF8.GetString(bytes);
+            }
+
+            if (responseString != null)
+            {
+                try
+                {
+                    revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePack>(responseString);
+                }
+                catch (Exception ex)
+                {
+                    Console.WriteLine(ex.ToString());
+                }
+            }
+            return revertObj;
+            #endregion
+        }
+        #endregion
+
         #region 澶囦唤閮ㄥ垎
         /// <summary>
         /// 鑾峰彇浣忓畢澶囦唤鍒楄〃
@@ -713,7 +763,7 @@
             }
             return backupList;
         }
-
+        /* 2020-09-01 寮冪敤 鎭㈠鏃ф暟鎹姛鑳藉湪bus杞欢涓婂疄鐜�
         /// <summary>
         /// 鑾峰彇澶囦唤鏂囦欢鍒楄〃
         /// </summary>
@@ -844,7 +894,7 @@
                 //    backgroundImage = "Classification/Room/Roombg.png",
                 //    //backgroundImage = ss.GetValue("BackGroundImage").ToString() == "Room/r1.png" ? "Classification/Room/Roombg.png" : filePath,
                 //};
-                //DB_ResidenceData.residenceData.rooms.Add(room1);
+                //DB_ResidenceData.rooms.Add(room1);
                 //roomList.Add(ss, room1);
 
             }
@@ -917,23 +967,8 @@
 
                 /// <summary>
                 /// 鍔熻兘ID
-                /// 鍘傚晢浠g爜	2bytes;     01	HDL
-                /// 閫氳鏂瑰紡	1byte ;     01	HDL Bus; 02	Zigbee;03	KNX;04	Z-Wave
-                /// 浜у搧GUID	8bytes
-                /// 浜у搧绫诲埆	1byte ;     01  璋冨厜鍣�;02缁х數鍣�;03骞叉帴鐐规ā鍧�;04浼犳劅鍣�;05闈㈡澘
-                /// 鐗╂ā鍨嬬被鍨�2bytes      01 寮�鍏崇被    --01寮�鍏�;02鎻掑骇
-                ///		                02	鐓ф槑     --01寮�鍏崇被;02璋冨厜绫�;03鑹叉俯;04LED
-                ///		                03	閬槼     --01绐楀笜鐢垫満;02鐧惧彾绐�;03寮�鍚堝笜;04鍗峰笜
-                ///		                04	鎭掓俯鍣�    --01绌鸿皟;02鍦版殩;03姣涚粏绌鸿皟
-                ///             		05	鏂伴		
-                ///             		06	褰遍煶		
-                ///             		07	闊充箰		
-                ///		                08	鑳芥簮		
-                ///		                09	瀹夐槻
-                /// 閫氶亾鍙�	2bytes
-                /// Key_id  2bytes
                 /// </summary>
-                /// "00010112345678901234560101230123AABB";
+                /// "03010112345678901234560101230123AABB";
                 var buffer = Guid.NewGuid().ToByteArray();
                 string guid = "";
                 if (buffer != null)
@@ -962,19 +997,19 @@
                 {
                     case "LightSwitch":
                     case "LightMixSwitch":
-                        var light1 = DB_ResidenceData.residenceData.functionList.lights.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var light1 = DB_ResidenceData.functionList.lights.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                           obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (light1 != null)
                         {
                             //light1.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.lights.Add(new Light()
+                        DB_ResidenceData.functionList.lights.Add(new Light()
                         {
-                            sid = "000101" + guid + "0102010001AABB",
+                            sid = "030101" + guid + "0102010001AABB",
                             name = ss.GetValue("Name").ToString(),
                             function = new List<Trait>() {
-                                    new Trait { attri="on_off", max=100,min = 0, value= new List<string> { "on","off"} },
+                                    new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off"} },
                                 },
                             roomIdList = roomIds,
                             bus_Data = new BusData
@@ -988,19 +1023,19 @@
                     case "LightDimming":
                     case "LightDALI":
                     case "LightMixDimming":
-                        var light2 = DB_ResidenceData.residenceData.functionList.lights.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var light2 = DB_ResidenceData.functionList.lights.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                           obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (light2 != null)
                         {
                             //light2.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.lights.Add(new Light()
+                        DB_ResidenceData.functionList.lights.Add(new Light()
                         {
-                            sid = "000101" + guid + "0202020001AABB",
+                            sid = "030101" + guid + "0202020001AABB",
                             name = ss.GetValue("Name").ToString(),
                             function = new List<Trait>() {
-                                        new Trait { attri="brightness", max=100,min = 0, value= new List<string> { "up","down"} },
+                                        new Trait { name="brightness", max=100,min = 0, value_key= new List<string> { "up","down"} },
                                     },
                             roomIdList = roomIds,
                             //roomIdList = new List<string>() { "0001" },
@@ -1015,20 +1050,20 @@
                         break;
                     case "LightLogic":
                     case "LightRGB":
-                        var light3 = DB_ResidenceData.residenceData.functionList.lights.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var light3 = DB_ResidenceData.functionList.lights.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                           obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (light3 != null)
                         {
                             //light3.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.lights.Add(new Light()
+                        DB_ResidenceData.functionList.lights.Add(new Light()
                         {
-                            sid = "000101" + guid + "0202040001AABB",
+                            sid = "030101" + guid + "0202040001AABB",
                             name = ss.GetValue("Name").ToString(),
                             function = new List<Trait>() {
-                                        new Trait { attri="brightness", max=100,min = 0, value= new List<string> { "on","off"} },
-                                        new Trait { attri="color", max=100,min = 0, value= new List<string> { "255", "255", "255" } },
+                                        new Trait { name="brightness", max=100,min = 0, value_key= new List<string> { "on","off"} },
+                                        new Trait { name="color", max=100,min = 0, value_key= new List<string> { "255", "255", "255" } },
                                     },
                             roomIdList = roomIds,
                             //roomIdList = new List<string>() { roomSid },
@@ -1044,22 +1079,22 @@
                     case "HVAC":
                     case "ACPanel":
                     case "ACInfrared":
-                        var ac = DB_ResidenceData.residenceData.functionList.aCs.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var ac = DB_ResidenceData.functionList.aCs.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                           obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (ac != null)
                         {
                             //ac.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.aCs.Add(new AC()
+                        DB_ResidenceData.functionList.aCs.Add(new AC()
                         {
-                            sid = "000101" + guid + "0204010001AABB",
+                            sid = "030101" + guid + "0204010001AABB",
                             name = ss.GetValue("Name").ToString(),
                             function = new List<Trait>() {
-                                        new Trait { attri="on_off", max=1,min = 0, value= new List<string> { "on","off"} },
-                                        new Trait { attri="mode", max = 2,min =0,value = new List<string>{ "auto", "heat", "cool","dry" } },
-                                        new Trait { attri = "fan",max = 3,min =0,value = new List<string>{ "low", "mid", "high" ,"auto"} },
-                                        new Trait { attri = "temperature", max = 32,min=16,value = new List<string>{"up","down" } },
+                                        new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} },
+                                        new Trait { name="mode", max = 2,min =0,value_key = new List<string>{ "auto", "heat", "cool","dry" } },
+                                        new Trait { name = "fan",max = 3,min =0,value_key = new List<string>{ "low", "mid", "high" ,"auto"} },
+                                        new Trait { name = "temperature", max = 32,min=16,value_key = new List<string>{"up","down" } },
                                     },
                             roomIdList = roomIds,
                             //roomIdList = new List<string>() { roomSid},
@@ -1074,21 +1109,21 @@
                         break;
                     //Entity.
                     case "CurtainModel":
-                        var curtain1 = DB_ResidenceData.residenceData.functionList.curtains.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var curtain1 = DB_ResidenceData.functionList.curtains.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                           obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (curtain1 != null)
                         {
                             //curtain1.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.curtains.Add(new Curtain()
+                        DB_ResidenceData.functionList.curtains.Add(new Curtain()
                         {
-                            sid = "000101" + guid + "0203010001AABB",
+                            sid = "030101" + guid + "0203010001AABB",
                             name = ss.GetValue("Name").ToString(),
                             roomIdList = roomIds,
                             //roomIdList = new List<string>() { roomSid },
                             function = new List<Trait>() {
-                                        new Trait { attri="on_off", max=2,min = 0, value= new List<string> { "on","off","stop"} },
+                                        new Trait { name="on_off", max=2,min = 0, value_key= new List<string> { "on","off","stop"} },
                                     },// "curtain",
                             lastState = "寮�",
                             bus_Data = new BusData
@@ -1100,21 +1135,21 @@
                         });
                         break;
                     case "CurtainRoller":
-                        var curtain2 = DB_ResidenceData.residenceData.functionList.curtains.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var curtain2 = DB_ResidenceData.functionList.curtains.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                          obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (curtain2 != null)
                         {
                             //curtain2.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.curtains.Add(new Curtain()
+                        DB_ResidenceData.functionList.curtains.Add(new Curtain()
                         {
-                            sid = "000101" + guid + "0203040001AABB",
+                            sid = "030101" + guid + "0203040001AABB",
                             name = ss.GetValue("Name").ToString(),
                             roomIdList = roomIds,
                             //roomIdList = new List<string>() { roomSid },
                             function = new List<Trait>() {
-                                        new Trait { attri="on_off", max=100,min = 0, value= new List<string> { "on","off","stop"} },
+                                        new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off","stop"} },
                                     },// "rollingshutter",
                             lastState = "20%",
                             bus_Data = new BusData
@@ -1126,21 +1161,21 @@
                         });
                         break;
                     case "CurtainTrietex":
-                        var curtain3 = DB_ResidenceData.residenceData.functionList.curtains.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
+                        var curtain3 = DB_ResidenceData.functionList.curtains.Find((obj) => obj.bus_Data.SubnetID == (byte)ss.GetValue("SubnetID") &&
                          obj.bus_Data.DeviceID == (byte)ss.GetValue("DeviceID") && obj.bus_Data.LoopID == (byte)ss.GetValue("LoopID"));
                         if (curtain3 != null)
                         {
                             //curtain3.roomIdList.Add(roomSid);
                             break;
                         }
-                        DB_ResidenceData.residenceData.functionList.curtains.Add(new Curtain()
+                        DB_ResidenceData.functionList.curtains.Add(new Curtain()
                         {
-                            sid = "000101" + guid + "0203030001AABB",
+                            sid = "030101" + guid + "0203030001AABB",
                             name = ss.GetValue("Name").ToString(),
                             roomIdList = roomIds,
                             //roomIdList = new List<string>() { roomSid },
                             function = new List<Trait>() {
-                                        new Trait { attri="on_off", max=100,min = 0, value= new List<string> { "on","off","stop"} },
+                                        new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off","stop"} },
                                     },
                             lastState = "20%",
                             bus_Data = new BusData
@@ -1151,7 +1186,7 @@
                             },
                         });
                         break;
-                        //Entity.DB_ResidenceData.residenceData.functionList.floorHeatings.Add(new FloorHeating()
+                        //Entity.DB_ResidenceData.functionList.floorHeatings.Add(new FloorHeating()
                         //{
                         //    sid = "12341212345678901234560704010004ABCD",
                         //    name = "鍦扮儹",
@@ -1169,7 +1204,7 @@
 
             }
         }
-
+        */
 
         #endregion
     }

--
Gitblit v1.8.0