From 2450c12c825ad4d78d1572da2fa421706db2df2f Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 18 六月 2020 16:01:14 +0800
Subject: [PATCH] 新代码
---
ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs | 176 ++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 116 insertions(+), 60 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
index 6ca7502..1fdf829 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
@@ -16,9 +16,13 @@
/// </summary>
private FrameLayout frameTable = null;
/// <summary>
- /// 鍒楄〃鎺т欢
+ /// 鍒楄〃鎺т欢(鐧借壊鑳屾櫙)
/// </summary>
- private VerticalListControl listView = null;
+ private FrameListControl listView = null;
+ /// <summary>
+ /// 鏁翠釜鐣岄潰鐨勪笂涓嬫粦鍔ㄦ帶浠�
+ /// </summary>
+ private VerticalFrameControl listBackContr = null;
/// <summary>
/// 妤煎眰椤哄簭
/// </summary>
@@ -64,10 +68,16 @@
//娓呯┖bodyFrame
this.ClearBodyFrame();
+ //鏁翠釜鐣岄潰鐨勪笂涓嬫粦鍔ㄦ帶浠�
+ this.listBackContr = new VerticalFrameControl();
+ listBackContr.Height = bodyFrameLayout.Height;
+ bodyFrameLayout.AddChidren(listBackContr);
+
+ //浣忓畢琛�
var rowHome = new RowLayoutControl();
rowHome.Height = Application.GetRealHeight(173);
rowHome.BackgroundColor = UserCenterColor.Current.White;
- bodyFrameLayout.AddChidren(rowHome);
+ listBackContr.frameTable.AddChidren(rowHome);
rowHome.frameTable.UseClickStatu = false;
var btnAdreeIcon = rowHome.frameTable.AddLeftIcon(81);
@@ -77,13 +87,13 @@
var btnHomeName = rowHome.frameTable.AddLeftCaption(Common.Config.Instance.Home.Name, 700, 60);
btnHomeName.TextSize = 15;
btnHomeName.Y = Application.GetRealHeight(35);
- rowHome.frameTable.AddChidren(btnHomeName, ChidrenBindMode.BindEventOnly);
+ rowHome.frameTable.AddChidren(btnHomeName, ChidrenBindMode.BindEvent);
//褰撳墠浣忓畢
var btnNowView = rowHome.frameTable.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uNowResidence), 700, 49);
btnNowView.TextSize = 12;
btnNowView.Y = Application.GetRealHeight(95);
btnNowView.TextColor = UserCenterColor.Current.TextGrayColor1;
- rowHome.frameTable.AddChidren(btnNowView, ChidrenBindMode.BindEventOnly);
+ rowHome.frameTable.AddChidren(btnNowView, ChidrenBindMode.BindEvent);
//涓讳汉鎴栬�呯鐞嗗憳鎵嶄細鍑虹幇杩欎釜鑿滃崟
if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
{
@@ -92,6 +102,8 @@
}
//缁忕含搴�
var btnLocation = rowHome.frameTable.AddMostRightView(string.Empty, 500);
+ btnLocation.IsMoreLines = true;
+ btnLocation.TextSize = 10;
btnLocation.Text = Common.Config.Instance.Home.ResidenceAddressName;
//涓讳汉鎴栬�呯鐞嗗憳鎵嶄細鍑虹幇杩欎釜鑿滃崟
@@ -144,8 +156,8 @@
//鍒濆鍖栨甯�
this.frameTable = new FrameLayout();
frameTable.Y = rowHome.Bottom + Application.GetRealHeight(23);
- frameTable.Height = bodyFrameLayout.Height - rowHome.Bottom - Application.GetRealHeight(23);
- bodyFrameLayout.AddChidren(frameTable);
+ frameTable.Height = listBackContr.frameTable.Height - rowHome.Bottom - Application.GetRealHeight(23);
+ listBackContr.frameTable.AddChidren(frameTable);
//鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
this.InitFrameTableByMode();
@@ -244,7 +256,7 @@
frameFloor.UseClickStatu = false;
frameFloor.Height = Application.GetRealHeight(115);
frameFloor.BackgroundColor = UserCenterColor.Current.White;
- frameTable.AddChidren(frameFloor);
+ this.frameTable.AddChidren(frameFloor);
//妤煎眰
var btnFloor = frameFloor.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uFloor), 200, 60);
@@ -253,11 +265,11 @@
btnFloor.TextSize = 15;
frameFloor.AddChidren(btnFloor, ChidrenBindMode.NotBind);
- listView = new VerticalListControl(29);
+ listView = new FrameListControl(29);
listView.BackgroundColor = UserCenterColor.Current.White;
listView.Y = frameFloor.Bottom;
listView.Height = frameTable.Height - frameFloor.Bottom;
- frameTable.AddChidren(listView);
+ this.frameTable.AddChidren(listView);
//鍒濆鍖栨ゼ灞傝
this.InitFloorRow();
@@ -289,7 +301,7 @@
this.AddFloorRow(keys, dicFloor[keys], i != count);
}
//璋冩暣鎺т欢楂樺害
- listView.AdjustRealHeight(Application.GetRealHeight(23));
+ this.AdjustContrlTableHeight();
});
}
@@ -306,6 +318,7 @@
private void AddFloorRow(string keys, string floorName, bool addLine)
{
var frameRow = new RowLayoutControl(listView.rowSpace / 2);
+ frameRow.MainKeys = keys;
this.listView.AddChidren(frameRow);
//鍥炬爣
var btnIcon = frameRow.frameTable.AddLeftIcon(81);
@@ -373,11 +386,6 @@
listDeleteId.Add(listAllRoom[i].Id);
}
}
- //濡傛灉褰撳墠閫夋嫨鐨勬埧闂存槸鍒犻櫎瀵硅薄鐨勮瘽
- if (HdlRoomLogic.Current.CurrentRoom.FloorId == keys)
- {
- HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom();
- }
//鍒犻櫎鎴块棿
foreach (string roomId in listDeleteId)
{
@@ -395,9 +403,27 @@
}
else
{
+ bool canMove = false;
+ for (int i = 0; i < listView.ChildrenCount; i++)
+ {
+ var myRow = listView.GetChildren(i) as RowLayoutControl;
+ if (myRow != null && myRow.MainKeys == keys)
+ {
+ canMove = true;
+ continue;
+ }
+ if (canMove == true)
+ {
+ //瀹冧箣鍚庣殑琛岋紝鍏ㄩ儴寰�涓婄Щ
+ myRow.Y -= frameRow.Height;
+ }
+ }
frameRow.RemoveFromParent();
- listView.AdjustRealHeight(Application.GetRealHeight(23));
+ //璋冩暣妗屽竷楂樺害
+ this.AdjustContrlTableHeight();
}
+ //鍒犻櫎妤煎眰鐨勮瘽,涓婚〉闇�瑕侀噸鏂板埛鏂�
+ UserView.UserPage.Instance.RefreshForm = true;
});
};
}
@@ -468,6 +494,8 @@
//鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
this.InitFrameTableByMode();
}
+ //鍒涘缓鎴栬�呬慨鏀规ゼ灞傜殑璇�,涓婚〉闇�瑕侀噸鏂板埛鏂�
+ UserView.UserPage.Instance.RefreshForm = true;
}
});
}
@@ -495,7 +523,7 @@
btnRoomList.TextSize = 15;
frameRoom.AddChidren(btnRoomList, ChidrenBindMode.NotBind);
- listView = new VerticalListControl(29);
+ listView = new FrameListControl(29);
listView.BackgroundColor = UserCenterColor.Current.White;
listView.Y = frameRoom.Bottom;
listView.Height = frameTable.Height - frameRoom.Bottom;
@@ -523,8 +551,8 @@
//娣诲姞鎴块棿琛�
this.AddRoomRow(listRoom[i], i != listRoom.Count - 1);
}
- //璋冩暣鎺т欢鐪熷疄楂樺害
- listView.AdjustRealHeight(Application.GetRealHeight(23));
+ //璋冩暣妗屽竷楂樺害
+ this.AdjustContrlTableHeight();
}
#endregion
@@ -539,6 +567,7 @@
private void AddRoomRow(Common.Room room, bool addLine)
{
var frameRow = new RowLayoutControl(listView.rowSpace / 2);
+ frameRow.MainKeys = room.Id;
listView.AddChidren(frameRow);
//鍥炬爣
var btnIcon = frameRow.frameTable.AddLeftIcon(81);
@@ -584,11 +613,6 @@
//纭鍒犻櫎鎴块棿?
this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uDeleteRoomMsg), () =>
{
- if (HdlRoomLogic.Current.CurrentRoom.Id == room.Id)
- {
- //濡傛灉鍒犻櫎鐨勬槸褰撳墠鎴块棿鐨勮瘽
- HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom();
- }
HdlRoomLogic.Current.RemoveRoom(room.Id);
//淇濆瓨椤哄簭
this.listRoomSort.Remove(room.Id);
@@ -602,9 +626,27 @@
}
else
{
+ bool canMove = false;
+ for (int i = 0; i < listView.ChildrenCount; i++)
+ {
+ var myRow = listView.GetChildren(i) as RowLayoutControl;
+ if (myRow != null && myRow.MainKeys == room.Id)
+ {
+ canMove = true;
+ continue;
+ }
+ if (canMove == true)
+ {
+ //瀹冧箣鍚庣殑琛岋紝鍏ㄩ儴寰�涓婄Щ
+ myRow.Y -= frameRow.Height;
+ }
+ }
frameRow.RemoveFromParent();
- listView.AdjustRealHeight(Application.GetRealHeight(23));
+ //璋冩暣妗屽竷楂樺害
+ this.AdjustContrlTableHeight();
}
+ //鍒犻櫎鎴块棿鐨勮瘽,涓婚〉闇�瑕侀噸鏂板埛鏂�
+ UserView.UserPage.Instance.RefreshForm = true;
});
};
}
@@ -676,7 +718,7 @@
}
}
- var myHouse = Common.House.GetHouseByFilePath(Common.Config.Instance.HomeFilePathList[index]);
+ var myHouse = HdlResidenceLogic.Current.GetHouseByFilePath(Common.Config.Instance.HomeFilePathList[index]);
//鍒囨崲浣忓畢
Common.Config.Instance.HomeId = myHouse.Id;
Common.Global.CreateHomeDirectory(myHouse.Id);
@@ -684,10 +726,9 @@
//鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼
await UserCenterLogic.InitUserCenterMenmoryAndThread(false);
- HdlRoomLogic.Current.InitAllRoom();
//鍒犻櫎浣忓畢
- Common.House.DeleteHouseByHouseId(deleteId);
+ HdlResidenceLogic.Current.DeleteHouseMemmory(deleteId);
Application.RunOnMainThread(() =>
{
@@ -709,45 +750,49 @@
/// <param name="addresName">浣嶇疆鍚嶇О</param>
private async void SaveResidenceAdrress(NormalViewControl btnLocation, double latitude, double longitude, string addresName)
{
- //寮�鍚繘搴︽潯
- 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)
+ //濡傛灉涓嶆槸铏氭嫙浣忓畢,鎵嶆洿鏂颁簯绔�
+ if (Common.Config.Instance.Home.IsVirtually == false)
{
- //鍏抽棴杩涘害鏉�
- this.CloseProgressBar();
- return;
- }
- //璁剧疆鍏ㄩ儴缃戝叧鐨勪綇瀹呭湴鍧�
- var listGateway = HdlGatewayLogic.Current.GetAllLocalGateway();
- foreach (var gateway in listGateway)
- {
- ZigBee.Device.ZbGateway realWay = null;
- if (HdlGatewayLogic.Current.GetRealGateway(ref realWay, gateway) == false)
- {
- //閿欒:缃戝叧瀵硅薄涓㈠け
- continue;
- }
- var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude, ShowErrorMode.YES);
- if (result == false)
+ //寮�鍚繘搴︽潯
+ 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)
+ {
+ ZigBee.Device.ZbGateway realWay = null;
+ if (HdlGatewayLogic.Current.GetRealGateway(ref realWay, gateway) == false)
+ {
+ //閿欒:缃戝叧瀵硅薄涓㈠け
+ continue;
+ }
+ var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude, ShowErrorMode.YES);
+ if (result == false)
+ {
+ //鍏抽棴杩涘害鏉�
+ this.CloseProgressBar();
+ return;
+ }
+ }
+ //鍏抽棴杩涘害鏉�
+ this.CloseProgressBar();
}
- //鍏抽棴杩涘害鏉�
- this.CloseProgressBar();
//淇濆瓨缂撳瓨
Common.Config.Instance.Home.Longitude = longitude;
Common.Config.Instance.Home.Latitude = latitude;
@@ -812,6 +857,17 @@
return true;
}
+ /// <summary>
+ /// 璋冩暣鎺т欢妗屽竷楂樺害
+ /// </summary>
+ private void AdjustContrlTableHeight()
+ {
+ //璋冩暣妗屽竷楂樺害
+ listView.AdjustRealHeight(Application.GetRealHeight(23));
+ this.frameTable.Height = listView.Bottom;
+ this.listBackContr.AdjustTableHeight();
+ }
+
#endregion
#region 鈻� 缁撴瀯浣揰____________________________
--
Gitblit v1.8.0