From 99253403b560f761d5f9af8b4f5140496996433a Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期五, 20 十一月 2020 16:49:50 +0800
Subject: [PATCH] 新云端的代码Ver1.0
---
ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/WiredGatewaySearchForm.cs | 78 ++++++++++++++++++++++++--------------
1 files changed, 49 insertions(+), 29 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/WiredGatewaySearchForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/WiredGatewaySearchForm.cs
index 448ff57..ba19e43 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/WiredGatewaySearchForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/WiredGatewaySearchForm.cs
@@ -180,7 +180,7 @@
var btnGoBack = new BottomClickButton(688);
btnGoBack.Y = Application.GetRealHeight(1495);
btnGoBack.TextID = R.MyInternationalizationString.uGobackGatewayManage;
- if (UserCenterResourse.DicActionForm.ContainsKey("GatewayListForm") == false)
+ if (HdlFormLogic.Current.IsFormOpen("GatewayListForm") == false)
{
//杩斿洖涓婚〉
btnGoBack.TextID = R.MyInternationalizationString.uGobackToHomePage;
@@ -190,7 +190,7 @@
{
this.CloseForm();
//鍏抽棴鎸囧畾鐣岄潰
- this.CloseFormByFormName("NewGateWayMenuSelectForm");
+ HdlFormLogic.Current.CloseFormByFormName("NewGateWayMenuSelectForm");
};
}
@@ -244,7 +244,7 @@
//鑾峰彇寰楀埌鏂扮綉鍏�,鍒欎腑鏂嚎绋�
break;
}
- Application.RunOnMainThread(() =>
+ HdlThreadLogic.Current.RunMain(() =>
{
btnRound.X = listPoint[index];
index++;
@@ -254,12 +254,13 @@
}
//姝e湪鎼滅储缃戝叧鈥Xs
btnMsg.Text = strMsg + timeCount + "s";
- });
+ }, ShowErrorMode.NO);
}
//鎼滅储缁撴潫
this.isGatewaySearching = false;
- if (maxCount <= 0)
+ //2020.07.14杩藉姞:鍊掕鏃剁粨鏉熸椂,鍝�曟槸宸茬粡缁戝畾浜嗙殑缃戝叧,涔熸樉绀哄嚭鏉�
+ if (maxCount <= 0 && listZbGateway.Count == 0)
{
HdlThreadLogic.Current.RunMain(() =>
{
@@ -267,14 +268,14 @@
this.InitFailMiddleFrame();
});
}
- else if (newGatewayGetting == true)
+ else if (newGatewayGetting == true || listZbGateway.Count > 0)
{
HdlThreadLogic.Current.RunMain(() =>
{
if (this.Parent != null)
{
var form = new GatewayManage.GatewaySearchListForm();
- this.AddFromAndRemoveNowForm(form, listZbGateway, dicZbGatewayDiv);
+ this.AddFormAndCloseNowForm(form, listZbGateway, dicZbGatewayDiv);
}
});
}
@@ -291,10 +292,10 @@
private void StartCheckGatewayThread()
{
this.isGatewaySearching = true;
- HdlThreadLogic.Current.RunThread(async () =>
+ HdlThreadLogic.Current.RunThread(() =>
{
//娓呯┖鍏ㄩ儴鍒楄〃
- HdlGatewayLogic.Current.ClearAllRealGateway();
+ HdlGatewayLogic.Current.ClearAllRealGatewayConection(true);
ZigBee.Common.Application.IsSearchingGateway = true;
int count = 0;
@@ -310,7 +311,7 @@
}
count = 0;
- await this.CheckZbGatewayAndSetRow();
+ this.CheckZbGatewayAndSetRow();
if (this.newGatewayGetting == true)
{
@@ -324,7 +325,7 @@
/// <summary>
/// 妫�娴嬫悳绱㈠埌鐨勭綉鍏筹紝鐒跺悗娣诲姞鍒扮敾闈㈢殑琛岄噷闈�
/// </summary>
- private async Task<bool> CheckZbGatewayAndSetRow()
+ private bool CheckZbGatewayAndSetRow()
{
List<string> listId = new List<string>();
for (int i = 0; i < ZbGateway.GateWayList.Count; i++)
@@ -361,27 +362,41 @@
{
continue;
}
+ //2020.09.18 鏈湴杩炴帴娌℃湁杩炴帴涓�,鍒欎笉澶勭悊
+ if (way.LocalIsConnected == false)
+ {
+ string strMsg = "鎼滅储鍒颁簡缃戝叧,浣嗘槸鏈湴閾炬帴涓嶄笂 ID:" + way.GwId + " IP:" + way.GwIP + " 鍚嶇О:" + way.GwName;
+ HdlLogLogic.Current.WriteLog(-1, strMsg);
+ continue;
+ }
//缃戝叧缁戝畾妯″紡
- GatewayBindMode mode = GatewayBindMode.BindAgain;
- //濡傛灉鏄涓�娆$粦瀹�,鎴栬�呮槸浠ュ墠宸茬粡缁戝畾杩囦簡鐨�
- if (HdlGatewayLogic.Current.HomeIdIsEmpty(way) == true
- || way.HomeId == Common.Config.Instance.HomeId)
+ var mode = GatewayBindMode.BindAgain;
+ //浣忓畢ID涓虹┖ 绗竴娆$粦瀹�
+ if (HdlGatewayLogic.Current.HomeIdIsEmpty(way) == true)
{
- if (way.HomeId != Common.Config.Instance.HomeId)
- {
- //绗竴娆$粦瀹�,涔熷氨鏄綉鍏充綇瀹匢D涓虹┖
- mode = GatewayBindMode.First;
- }
- else
- {
- //宸茬粡缁戝畾杩囦簡
- mode = GatewayBindMode.Binded;
- }
-
+ mode = GatewayBindMode.First;
+ }
+ //浣忓畢ID涓嶇浉绛� 闇�瑕侀噸鏂扮粦瀹�
+ else if (way.HomeId != Common.Config.Instance.HomeId)
+ {
+ mode = GatewayBindMode.BindAgain;
+ }
+ //濡傛灉鏈湴涓嶅瓨鍦ㄧ殑璇�,褰撳仛绗竴娆$粦瀹氬鐞�
+ else if (HdlGatewayLogic.Current.IsGatewayExist(way) == false)
+ {
+ mode = GatewayBindMode.First;
+ }
+ //浣忓畢ID涓�鏍�,鍒欐槸宸茬粡缁戝畾杩囦簡
+ else
+ {
+ mode = GatewayBindMode.Binded;
+ }
+ //杩欎袱绉嶆儏鍐甸兘鏄渶瑕侀噸鏂版坊鍔�(宸茬粡缁戝畾杩囦簡鐨�,鏈夊彲鑳戒綇瀹匢D娌″啓杩涘幓,瀹冩湁鍙兘鏄汉涓虹殑娓呯┖浣忓畢ID)
+ if (mode == GatewayBindMode.First || mode == GatewayBindMode.Binded)
+ {
//娣诲姞鎼滅储鍒扮殑缃戝叧鍒扮紦瀛�(鎵ц缃戝叧淇濆瓨鎿嶄綔)
- ShowErrorMode showMode = this.dicIdCheckCount[listId[i]] == 0 ? ShowErrorMode.YES : ShowErrorMode.NO;
- var result = await HdlGatewayLogic.Current.AddNewGateway(way, ShowErrorMode.NO);
+ var result = HdlGatewayLogic.Current.AddNewGateway(way, ShowErrorMode.NO, WriteLogMode.YES);
if (result == false)
{
continue;
@@ -416,7 +431,12 @@
if (mode == GatewayBindMode.First || mode == GatewayBindMode.Binded)
{
//鎴戣寰楄繖閲岄渶瑕佽幏鍙栦竴涓嬫柊缃戝叧鐨勮澶囧垪琛�
- Common.LocalDevice.Current.SetDeviceToMemmoryByGateway(way);
+ HdlDeviceCommonLogic.Current.SetDeviceToMemmoryByGateway(way.GwId, true);
+ if (way.IsMainGateWay == true)
+ {
+ //濡傛灉瀹冩槸涓荤綉鍏�,鍒欏埛鏂板満鏅垪琛�
+ HdlSceneLogic.Current.RefreshSceneUIList(true);
+ }
}
}
return true;
--
Gitblit v1.8.0