| | |
| | | }
|
| | | //经纬度
|
| | | var btnLocation = rowHome.frameTable.AddMostRightView(string.Empty, 500);
|
| | | btnLocation.Text = this.GetLatitudeAndLongitudeText(Common.Config.Instance.Home.Longitude, Common.Config.Instance.Home.Latitude);
|
| | | btnLocation.Text = Common.Config.Instance.Home.ResidenceAddressName;
|
| | |
|
| | | //主人或者管理员才会出现这个菜单
|
| | | if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
|
| | |
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //保存住宅地址
|
| | | this.SaveResidenceAdrress(btnLocation, mLatitude, mLongitude);
|
| | | this.SaveResidenceAdrress(btnLocation, mLatitude, mLongitude, name);
|
| | | });
|
| | | }, Language.StringByID(R.MyInternationalizationString.uSelectAdrress), true, latitude, longitude, 100);
|
| | | }, |
| | | Language.StringByID(R.MyInternationalizationString.uSelectAdrress),
|
| | | Language.StringByID(R.MyInternationalizationString.uSave),
|
| | | true, latitude, longitude, 100);
|
| | | };
|
| | | }
|
| | |
|
| | |
| | | Common.Config.Instance.Home.CurrentFloorId = floorId;
|
| | | break;
|
| | | }
|
| | | //删除当前楼层的话,需要去刷新主页左边的房间列表
|
| | | HdlRoomLogic.Current.RefreshRoomListView();
|
| | | }
|
| | | var listDeleteId = new List<string>();
|
| | | var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
|
| | |
| | | //按下确认按钮
|
| | | dialogForm.ComfirmClickEvent += ((textValue) =>
|
| | | {
|
| | | //还原左右菜单
|
| | | frameRow?.HideMenu();
|
| | |
|
| | | if (this.CheckFloorName(keys, textValue) == false)
|
| | | {
|
| | | //楼层名称检测
|
| | |
| | | }
|
| | | //画面关闭
|
| | | dialogForm.CloseDialog();
|
| | | //还原左右菜单
|
| | | frameRow?.HideMenu();
|
| | | if (floorName != textValue)
|
| | | {
|
| | | //编辑或者创建楼层名称
|
| | |
| | | if (Common.Config.Instance.Home.CurrentFloorId == string.Empty)
|
| | | {
|
| | | Common.Config.Instance.Home.CurrentFloorId = keys;
|
| | | //创建第一个新的楼层的话,需要去刷新主页左边的房间列表
|
| | | HdlRoomLogic.Current.RefreshRoomListView();
|
| | | }
|
| | | if (btnFloor != null)
|
| | | {
|
| | |
| | | //开启进度条
|
| | | this.ShowProgressBar();
|
| | |
|
| | | var Pra = new DeleteResidencePra();
|
| | | Pra.HomeId = Common.Config.Instance.Home.Id;
|
| | | Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
|
| | |
|
| | | bool result = await UserCenterLogic.GetResultStatuByRequestHttps("App/DelHome", true, Pra);
|
| | | if (result == false)
|
| | | if (Common.Config.Instance.Home.IsOthreShare == false)
|
| | | {
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | return;
|
| | | //删除主人自己的住宅
|
| | | var Pra = new DeleteResidencePra();
|
| | | Pra.HomeId = Common.Config.Instance.Home.Id;
|
| | | Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
|
| | |
|
| | | bool result = await UserCenterLogic.GetResultStatuByRequestHttps("App/DelHome", true, Pra);
|
| | | if (result == false)
|
| | | {
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | return;
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | //删除分享的住宅
|
| | | var Pra2 = new
|
| | | {
|
| | | HomeId = Common.Config.Instance.Home.Id,
|
| | | PrimaryUserId = Common.Config.Instance.Home.MainUserDistributedMark
|
| | | };
|
| | | bool result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/SubAccountDelShareHome", false, Pra2);
|
| | | if (result == false)
|
| | | {
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | return;
|
| | | }
|
| | | }
|
| | |
|
| | | //因为删除的是当前的住宅,所以需要先切换到别的住宅
|
| | |
| | | /// <param name="btnLocation">显示控件</param>
|
| | | /// <param name="latitude">纬度</param>
|
| | | /// <param name="longitude">经度</param>
|
| | | private async void SaveResidenceAdrress(NormalViewControl btnLocation, double latitude, double longitude)
|
| | | /// <param name="addresName">位置名称</param>
|
| | | private async void SaveResidenceAdrress(NormalViewControl btnLocation, double latitude, double longitude, string addresName)
|
| | | {
|
| | | //开启进度条
|
| | | this.ShowProgressBar();
|
| | |
| | | //保存缓存
|
| | | Common.Config.Instance.Home.Longitude = longitude;
|
| | | Common.Config.Instance.Home.Latitude = latitude;
|
| | | Common.Config.Instance.Home.ResidenceAddressName = addresName;
|
| | | Common.Config.Instance.Home.Save();
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | btnLocation.Text = this.GetLatitudeAndLongitudeText(longitude, latitude);
|
| | | btnLocation.Text = addresName;
|
| | | });
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | }
|
| | | return true;
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 获取经纬度的翻译名字
|
| | | /// </summary>
|
| | | /// <param name="Longitude">经度</param>
|
| | | /// <param name="Latitude">纬度</param>
|
| | | /// <returns></returns>
|
| | | private string GetLatitudeAndLongitudeText(double Longitude, double Latitude)
|
| | | {
|
| | | string value1 = string.Empty;
|
| | | string value2 = string.Empty;
|
| | | if (Longitude == 0)
|
| | | {
|
| | | //默认东经
|
| | | value1 = "0°00'E";
|
| | | }
|
| | | else if (Longitude > 0)
|
| | | {
|
| | | //东经
|
| | | value1 = Math.Round(Longitude, 2).ToString().Replace(".", "°") + "'E";
|
| | | }
|
| | | else if (Longitude < 0)
|
| | | {
|
| | | //西经
|
| | | value1 = Math.Round(-Longitude, 2).ToString().Replace(".", "°") + "'W";
|
| | | }
|
| | |
|
| | | if (Latitude == 0)
|
| | | {
|
| | | //默认北纬
|
| | | value2 = "0°00'N";
|
| | | }
|
| | | else if (Latitude > 0)
|
| | | {
|
| | | //北纬
|
| | | value2 = Math.Round(Latitude, 2).ToString().Replace(".", "°") + "'N";
|
| | | }
|
| | | else if (Latitude < 0)
|
| | | {
|
| | | //南纬
|
| | | value2 = Math.Round(-Latitude, 2).ToString().Replace(".", "°") + "'S";
|
| | | }
|
| | | return value1 + " " + value2;
|
| | | }
|
| | |
|
| | | #endregion
|