From 9d61367c1fd278f58f721d4c0e69999f89e4485d Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期四, 12 十二月 2019 14:14:30 +0800
Subject: [PATCH] 添加最新绑定机制
---
ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs | 302 +++++++++++++++++++++++++------------------------
1 files changed, 153 insertions(+), 149 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs
old mode 100755
new mode 100644
index c6c03c8..dc6a573
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindTargetsPage.cs
@@ -43,6 +43,7 @@
Action<List<BindListResponseObj>> devicBindAction;//璁惧琚粦瀹氶�氱煡
private System.Collections.Generic.List<CommonDevice> localDeviceList = new System.Collections.Generic.List<CommonDevice>();//鏈湴璁惧鍒楄〃
private System.Collections.Generic.List<SceneUI> scList = new System.Collections.Generic.List<SceneUI> { };//鏈湴鍦烘櫙鍒楄〃
+ FrameLayout blankFrameLayout;//绌烘暟鎹樉绀哄竷灞�
#endregion
//鍒濆鍖栨寜閿暟鎹�
@@ -254,48 +255,24 @@
}
}
else
- {
+ {
+ currentKey.panelMode = 65535;
SideslipFramelayout();
}
};
btnBindAdd.MouseDownEventHandler += eHandlerAdd;
btnAddFrameLayout.MouseDownEventHandler += eHandlerAdd;
#endregion
- CommonPage.Loading.Start("");
+ CommonPage.Loading.Start("");
+ middleFrameLayout();
InitListInfo();
}
-
+ /// <summary>
+ /// 涓儴甯冨眬
+ /// </summary>
void middleFrameLayout()
- {
- topFrameLayout = new FrameLayout
- {
- Height = Application.GetMinRealAverage(0),
- BackgroundColor = Shared.Common.ZigbeeColor.Current.XMWhite,
- };
- this.midFrameLayout.AddChidren(topFrameLayout);
-
- #region BindEmptyPic UI
- entryStatusPic = new Button
- {
- X = Application.GetRealWidth(213),
- Y = Application.GetRealHeight(418),
- UnSelectedImagePath = "BindPic/BindEmptyPic.png",
- Visible = false,
- };
- this.midFrameLayout.AddChidren(entryStatusPic);
-
- btnPicTip = new Button
- {
- Y = Application.GetRealHeight(1020),
- Text = Language.StringByID(R.MyInternationalizationString.NoControlTargets),
- TextColor = Shared.Common.ZigbeeColor.Current.XMGray3,
- Gravity = Gravity.CenterHorizontal,
- Visible = false,
- };
- this.midFrameLayout.AddChidren(btnPicTip);
- #endregion
-
+ {
midVerticalRefreshLayout = new VerticalRefreshLayout()
{
};
@@ -305,18 +282,54 @@
midVerticalRefreshLayout.BeginHeaderRefreshing();
InitListInfo();
midVerticalRefreshLayout.EndHeaderRefreshing();
+ };
+ topFrameLayout = new FrameLayout
+ {
+ Height = Application.GetMinRealAverage(0),
+ BackgroundColor = Shared.Common.ZigbeeColor.Current.XMWhite,
};
+ midVerticalRefreshLayout.AddChidren(topFrameLayout);
+
+ BlankPicUI();
}
+ /// <summary>
+ /// 绌烘暟鎹甎I鏄剧ず
+ /// </summary>
+ void BlankPicUI()
+ {
+ blankFrameLayout = new FrameLayout
+ {
+ };
+ midVerticalRefreshLayout.AddChidren(blankFrameLayout);
+
+ entryStatusPic = new Button
+ {
+ X = Application.GetRealWidth(213),
+ Y = Application.GetRealHeight(418),
+ UnSelectedImagePath = "BindPic/BindEmptyPic.png",
+ Visible = false,
+ };
+ blankFrameLayout.AddChidren(entryStatusPic);
+
+ btnPicTip = new Button
+ {
+ Y = Application.GetRealHeight(1020),
+ Text = Language.StringByID(R.MyInternationalizationString.NoControlTargets),
+ TextColor = Shared.Common.ZigbeeColor.Current.XMGray3,
+ Gravity = Gravity.CenterHorizontal,
+ Visible = false,
+ };
+ blankFrameLayout.AddChidren(btnPicTip);
+ }
/// <summary>
/// 鎸夐敭缁戝畾琛ㄦ樉绀�
/// </summary>
async void RefreshList()
{
+ midVerticalRefreshLayout.RemoveAll();
this.midFrameLayout.RemoveAll();
middleFrameLayout();
- midVerticalRefreshLayout.RemoveAll();
-
var frameLayoutRow = new FrameLayout()
{
Height = Application.GetMinRealAverage(0),
@@ -331,8 +344,8 @@
entryStatusPic.Width = Application.GetRealWidth(654);
btnPicTip.Height = Application.GetRealHeight(49);
btnPicTip.Visible = true;
- entryStatusPic.Visible = true;
- midVerticalRefreshLayout.Height = Application.GetRealHeight(0);
+ entryStatusPic.Visible = true;
+ blankFrameLayout.Height = midVerticalRefreshLayout.Height;
}
else
{
@@ -340,7 +353,8 @@
entryStatusPic.Width = Application.GetRealWidth(0);
btnPicTip.Height = Application.GetRealHeight(0);
btnPicTip.Visible = false;
- entryStatusPic.Visible = false;
+ entryStatusPic.Visible = false;
+ blankFrameLayout.Height = Application.GetRealHeight(0);
if (currentKey.panelMode == 1)
{
topFrameLayout.Height = Application.GetRealHeight(0);
@@ -348,8 +362,7 @@
}
else
{
- topFrameLayout.Height = Application.GetRealHeight(150);
- midVerticalRefreshLayout.Y = Application.GetRealHeight(150);
+ topFrameLayout.Height = Application.GetRealHeight(150);
BindModeDisplay();
}
int curIndex = 0;
@@ -444,8 +457,11 @@
else
{
devicePic.UnSelectedImagePath = curSceneUI.IconPath;
- btnBindName.Text = curSceneUI.Name;
- btnFloorRoomName.Text = curSceneUI.GetZone();
+ btnBindName.Text = curSceneUI.Name;
+ if (curSceneUI.GetZone() != null)
+ {
+ btnFloorRoomName.Text = curSceneUI.GetZone();
+ }
}
}
else
@@ -457,18 +473,27 @@
if (tempDev != null)
{
//鑾峰彇璁惧鎵�灞炴埧闂�
- var tempDevRoom = Common.Room.CurrentRoom.GetRoomByDevice(tempDev);
- //鑾峰彇璁惧鎵�鍦ㄦゼ灞�
- var tempDevFloorId = tempDevRoom.FloorId;
- //鑾峰彇妤煎眰鐨勫悕瀛�
- var tempDevRoomName = tempDevRoom.Name;
- //鑾峰彇妤煎眰鐨勫悕瀛�
- var tempDevFloorName = Common.Config.Instance.Home.GetFloorNameById(tempDevFloorId);
- btnFloorRoomName.Text = tempDevFloorName + "," + tempDevRoomName;
- var deviceUi = Common.LocalDevice.Current.GetDeviceUI(tempDev);
- devicePic.UnSelectedImagePath = deviceUi.IconPath;
- devicePic.Width = Application.GetRealWidth(110);
- devicePic.Text = "";
+ var tempDevRoom = Common.Room.CurrentRoom.GetRoomByDevice(tempDev);
+ //鑾峰彇璁惧鎵�鍦ㄦゼ灞�
+ if (Common.Config.Instance.Home.FloorDics.Count == 0)
+ {
+ }
+ if (tempDevRoom != null)
+ {
+ var tempDevFloorId = tempDevRoom.FloorId;
+ //鑾峰彇妤煎眰鐨勫悕瀛�
+ var tempDevRoomName = tempDevRoom.Name;
+ //鑾峰彇妤煎眰鐨勫悕瀛�
+ var tempDevFloorName = Common.Config.Instance.Home.GetFloorNameById(tempDevFloorId);
+ btnFloorRoomName.Text = tempDevFloorName + "," + tempDevRoomName;
+ }
+ var deviceUi = Common.LocalDevice.Current.GetDeviceUI(tempDev);
+ if (deviceUi != null)
+ {
+ devicePic.UnSelectedImagePath = deviceUi.IconPath;
+ devicePic.Width = Application.GetRealWidth(110);
+ devicePic.Text = "";
+ }
if (tempDev.DeviceEpointName == "")
{
btnBindName.Text = tempDev.DeviceEpoint + Language.StringByID(R.MyInternationalizationString.uDeviceCircuit);
@@ -595,60 +620,75 @@
//涓�閿竻闄ゆ寜閿簨浠�
btnDel.MouseUpEventHandler += async (sender, e) =>
- {
- bool isDelSuccess = false;
- try
- {
- CommonPage.Loading.Start("");
- var bindResult = await currentKey.ClearBindInfoAsync();
- if (bindResult != null && bindResult.clearBindInfoResponseData != null)
- {
- if (bindResult.clearBindInfoResponseData.Result != 0)
- {
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.RemoveFailed), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnDel);
- CommonPage.Loading.Hide();
- return;
- }
- else
- {
- var temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Default);
- if (temp.setWritableValueResponData?.Status != 0)
- {
- var temp1 = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Default);
- if (temp1.setWritableValueResponData?.Status != 0)
- {
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.ChangeBindMode), Direction = AMPopTipDirection.Up, CloseTime = 2 }.Show(btnDel);
- }
- else
- {
- isDelSuccess = true;
- }
- }
- else
- {
- isDelSuccess = true;
- }
- }
- }
- else
- {
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 2 }.Show(btnDel);
- }
- }
- catch { }
- finally
- {
- if (isDelSuccess)
- {
- currentKey.panelMode = 65535;
- currentKey.bindList.Clear();
- RefreshList();
- //濡傛灉鏄満鏅紝鐢ㄦ埛鍒犻櫎娓呯┖褰撳墠鍒版埧闂村垪琛�
- currentKey.RoomId = "";
- currentKey.ReSave();
- }
- CommonPage.Loading.Hide();
- }
+ {
+ var alert = new Alert(Language.StringByID(R.MyInternationalizationString.Tip), Language.StringByID(R.MyInternationalizationString.SureClearKeyModeAndTargets),
+ Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim));
+ alert.Show();
+
+ alert.ResultEventHandler += async (s1, e1) =>
+ {
+ if (e1)
+ {
+ bool isDelSuccess = false;
+ try
+ {
+ CommonPage.Loading.Start("");
+ var bindResult = await currentKey.ClearBindInfoAsync();
+ if (bindResult != null && bindResult.clearBindInfoResponseData != null)
+ {
+ if (bindResult.clearBindInfoResponseData.Result != 0)
+ {
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.RemoveFailed), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnDel);
+ CommonPage.Loading.Hide();
+ return;
+ }
+ else
+ {
+ var temp = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Default);
+ if (temp.setWritableValueResponData?.Status != 0)
+ {
+ var temp1 = await currentKey.ConfigureHdlKeyValueAsync(Panel.KeyMode.Default);
+ if (temp1.setWritableValueResponData?.Status != 0)
+ {
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.ChangeBindMode), Direction = AMPopTipDirection.Up, CloseTime = 2 }.Show(btnDel);
+ }
+ else
+ {
+ isDelSuccess = true;
+ }
+ }
+ else
+ {
+ isDelSuccess = true;
+ }
+ }
+ }
+ else
+ {
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 2 }.Show(btnDel);
+ }
+ }
+ catch { }
+ finally
+ {
+ if (isDelSuccess)
+ {
+ currentKey.panelMode = 65535;
+ currentKey.bindList.Clear();
+ RefreshList();
+ //濡傛灉鏄満鏅紝鐢ㄦ埛鍒犻櫎娓呯┖褰撳墠鍒版埧闂村垪琛�
+ currentKey.RoomId = "";
+ currentKey.ReSave();
+ }
+ CommonPage.Loading.Hide();
+ }
+ }
+ else
+ {
+
+ }
+ };
+
};
}
@@ -1071,48 +1111,8 @@
{
CommonPage.Loading.Start("");
var delResult = new DelDeviceBindResponseAllData();
- delResult = await currentKey.DelDeviceBindAsync(delDevice);
- //if (delResult != null)
- //{
- // if (delResult.removeBindResultResponseData != null)
- // {
- // if (delResult.removeBindResultResponseData.Result == 0)
- // {
- // currentKey.bindList.Remove(bindDevice);
- // RefreshList();
- // return 0;
- // }
- // else
- // {
- // new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.RemoveFailed), Direction = AMPopTipDirection.None, CloseTime = 2 }.Show(CommonPage.Instance);
- // }
- // }
- // else if (delResult.delDeviceBindResponseData != null)
- // {
- // foreach (var remTarget in delResult.delDeviceBindResponseData.RemoveBindList)
- // {
- // if (remTarget.Result == 0)
- // {
- // currentKey.bindList.Remove(bindDevice);
- // RefreshList();
- // //濡傛灉鏄満鏅紝鐢ㄦ埛鍒犻櫎娓呯┖褰撳墠鍒版埧闂村垪琛�
- // currentKey.RoomId = "";
- // currentKey.ReSave();
- // return 0;
- // }
- // else
- // {
- // new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.RemoveFailed), Direction = AMPopTipDirection.None, CloseTime = 2 }.Show(CommonPage.Instance);
- // }
- // }
- // }
- //}
- //else
- //{
- // new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 2 }.Show(CommonPage.Instance);
- //}
-
- if (delResult != null && delResult.removeBindResultResponseData != null)
+ delResult = await currentKey.DelDeviceBindAsync(delDevice);
+ if (delResult != null && delResult.delDeviceBindResponseData != null)
{
if (delResult.delDeviceBindResponseData?.RemoveBindList != null)
{
@@ -1124,6 +1124,10 @@
currentKey.bindList.Remove(bindDevice);
RefreshList();
//濡傛灉鏄満鏅紝鐢ㄦ埛鍒犻櫎娓呯┖褰撳墠鍒版埧闂村垪琛�
+ if(re.BindType == 2)
+ {
+ currentKey.panelMode = 65535;
+ }
currentKey.RoomId = "";
currentKey.ReSave();
return 0;
--
Gitblit v1.8.0