From 474783457240f62d4f926e628fea2abb1c4b8b0d Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期一, 11 十月 2021 14:53:37 +0800
Subject: [PATCH] spk更新异常,安防中心传感器状态无显示
---
HDL-ON_Android/Properties/AndroidManifest.xml | 2
HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs | 1
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 36 ++--
HDL-ON_Android/Assets/Language.ini | 3
HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs | 26 +-
HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs | 19 ++
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs | 31 ++++
HDL_ON/Entity/Function/SecurityAlarm.cs | 12
HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs | 20 ++
HDL_ON/Entity/FunctionList.cs | 9
HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs | 32 ++++
HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs | 13 +
HDL_ON/Entity/Function/Sensor.cs | 29 ++++
HDL-ON_iOS/Resources/Language.ini | 3
HDL_ON/Entity/Function/Function.cs | 15 +-
HDL_ON/Common/R.cs | 4
HDL_ON/DAL/Server/HttpServerRequest.cs | 4
HDL_ON/DAL/DriverLayer/Packet.cs | 5
.vs/HDL_APP_Project/xs/UserPrefs.xml | 48 +++---
HDL_ON/DAL/DriverLayer/Control.cs | 12 +
HDL_ON/UI/MainPage.cs | 4
HDL_ON/UI/UI1-Login/LoginPage.cs | 12 +
HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs | 27 +++
23 files changed, 267 insertions(+), 100 deletions(-)
diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml
index 198e45f..0c5476a 100644
--- a/.vs/HDL_APP_Project/xs/UserPrefs.xml
+++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,18 +1,20 @@
锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default">
- <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget.220222E9-B9CA-4834-9318-2BC22465F050" />
- <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/DriverLayer/Control.cs">
+ <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget." />
+ <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/DriverLayer/Packet.cs">
<Files>
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs" Line="469" Column="1" />
- <File FileName="HDL_ON/UI/MainPage.cs" Line="28" Column="55" />
- <File FileName="HDL_ON/UI/UI2/3-Intelligence/Scene/SceneFunctionListChoosePage.cs" Line="133" Column="31" />
- <File FileName="HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs" Line="991" Column="44" />
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs" Line="1" Column="1" />
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPageBLL.cs" Line="106" Column="55" />
- <File FileName="HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs" Line="388" Column="58" />
- <File FileName="HDL_ON/UI/UI2/3-Intelligence/Scene/NewSceneMenuListPage.cs" Line="177" Column="49" />
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/Electrical/AirSwitchPage.cs" Line="230" Column="28" />
<File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="21" Column="89" />
- <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="943" Column="1" />
+ <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="237" Column="59" />
+ <File FileName="HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs" Line="741" Column="23" />
+ <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" Line="853" Column="21" />
+ <File FileName="HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs" Line="340" Column="36" />
+ <File FileName="HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs" Line="170" Column="1" />
+ <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="315" Column="1" />
+ <File FileName="HDL_ON/UI/MainPage.cs" Line="28" Column="55" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="1050" Column="1" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Control_Udp.cs" Line="272" Column="45" />
+ <File FileName="HDL_ON/Entity/Function/Function.cs" Line="1326" Column="32" />
+ <File FileName="HDL_ON/UI/UI2/FuntionControlView/AC/ACPage.cs" Line="8" Column="28" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Packet.cs" Line="384" Column="1" />
</Files>
<Pads>
<Pad Id="ProjectPad">
@@ -21,7 +23,7 @@
<Node name="HDL_ON" expanded="True">
<Node name="DAL" expanded="True">
<Node name="DriverLayer" expanded="True">
- <Node name="Control.cs" selected="True" />
+ <Node name="Packet.cs" selected="True" />
</Node>
<Node name="Server" expanded="True" />
</Node>
@@ -29,18 +31,16 @@
<Node name="Function" expanded="True" />
</Node>
<Node name="UI" expanded="True">
+ <Node name="UI0-Public" expanded="True" />
<Node name="UI2" expanded="True">
<Node name="FuntionControlView" expanded="True">
- <Node name="Electrical" expanded="True" />
+ <Node name="AC" expanded="True" />
</Node>
</Node>
</Node>
</Node>
</Node>
</State>
- </Pad>
- <Pad Id="MonoDevelop.Debugger.WatchPad">
- <State />
</Pad>
</Pads>
</MonoDevelop.Ide.Workbench>
@@ -50,7 +50,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="Debug|iPhone" />
<MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.364c4b3158493098" />
<MonoDevelop.Ide.DebuggingService.Breakpoints>
<BreakpointStore>
@@ -64,12 +64,16 @@
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Entity/Function/Scene.cs" relfile="HDL_ON/Entity/Function/Scene.cs" line="343" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" line="148" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" line="865" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2689" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2685" column="1" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2691" column="1" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2687" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs" line="524" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Entity/Function/Scene.cs" relfile="HDL_ON/Entity/Function/Scene.cs" line="322" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/DriverLayer/Control.cs" relfile="HDL_ON/DAL/DriverLayer/Control.cs" line="943" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Electrical/AirSwitchPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Electrical/AirSwitchPage.cs" line="236" column="1" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="798" column="1" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="852" column="11" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="837" column="12" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="835" column="12" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs" line="200" column="1" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/DriverLayer/Control.cs" relfile="HDL_ON/DAL/DriverLayer/Control.cs" line="727" column="1" />
</BreakpointStore>
</MonoDevelop.Ide.DebuggingService.Breakpoints>
<MultiItemStartupConfigurations />
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index cbf3a84..a5fa4b3 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -498,7 +498,7 @@
510=Please select the deployment target.
511=Combined dimming
512=Message push is not enabled, please go to settings.
-
+513=Please enter the pairing code
1000=Room Humidity
1001=V-chip
@@ -1617,6 +1617,7 @@
510=璇烽�夋嫨甯冮槻鐩爣銆�
511=缁勫悎璋冨厜
512=娑堟伅鎺ㄩ�佹湭寮�鍚紝璇峰墠寰�璁剧疆銆�
+513=璇疯緭鍏ラ厤瀵圭爜
1000=瀹ゅ唴婀垮害
diff --git a/HDL-ON_Android/Properties/AndroidManifest.xml b/HDL-ON_Android/Properties/AndroidManifest.xml
index a5e0fe8..0ec5c06 100644
--- a/HDL-ON_Android/Properties/AndroidManifest.xml
+++ b/HDL-ON_Android/Properties/AndroidManifest.xml
@@ -1,5 +1,5 @@
锘�<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202109281" android:versionName="1.2.202109281" package="com.hdl.onpro">
+<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202110112" android:versionName="1.2.202110112" package="com.hdl.onpro">
<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="28" />
<!-- 涔愭鍙瀵硅闇�瑕佺殑鏉冮檺 -->
<!--<uses-permission android:name="android.permission.INTERNET" />-->
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index cbf3a84..a5fa4b3 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -498,7 +498,7 @@
510=Please select the deployment target.
511=Combined dimming
512=Message push is not enabled, please go to settings.
-
+513=Please enter the pairing code
1000=Room Humidity
1001=V-chip
@@ -1617,6 +1617,7 @@
510=璇烽�夋嫨甯冮槻鐩爣銆�
511=缁勫悎璋冨厜
512=娑堟伅鎺ㄩ�佹湭寮�鍚紝璇峰墠寰�璁剧疆銆�
+513=璇疯緭鍏ラ厤瀵圭爜
1000=瀹ゅ唴婀垮害
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index 6c5c10f..a09cbb6 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -6,6 +6,10 @@
{
/// <summary>
+ /// 璇疯緭鍏ラ厤瀵圭爜
+ /// </summary>
+ public const int PlsEntryPairCode = 513;
+ /// <summary>
/// 瀹夊崜娑堟伅鎺ㄩ�佹彁绀�
/// </summary>
public const int Android_MessagePushTip = 512;
diff --git a/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs b/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
index 2201612..550bce8 100644
--- a/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
+++ b/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
@@ -120,6 +120,19 @@
return $"/base/{Control.Ins.GatewayId}/thing/property/up";
}
}
+
+ /// <summary>
+ /// 缃戝叧涓婃姤璁惧鐘舵��
+ /// 鍘绘帀id瀵规瘮
+ /// </summary>
+ public string GatewayUpSortTopic
+ {
+ get
+ {
+ return "/thing/property/up";
+ }
+ }
+
/// <summary>
/// 鍦烘櫙鎵ц
/// </summary>
diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs
index 84584fd..d117157 100644
--- a/HDL_ON/DAL/DriverLayer/Control.cs
+++ b/HDL_ON/DAL/DriverLayer/Control.cs
@@ -618,9 +618,9 @@
{
id = Ins.msg_id.ToString(),
objects = new List<Dictionary<string, string>>()
- {
- readKey
- },
+ {
+ readKey
+ },
time_stamp = Utlis.GetTimestamp()
};
var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(readDataObj);
@@ -862,7 +862,8 @@
}
else if (receiveObj.Topic == CommunicationTopic.ct.ReadStatus + "_reply" ||
receiveObj.Topic == CommunicationTopic.ct.ControlFunctionTopic + "_reply" ||
- receiveObj.Topic == CommunicationTopic.ct.GatewayUpStatus)
+ receiveObj.Topic == CommunicationTopic.ct.GatewayUpStatus ||
+ receiveObj.Topic.Contains( CommunicationTopic.ct.GatewayUpSortTopic))
{
//TODO 鏆傛椂涓嶄紶姝g‘鐨勬暟鎹笂鍘伙紝濡傛灉鍚庨潰瑕佷紭鍖栧墠闈㈣繖浜涗唬鐮�
UpdataFunctionStatus(receiveObj.BodyDataString, null);
@@ -1077,6 +1078,7 @@
case SPK.SensorTVOC:
case SPK.SensorTemperature:
case SPK.SensorHumidity:
+ case SPK.SensorHcho:
if(localFunction.spk == SPK.SensorTemperature)
{
HomePage.LoadEvent_RefreshEnvirIndoorTemp();
@@ -1122,10 +1124,12 @@
case SPK.SensorWater:
case SPK.ClothesHanger:
case SPK.AcIr:
+ case SPK.HvacAC:
case SPK.SenesorMegahealth:
case SPK.SenesorMegahealth2:
case SPK.AirFreshStandard:
case SPK.HvacAirFresh:
+ case SPK.SensorGas:
//璁惧鐘舵�佹帹閫�
//鐘舵�佹洿鏂�
Stan.HdlDeviceStatuPushLogic.Current.UpdateDeviceStatu(updateTemp.sid, updateTemp.status);
diff --git a/HDL_ON/DAL/DriverLayer/Packet.cs b/HDL_ON/DAL/DriverLayer/Packet.cs
index 96222c0..3e07ff2 100644
--- a/HDL_ON/DAL/DriverLayer/Packet.cs
+++ b/HDL_ON/DAL/DriverLayer/Packet.cs
@@ -380,7 +380,8 @@
FunctionPage.UpdataStates(function);
HomePage.UpdataFunctionStates(function);
ClassificationPage.UpdataInfo(function);
- ACPage.UpdataStates(function);
+ Stan.HdlDeviceStatuPushLogic.Current.UpdateDeviceStatu(function.sid, function.status);
+
}
}
break;
@@ -657,7 +658,7 @@
FunctionPage.UpdataStates(function);
HomePage.UpdataFunctionStates(function);
ClassificationPage.UpdataInfo(function);
- ACPage.UpdataStates(function);
+ Stan.HdlDeviceStatuPushLogic.Current.UpdateDeviceStatu(function.sid, function.status);
}
}
break;
diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index 513ed6e..aec2776 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -1911,13 +1911,15 @@
/// <param name="productPlatform"></param>
/// <param name="productBrand"></param>
/// <returns></returns>
- public ResponsePackNew IndependentRegister3TyDevcie(string spk,string extDevId,string deviceName)
+ public ResponsePackNew IndependentRegister3TyDevcie(string spk,string extDevId,string deviceName,string pairCode = "")
{
Dictionary<string, object> d = new Dictionary<string, object>();
d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
d.Add("spk", spk);
d.Add("extDevId", extDevId);
d.Add("name", deviceName);
+ d.Add("code", pairCode);
+
var requestJson = HttpUtil.GetSignRequestJson(d);
return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_IndependentRegister3TyDevcie, requestJson);
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index e6e5e74..4c6031f 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -922,6 +922,13 @@
/// value
/// </summary>
public const string Value = "value";
+
+ public const string Co2 = "co2";
+ public const string Temperature = "temperature";
+ public const string Hcho = "hcho";
+ public const string Humidity = "humidity";
+ public const string Pm25 = "pm25";
+ public const string Tvoc = "tvoc";
/// <summary>
/// 鐘舵��,浼犳劅鍣�
/// </summary>
@@ -1015,14 +1022,6 @@
/// 鑺傝兘
/// </summary>
public const string Energy = "energy";
- /// <summary>
- /// 婀垮害
- /// </summary>
- public const string Humidity = "humidity";
- /// <summary>
- /// 娓╁害
- /// </summary>
- public const string Temperature = "temperature";
/// <summary>
/// 瀹ゅ唴娓╁害
/// </summary>
diff --git a/HDL_ON/Entity/Function/SecurityAlarm.cs b/HDL_ON/Entity/Function/SecurityAlarm.cs
index 902b12c..68cc8d8 100644
--- a/HDL_ON/Entity/Function/SecurityAlarm.cs
+++ b/HDL_ON/Entity/Function/SecurityAlarm.cs
@@ -427,11 +427,11 @@
case SPK.SensorSmoke:
foreach (var con in condition)
{
- if (con.value == "true")
+ if (con.value == "true" || con.value == "alarm")
{
text += Language.StringByID(StringId.InAlarm) + " ";
}
- else if (con.value == "false")
+ else if (con.value == "false" || con.value == "normal")
{
text += Language.StringByID(StringId.Normal) + " ";
}
@@ -453,11 +453,11 @@
case SPK.SensorWater:
foreach (var con in condition)
{
- if (con.value == "true")
+ if (con.value == "true" || con.value == "alarm")
{
text += Language.StringByID(StringId.WaterLeakage) + " ";
}
- else if (con.value == "false")
+ else if (con.value == "false" || con.value == "normal")
{
text += Language.StringByID(StringId.Normal) + " ";
}
@@ -466,11 +466,11 @@
case SPK.SensorDoorWindow:
foreach (var con in condition)
{
- if (con.value == "true")
+ if (con.value == "true" || con.value == "open")
{
text += Language.StringByID(StringId.Open) + " ";
}
- else if (con.value == "false")
+ else if (con.value == "false" || con.value == "close")
{
text += Language.StringByID(StringId.Close) + " ";
}
diff --git a/HDL_ON/Entity/Function/Sensor.cs b/HDL_ON/Entity/Function/Sensor.cs
index a51a61c..82ed611 100644
--- a/HDL_ON/Entity/Function/Sensor.cs
+++ b/HDL_ON/Entity/Function/Sensor.cs
@@ -38,7 +38,34 @@
/// </summary>
public double GetValues(Function function)
{
- var value = function.GetAttrState(FunctionAttributeKey.Value);
+ FunctionAttributes attr = function.GetAttribute(FunctionAttributeKey.Value);
+ if (attr == null)
+ {
+ switch (function.spk)
+ {
+ case SPK.SensorCO2:
+ attr = function.GetAttribute(FunctionAttributeKey.Co2);
+ break;
+ case SPK.SensorTemperature:
+ attr = function.GetAttribute(FunctionAttributeKey.Temperature);
+ break;
+ case SPK.SensorTVOC:
+ attr = function.GetAttribute(FunctionAttributeKey.Tvoc);
+ break;
+ case SPK.SensorPm25:
+ attr = function.GetAttribute(FunctionAttributeKey.Pm25);
+ break;
+ case SPK.SensorHcho:
+ attr = function.GetAttribute(FunctionAttributeKey.Hcho);
+ break;
+ case SPK.SensorHumidity:
+ attr = function.GetAttribute(FunctionAttributeKey.Humidity);
+ break;
+ }
+ }
+ double value = 0.0;
+ double.TryParse( attr.state,out value);
+
return Convert.ToDouble(value);
}
/// <summary>
diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index aee9ad3..593bb36 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -279,11 +279,14 @@
break;
case SPK.BrandType.Tuya:
- foreach (var function in Functions)
+ lock (Functions)
{
- if (SPK.Get3tySpk(SPK.BrandType.Tuya).Contains(function.spk))
+ foreach (var function in Functions)
{
- resultFunctions.Add(function);
+ if (SPK.Get3tySpk(SPK.BrandType.Tuya).Contains(function.spk))
+ {
+ resultFunctions.Add(function);
+ }
}
}
break;
diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs
index 94c758d..31e48ec 100644
--- a/HDL_ON/UI/MainPage.cs
+++ b/HDL_ON/UI/MainPage.cs
@@ -25,7 +25,7 @@
/// <summary>
/// 鐗堟湰鍙�
/// </summary>
- public static string VersionString = "1.2.0928";
+ public static string VersionString = "1.2.1012";
///// <summary>
///// 瀹㈡埛绔被鍨�
///// </summary>
@@ -105,7 +105,7 @@
public static List<string> SceneSupportFunctionList = new List<string> {
SPK.LightCCT,SPK.LightDimming,SPK.LightSwitch,SPK.LightRGB,
SPK.CurtainRoller,SPK.CurtainSwitch,SPK.CurtainTrietex,
- SPK.AcIr,SPK.AcStandard,
+ SPK.AcIr,SPK.AcStandard,SPK.HvacAC,
SPK.FloorHeatStandard,SPK.HvacFloorHeat,
SPK.AirFreshStandard,SPK.HvacAirFresh,
SPK.AirSwitch,
diff --git a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
index 89928f8..7b59c9e 100644
--- a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
+++ b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
@@ -178,6 +178,7 @@
break;
case SPK.AcIr:
case SPK.AcStandard:
+ case SPK.HvacAC:
var acPage = new AcControlPage();
acPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
break;
diff --git a/HDL_ON/UI/UI1-Login/LoginPage.cs b/HDL_ON/UI/UI1-Login/LoginPage.cs
index a04a9ae..a36b090 100644
--- a/HDL_ON/UI/UI1-Login/LoginPage.cs
+++ b/HDL_ON/UI/UI1-Login/LoginPage.cs
@@ -209,10 +209,10 @@
//etAccount.Text = "18022428438";//wjc
//etAccount.Text = "13602944661";//kx
etAccount.Text = "13226233133";//璞嗚眴
- //etAccount.Text = "18316672920";
+ etAccount.Text = "18316672920";
//etAccount.Text = "18316120654";//tujie
- etAccount.Text = "15626203746";
- etAccount.Text = "13450425807";//榛勭婧� knx椤圭洰
+ //etAccount.Text = "15626203746";
+ //etAccount.Text = "13450425807";//榛勭婧� knx椤圭洰
}
else
{
@@ -232,7 +232,9 @@
//etAccount.Text = "18598273624";
//etAccount.Text = "tf@smarttech.com.ua";
//etAccount.Text = "18814122445";//钁f辰鏂� 澶╂渤鍔炲叕瀹�
- //etAccount.Text = "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568
+ //etAccount.Text = "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568
+ etAccount.Text = "18402017839";//wjc
+ //etAccount.Text = "13430286286";//cwc
}
b = !b;
etPassword.Text = "123456";
@@ -668,7 +670,7 @@
{
new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" },
new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" },
- new FunctionAttributes() { key = "cct",value =new List<string>(){ "0","65535" }, curValue="0",state = "0" },
+ new FunctionAttributes() { key = "cct",value =new List<string>(){ "0","65535" }, curValue="0",state = "0" ,min = 2700,max = 6500 },
new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" },
new FunctionAttributes() { key = "delay",value =new List<string>(){ "0","100" }, curValue="0",state = "0" },
},
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index c639ccd..e936a60 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -551,25 +551,25 @@
#if DEBUG
- FunctionList.List.Functions.Add(new Function()
- {
- spk = SPK.SensorDryContact,
- name = "骞叉帴鐐�",
- attributes = new List<FunctionAttributes>()
- {
- new FunctionAttributes(){ key = "status",curValue= "on",state = "on" },
- },
- });
+ //FunctionList.List.Functions.Add(new Function()
+ //{
+ // spk = SPK.SensorDryContact,
+ // name = "骞叉帴鐐�",
+ // attributes = new List<FunctionAttributes>()
+ // {
+ // new FunctionAttributes(){ key = "status",curValue= "on",state = "on" },
+ // },
+ //});
- FunctionList.List.Functions.Add(new Function()
- {
- spk = SPK.AirSwitch,
- name = "鏅鸿兘绌哄紑",
- attributes = new List<FunctionAttributes>()
- {
- new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
- },
- });
+ //FunctionList.List.Functions.Add(new Function()
+ //{
+ // spk = SPK.AirSwitch,
+ // name = "鏅鸿兘绌哄紑",
+ // attributes = new List<FunctionAttributes>()
+ // {
+ // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
+ // },
+ //});
//FunctionList.List.Functions.Add(new Function()
//{
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs
index d60cf22..f274fbb 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs
@@ -89,6 +89,36 @@
};
textView.AddChidren(editText);
+ string pairString = "";
+ if (integratedDevice.spk == SPK.SensorEnvironment2)
+ {
+ //璇疯緭鍏ヨ澶囨満涓婄殑閰嶅鐮�
+ var pairView = new FrameLayout()
+ {
+ Y = Application.GetRealHeight(309),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(319),
+ Height = Application.GetRealHeight(44),
+ };
+ bodyFrameLayout.AddChidren(pairView);
+ pairView.AddChidren(new Button() { Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS.CSS_Color.DividingLineColor });
+
+ EditText pairText = new EditText()
+ {
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS.CSS_Color.FirstLevelTitleColor,
+ PlaceholderText = Language.StringByID(StringId.PlsEntryPairCode),
+ PlaceholderTextColor = CSS.CSS_Color.PromptingColor1,
+ TextSize = CSS.CSS_FontSize.TextFontSize,
+ };
+ pairView.AddChidren(pairText);
+
+ pairText.TextChangeEventHandler = (sender, e) => {
+ pairString = e;
+ };
+ }
+
+
if (integratedDevice.spk == SPK.SensorEnvironment2 || integratedDevice.spk == SPK.SensorEnvironment3)
{
editText.PlaceholderText = Language.StringByID(StringId.PlsEntryMacCode);
@@ -130,7 +160,7 @@
try
{
var pm = new HttpServerRequest();
- var pack = pm.IndependentRegister3TyDevcie(integratedDevice.spk, snCode, Language.StringByID(StringId.SensorEnvironment));
+ var pack = pm.IndependentRegister3TyDevcie(integratedDevice.spk, snCode,integratedDevice.productName,pairString);// Language.StringByID(StringId.SensorEnvironment)
if (pack.Code == StateCode.SUCCESS)
{
//var revData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<IntegratedBrandDevice>>(pack.Data.ToString());
diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
index 8ad7ace..ab536d6 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
@@ -726,19 +726,19 @@
{
var btn = new Button()
- {
- Gravity = Gravity.CenterVertical,
- Width = Application.GetRealWidth(88),
- Height = Application.GetRealHeight(40),
- Radius = (uint)Application.GetRealHeight(18),
- BorderColor = CSS_Color.PromptingColor1,
- BorderWidth = (uint)Application.GetRealWidth(2),
- TextAlignment = TextAlignment.Center,
- TextSize = CSS_FontSize.TextFontSize,
- TextColor = CSS_Color.FirstLevelTitleColor,
- SelectedTextColor = CSS_Color.MainBackgroundColor,
- SelectedBackgroundColor = CSS_Color.MainColor,
- };
+ {
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetRealWidth(88),
+ Height = Application.GetRealHeight(40),
+ Radius = (uint)Application.GetRealHeight(18),
+ BorderColor = CSS_Color.PromptingColor1,
+ BorderWidth = (uint)Application.GetRealWidth(2),
+ TextAlignment = TextAlignment.Center,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ SelectedTextColor = CSS_Color.MainBackgroundColor,
+ SelectedBackgroundColor = CSS_Color.MainColor,
+ };
if (attr.value.Count > 0)
{
btn.Text = attr.value[0];
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
index ded7468..969d913 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
@@ -163,12 +163,35 @@
input = new SecurityInput();
input.sid = function.sid;
+ var inKey = "status";
+ var inValue = "true";
+ switch(function.spk)
+ {
+ case SPK.SensorWater:
+ inKey = "";
+ break;
+ case SPK.SensorPir:
+ inKey = "people_status";
+ break;
+ case SPK.SensorSmoke:
+ inKey = "alarm_status";
+ inValue = "alarm";
+ break;
+ case SPK.SensorGas:
+ inKey = "alarm_status";
+ inValue = "alarm";
+ break;
+ case SPK.SensorDoorWindow:
+ inKey = "contact_status";
+ inValue = "open";
+ break;
+ }
input.condition = new List<SecurityInputCondition>()
{
new SecurityInputCondition()
{
- key = "status",
- value = "true",
+ key = inKey,
+ value = inValue,
}
};
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs
index 2b28caf..1b067fc 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs
@@ -72,6 +72,7 @@
SelectedTextColor = CSS_Color.AuxiliaryColor2,
};
FrameWhiteCentet1.AddChidren(btnSuctionView);
+ RefreshFormStatu();
}
/// <summary>
@@ -115,24 +116,35 @@
/// </summary>
private void RefreshFormStatu()
{
- Application.RunOnMainThread(() => {
+
+ Application.RunOnMainThread(() =>
+ {
var temp = device.attributes.Find((sta) => sta.key == FunctionAttributeKey.Status);
+ if (temp == null)
+ {
+ temp = device.attributes.Find((sta) => sta.key == FunctionAttributeKey.AlarmStatus);
+ }
if (temp != null)
{
if (temp.state == "alarm")
{
- btnIcon.IsSelected = true;
+ btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorSmokeStateBgIconOn.png";
btnSuctionView.TextID = StringId.InAlarm;
btnSuctionView.IsSelected = true;
}
- else
+ else if (temp.state == "normal")
{
- btnIcon.IsSelected = false;
+ btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorSmokeStateBgIcon.png";
btnSuctionView.TextID = StringId.SensorNormalState;
btnSuctionView.IsSelected = false;
}
}
});
+
+
+
+
+
}
#endregion
diff --git a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
index 1ee72b4..9a624ea 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
@@ -803,6 +803,9 @@
case "tvoc":
newTemp.spk = SPK.SensorTVOC;
break;
+ case "hcho":
+ newTemp.spk = SPK.SensorHcho;
+ break;
}
if(!string.IsNullOrEmpty(newTemp.spk))
{
@@ -828,10 +831,36 @@
{
if (btn.Tag != null)
{
+ FunctionAttributes attr = updateTemp.GetAttribute(FunctionAttributeKey.Value);
+ if(attr == null)
+ {
+ switch(updateTemp.spk)
+ {
+ case SPK.SensorCO2:
+ attr = updateTemp.GetAttribute(FunctionAttributeKey.Co2);
+ break;
+ case SPK.SensorTemperature:
+ attr = updateTemp.GetAttribute(FunctionAttributeKey.Temperature);
+ break;
+ case SPK.SensorTVOC:
+ attr = updateTemp.GetAttribute(FunctionAttributeKey.Tvoc);
+ break;
+ case SPK.SensorPm25:
+ attr = updateTemp.GetAttribute(FunctionAttributeKey.Pm25);
+ break;
+ case SPK.SensorHcho:
+ attr = updateTemp.GetAttribute(FunctionAttributeKey.Hcho);
+ break;
+ case SPK.SensorHumidity:
+ attr = updateTemp.GetAttribute(FunctionAttributeKey.Humidity);
+ break;
+ }
+ }
+
var tag = btn.Tag.ToString();
if (tag == "SensorValues")
{
- (btn as Button).Text = updateTemp.GetAttrState(FunctionAttributeKey.Value);
+ (btn as Button).Text = attr.state;// updateTemp.GetAttrState(FunctionAttributeKey.Value);
}
else if (tag == "SensorLevel")
{
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs
index 5e0b71e..2c3be59 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs
@@ -173,6 +173,16 @@
controlView.AddChidren(btnBrightnessText);
#region 鑹叉俯
+ var cctAttr = function.GetAttribute(FunctionAttributeKey.CCT);
+ if(cctAttr.min == 0)
+ {
+ cctAttr.min = 2700;
+ }
+ if(cctAttr.max == 0)
+ {
+ cctAttr.max = 6500;
+ }
+
//鑹叉俯
var btnTempClolor = new Button();
btnTempClolor.X = Application.GetRealWidth(35);
@@ -185,12 +195,13 @@
btnTempClolor.TextID = StringId.ColorTemperature;
controlView.AddChidren(btnTempClolor);
+
//2700K
var btnTempClolorMin = new Button();
btnTempClolorMin.Y = btnTempClolor.Bottom + Application.GetRealHeight(9);
btnTempClolorMin.Width = Application.GetRealWidth(54);
btnTempClolorMin.Height = Application.GetRealHeight(21);
- btnTempClolorMin.Text = "2700K";
+ btnTempClolorMin.Text = cctAttr.min + "K";
btnTempClolorMin.TextAlignment = TextAlignment.CenterRight;
btnTempClolorMin.TextColor = CSS_Color.PromptingColor1;
btnTempClolorMin.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
@@ -208,8 +219,8 @@
barColorTemplatrue = new CCTSeekBarControl();
barColorTemplatrue.X = btnTempClolorMin.Right;
barColorTemplatrue.Y = Application.GetRealHeight(340);
- barColorTemplatrue.MinValue = 27;
- barColorTemplatrue.MaxValue = 65;
+ barColorTemplatrue.MinValue = cctAttr.min /100;
+ barColorTemplatrue.MaxValue = cctAttr.max / 100;
barColorTemplatrue.ProgressBarColor = 0x00000000;//鍏ㄩ儴閫忔槑
barColorTemplatrue.ProgressBarUnEnableColor = 0x00000000;
barColorTemplatrue.SeekBarBackgroundColor = 0x00000000;
@@ -232,7 +243,7 @@
btnTempClolorMax.X = barColorTemplatrue.Right;
btnTempClolorMax.Width = Application.GetRealWidth(54);
btnTempClolorMax.Height = Application.GetRealHeight(21);
- btnTempClolorMax.Text = "6500K";
+ btnTempClolorMax.Text = cctAttr.max + "K";
btnTempClolorMax.TextAlignment = TextAlignment.CenterLeft;
btnTempClolorMax.TextColor = CSS_Color.PromptingColor1;
btnTempClolorMax.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
--
Gitblit v1.8.0