CrabtreeOn,印度客户定制APP,迁移2.0平台版本
陈嘉乐
2021-03-26 eb3799496f3419e347849073e23e5105b74000e5
Crabtree/SmartHome/HDL/Common/HttpUtil/HttpServerRequest.cs
@@ -31,7 +31,6 @@
        }
        #endregion
        #region ■ 通用请求接口_______________________
        /// <summary>
        /// 根椐用户账号获取注册区域 免登录 // 检测账号是否注册也用这个接口
@@ -67,7 +66,7 @@
        }
        #endregion
        #region 注册、登录部分
        #region * 注册、登录部分___________________________
        /// <summary>
        /// 通用 发送验证码方法
        /// </summary>
@@ -151,7 +150,7 @@
                requestObj.memberEmail = account;
            }
            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
            return HttpUtil.RequestHttpsPost(NewAPI.API_POST_Member_Register, requestJson);
            return HttpUtil.RequestHttpsPost(NewAPI.API_POST_Member_Register, requestJson, "", "", HttpUtil.TIME_OUT_LONG);
        }
        /// <summary>
@@ -222,7 +221,7 @@
        #endregion
        #region 个人信息部分
        #region * 个人信息部分___________________________
        ///// <summary>
        ///// 获取用户信息
        ///// </summary>
@@ -237,7 +236,7 @@
        //        MainPage.LoginUser.userEmailInfo = info.memberEmail;
        //        MainPage.LoginUser.userMobileInfo = info.memberPhone;
        //        MainPage.LoginUser.userName = info.memberName;
        //        if (!string.IsNullOrEmpty(info.memberPhonePrefix))
        //        {
        //            MainPage.LoginUser.areaCode = info.memberPhonePrefix;
@@ -358,7 +357,7 @@
        #endregion
        #region 住宅部分
        #region * 住宅部分___________________________
        ///// <summary>
        ///// 获取住宅列表
        ///// </summary>
@@ -483,6 +482,7 @@
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Home_Delete, requestJson);
        }
        #region 网关相关
        /// <summary>
        /// 绑定网关
        /// </summary>
@@ -535,6 +535,7 @@
                return "";
            }
        }
        /// <summary>
        /// 获取网关信息
        /// </summary>
@@ -558,9 +559,9 @@
            }
            return revertObj.Code;
        }
        #endregion
        #region 子账号相关
        /// <summary>
        /// 获取住宅下的成员账号
        /// </summary>
@@ -569,6 +570,21 @@
        {
            var requestJson = HttpUtil.GetSignRequestJson(new HomeIdObj() { homeId = UserConfig.Instance.CurrentRegion.Id });
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_FindAll, requestJson);
        }
        /// <summary>
        /// 绑定子账号到住宅下
        /// </summary>
        /// <param name="subAccount"></param>
        /// <param name="nickName"></param>
        /// <returns></returns>
        public ResponsePackNew BindResidenceMemberAccount (string subAccount, string nickName)
        {
            //添加子账号
            var requestObj = new ChildAddObj () { homeId = UserConfig.Instance.CurrentRegion.Id, account = subAccount, nickName = nickName };
            var requestJson = HttpUtil.GetSignRequestJson (requestObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Child_Add, requestJson);
        }
        /// <summary>
@@ -603,6 +619,7 @@
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Update, requestJson);
        }
        /// <summary>
        /// 修改子账号创建场景权限
        /// </summary>
@@ -619,6 +636,7 @@
            });
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Update, requestJson);
        }
        #endregion
        #region 新数据分享
        /// <summary>
@@ -662,23 +680,92 @@
        }
        #endregion
        /// <summary>
        /// 绑定子账号到住宅下
        /// </summary>
        /// <param name="subAccount"></param>
        /// <param name="nickName"></param>
        /// <returns></returns>
        public ResponsePackNew BindResidenceMemberAccount(string subAccount, string nickName)
        {
            //添加子账号
            var requestObj = new ChildAddObj() { homeId = UserConfig.Instance.CurrentRegion.Id, account = subAccount, nickName = nickName };
            var requestJson = HttpUtil.GetSignRequestJson(requestObj);
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Child_Add, requestJson);
        #endregion
        #region * 备份相关部分___________________________
        /// <summary>
        /// 创建备份文件夹
        /// </summary>
        /// <param name="folderName"></param>
        /// <returns></returns>
        public ResponsePackNew GetHomeDataBackupList ()
        {
            var requestObj = new HomeIdObj () {
                homeId = UserConfig.Instance.CurrentRegion.Id,
            };
            var requestJson = HttpUtil.GetSignRequestJson (requestObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Folder_FindAll, requestJson);
        }
        /// <summary>
        /// 创建备份文件夹
        /// </summary>
        /// <param name="folderName"></param>
        /// <returns></returns>
        public ResponsePackNew CreateBackupFolder (string folderName)
        {
            var requestObj = new BackupFolderCreateObj () {
                backupClassify = BackupClassify.USER_DEFINED_BACKUP.ToString (),
                backupDataType = BackupDataType.HDL_ON.ToString (),
                homeId = UserConfig.Instance.CurrentRegion.Id,
                folderName = folderName,
            };
            var requestJson = HttpUtil.GetSignRequestJson (requestObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Folder_Create, requestJson);
        }
        /// <summary>
        /// 修改备份文件夹名字
        /// </summary>
        /// <param name="newName"></param>
        /// <param name="mBackupFile"></param>
        /// <returns></returns>
        public ResponsePackNew UpdateBackupFolderName (string newName, BackupListNameInfoRes mBackupFile)
        {
            var requestObj = new UpdateBackupObj () {
                folderId = mBackupFile.id,
                homeId = mBackupFile.homeId,
                folderName = newName,
            };
            var requestJson = HttpUtil.GetSignRequestJson (requestObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Folder_Update, requestJson);
        }
        /// <summary>
        /// 删除备份文件夹
        /// </summary>
        /// <param name="folderId"></param>
        /// <returns></returns>
        public ResponsePackNew DeleteBackupFolder (string folderId)
        {
            var requestObj = new BackupFolderIdObj () {
                homeId = UserConfig.Instance.CurrentRegion.Id,
                folderId = folderId,
            };
            var requestJson = HttpUtil.GetSignRequestJson (requestObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Folder_Delete, requestJson);
        }
        /// <summary>
        /// 获取备份文件夹所有文件列表
        /// </summary>
        /// <param name="folderId"></param>
        /// <returns></returns>
        public ResponsePackNew GetBackupFolderAllFileList (string folderId)
        {
            var requestObj = new BackupFolderIdObj () {
                homeId = UserConfig.Instance.CurrentRegion.Id,
                folderId = folderId,
            };
            var requestJson = HttpUtil.GetSignRequestJson (requestObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_File_FindAll, requestJson);
        }
        #endregion
        #region * Mqtt___________________________
        /// <summary>
        /// 获取MQTT远程连接信息接口
        /// </summary>
@@ -698,7 +785,7 @@
                }
                else
                {
                    Utlis.WriteLine("GetMqttRemoteInfo error");
                    Utlis.WriteLine("GetMqttRemoteInfo error Code:" + revertObj.Code);
                    return null;
                }
            }
@@ -707,9 +794,9 @@
                return null;
            }
        }
        #endregion
        #region 获取天气部分
        #region * 获取天气部分___________________________
        /// <summary>
        /// 获取指定经纬度的城市信息
        /// </summary>
@@ -766,6 +853,95 @@
        #endregion
        #region * 上传设备列表___________________________
        /// <summary>
        /// 上传Oid列表
        /// </summary>
        /// <param name="mOids"></param>
        /// <returns></returns>
        public ResponsePackNew UploadDeviceOidList (Oids mOids)
        {
            var requestJson = HttpUtil.GetSignRequestJson (mOids);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Device_Oid_Add, requestJson);
        }
        /// <summary>
        /// 上传Sid列表
        /// </summary>
        /// <param name="mSids"></param>
        /// <returns></returns>
        public ResponsePackNew UploadDeviceSidList (Sids mSids)
        {
            var requestJson = HttpUtil.GetSignRequestJson (mSids);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Device_Sid_Add, requestJson);
        }
        /// <summary>
        /// 获取设备列
        /// </summary>
        /// <returns></returns>
        public ResponsePackNew GetDeviceList ()
        {
            var requestJson = HttpUtil.GetSignRequestJson (new HomeIdObj {
                homeId = UserConfig.Instance.CurrentRegion.Id,
            });
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.Api_Post_GetDevcieList, requestJson);
        }
        #endregion
        #region 音箱语言控制相关___________________________
        /// <summary>
        /// 获取已授权的音箱列表
        /// </summary>
        /// <returns></returns>
        public ResponsePackNew GetSpeakerList ()
        {
            var requestJson = HttpUtil.GetSignRequestJson (new GetSpeakerObj {
                homeId = UserConfig.Instance.CurrentRegion.Id,
            });
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Speaker_List_Get, requestJson);
        }
        /// <summary>
        /// 编辑音箱授权备注
        /// </summary>
        /// <returns></returns>
        public ResponsePackNew UpdateSpeakerRemark (UpdateSpeakerRemarkObj remarkObj)
        {
            var requestJson = HttpUtil.GetSignRequestJson (remarkObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Speaker_Remark_Update, requestJson);
        }
        /// <summary>
        /// 获取音箱分配的设备和场景列表
        /// </summary>
        /// <param name="getType">0 是查询全部 1是查询设备 2是查询场景</param>
        /// <param name="tokenId"></param>
        /// <returns></returns>
        public ResponsePackNew GetSpeakerDeviceList (int getType, string tokenId)
        {
            Dictionary<string, object> d = new Dictionary<string, object> ();
            d.Add ("homeId", UserConfig.Instance.CurrentRegion.Id);
            d.Add ("tokenId", tokenId);
            if(getType > 0) {
                d.Add ("isDevice", getType == 1);
            }
            var requestJson = HttpUtil.GetSignRequestJson (d);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Speaker_DeviceList_Get, requestJson);
        }
        /// <summary>
        /// 更新音箱控制的设备和场景目标
        /// </summary>
        /// <returns></returns>
        public ResponsePackNew UpdateSpeakerDeviceList (UpdateSpeakerDeviceListObj updateSpeakerDeviceListObj)
        {
            var requestJson = HttpUtil.GetSignRequestJson (updateSpeakerDeviceListObj);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.API_POST_Speaker_DeviceList_Update, requestJson);
        }
        #endregion
        //#region Kaede --设备功能——————————————————————————————————
        ///// <summary>
@@ -928,24 +1104,23 @@
        //#endregion
        //#region Kaede --场景功能--------------------------
        ///// <summary>
        ///// 获取场景列表
        ///// 房间ID可空,默认查询住宅下所有房间
        ///// </summary>
        ///// <param name="roomId">房间ID</param>
        ///// <returns></returns>
        //public ResponsePackNew GetSceneList(string roomId = null)
        //{
        //    Dictionary<string, object> d = new Dictionary<string, object>();
        //    d.Add("homeId", UserConfig.Instance.CurrentRegion.RegionID);
        //    if (roomId != null)
        //    {
        //        d.Add("roomId", roomId);
        //    }
        /// <summary>
        /// 获取场景列表
        /// 房间ID可空,默认查询住宅下所有房间
        /// </summary>
        /// <param name="roomId">房间ID</param>
        /// <returns></returns>
        public ResponsePackNew GetSceneList (string roomId = null)
        {
            Dictionary<string, object> d = new Dictionary<string, object> ();
            d.Add ("homeId", UserConfig.Instance.CurrentRegion.Id);
            if (roomId != null) {
                d.Add ("roomId", roomId);
            }
        //    var requestJson = HttpUtil.GetSignRequestJson(d);
        //    return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetSecneList, requestJson);
        //}
            var requestJson = HttpUtil.GetSignRequestJson (d);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.Api_Post_GetSecneList, requestJson);
        }
        ///// <summary>
        ///// 获取场景详情
        ///// </summary>
@@ -977,34 +1152,57 @@
        ///// <summary>
        ///// 添加场景
        ///// </summary>
        ///// <param name="sceneList"></param>
        ///// <returns></returns>
        //public ResponsePackNew AddScene(Scene scene)
        //public ResponsePackNew AddScene (List<HDLLinkScene> sceneList)
        //{
        //    Dictionary<string, object> d = new Dictionary<string, object>();
        //    d.Add("homeId", UserConfig.Instance.CurrentRegion.RegionID);
        //    d.Add("scenes", new List<Scene>() { scene });
        //    Dictionary<string, object> d = new Dictionary<string, object> ();
        //    d.Add ("homeId", UserConfig.Instance.CurrentRegion.Id);
        //    d.Add ("scenes", sceneList);
        //    var requestJson = HttpUtil.GetSignRequestJson(d);
        //    var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_AddSecne, requestJson);
        //    var requestJson = HttpUtil.GetSignRequestJson (d);
        //    var pack = HttpUtil.RequestHttpsPostFroHome (NewAPI.Api_Post_AddSecne, requestJson);
        //    Utlis.WriteLine($"{pack.Data}");
        //    Utlis.WriteLine ($"{pack.Data}");
        //    return pack;
        //}
        ///// <summary>
        ///// 编辑场景
        ///// </summary>
        ///// <param name="scene"></param>
        ///// <returns></returns>
        //public ResponsePackNew EditScene(Scene scene)
        //{
        //    Dictionary<string, object> d = new Dictionary<string, object>();
        //    d.Add("homeId", UserConfig.Instance.CurrentRegion.RegionID);
        //    d.Add("scenes", new List<Scene>() { scene });
        //    var requestJson = HttpUtil.GetSignRequestJson(d);
        //    return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_EditSecne, requestJson);
        //}
        /// <summary>
        /// 全量同步场景
        /// </summary>
        /// <param name="sceneList"></param>
        /// <returns></returns>
        public ResponsePackNew SecneSyncList (List<HDLLinkScene> sceneList)
        {
            Dictionary<string, object> d = new Dictionary<string, object> ();
            d.Add ("homeId", UserConfig.Instance.CurrentRegion.Id);
            d.Add ("scenes", sceneList);
            var requestJson = HttpUtil.GetSignRequestJson (d);
            var pack = HttpUtil.RequestHttpsPostFroHome (NewAPI.Api_Post_Secne_SyncList, requestJson);
            Utlis.WriteLine ($"{pack.Data}");
            return pack;
        }
        /// <summary>
        /// 更新场景
        /// </summary>
        /// <param name="sceneList"></param>
        /// <returns></returns>
        public ResponsePackNew EditScene (List<HDLLinkScene> sceneList)
        {
            Dictionary<string, object> d = new Dictionary<string, object> ();
            d.Add ("homeId", UserConfig.Instance.CurrentRegion.Id);
            d.Add ("scenes", sceneList);
            var requestJson = HttpUtil.GetSignRequestJson (d);
            return HttpUtil.RequestHttpsPostFroHome (NewAPI.Api_Post_EditSecne, requestJson);
        }
        ///// <summary>
        ///// 删除场景
        ///// </summary>
@@ -1078,7 +1276,7 @@
        //    d.Add("pageSize", "1000");
        //    var requestJson = HttpUtil.GetSignRequestJson(d);
        //    var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetRoomList, requestJson);
        //    return pack;
        //}
        ///// <summary>