From fdc47d950498e088260a3b04028703adc0f878e0 Mon Sep 17 00:00:00 2001
From: WJC <wjc@hdlchina.com.cn>
Date: 星期一, 30 三月 2020 10:54:27 +0800
Subject: [PATCH] 2020-03-30-1
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs | 93 ++++++++++++++++++++++++++++------------------
1 files changed, 56 insertions(+), 37 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
index 5fafb97..3f1200f 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayLogic.cs
@@ -204,7 +204,13 @@
/// <param name="zbGateway">缃戝叧</param>
/// <param name="mode">鏄惁鏄剧ず閿欒</param>
public async Task<bool> AddNewGateway(ZbGateway zbGateway, ShowErrorMode mode)
- {
+ {
+ //璁剧疆缃戝叧鐨勭粡绾害
+ bool falge = this.SetGatewaySite(zbGateway, Common.Config.Instance.Home.Longitude, Common.Config.Instance.Home.Latitude, ShowErrorMode.NO);
+ if (falge == false)
+ {
+ return falge;
+ }
//鎵ц娣诲姞缃戝叧鍒板唴瀛�
var result = await this.DoAddGatewayToMemory(zbGateway, mode);
//鍓嶇殑缃戝叧缁戝畾鍦ㄤ簡褰撳墠璐﹀彿涓嬬殑涓嶅悓浣忓畢閲岄潰
@@ -226,9 +232,7 @@
{
return false;
}
- //璁剧疆缃戝叧鐨勭粡绾害
- bool falge = this.SetGatewaySite(zbGateway, Common.Config.Instance.Home.Longitude, Common.Config.Instance.Home.Latitude);
- return falge;
+ return true;
}
/// <summary>
@@ -438,7 +442,7 @@
return -1;
}
//璁剧疆缃戝叧鐨勭粡绾害
- bool falge = this.SetGatewaySite(zbGateway, Common.Config.Instance.Home.Longitude, Common.Config.Instance.Home.Latitude);
+ bool falge = this.SetGatewaySite(zbGateway, Common.Config.Instance.Home.Longitude, Common.Config.Instance.Home.Latitude, ShowErrorMode.YES);
if (falge == false)
{
return -1;
@@ -767,14 +771,15 @@
//濡傛灉鏄富缃戝叧
if (this.IsMainGateway(zbGatewayID) == 1)
{
- foreach (var room in Shared.Common.Room.Lists)
+ var listAllRoom = UserCenter.HdlRoomLogic.Current.GetAllListRooms();
+ foreach (var room in listAllRoom)
{
//鍒犻櫎鍦烘櫙鏂囦欢
- foreach (var scene in room.SceneUIFilePathList)
+ foreach (var sceneId in room.ListSceneId)
{
- if (Global.IsExistsByHomeId(scene) == true)
+ if (Global.IsExistsByHomeId($"Scene_{sceneId}.json") == true)
{
- Global.DeleteFilebyHomeId(scene);
+ Global.DeleteFilebyHomeId($"Scene_{sceneId}.json");
}
}
}
@@ -1632,8 +1637,11 @@
this.GetGwInfoAttribute(localWay, "ZbImageType").ToString(),
Convert.ToInt32(this.GetGwInfoAttribute(localWay, "ZbFWVersion")));
+ var list = new List<FirmwareVersionInfo>();
+ list.Add(gatewayFirmware);
+ list.Add(coordinatorFirmware);
+
//杩欎釜缃戝叧闇�瑕佹湁铏氭嫙椹卞姩杩欎釜涓滆タ鎵嶈
- FirmwareVersionInfo virtualFirmware = null;
string linImage = this.GetGwInfoAttribute(localWay, "LinuxImageType").ToString();
if (linImage != "6")
{
@@ -1641,28 +1649,32 @@
var listvVode = await HdlGatewayLogic.Current.GetListVDDriveCode(localWay);
if (listvVode != null && listvVode.Count > 0)
{
- //娣诲姞铏氭嫙椹卞姩鐨勫崌绾у浐浠�(鎴愪笉鎴愬姛閮芥棤鎵�璋�)
- flage = await HdlFirmwareUpdateLogic.AddFirmwareVersionInfo(FirmwareLevelType.VirtualDevice,
- listvVode[0].DriveHwVersion.ToString(),
- listvVode[0].DriveImageType.ToString());
-
- //铏氭嫙椹卞姩
- virtualFirmware = HdlFirmwareUpdateLogic.GetFirmwareMostVersionInfo(FirmwareLevelType.VirtualDevice,
- listvVode[0].DriveHwVersion.ToString(),
- listvVode[0].DriveImageType.ToString(),
- listvVode[0].DriveFwVersion);
-
- if (virtualFirmware != null)
+ foreach (var data in listvVode)
{
- virtualFirmware.VirtualCode = listvVode[0].DriveCode;
+ //娣诲姞铏氭嫙椹卞姩鐨勫崌绾у浐浠�(鎴愪笉鎴愬姛閮芥棤鎵�璋�)
+ flage = await HdlFirmwareUpdateLogic.AddFirmwareVersionInfo(FirmwareLevelType.VirtualDevice,
+ data.DriveHwVersion.ToString(),
+ data.DriveImageType.ToString());
+
+ //铏氭嫙椹卞姩
+ var virtualFirmware = HdlFirmwareUpdateLogic.GetFirmwareMostVersionInfo(FirmwareLevelType.VirtualDevice,
+ data.DriveHwVersion.ToString(),
+ data.DriveImageType.ToString(),
+ data.DriveFwVersion);
+
+ if (virtualFirmware != null)
+ {
+ virtualFirmware.VirtualCode = data.DriveCode;
+ list.Add(virtualFirmware);
+ }
}
}
}
- var list = new List<FirmwareVersionInfo>();
- list.Add(gatewayFirmware);
- list.Add(coordinatorFirmware);
- list.Add(virtualFirmware);
-
+ if (list.Count == 2)
+ {
+ //铏氭嫙椹卞姩濡傛灉娌℃湁鏂扮増鏈殑璇濓紝鍥哄畾娣诲姞涓�涓┖鐨�
+ list.Add(null);
+ }
return list;
}
@@ -2201,15 +2213,19 @@
/// <param name="gateway">缃戝叧瀵硅薄</param>
/// <param name="Longitude">缁忓害</param>
/// <param name="Latitude">缁村害</param>
+ /// <param name="mode">鏄剧ず閿欒</param>
/// <returns></returns>
- public bool SetGatewaySite(ZbGateway gateway, double Longitude, double Latitude)
+ public bool SetGatewaySite(ZbGateway gateway, double Longitude, double Latitude, ShowErrorMode mode)
{
ZbGateway realWay = null;
if (this.GetRealGateway(ref realWay, gateway) == false)
{
- //閿欒:缃戝叧瀵硅薄涓㈠け
- string msg = Language.StringByID(R.MyInternationalizationString.uErrorGatewayLostMsg);
- this.ShowTipMsg(msg);
+ if (mode == ShowErrorMode.YES)
+ {
+ //閿欒:缃戝叧瀵硅薄涓㈠け
+ string msg = Language.StringByID(R.MyInternationalizationString.uErrorGatewayLostMsg);
+ this.ShowTipMsg(msg);
+ }
return false;
}
@@ -2254,13 +2270,16 @@
realWay.Actions -= action;
if (result != 0)
{
- //璁剧疆缃戝叧缁忕含搴﹀け璐�
- string msg = Language.StringByID(R.MyInternationalizationString.uSetGatewaySiteFail);
- if (result == -1)
+ if (mode == ShowErrorMode.YES)
{
- msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, null, "鍥炲瓒呮椂");
+ //璁剧疆缃戝叧缁忕含搴﹀け璐�
+ string msg = Language.StringByID(R.MyInternationalizationString.uSetGatewaySiteFail);
+ if (result == -1)
+ {
+ msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, null, "鍥炲瓒呮椂");
+ }
+ this.ShowTipMsg(msg);
}
- this.ShowTipMsg(msg);
return false;
}
--
Gitblit v1.8.0