From eb3a71699bcf371db801165e3af65951b1292706 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 24 十二月 2020 15:10:05 +0800
Subject: [PATCH] 20201224-3
---
HDL-ON_Android/Assets/Language.ini | 1
HDL_ON/Common/ApiUtlis.cs | 88 +++++-----
HDL_ON/Entity/DB_ResidenceData.cs | 2
HDL_ON/DAL/DriverLayer/Control_Udp.cs | 4
HDL_ON/DAL/Mqtt/MqttClient.cs | 40 ++--
HDL-ON_iOS/Resources/Language.ini | 1
HDL_ON/Common/HDLCommon.cs | 4
HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs | 125 ++++++++++-----
HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs | 10 +
HDL_ON/Common/R.cs | 1
HDL_ON/DAL/Server/HttpServerRequest.cs | 23 +-
HDL_ON/DAL/DriverLayer/Packet.cs | 8 +
HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs | 4
.vs/HDL_APP_Project/xs/UserPrefs.xml | 57 ++----
HDL_ON/DAL/DriverLayer/Control.cs | 76 +++++++--
HDL_ON/UI/UI1-Login/LoginPage.cs | 2
16 files changed, 262 insertions(+), 184 deletions(-)
diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml
index 9034e6f..2783466 100644
--- a/.vs/HDL_APP_Project/xs/UserPrefs.xml
+++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,48 +1,29 @@
锘�<Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default">
- <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget.94B44E9C-E1BC-4BF7-812E-FC71E9B623B2" />
- <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/Entity/FunctionList.cs">
+ <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.00008020-000404163432002E" />
+ <MonoDevelop.Ide.Workbench ActiveDocument="HDL-ON_iOS/Info.plist">
<Files>
- <File FileName="HDL_ON/Common/ApiUtlis.cs" Line="220" Column="73" />
- <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" Line="922" Column="1" />
- <File FileName="HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs" Line="111" Column="123" />
- <File FileName="HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs" Line="91" Column="22" />
- <File FileName="HDL_ON/Entity/Function/Function.cs" Line="612" Column="29" />
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs" Line="90" Column="1" />
- <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="621" Column="1" />
- <File FileName="HDL_ON/Entity/Function/Light.cs" Line="206" Column="10" />
- <File FileName="HDL_ON/Entity/FunctionList.cs" Line="197" Column="22" />
+ <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="330" Column="54" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="261" Column="55" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Packet.cs" Line="81" Column="8" />
+ <File FileName="HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs" Line="599" Column="53" />
+ <File FileName="HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs" Line="416" Column="79" />
+ <File FileName="HDL_ON/Entity/Function/Function.cs" Line="498" Column="41" />
+ <File FileName="HDL_ON/Common/ApiUtlis.cs" Line="246" Column="16" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Control_Udp.cs" Line="147" Column="33" />
+ <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs" Line="549" Column="30" />
+ <File FileName="HDL-ON_iOS/Info.plist" />
</Files>
<Pads>
<Pad Id="ProjectPad">
<State name="__root__">
<Node name="HDL_APP_Project" expanded="True">
- <Node name="HDL_ON" expanded="True">
- <Node name="Common" expanded="True" />
- <Node name="DAL" expanded="True">
- <Node name="DriverLayer" expanded="True" />
- <Node name="Mqtt" expanded="True" />
- <Node name="Server" expanded="True" />
- </Node>
- <Node name="Entity" expanded="True">
- <Node name="Function" expanded="True" />
- <Node name="FunctionList.cs" selected="True" />
- </Node>
- <Node name="UI" expanded="True">
- <Node name="UI2" expanded="True">
- <Node name="1-HomePage" expanded="True" />
- <Node name="2-Classification" expanded="True" />
- <Node name="3-Intelligence" expanded="True">
- <Node name="Scene" expanded="True" />
- </Node>
- <Node name="FuntionControlView" expanded="True">
- <Node name="AC" expanded="True" />
- <Node name="Light" expanded="True" />
- </Node>
- </Node>
- </Node>
+ <Node name="HDL-ON_Android" expanded="True">
+ <Node name="Assets" expanded="True" />
</Node>
- <Node name="HDL-ON_Android" expanded="True" />
- <Node name="HDL-ON_iOS" expanded="True" />
+ <Node name="HDL-ON_iOS" expanded="True">
+ <Node name="Resources" expanded="True" />
+ <Node name="Info.plist" selected="True" />
+ </Node>
</Node>
</State>
</Pad>
@@ -64,7 +45,7 @@
<String>Shared.Droid.TouchID/Shared.Droid.TouchID.csproj</String>
<String>Shared.IOS/Shared.IOS.csproj</String>
</DisabledProjects>
- <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
+ <MonoDevelop.Ide.Workspace ActiveConfiguration="Release|iPhone" />
<MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.SelectDevice" />
<MonoDevelop.Ide.DebuggingService.Breakpoints>
<BreakpointStore>
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index 096fae2..93fb679 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -399,6 +399,7 @@
377=鍏ㄥ畢鍖哄煙
378=鍙樺寲鏃堕棿
379=鍙樺寲閫熷害
+380=姝ゅ鍔熻兘鏆傛湭寮�鏀撅綖
400=娆㈣繋鍥炲
401=浜岀淮鐮佸け鏁堬紝璇烽噸璇�
402=閲嶈瘯
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index 096fae2..93fb679 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -399,6 +399,7 @@
377=鍏ㄥ畢鍖哄煙
378=鍙樺寲鏃堕棿
379=鍙樺寲閫熷害
+380=姝ゅ鍔熻兘鏆傛湭寮�鏀撅綖
400=娆㈣繋鍥炲
401=浜岀淮鐮佸け鏁堬紝璇烽噸璇�
402=閲嶈瘯
diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs
index 8b144ce..c29314c 100644
--- a/HDL_ON/Common/ApiUtlis.cs
+++ b/HDL_ON/Common/ApiUtlis.cs
@@ -159,38 +159,36 @@
{
deviceList = new DevcieApiPack();
}
- {
if (FunctionList.List.GetDeviceFunctionList().Count > 0)
{
- for (int i = 0; i < FunctionList.List.GetDeviceFunctionList().Count;)
+ for (int i = 0; i < FunctionList.List.GetDeviceFunctionList().Count;)
+ {
+ var localFunction = FunctionList.List.GetDeviceFunctionList()[i];
+ if (localFunction.functionCategory == FunctionCategory.Music)
{
- var localFunction = FunctionList.List.GetDeviceFunctionList()[i];
- if (localFunction.functionCategory == FunctionCategory.Music)
+ i++;
+ continue;
+ }
+ var newFunction = deviceList.list.Find((obj) => obj.deviceId == localFunction.deviceId);
+ if (newFunction == null)//濡傛灉浜戠鏈�鏂版暟鎹病鏈夎鏉℃暟鎹紝鍒欐湰鍦伴渶瑕佸垹鎺夎鏁版嵁璁板綍
+ {
+ FunctionList.List.DeleteFunction(localFunction);
+ }
+ else
+ {
+ MainPage.Log($"deviceType:{localFunction.spk} local:{localFunction.modifyTime} server:{newFunction.modifyTime}");
+ i++;
+ if (localFunction.modifyTime != newFunction.modifyTime)
{
- i++;
- continue;
+ //鍙紭鍖�
+ localFunction.name = newFunction.name;
+ localFunction.collect = newFunction.collect;
+ localFunction.modifyTime = newFunction.modifyTime;
+ localFunction.roomIds = newFunction.roomIds;
+ localFunction.bus = newFunction.bus;
+ localFunction.SaveFunctionFile();
}
- var newFunction = deviceList.list.Find((obj) => obj.deviceId == localFunction.deviceId);
- if (newFunction == null)//濡傛灉浜戠鏈�鏂版暟鎹病鏈夎鏉℃暟鎹紝鍒欐湰鍦伴渶瑕佸垹鎺夎鏁版嵁璁板綍
- {
- FunctionList.List.DeleteFunction(localFunction);
- }
- else
- {
- MainPage.Log($"deviceType:{localFunction.spk} local:{localFunction.modifyTime} server:{newFunction.modifyTime}");
- i++;
- if (localFunction.modifyTime != newFunction.modifyTime)
- {
- //鍙紭鍖�
- localFunction.name = newFunction.name;
- localFunction.collect = newFunction.collect;
- localFunction.modifyTime = newFunction.modifyTime;
- localFunction.roomIds = newFunction.roomIds;
- localFunction.bus = newFunction.bus;
- localFunction.SaveFunctionFile();
- }
- deviceList.list.Remove(newFunction);//鎿嶄綔瀹岀殑鏁版嵁娓呯悊鎺夛紝鍓╀笅鐨勫氨鏄柊澧炵殑鍔熻兘
- }
+ deviceList.list.Remove(newFunction);//鎿嶄綔瀹岀殑鏁版嵁娓呯悊鎺夛紝鍓╀笅鐨勫氨鏄柊澧炵殑鍔熻兘
}
}
//澶勭悊鍓╀笅鐨勬柊澧炲姛鑳�
@@ -217,6 +215,7 @@
if (sceneList == null)
{
sceneList = new List<Scene>();
+ }
for (int i = 0; i < FunctionList.List.scenes.Count;)
{
var localScene = FunctionList.List.scenes[i];
@@ -226,29 +225,28 @@
continue;
}
var newScene = sceneList.Find((obj) => obj.userSceneId == localScene.userSceneId);
- if (newScene == null)//濡傛灉浜戠鏈�鏂版暟鎹病鏈夎鏉℃暟鎹紝鍒欐湰鍦伴渶瑕佸垹鎺夎鏁版嵁璁板綍
+ if (newScene == null)//濡傛灉浜戠鏈�鏂版暟鎹病鏈夎鏉℃暟鎹紝鍒欐湰鍦伴渶瑕佸垹鎺夎鏁版嵁璁板綍
+ {
+ FunctionList.List.DeleteScene(localScene, false);
+ }
+ else
+ {
+ i++;
+ if (localScene.modifyTime != newScene.modifyTime)
{
- FunctionList.List.DeleteScene(localScene, false);
+ localScene.name = newScene.name;
+ localScene.collect = newScene.collect;
+ localScene.modifyTime = newScene.modifyTime;
+ localScene.roomIds = newScene.roomIds;
+ localScene.SaveSceneFile();
}
- else
- {
- i++;
- if (localScene.modifyTime != newScene.modifyTime)
- {
- localScene.name = newScene.name;
- localScene.collect = newScene.collect;
- localScene.modifyTime = newScene.modifyTime;
- localScene.roomIds = newScene.roomIds;
- localScene.SaveSceneFile();
- }
- sceneList.Remove(newScene);//鎿嶄綔瀹岀殑鏁版嵁娓呯悊鎺夛紝鍓╀笅鐨勫氨鏄柊澧炵殑鍔熻兘
- }
+ sceneList.Remove(newScene);//鎿嶄綔瀹岀殑鏁版嵁娓呯悊鎺夛紝鍓╀笅鐨勫氨鏄柊澧炵殑鍔熻兘
}
//澶勭悊鍓╀笅鐨勬柊澧炲姛鑳�
- foreach (var newScene in sceneList)
+ foreach (var tempScene in sceneList)
{
- newScene.SaveSceneFile();
- FunctionList.List.scenes.Add(newScene);
+ tempScene.SaveSceneFile();
+ FunctionList.List.scenes.Add(tempScene);
}
}
//濡傛灉鏄竴绔彛闇�瑕佹彁鍓嶄笅杞藉満鏅暟鎹紝鍚﹀垯鎺у埗涓嶄簡涓�绔彛鍦烘櫙
diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index 31e2c5f..4238f09 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -302,9 +302,9 @@
//璐﹀彿鍦ㄥ埆澶勭櫥闄嗭紝琚涪涓嬬嚎 璺宠浆鍒扮櫥褰曢〉闈�
new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.LoggedOnOtherDevices), Language.StringByID(StringId.Close)).Show();
-#if DEBUG
+//#if DEBUG
return;
-#endif
+//#endif
Logout();
}
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index e1987e7..7997ebc 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -12,6 +12,7 @@
public const int Retry = 402;
public const int QRCodeIsInvalid = 401;
public const int WellComBackHome = 400;
+ public const int FunctionNotOpen = 380;
public const int FadeSpeed = 379;
public const int FadeTime = 378;
public const int WholeZone = 377;
diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs
index a894698..861a54d 100644
--- a/HDL_ON/DAL/DriverLayer/Control.cs
+++ b/HDL_ON/DAL/DriverLayer/Control.cs
@@ -82,11 +82,23 @@
{
if (_gatewayOnline != value)
{
- _gatewayOnline = value;
- //淇敼涓婚〉杩炴帴鐘舵��
- UI.HomePage.LoadEvent_CheckLinkStatus();
- if (value)
+ if(value)
{
+ if (IsRemote)//濡傛灉鏄繙绋�
+ {
+ if (!DB_ResidenceData.Instance.HomeGateway.gatewayStatus)//杩滅▼鎯呭喌涓嬶紝缃戝叧鏈摼鎺ユ湇鍔″櫒涓嶈兘淇敼涓婚〉缃戝叧鐘舵��
+ {
+ new System.Threading.Thread(() => {
+ System.Threading.Thread.Sleep(3000);
+ var pm = new DAL.Server.HttpServerRequest();
+ pm.GetGatewayInfo();
+ }) { IsBackground = true }.Start();
+ return;
+ }
+ }
+ _gatewayOnline = value;
+ //淇敼涓婚〉杩炴帴鐘舵��
+ HomePage.LoadEvent_CheckLinkStatus();
MainPage.Log($"缃戝叧鍦ㄧ嚎锛屽埛鏂拌澶囩姸鎬�");
new System.Threading.Thread(() =>
{
@@ -94,6 +106,12 @@
FunctionList.List.ReadAllFunctionStatus();
})
{ IsBackground = true, Priority = System.Threading.ThreadPriority.AboveNormal }.Start();
+ }
+ else
+ {
+ _gatewayOnline = value;
+ //淇敼涓婚〉杩炴帴鐘舵��
+ HomePage.LoadEvent_CheckLinkStatus();
}
}
}
@@ -103,23 +121,10 @@
/// </summary>
public string GatewayId = "";
- bool _isRemote = false;
/// <summary>
/// 鏄惁涓鸿繙绋嬭繛鎺�
/// </summary>
- public bool IsRemote
- {
- get
- {
- return _isRemote;
- }
- set
- {
- _isRemote = value;
- //淇敼涓婚〉杩炴帴鐘舵��
- HomePage.LoadEvent_CheckLinkStatus();
- }
- }
+ public bool IsRemote = false;
/// <summary>
/// 閫氳鍦板潃IP
/// </summary>
@@ -183,7 +188,9 @@
/// </summary>
public void SearchLoaclGateway()
{
- MainPage.Log($"鎼滅储鏈湴缃戝叧鍒楄〃锛岀綉鍏崇被鍨�:{DB_ResidenceData.Instance.GatewayType}");
+ var ggg = DB_ResidenceData.Instance.GatewayType == 0 ? "涓�绔彛" : "A缃戝叧";
+ var ggg1 = MainPage.InternetStatus == 1 ? "4G" : "wifi";
+ MainPage.Log($"鎼滅储缃戝叧鍒楄〃锛岀綉鍏崇被鍨�:{ggg};缃戠粶绫诲瀷:{ggg1}");
if (MainPage.InternetStatus == 0)
{
Ins.GatewayOnline = false;
@@ -328,6 +335,35 @@
MainPage.Log($"鍙戦�丠DL-Link鏁版嵁:{functionControlDataJson}");
}
}
+ }
+ /// <summary>
+ /// 鍏ㄥ紑鍏ㄥ叧鍔熻兘
+ /// </summary>
+ public void SwtichFunctions(bool open,List<Function> functions)
+ {
+ var count = 0;
+ var logString = open ? "鎵撳紑" : "鍏抽棴";
+ List<ApiAlinkControlActionObj> actionObjs = new List<ApiAlinkControlActionObj>();
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, open ? "on" : "off");
+ var pm = new DAL.Server.HttpServerRequest();
+ foreach (var temp in functions)
+ {
+ logString += temp.spk + ":" + temp.sid;
+ var apiControlData = temp.GetApiControlData(d);
+ actionObjs.Add(apiControlData);
+ count++;
+ if (count > 9)
+ {
+ var result = pm.ControlDevice(actionObjs);
+ actionObjs = new List<ApiAlinkControlActionObj>();
+ count = 0;
+ MainPage.Log(logString);
+ logString = "";
+ }
+ }
+ var pack = pm.ControlDevice(actionObjs);
+ MainPage.Log(logString);
}
public void SendApiReadCommand(List<string> functionIds)
@@ -500,7 +536,7 @@
var device = Newtonsoft.Json.JsonConvert.DeserializeObject<DeviceModule>(bodyJObj.objects.ToString());
if (device.device_mac == DB_ResidenceData.Instance.residenceGatewayMAC)
{
- //鏈湴鎼滅储缃戝叧鎴愬姛
+ MainPage.Log("鏈湴鎼滅储缃戝叧鎴愬姛");
Control.Ins.IsSearchLocalGatewaySuccessful = true;
Ins.GatewayOnline = true;
if (!string.IsNullOrEmpty(device.gatewayId))
diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
index e5bda32..d3e11b0 100644
--- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs
+++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
@@ -158,6 +158,10 @@
{
foreach (var f in scene.functions)
{
+ if(f.localFunction == null)
+ {
+ continue;
+ }
switch (f.localFunction.functionType)
{
case FunctionType.Curtain:
diff --git a/HDL_ON/DAL/DriverLayer/Packet.cs b/HDL_ON/DAL/DriverLayer/Packet.cs
index 6164b0e..a1d7c74 100644
--- a/HDL_ON/DAL/DriverLayer/Packet.cs
+++ b/HDL_ON/DAL/DriverLayer/Packet.cs
@@ -91,6 +91,14 @@
}
//澶勭悊鎺ユ敹鍒扮殑鏁版嵁
UdpPacket_DataProcessing(subnetID, deviceID, command, usefulBytes);
+#if DEBUG
+ string ddd = "";
+ foreach(var bb in usefulBytes)
+ {
+ ddd += bb + ",";
+ }
+ MainPage.Log(ddd);
+#endif
//澶勭悊鏄惁瑕侀噸鍙戞暟鎹�
ManagerReceive(subnetID, deviceID, command, usefulBytes);
}
diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs
index 1ecf619..fb5d3b5 100644
--- a/HDL_ON/DAL/Mqtt/MqttClient.cs
+++ b/HDL_ON/DAL/Mqtt/MqttClient.cs
@@ -186,9 +186,14 @@
Topic = $"/user/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/app/thing/property/send",
QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
};
+ var topicBusStatus = new MqttTopicFilter()
+ {
+ Topic = $"/BusGateWayToClient/MacMask/Common",
+ QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
+ };
Utlis.WriteLine("寮�濮嬭闃咃紒");
- var result = await RemoteMqttClient.SubscribeAsync(new MqttTopicFilter[] { topicFilterBusGateWayToClient, topicFilterPush2 , topicAlinkStatus });
+ var result = await RemoteMqttClient.SubscribeAsync(new MqttTopicFilter[] { topicFilterBusGateWayToClient, topicFilterPush2, topicAlinkStatus, topicBusStatus });
if (result.Items[0].ResultCode == MQTTnet.Client.Subscribing.MqttClientSubscribeResultCode.GrantedQoS0)
{
isSubscribeSuccess = true;
@@ -269,7 +274,6 @@
}
else
{
- MainPage.Log($"mqtt data");
SetGatewayOnlineResetCheck();
var bytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, DB_ResidenceData.Instance.HomeGateway.aesKey);
@@ -286,10 +290,19 @@
{
packet.Bytes = e.ApplicationMessage.Payload;
}
+#if DEBUG
+ string ddd = "";
+ foreach (var bb in packet.Bytes)
+ {
+ ddd += bb + ",";
+ }
+ MainPage.Log($"mqtt bus data:{ddd}");
+#endif
packet.Manager();
}
else
{
+ MainPage.Log($"mqtt A-Link data");
//A鍗忚鏁版嵁澶勭悊
var revString = Encoding.UTF8.GetString(bytes);
Control.Ins.UpdataFunctionStatus(revString,null);
@@ -312,25 +325,9 @@
//(3)ConnectedHandler
if (RemoteMqttClient.ConnectedHandler == null)
{
- RemoteMqttClient.UseConnectedHandler(async (e) => {
- if (DB_ResidenceData.Instance.HomeGateway.gatewayStatus)
- {
- Control.Ins.GatewayOnline = true;
- }
- else
- {
- //new System.Threading.Thread(() => {
- // while(true)
- // {
- // System.Threading.Thread.Sleep(1000);
- // if (DB_ResidenceData.Instance.HomeGateway.GatewayOnline)
- // {
- // Control.Ins.GatewayOnline = true;
- // break;
- // }
- // }
- //}) { IsBackground = true }.Start();
- }
+ RemoteMqttClient.UseConnectedHandler(async (e) =>
+ {
+ Control.Ins.GatewayOnline = true;
IfNeedReadAllDeviceStatus = true;
Utlis.WriteLine($"============>Mqtt杩滅▼杩炴帴鎴愬姛");
SendPushSignOut();
@@ -655,7 +652,6 @@
/// 鏄惁闇�瑕佽鍙栦竴娆℃墍鏈夎澶囩姸鎬�
/// </summary>
static bool IfNeedReadAllDeviceStatus = true;
- //public static bool IsGatewayOnline = true;
/// <summary>
/// 璁剧疆缃戝叧鍦ㄧ嚎鏍囧織锛屽苟閲嶇疆CheckGateway鍙傛暟
diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index cebeda9..5b5b29c 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -571,15 +571,14 @@
if (mHomeGatewayRes.Count > 0)
{
DB_ResidenceData.Instance.HomeGateway = mHomeGatewayRes[0];
- if (mHomeGatewayRes[0].gatewayStatus)
- {
- //DriverLayer.Control.Ins.IsRemote = true;
- DriverLayer.Control.Ins.GatewayOnline = true;
- }
- else
- {
- DriverLayer.Control.Ins.GatewayOnline = false;
- }
+ //if (mHomeGatewayRes[0].gatewayStatus)
+ //{
+ // DriverLayer.Control.Ins.GatewayOnline = true;
+ //}
+ //else
+ //{
+ // DriverLayer.Control.Ins.GatewayOnline = false;
+ //}
DB_ResidenceData.Instance.SaveResidenceData();
return revertObj.Code;
}
@@ -615,8 +614,10 @@
var mHomeGatewayRes = Newtonsoft.Json.JsonConvert.DeserializeObject<HomeGatewayInfo>(revertObj.Data.ToString());
if (mHomeGatewayRes != null)
{
- DB_ResidenceData.Instance.HomeGateway = mHomeGatewayRes;
- DB_ResidenceData.Instance.SaveResidenceData();
+ if(mHomeGatewayRes.gatewayStatus)
+ {
+ DriverLayer.Control.Ins.GatewayOnline = true;
+ }
}
}
return revertObj.Code;
diff --git a/HDL_ON/Entity/DB_ResidenceData.cs b/HDL_ON/Entity/DB_ResidenceData.cs
index 8017fc0..8553884 100644
--- a/HDL_ON/Entity/DB_ResidenceData.cs
+++ b/HDL_ON/Entity/DB_ResidenceData.cs
@@ -274,7 +274,6 @@
/// <returns></returns>
static byte[] ReadResidenceInfo()
{
- MainPage.Log("get file Instance ");
var fileName = "DB_ResidenceData";
FileStream fs = null;
try
@@ -302,7 +301,6 @@
}
finally
{
- MainPage.Log("get file ");
try
{
if (fs != null)
diff --git a/HDL_ON/UI/UI1-Login/LoginPage.cs b/HDL_ON/UI/UI1-Login/LoginPage.cs
index eaf1b96..c8a7857 100644
--- a/HDL_ON/UI/UI1-Login/LoginPage.cs
+++ b/HDL_ON/UI/UI1-Login/LoginPage.cs
@@ -193,7 +193,7 @@
{
if (b)
{
- etAccount.Text = "13697499568";// "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568
+ etAccount.Text = "18824864143";// "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568
}
else
{
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs
index 7f604b2..aa5e367 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs
@@ -345,48 +345,91 @@
{
try
{
- switch (functionCategory)
+ if (DB_ResidenceData.Instance.GatewayType == 0 && !Control.Ins.IsRemote)
{
- case ShowFunction.AC:
- foreach (var f in FunctionList.List.aCs)
- {
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- System.Threading.Thread.Sleep(100);
- }
- break;
- case ShowFunction.FloorHeating:
- foreach (var f in FunctionList.List.floorHeatings)
- {
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- System.Threading.Thread.Sleep(100);
- }
- break;
- case ShowFunction.Light:
- foreach (var f in FunctionList.List.lights)
- {
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- System.Threading.Thread.Sleep(100);
- }
- break;
- case ShowFunction.Electric:
- foreach (var f in FunctionList.List.electricals)
- {
- f.trait_on_off.curValue = onoff;
- Dictionary<string, string> d = new Dictionary<string, string>();
- d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
- Control.Ins.SendWriteCommand(f, d);
- System.Threading.Thread.Sleep(100);
- }
- break;
+ switch (functionCategory)
+ {
+ case ShowFunction.AC:
+ foreach (var f in FunctionList.List.aCs)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ case ShowFunction.FloorHeating:
+ foreach (var f in FunctionList.List.floorHeatings)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ case ShowFunction.Light:
+ foreach (var f in FunctionList.List.lights)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ case ShowFunction.Electric:
+ foreach (var f in FunctionList.List.electricals)
+ {
+ f.trait_on_off.curValue = onoff;
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add(FunctionAttributeKey.OnOff, f.trait_on_off.curValue.ToString());
+ Control.Ins.SendWriteCommand(f, d);
+ System.Threading.Thread.Sleep(100);
+ }
+ break;
+ }
+ }
+ else
+ {
+ switch (functionCategory)
+ {
+ case ShowFunction.AC:
+ List<Function> acList = new List<Function>();
+ foreach(var f in FunctionList.List.aCs)
+ {
+ acList.Add(f);
+ }
+ Control.Ins.SwtichFunctions(onoff == "on", acList);
+ break;
+ case ShowFunction.FloorHeating:
+ List<Function> fhList = new List<Function>();
+ foreach (var f in FunctionList.List.floorHeatings)
+ {
+ fhList.Add(f);
+ }
+ Control.Ins.SwtichFunctions(onoff == "on", fhList);
+ break;
+ case ShowFunction.Light:
+ List<Function> lightList = new List<Function>();
+ foreach (var f in FunctionList.List.lights)
+ {
+ lightList.Add(f);
+ }
+ Control.Ins.SwtichFunctions(onoff == "on", lightList);
+ break;
+ case ShowFunction.Electric:
+ List<Function> eleList = new List<Function>();
+ foreach (var f in FunctionList.List.electricals)
+ {
+ eleList.Add(f);
+ }
+ Control.Ins.SwtichFunctions(onoff == "on", eleList);
+ break;
+ }
+
+
}
}
catch (Exception ex)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
old mode 100755
new mode 100644
index 4d22aef..171cae5
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
@@ -336,6 +336,7 @@
userTypeView.AddChidren(btnUserTypeName);
#endregion
#region 浣忓畢绠$悊
+
if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
{
#region ---浣忓畢绠$悊鍖哄煙
@@ -524,6 +525,15 @@
}
else
{
+ residenceInfoView.AddChidren(new Button()
+ {
+ Y = Application.GetRealHeight(20),
+ TextAlignment = TextAlignment.Center,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextID = StringId.FunctionNotOpen,
+ });
+
#region F3闃舵
#region ---瀹夋斁鍖哄煙
//residenceArmView = new FrameLayout()
diff --git a/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs b/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs
index c8ca8aa..24a50b7 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs
@@ -38,7 +38,7 @@
bodyView.btnWindSpeed.UnSelectedImagePath = uAc.curFanImage;
if(uAc.trait_on_off.curValue.ToString() == "on")
{
- bodyView.arcBar.IsOffline = true;
+ bodyView.arcBar.IsOffline = false;
bodyView.btnSwitch.IsSelected = true;
bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png";
if (uAc.trait_mode.curValue.ToString() == "fan")
@@ -52,7 +52,7 @@
}
else
{
- bodyView.arcBar.IsOffline = false;
+ bodyView.arcBar.IsOffline = true;
bodyView.btnSwitch.IsSelected = false;
bodyView.arcBar.IsClickable = false;
bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png";
--
Gitblit v1.8.0