From a3313818a548d51777ae4e6cc006e9d1e2c1036e Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 07 四月 2023 09:15:37 +0800
Subject: [PATCH] 群控备份

---
 HDL_ON/DAL/Server/HttpServerRequest.cs |  368 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 337 insertions(+), 31 deletions(-)

diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index 2ac0547..6054436 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -544,6 +544,13 @@
                 var homeList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<RegionInfoRes>>(resultObj.Data.ToString());
                 if (homeList == null || homeList.Count == 0)
                 {
+                    if (DB_ResidenceData.Instance.CurrentRegion.id != "")
+                    {
+                        Shared.Application.RunOnMainThread(() =>
+                        {
+                            MainPage.GoUserPage(false);
+                        });
+                    }
                 }
                 else
                 {
@@ -564,6 +571,10 @@
                     }
                     if (UserInfo.Current.regionList.Count == 0)
                     {
+                        Shared.Application.RunOnMainThread(() =>
+                        {
+                            MainPage.GoUserPage(false);
+                        });
                         return "null";
                     }
                     //-------濡傛灉璐﹀彿鏄娆$櫥褰�
@@ -726,7 +737,7 @@
         {
             var requestObj = new ChildDeleteObj()
             {
-                childAccountId = subaccount.childAccountId,
+                childId = subaccount.id,
                 homeId = subaccount.homeId
             };
             var requestJson = HttpUtil.GetSignRequestJson(requestObj);
@@ -741,12 +752,11 @@
         /// <returns></returns>
         public ResponsePackNew EditSubAccountNickName(string nickName, string childAccountId)
         {
-            var requestJson = HttpUtil.GetSignRequestJson(new UpdateChildNickNameObj()
-            {
-                homeId = DB_ResidenceData.Instance.CurrentRegion.id,
-                childAccountId = childAccountId,
-                nickName = nickName,
-            });
+            var d = new Dictionary<string, string>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("childId", childAccountId);
+            d.Add("nickName", nickName);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Update, requestJson);
 
         }
@@ -761,7 +771,7 @@
             var requestJson = HttpUtil.GetSignRequestJson(new UpdateChildAllowCreateSceneObj()
             {
                 homeId = DB_ResidenceData.Instance.CurrentRegion.id,
-                childAccountId = childAccountId,
+                childId = childAccountId,
                 isAllowCreateScene = isAllow,
             });
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Update, requestJson);
@@ -977,10 +987,60 @@
         public ResponsePackNew BindResidenceMemberAccount(string subAccount, string nickName)
         {
             //娣诲姞瀛愯处鍙�
-            var requestObj = new ChildAddObj() { homeId = DB_ResidenceData.Instance.CurrentRegion.id, account = subAccount, nickName = nickName };
+            var requestObj = new ChildAddObj()
+            {
+                homeId = DB_ResidenceData.Instance.CurrentRegion.id,
+                account = subAccount,
+                nickName = nickName
+            };
             var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Add, requestJson);
+        }
+        //v1.7鏇存柊鎺ュ彛
+        public ResponsePackNew BindResidenceMemberAccount(string subAccount, string nickName,string faceUrl)
+        {
+            //娣诲姞瀛愯处鍙�
 
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("nickName", nickName);
+            if (!string.IsNullOrEmpty(subAccount))
+            {
+                d.Add("account", subAccount);
+            }
+            if (!string.IsNullOrEmpty(faceUrl))
+            {
+                d.Add("faceUrl", @"data:image/jpg;base64," + faceUrl);
+            }
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Add, requestJson);
+        }
+        /// <summary>
+        /// 鍒犻櫎鎴愬憳璐﹀彿浜鸿劯鏁版嵁
+        /// </summary>
+        /// <param name="subAccount"></param>
+        /// <param name="nickName"></param>
+        /// <param name="faceUrl"></param>
+        /// <returns></returns>
+        public ResponsePackNew DeleteMemberFace( string childId)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("childId", childId);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_RemoveFace, requestJson);
+        }
+        /// <summary>
+        /// 鏇存柊鎴愬憳璐﹀彿浜鸿劯鏁版嵁
+        /// </summary>
+        public ResponsePackNew UpdataMemberFace(string childId, string faceUrl)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("childId", childId);
+            d.Add("userFace", @"data:image/jpg;base64," + faceUrl);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_UpdateFace, requestJson);
         }
 
         /// <summary>
@@ -1354,23 +1414,60 @@
         {
             var requestObj = new AppVersionCheckObj()
             {
-
+                
             };
+            #if __IOS__
+            requestObj.releaseSystem = "IOS";
+            #else
+            requestObj.releaseSystem = "Android";
+            #endif
 
             var requestJson = HttpUtil.GetSignRequestJson(requestObj);
             return HttpUtil.RequestHttpsPost(NewAPI.API_POST_CheckAppVersion, requestJson);
         }
-
-
-
         #endregion
 
-        #region 鑾峰彇澶╂皵閮ㄥ垎
+        #region 娉ㄩ攢璐﹀彿
+        /// <summary>
+        /// 鑾峰彇褰撳墠鐗堟湰娉ㄩ攢璐﹀彿妯″紡
+        /// </summary>
+        /// <returns></returns>
+        public ResponsePackNew GetUnregisterModel()
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("version", MainPage.VersionString);
+            d.Add("appCode", "1588071238036582401");
+#if __IOS__
+            d.Add("releaseSystem", "IOS");
+#else
+            d.Add("releaseSystem", "Android");
+#endif
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPost(NewAPI.Api_Post_GetUnregisterModel, requestJson);
+        }
+        /// <summary>
+        /// 娉ㄩ攢璐﹀彿
+        /// </summary>
+        /// <returns></returns>
+        public ResponsePackNew Unregister(string pwd)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("userId", UserInfo.Current.ID);
+            d.Add("pwd", pwd);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPost(NewAPI.Api_Post_Unregister, requestJson);
+        }
+#endregion
+
+#region 鑾峰彇澶╂皵閮ㄥ垎
         /// <summary>
         /// 鑾峰彇鎸囧畾缁忕含搴︾殑鍩庡競淇℃伅澶╂皵淇℃伅
         /// </summary>
         public void GetCityWeatherInfo(string lon, string lat)
         {
+            MainPage.cityInfo.lon = lon;
+            MainPage.cityInfo.lat = lat;
+
             System.Threading.Tasks.Task.Run(() =>
             {
                 while (true)
@@ -1965,6 +2062,18 @@
 
         #region Kaede --璁惧鍔熻兘鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺��
         /// <summary>
+        /// 鑾峰彇涔愭瀛愯处鍙穞oken
+        /// </summary>
+        /// <returns></returns>
+        public ResponsePackNew GetLcSubAccountToken()
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetLcSubToken, requestJson);
+        }
+        /// <summary>
         /// 鑾峰彇璁惧鍒楄〃
         /// </summary>
         /// <returns></returns>
@@ -1996,8 +2105,10 @@
             d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
             d.Add("productPlatform", productPlatform);
             d.Add("productBrand", productBrand);
-            if (productBrand != "MegaHealth")
+            if (productBrand == "MegaHealth" || productBrand == "IMOU")
             {
+            }
+            else { 
                 d.Add("networkConfig", true);
             }
 
@@ -2027,7 +2138,7 @@
         /// <param name="productPlatform"></param>
         /// <param name="productBrand"></param>
         /// <returns></returns>
-        public ResponsePackNew IndependentRegister3TyDevcie(string spk, string extDevId, string deviceName, string pairCode = "")
+        public ResponsePackNew IndependentRegister3TyDevcie(string spk, string extDevId, string deviceName,string productBrandIdentity, string pairCode = "")
         {
             Dictionary<string, object> d = new Dictionary<string, object>();
             d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
@@ -2035,12 +2146,28 @@
             d.Add("extDevId", extDevId);
             d.Add("name", deviceName);
             d.Add("code", pairCode);
+            d.Add("productBrandIdentity", productBrandIdentity);
 
 
             var requestJson = HttpUtil.GetSignRequestJson(d);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_IndependentRegister3TyDevcie, requestJson);
         }
 
+        /// <summary>
+        /// 鍒犻櫎绗笁鏂硅澶�
+        /// </summary>
+        /// <returns></returns>
+        public ResponsePackNew Delete3tyDevice(string deviceId)
+        {
+
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("deviceId", deviceId);
+
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var responsePackNew = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_Remove3tyDevcie, requestJson);
+            return responsePackNew;
+        }
 
 
 
@@ -2114,6 +2241,21 @@
             d.Add("name", function.name);
             d.Add("collect", function.collect);
             d.Add("roomIds", function.roomIds);
+
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_EditDevice, requestJson);
+        }
+        /// <summary>
+        /// 缂栬緫璁惧淇℃伅
+        /// 缁戝畾鍏崇郴銆佸悕绉般�佹敹钘�
+        /// </summary>
+        /// <returns></returns>
+        public ResponsePackNew UpdataDevcieName(Function function,string name)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("deviceId", function.deviceId);
+            d.Add("name", name);
 
             var requestJson = HttpUtil.GetSignRequestJson(d);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_EditDevice, requestJson);
@@ -2243,9 +2385,9 @@
         }
 
 
-        #endregion
+#endregion
 
-        #region Kaede --鍦烘櫙鍔熻兘--------------------------
+#region Kaede --鍦烘櫙鍔熻兘--------------------------
         /// <summary>
         /// 鑾峰彇鍦烘櫙鍒楄〃
         /// 鎴块棿ID鍙┖锛岄粯璁ゆ煡璇綇瀹呬笅鎵�鏈夋埧闂�
@@ -2377,9 +2519,9 @@
             var requestJson = HttpUtil.GetSignRequestJson(d);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_CancelCollectScene, requestJson).Code;
         }
-        #endregion
+#endregion
 
-        #region Kaede --鎴块棿鍔熻兘--------------------------
+#region Kaede --鎴块棿鍔熻兘--------------------------
         /// <summary>
         /// 鑾峰彇鎴块棿鍒楄〃
         /// </summary>
@@ -2454,10 +2596,10 @@
             return pack;
         }
 
-        #endregion
+#endregion
 
 
-        #region Kaede -- 瀹夐槻鎺ュ彛____________________________
+#region Kaede -- 瀹夐槻鎺ュ彛____________________________
         /// <summary>
         /// 鑾峰彇瀹夐槻鍒楄〃
         /// </summary>
@@ -2621,10 +2763,10 @@
             return pack;
         }
 
-        #endregion
+#endregion
 
 
-        #region Kaede --绗笁鏂瑰搧鐗屽姛鑳�--------------------------
+#region Kaede --绗笁鏂瑰搧鐗屽姛鑳�--------------------------
         /// <summary>
         /// 鑾峰彇绗笁鏂瑰搧鐗屽垪琛�
         /// </summary>
@@ -2736,9 +2878,9 @@
             return pack;
         }
 
-        #endregion
+#endregion
 
-        #region 鈻� 钀ょ煶浜慡DK鐩稿叧鎺ュ彛_________________________
+#region 鈻� 钀ょ煶浜慡DK鐩稿叧鎺ュ彛_________________________
         /// <summary>
         /// 娌充笢鑾峰彇钀ょ煶浜戝瓙璐﹀彿token鐨勬帴鍙�
         /// 2021-07-07 鏂版柟妗堟帴鍙h皟鏁村鎺�
@@ -2751,10 +2893,10 @@
             var requestJson = HttpUtil.GetSignRequestJson(d);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_EZ_GetChildToken, requestJson);
         }
-        #endregion
+#endregion
 
 
-        #region 鈻� 鍙瀵硅_________________________
+#region 鈻� 鍙瀵硅_________________________
         /// <summary>
         /// 妫�鏌ヤ綇瀹呮槸鍚︾粦瀹氫赴鏋�
         /// </summary>
@@ -2784,6 +2926,22 @@
             var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_ALARM_RECORDS, requestJson);
             return pack;
 
+        }
+
+        /// <summary>
+        /// 鑾峰彇绗笁鏂规敞鍐岀殑id
+        /// </summary>
+        /// <param homeId="homeId">浣忓畢id</param>
+        /// <returns></returns>
+        public ResponsePackNew GetExtUserId(string homeId)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", homeId);
+
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetExtUserId, requestJson);
+
+            return pack;
         }
 
         #endregion
@@ -2857,8 +3015,8 @@
             return listSortLog;
         }
 
-        #endregion
-        #region 鈻� 闊崇璇█鎺у埗鐩稿叧_________________________
+#endregion
+#region 鈻� 闊崇璇█鎺у埗鐩稿叧_________________________
         /// <summary>
         /// 鑾峰彇宸叉巿鏉冪殑闊崇鍒楄〃
         /// </summary>
@@ -2922,7 +3080,7 @@
             var requestJson = HttpUtil.GetSignRequestJson(updateSpeakerDeviceListObj);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Speaker_DeviceList_Update, requestJson);
         }
-        #endregion
+#endregion
 
         /// <summary>
         /// 缁戝畾source闈㈡澘
@@ -3017,5 +3175,153 @@
         }
         #endregion
 
+
+        #region 缇ゆ帶锛岀粍鍚堣皟鍏�
+        /// <summary>
+        /// 鑾峰彇缇ゆ帶绫诲瀷
+        /// </summary>
+        /// <param name="spk"></param>
+        /// <returns></returns>
+        public ResponsePackNew GetGroupControlTypes(string spk)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("spk", spk);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetGroupControlTypes, requestJson);
+            return pack;
+        }
+        /// <summary>
+        /// 鑾峰彇缇ゆ帶鍒楄〃
+        /// </summary>
+        /// <param name="spk"></param>
+        /// <returns></returns>
+        public ResponsePackNew GetGroupControlList()
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetGroupControlListByHome, requestJson);
+            return pack;
+        }
+        /// <summary>
+        /// 鑾峰彇缇ゆ帶璇︽儏
+        /// </summary>
+        public ResponsePackNew GetGroupControInfo(string userDeviceGroupControlIds)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            var ids = new List<string>()
+            {
+                userDeviceGroupControlIds,
+            };
+            d.Add("userDeviceGroupControlIds", ids);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetGroupControlInfos, requestJson);
+            return pack;
+        }
+
+        /// <summary>
+        /// 鑾峰彇缇ゆ帶璇︽儏
+        /// </summary>
+        public ResponsePackNew GetGroupControInfo(List<string> ids)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("userDeviceGroupControlIds", ids);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetGroupControlInfos, requestJson);
+            return pack;
+        }
+
+        /// <summary>
+        /// 娣诲姞缇ゆ帶鍒楄〃
+        /// </summary>
+        public ResponsePackNew AddGroupControl(List<GroupControl> groupControls)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("gatewayId", DB_ResidenceData.Instance.HomeGateway.gatewayId);
+            d.Add("infos", groupControls);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_AddGroupControl, requestJson);
+            return pack;
+        }
+
+
+        /// <summary>
+        /// 娣诲姞缇ゆ帶鍒楄〃
+        /// </summary>
+        public ResponsePackNew DelGroupControl(string groupControlId)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("userDeviceGroupControlIds", new List<string>() { groupControlId });
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_DeleteGroupControl, requestJson);
+            return pack;
+        }
+
+        /// <summary>
+        /// 缂栬緫缇ゆ帶鍒楄〃
+        /// </summary>
+        /// <param name="spk"></param>
+        /// <returns></returns>
+        public ResponsePackNew EditGroupControl(List<GroupControl> groupControls)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("infos", groupControls);
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_AddGroupControl, requestJson);
+            return pack;
+        }
+
+
+        /// <summary>
+        /// 缇ゆ帶鎺у埗
+        /// </summary>
+        public ResponsePackNew ControlGroupControl(string userDeviceGroupControlId, Dictionary<string, object> pair)
+        {
+            var d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("userDeviceGroupControlId", userDeviceGroupControlId);
+            List<Dictionary<string, object>> dd = new List<Dictionary<string, object>>();
+            dd.Add(pair);
+            d.Add("status",dd);
+
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_ControlGroupControl, requestJson);
+            return pack;
+        }
+
+        /// <summary>
+        /// 鏀惰棌缇ゆ帶
+        /// </summary>
+        public ResponsePackNew CollectGroupControl(string groupControlId)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("userDeviceGroupControlIds", new List<string>() { groupControlId });
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_CollectGroupControl, requestJson);
+            return pack;
+        }
+
+
+        /// <summary>
+        /// 鍙栨秷鏀惰棌缇ゆ帶
+        /// </summary>
+        public ResponsePackNew CancelCollectGroupControl(string groupControlId)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("userDeviceGroupControlIds", new List<string>() { groupControlId });
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_CancelCollectGroupControl, requestJson);
+            return pack;
+        }
+
+        #endregion
+
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0