From 7b60238359b94125d591678eff105ae2bf47843f Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 15 十一月 2019 13:16:21 +0800
Subject: [PATCH] 2019.11.15
---
ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs | 153 +++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 135 insertions(+), 18 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
index f7e7f35..da559e5 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
@@ -68,6 +68,7 @@
rowHome.Height = Application.GetRealHeight(173);
rowHome.BackgroundColor = UserCenterColor.Current.White;
bodyFrameLayout.AddChidren(rowHome);
+ rowHome.frameTable.UseClickStatu = false;
var btnAdreeIcon = rowHome.frameTable.AddLeftIcon(81);
btnAdreeIcon.UnSelectedImagePath = "Item/FixedPositionSelected.png";
@@ -83,8 +84,36 @@
btnNowView.Y = Application.GetRealHeight(95);
btnNowView.TextColor = UserCenterColor.Current.TextGrayColor1;
rowHome.frameTable.AddChidren(btnNowView, ChidrenBindMode.BindEventOnly);
- //鍙崇澶�
- rowHome.frameTable.AddRightArrow();
+ //涓讳汉鎴栬�呯鐞嗗憳鎵嶄細鍑虹幇杩欎釜鑿滃崟
+ if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
+ {
+ //鍙崇澶�
+ rowHome.frameTable.AddRightArrow();
+ }
+ //缁忕含搴�
+ var btnLocation = rowHome.frameTable.AddMostRightView(string.Empty, 500);
+ btnLocation.Text = this.GetLatitudeAndLongitudeText(Common.Config.Instance.Home.Longitude, Common.Config.Instance.Home.Latitude);
+
+ //涓讳汉鎴栬�呯鐞嗗憳鎵嶄細鍑虹幇杩欎釜鑿滃崟
+ if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
+ {
+ rowHome.frameTable.UseClickStatu = true;
+ rowHome.frameTable.ButtonClickEvent += (sender, e) =>
+ {
+ //榛樿鍊� 23.134421,113.267189
+ double latitude = Common.Config.Instance.Home.Latitude;
+ double longitude = Common.Config.Instance.Home.Longitude;
+ //鍦板浘
+ GDMapKit.Show((mLatitude, mLongitude, mRadius, name) =>
+ {
+ HdlThreadLogic.Current.RunThread(() =>
+ {
+ //淇濆瓨浣忓畢鍦板潃
+ this.SaveResidenceAdrress(btnLocation, mLatitude, mLongitude);
+ });
+ }, Language.StringByID(R.MyInternationalizationString.uSelectAdrress), true, latitude, longitude, 100);
+ };
+ }
if (i_CanDeleteResidence == true)
{
@@ -375,7 +404,8 @@
private void CreatOrEditorFloor(NormalViewControl btnFloor, string keys, string floorName)
{
//鐢熸垚涓�涓脊绐楃敾闈�
- var dialogForm = new DialogInputFrameControl(this, DialogFrameMode.OnlyInput);
+ var dialogForm = new DialogInputForm();
+ dialogForm.AddForm(DialogFrameMode.OnlyInput);
//鍒涘缓妤煎眰
dialogForm.SetTitleText(Language.StringByID(R.MyInternationalizationString.uCreatFloor));
if (keys != string.Empty)
@@ -396,7 +426,7 @@
return;
}
//鐢婚潰鍏抽棴
- dialogForm.CloseDialog();
+ dialogForm.CloseForm();
if (floorName != textValue)
{
//缂栬緫鎴栬�呭垱寤烘ゼ灞傚悕绉�
@@ -513,13 +543,7 @@
}
//缂栬緫
- var btnEditor = new NormalViewControl(Application.GetRealWidth(184), frameRow.Height, false);
- btnEditor.BackgroundColor = 0xff4a4a4a;
- btnEditor.TextSize = 12;
- btnEditor.TextColor = UserCenterColor.Current.White;
- btnEditor.TextAlignment = TextAlignment.Center;
- btnEditor.TextID = R.MyInternationalizationString.uEditor;
- frameRow.AddRightView(btnEditor);
+ var btnEditor = frameRow.AddEditorControl();
btnEditor.ButtonClickEvent += (sender, e) =>
{
var form = new EditorRoomInforForm();
@@ -531,13 +555,7 @@
};
//鍒犻櫎
- var btnDelete = new NormalViewControl(Application.GetRealWidth(184), frameRow.Height, false);
- btnDelete.BackgroundColor = 0xfff75858;
- btnDelete.TextSize = 12;
- btnDelete.TextColor = UserCenterColor.Current.White;
- btnDelete.TextAlignment = TextAlignment.Center;
- btnDelete.TextID = R.MyInternationalizationString.uDelete;
- frameRow.AddRightView(btnDelete);
+ var btnDelete = frameRow.AddDeleteControl();
btnDelete.ButtonClickEvent += (sender, e) =>
{
//纭鍒犻櫎鎴块棿?
@@ -635,6 +653,61 @@
#endregion
+ #region 鈻� 淇濆瓨浣忓畢鍦板浘鍦板潃___________________
+
+ /// <summary>
+ /// 淇濆瓨浣忓畢鍦板潃
+ /// </summary>
+ /// <param name="btnLocation">鏄剧ず鎺т欢</param>
+ /// <param name="latitude">绾害</param>
+ /// <param name="longitude">缁忓害</param>
+ private async void SaveResidenceAdrress(NormalViewControl btnLocation, double latitude, double longitude)
+ {
+ //寮�鍚繘搴︽潯
+ this.ShowProgressBar();
+
+ var Pra = new EditorResidencePra();
+ Pra.HomeId = Common.Config.Instance.Home.Id;
+ Pra.Name = Common.Config.Instance.Home.Name;
+ Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+ Pra.Latitude = latitude;
+ Pra.Longitude = longitude;
+
+ //缂栬緫浣忓畢
+ bool flage = await UserCenterLogic.GetResultStatuByRequestHttps("App/EditHome", true, Pra);
+ if (flage == false)
+ {
+ //鍏抽棴杩涘害鏉�
+ this.CloseProgressBar();
+ return;
+ }
+ //璁剧疆鍏ㄩ儴缃戝叧鐨勪綇瀹呭湴鍧�
+ var listGateway = HdlGatewayLogic.Current.GetAllLocalGateway();
+ foreach (var gateway in listGateway)
+ {
+ var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude);
+ if (result == false)
+ {
+ //鍏抽棴杩涘害鏉�
+ this.CloseProgressBar();
+ return;
+ }
+ }
+
+ //鍏抽棴杩涘害鏉�
+ this.CloseProgressBar();
+ //淇濆瓨缂撳瓨
+ Common.Config.Instance.Home.Longitude = longitude;
+ Common.Config.Instance.Home.Latitude = latitude;
+ Common.Config.Instance.Home.Save();
+ HdlThreadLogic.Current.RunMain(() =>
+ {
+ btnLocation.Text = this.GetLatitudeAndLongitudeText(longitude, latitude);
+ });
+ }
+
+ #endregion
+
#region 鈻� 涓�鑸柟娉昣__________________________
/// <summary>
@@ -686,6 +759,50 @@
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
#region 鈻� 缁撴瀯浣揰____________________________
--
Gitblit v1.8.0