From a2927467ebfa938a420f392deb6882b35570fd33 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 01 十二月 2020 16:48:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/CJL-NEW'

---
 HDL_ON/DAL/Server/HttpServerRequest.cs |  233 ++++++++++++++++++++++++++++++++++------------------------
 1 files changed, 137 insertions(+), 96 deletions(-)

diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index da2a2e1..6e286dc 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -406,9 +406,7 @@
         /// <returns></returns>
         public string UpdataUserHeadImage(string fileName)
         {
-            FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
-            byte[] bytes = new byte[fs.Length];
-            fs.Read(bytes, 0, bytes.Length);
+            byte[] bytes = Shared.IO.FileUtils.ReadFile(fileName);
             var revertObj = HttpUtil.RequestHttpsUpload(RestSharp.Method.POST, NewAPI.API_POST_Head_Upload, bytes);
             return revertObj.Code;
         }
@@ -458,7 +456,7 @@
         /// </summary>
         public string GetHomePager(HomeTypeEnum homeType = HomeTypeEnum.ALL)
         {
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new GetHomeListObj() { homeType = homeType.ToString() });
+            var requestJson = HttpUtil.GetSignRequestJson(new GetHomeListObj() { homeType = homeType.ToString() });
             var resultObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_Gethomepager, requestJson);
             if (resultObj.Code == StateCode.SUCCESS)
             {
@@ -504,6 +502,9 @@
                     }
                     DB_ResidenceData.residenceData.SaveResidenceData();
                     UserInfo.Current.SaveUserInfo();
+
+                    //鍒锋柊涓�娆′綇瀹呯綉鍏�
+                    GetHomeGatewayList();
                 }
 
             }
@@ -605,47 +606,48 @@
                 requestObj.Address = editName;
             }
 
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj);
+            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Home_UpdateHome, requestJson);
         }
 
         /// <summary>
-        /// 鑾峰彇鍒锋柊褰撳墠浣忓畢缃戝叧鎺ュ彛
+        /// 鑾峰彇鍒锋柊褰撳墠浣忓畢鐨勭綉鍏冲垪琛�
         /// </summary>
         public void GetHomeGatewayList()
         {
-            if (string.IsNullOrEmpty(DB_ResidenceData.residenceData.residecenInfo.RegionID)) return;
-            var nowhomeId = DB_ResidenceData.residenceData.residecenInfo.RegionID;
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new HomeIdObj() { homeId = nowhomeId });
-            var revertObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_GetGatewayList, requestJson);
-            if (revertObj.Code == StateCode.SUCCESS)
+            try
             {
-                var mHomeGatewayRes = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HomeGatewayInfo>>(revertObj.Data.ToString());
-                if (nowhomeId == DB_ResidenceData.residenceData.residecenInfo.RegionID)
+                if (string.IsNullOrEmpty(DB_ResidenceData.residenceData.residecenInfo.RegionID)) return;
+                var nowhomeId = DB_ResidenceData.residenceData.residecenInfo.RegionID;
+                var requestJson = HttpUtil.GetSignRequestJson(new HomeIdObj() { homeId = nowhomeId });
+                var revertObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_GetGatewayList, requestJson);
+                if (revertObj.Code == StateCode.SUCCESS)
                 {
-                    if (mHomeGatewayRes != null)
+                    var mHomeGatewayRes = Newtonsoft.Json.JsonConvert.DeserializeObject<List<HomeGatewayInfo>>(revertObj.Data.ToString());
+                    if (nowhomeId == DB_ResidenceData.residenceData.residecenInfo.RegionID)
                     {
-                        if (mHomeGatewayRes.Count > 0)
+                        if (mHomeGatewayRes != null)
                         {
-                            DB_ResidenceData.residenceData.residenceGatewayMAC = mHomeGatewayRes[0].mac;
+                            if (mHomeGatewayRes.Count > 0)
+                            {
+                                DB_ResidenceData.residenceData.HomeGateway = mHomeGatewayRes[0];
+                                DB_ResidenceData.residenceData.SaveResidenceData();
+                                return;
+                            }
                         }
-                        else
-                        {
-                            DB_ResidenceData.residenceData.residenceGatewayMAC = "";
-
-                        }
+                        //鍏朵綑鎯呭喌娓呯┖缃戝叧淇℃伅
+                        DB_ResidenceData.residenceData.HomeGateway = null;
                         DB_ResidenceData.residenceData.SaveResidenceData();
                     }
-
-                    if (mHomeGatewayRes != null)
-                    {
-                        //Utlis.WriteLine ("鑾峰緱褰撳墠浣忓畢缃戝叧涓暟锛�" + mHomeGatewayRes.content.Count);
-                    }
+                }
+                else
+                {
+                    //鎻愮ず閿欒
                 }
             }
-            else
+            catch
             {
-                //鎻愮ず閿欒
+
             }
         }
 
@@ -655,7 +657,7 @@
         /// <returns></returns>
         public ResponsePackNew GetResidenceMemberAccount()
         {
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new HomeIdObj() { homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID });
+            var requestJson = HttpUtil.GetSignRequestJson(new HomeIdObj() { homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID });
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_FindAll, requestJson);
         }
 
@@ -670,7 +672,7 @@
                 childAccountId = subaccount.childAccountId,
                 homeId = subaccount.homeId
             };
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj);
+            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Delete, requestJson);
         }
 
@@ -682,7 +684,7 @@
         /// <returns></returns>
         public ResponsePackNew EditSubAccountNickName(string nickName, string childAccountId)
         {
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new UpdateChildNickNameObj()
+            var requestJson = HttpUtil.GetSignRequestJson(new UpdateChildNickNameObj()
             {
                 homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID,
                 childAccountId = childAccountId,
@@ -699,7 +701,7 @@
         /// <returns></returns>
         public ResponsePackNew ChangeCreateSceneState(bool isAllow, string childAccountId)
         {
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new UpdateChildAllowCreateSceneObj()
+            var requestJson = HttpUtil.GetSignRequestJson(new UpdateChildAllowCreateSceneObj()
             {
                 homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID,
                 childAccountId = childAccountId,
@@ -707,6 +709,44 @@
             });
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Update, requestJson);
         }
+
+        #region 鏂版暟鎹垎浜�
+        /// <summary>
+        /// 娣诲姞鍒嗕韩
+        /// </summary>
+        /// <param name="addShareObj"></param>
+        /// <returns></returns>
+        public ResponsePackNew AddShare(AddShareObj addShareObj)
+        {
+            var requestJson = HttpUtil.GetSignRequestJson(addShareObj);
+
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Share_Add, requestJson);
+        }
+
+        /// <summary>
+        /// 鍒犻櫎鍒嗕韩
+        /// </summary>
+        /// <param name="deleteShareObj"></param>
+        /// <returns></returns>
+        public ResponsePackNew DeleteShare(DeleteShareObj deleteShareObj)
+        {
+            var requestJson = HttpUtil.GetSignRequestJson(deleteShareObj);
+
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Share_Delete, requestJson);
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍒嗕韩
+        /// </summary>
+        /// <param name="addShareObj"></param>
+        /// <returns></returns>
+        public ResponsePackNew GetShare(GetShareObj getShareObj)
+        {
+            var requestJson = HttpUtil.GetSignRequestJson(getShareObj);
+
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Share_Delete, requestJson);
+        }
+        #endregion
 
         /// <summary>
         /// 鑾峰彇浣忓畢涓嬪瓙璐﹀彿鐨勫叡浜暟鎹垪琛�
@@ -720,7 +760,7 @@
             //string jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(d);
             //return RequestHttps($"{severAddress}/ZigbeeDataShare/GetShareDataBySubAccount", jsonString, true);
 
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new HomeShareFindAll()
+            var requestJson = HttpUtil.GetSignRequestJson(new HomeShareFindAll()
             {
                 homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID,
                 childAccountId = childAccountId
@@ -805,7 +845,7 @@
         /// <returns></returns>
         public ResponsePackNew DeleteShareData(ShareData shareData)
         {
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new ShareFileDownObj()
+            var requestJson = HttpUtil.GetSignRequestJson(new ShareFileDownObj()
             {
                 homeId = shareData.homeId,
                 homeShareId = shareData.id
@@ -840,7 +880,7 @@
         {
             //娣诲姞瀛愯处鍙�
             var requestObj = new ChildAddObj() { homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID, account = subAccount, nickName = nickName };
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj);
+            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Add, requestJson);
 
         }
@@ -887,7 +927,7 @@
         {
             try
             {
-                var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new GetMqttRemoteInfoObj()
+                var requestJson = HttpUtil.GetSignRequestJson(new GetMqttRemoteInfoObj()
                 {
                     attachClientId = attachClientId,
                     homeType = HomeTypeEnum.BUSPRO.ToString()
@@ -921,13 +961,16 @@
 #if __IOS__
                 deviceType = PhoneDeviceType.IOS.ToString();
 #endif
-                //鏄惁鐢熸垚妯″紡
+                //鏄惁鐢熶骇妯″紡
                 bool isProduce = true;
 #if DEBUG
                 isProduce = false;
 #endif
 
-                if (string.IsNullOrEmpty(OnAppConfig.Instance.PushDeviceToken)) return false;
+                if (string.IsNullOrEmpty(OnAppConfig.Instance.PushDeviceToken)) {
+                    Utlis.WriteLine("PushDeviceToken 涓虹┖");
+                    return false;
+                }
 
                 var mAddpushinfoObj = new AddpushinfoObj()
                 {
@@ -935,9 +978,10 @@
                     deviceName = OnAppConfig.Instance.PhoneName,
                     deviceType = deviceType,
                     produce = isProduce,
-
                 };
+               
                 var mAddpushinfoJson = Newtonsoft.Json.JsonConvert.SerializeObject(mAddpushinfoObj);
+                //var mAddpushinfoJson = HttpUtil.GetSignRequestJson(mAddpushinfoObj);
                 var revertObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_PushSerivce_AddToken, mAddpushinfoJson);
                 if (revertObj.Code == StateCode.SUCCESS)
                 {
@@ -948,14 +992,15 @@
                         {
                             OnAppConfig.Instance.PushId = pushId;
                             OnAppConfig.Instance.SaveUserConfig();
+                           
                             return true;
                         }
                     }
-                    Utlis.WriteLine("AddToken 鎴愬姛");
+                 
                 }
                 else
                 {
-                    Utlis.WriteLine("AddToken 澶辫触");
+                    //Utlis.WriteLine("AddToken 澶辫触");
                 }
                 return false;
             }
@@ -965,13 +1010,14 @@
             }
         }
 
+       
         /// <summary>
         /// 鏌ヨ鎺ㄩ�佷俊鎭垪琛�
         /// </summary>
         /// <returns></returns>
-        public ResponsePackNew PushSerivceGetpushmessagelist()
+        public ResponsePackNew PushSerivceGetPushmessagelist()
         {
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new GetMessageListObj()
+            var requestJson = HttpUtil.GetSignRequestJson(new GetMessageListObj()
             {
                 pushId = OnAppConfig.Instance.PushId
             });
@@ -986,7 +1032,7 @@
         {
             if (string.IsNullOrEmpty(OnAppConfig.Instance.PushId)) return false;
 
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new PushIdObj()
+            var requestJson = HttpUtil.GetSignRequestJson(new PushIdObj()
             {
                 pushId = OnAppConfig.Instance.PushId
             });
@@ -1012,7 +1058,7 @@
             if (string.IsNullOrEmpty(OnAppConfig.Instance.PushId)) return false;
             try
             {
-                var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new PushIdObj() {
+                var requestJson = HttpUtil.GetSignRequestJson(new PushIdObj() {
                     pushId = OnAppConfig.Instance.PushId
                 });
                
@@ -1044,7 +1090,7 @@
 
             try
             {
-                var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new PushIdObj()
+                var requestJson = HttpUtil.GetSignRequestJson(new PushIdObj()
                 {
                     pushId = OnAppConfig.Instance.PushId
                 });
@@ -1076,7 +1122,7 @@
 
             try
             {
-                var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new PushMsgIdObj()
+                var requestJson = HttpUtil.GetSignRequestJson(new PushMsgIdObj()
                 {
                     msgId = msgId
                 });
@@ -1109,7 +1155,7 @@
 
             try
             {
-                var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(new PushMsgIdObj()
+                var requestJson = HttpUtil.GetSignRequestJson(new PushMsgIdObj()
                 {
                     msgId = msgId
                 });
@@ -1130,6 +1176,47 @@
                 return false;
             }
         }
+
+        /// <summary>
+        /// 娉ㄥ唽鎺ㄩ��
+        /// </summary>
+        public void RegisteredPush()
+        {
+            new System.Threading.Thread(() =>
+            {
+                var success = PushSerivceAddPushInfo();
+                if (success)
+                {
+                    Utlis.WriteLine("鎺ㄩ�佹敞鍐屾垚鍔�");
+                }
+                else
+                {
+                    Utlis.WriteLine("鎺ㄩ�佹敞鍐屽け璐�");
+                }
+            })
+            { IsBackground = true }.Start();
+        }
+
+        /// <summary>
+        /// 娉ㄩ攢鎺ㄩ��
+        /// </summary>
+        public void SignOutPush()
+        {
+            new System.Threading.Thread(() =>
+            {
+                var success = PushSerivceSignOut();
+                if (success)
+                {
+                    Utlis.WriteLine("鎺ㄩ�佹敞閿�鎴愬姛");
+                }
+                else
+                {
+                    Utlis.WriteLine("鎺ㄩ�佹敞閿�澶辫触");
+                }
+            })
+            { IsBackground = true }.Start();
+        }
+
         #endregion
 
         #region 妫�娴嬫洿鏂�
@@ -1146,7 +1233,7 @@
 #if __IOS__
             requestObj.DeviceType = PhoneDeviceType.IOS.ToString();
 #endif
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj);
+            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPost(NewAPI.API_POST_CheckAppVersion, requestJson);
         }
 
@@ -1163,7 +1250,7 @@
 #if __IOS__
             requestObj.DeviceType = PhoneDeviceType.IOS.ToString();
 #endif
-            var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj);
+            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPost(NewAPI.API_POST_GetAppVersion, requestJson);
         }
 
@@ -1236,52 +1323,6 @@
 
         #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>

--
Gitblit v1.8.0