From 2fb0c39b09110be4f5a88a8c8004f03fc257f612 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期三, 06 一月 2021 11:11:53 +0800
Subject: [PATCH] 2021-1-6-1
---
ZigbeeApp/Shared/Phone/Device/Logic/LogicIfon.cs | 63 +++++-
ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml | 25 +-
ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide | 0
ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs | 4
ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs | 103 -----------
ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs | 306 +++++++++++++++++++++++++--------
6 files changed, 292 insertions(+), 209 deletions(-)
diff --git a/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml b/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
index 5f107fb..42e7f3b 100644
--- a/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
+++ b/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
@@ -1,17 +1,16 @@
锘�<Properties StartupConfiguration="{28EDE1FF-20EF-476B-8AF8-24A3EEB69F45}|Default">
<MonoDevelop.Ide.ItemProperties.GateWay.Droid PreferredExecutionTarget="Android.4b65c4650918" />
<MonoDevelop.Ide.ItemProperties.ShardLib PreferredExecutionTarget="Android.4b65c4650918" />
- <MonoDevelop.Ide.Workbench ActiveDocument="Shared/Phone/Device/Logic/LogicDveiceStatus.cs">
+ <MonoDevelop.Ide.Workbench ActiveDocument="Shared/Phone/Device/Logic/PublicInterface.cs">
<Files>
- <File FileName="Home.Ios/Resources/Language.ini" Line="659" Column="10" IsPinned="True" />
- <File FileName="Shared/Phone/Device/Logic/LogicDveiceStatus.cs" Line="1196" Column="86" />
- <File FileName="Shared/Phone/Device/Logic/PublicInterface.cs" Line="549" Column="26" />
- <File FileName="Shared/Phone/Device/Logic/LogicCommunalPage.cs" Line="99" Column="13" />
- <File FileName="Shared/Phone/Device/Logic/CurrentDeviceState.cs" Line="1346" Column="34" />
- <File FileName="Shared/Phone/Device/Logic/DelayTime.cs" Line="23" Column="1" />
- <File FileName="Shared/Phone/Device/Logic/DelayTime.cs" Line="23" Column="1" />
- <File FileName="Shared/Phone/Device/Logic/DeviceTarget.cs" Line="119" Column="30" />
- <File FileName="Shared/Common/Logic.cs" Line="66" Column="21" />
+ <File FileName="Shared/Phone/Device/Logic/LogicDveiceStatus.cs" Line="1184" Column="80" />
+ <File FileName="Shared/Phone/Device/Logic/CurrentDeviceState.cs" Line="1538" Column="29" />
+ <File FileName="Shared/Phone/Device/Logic/MemberList.cs" Line="21" Column="21" />
+ <File FileName="Shared/Phone/Device/Logic/SoneLogicList.cs" Line="702" Column="44" />
+ <File FileName="Shared/Phone/Device/Logic/OneLogic.cs" Line="435" Column="41" />
+ <File FileName="Shared/Phone/Device/Logic/LogicIfon.cs" Line="17" Column="1" />
+ <File FileName="Shared/Phone/Device/Logic/PublicInterface.cs" Line="290" Column="1" />
+ <File FileName="Shared/Phone/Device/Logic/PublicInterface.cs" Line="290" Column="1" />
</Files>
<Pads>
<Pad Id="ProjectPad">
@@ -31,7 +30,7 @@
<Node name="Device" expanded="True">
<Node name="Logic" expanded="True">
<Node name="LogicView" expanded="True" />
- <Node name="LogicDveiceStatus.cs" selected="True" />
+ <Node name="PublicInterface.cs" selected="True" />
</Node>
</Node>
</Node>
@@ -44,7 +43,9 @@
<MonoDevelop.Ide.DebuggingService.PinnedWatches />
<MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" />
<MonoDevelop.Ide.DebuggingService.Breakpoints>
- <BreakpointStore />
+ <BreakpointStore>
+ <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Shared/Phone/Device/Logic/LogicIfon.cs" relfile="Shared/Phone/Device/Logic/LogicIfon.cs" line="17" column="1" />
+ </BreakpointStore>
</MonoDevelop.Ide.DebuggingService.Breakpoints>
<MultiItemStartupConfigurations />
</Properties>
\ No newline at end of file
diff --git a/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide b/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide
index 2dda6cc..1aa8b08 100644
--- a/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide
+++ b/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide
Binary files differ
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
index c831fc1..f3e6269 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
@@ -564,9 +564,9 @@
var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { common });
//绌烘皵璐ㄩ噺浼犳劅鍣�
- if (deviceEnumInfo.ConcreteType != Common.DeviceConcreteType.AirQualitySensor)
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
{
- AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ AirSonser(flMain, SelectedDeviceStatus, edit, common, devices);
}
else
{
@@ -1328,25 +1328,144 @@
}
}
-
- private static void AirSonser(FrameLayout flMain,string SelectedDeviceStatus,bool edit,CommonDevice common) {
+ /// <summary>
+ /// 绌烘皵璐ㄩ噺浼犳劅鍣╒iew(鐗规畩澶勭悊)
+ /// </summary>
+ /// <param name="flMain"></param>
+ /// <param name="SelectedDeviceStatus"></param>
+ /// <param name="edit"></param>
+ /// <param name="common"></param>
+ /// <param name="dic"></param>
+ private static void AirSonser(FrameLayout flMain,string SelectedDeviceStatus,bool edit,CommonDevice common, Dictionary<string, string> dic=null) {
flMain.RemoveAll();
- PublicInterface publicInterface = new PublicInterface();
- var list0 = publicInterface.GetViewList("绌烘皵璐ㄩ噺浼犳劅鍣�");
- publicInterface.SingleSelectionShow(flMain, list0, MyInternationalizationString.airqualitysensor, "", (tagText) =>
+ if (edit&&dic!=null) {
+ AirProperty(flMain, dic, common,"", edit, SelectedDeviceStatus);
+ }
+ else
{
- flMain.RemoveAll();
- SelectedDeviceStatus = "TemperatureSensor";
+ PublicInterface publicInterface = new PublicInterface();
+ var list0 = publicInterface.GetViewList("绌烘皵璐ㄩ噺浼犳劅鍣�");
+ publicInterface.SingleSelectionShow(flMain, list0, MyInternationalizationString.airqualitysensor, "", (tagText) =>
+ {
+ flMain.RemoveAll();
+ SelectedDeviceStatus = "TemperatureSensor";
+ AirProperty(flMain, dic, common,tagText, edit, SelectedDeviceStatus);
+ }, () => { flMain.RemoveFromParent(); });
+ }
+ }
+ /// <summary>
+ /// 绌烘皵璐ㄩ噺浼犳劅鍣ㄥ睘鎬у��(鐗规畩澶勭悊)
+ /// </summary>
+ /// <param name="flMain"></param>
+ /// <param name="dic"></param>
+ /// <param name="common"></param>
+ /// <param name="tagText"></param>
+ /// <param name="edit"></param>
+ /// <param name="SelectedDeviceStatus"></param>
+ private static void AirProperty(FrameLayout flMain, Dictionary<string, string> dic,CommonDevice common,string tagText,bool edit, string SelectedDeviceStatus) {
+ PublicInterface publicInterface = new PublicInterface();
+ string range = "";
+ string stateText = "";
+ if (edit&& dic!=null)
+ {
+ range = dic["Range"];
+ switch (dic["Cluster_ID"])
+ {
+ case "1066":
+ {
+ if (dic["AttriButeId"] == "57344")
+ {
+ tagText = Language.StringByID(MyInternationalizationString.kongqizhiliang);
+ switch (dic["AttriButeData1"])
+ {
+
+ case "1":
+ {
+ stateText = Language.StringByID(MyInternationalizationString.you);
+ }
+ break;
+ case "2":
+ {
+ stateText = Language.StringByID(MyInternationalizationString.liang);
+ }
+ break;
+ case "3":
+ {
+ stateText = Language.StringByID(MyInternationalizationString.cha);
+ }
+ break;
+ }
+ }
+ else
+ {
+ tagText = Language.StringByID(MyInternationalizationString.pm25);
+ ///Pm2.5
+ int intValue = int.Parse(dic["AttriButeData1"]);
+ if (0 < intValue && intValue < 30)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.pmyou);
+ }
+ else if (36 < intValue && intValue < 75)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.pmliang);
+ }
+ else if (76 < intValue && intValue < 115)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.pmqingdu);
+ }
+ else if (intValue > 115)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.pmzhongdu);
+ }
+
+ }
+ }
+ break;
+ case "1037":
+ {
+ tagText = Language.StringByID(MyInternationalizationString.co2);
+ ///co2
+ int intValue = int.Parse(dic["AttriButeData1"]);
+ if (0 < intValue && intValue < 1000)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.co2qingxin);
+ }
+ else if (1000 < intValue && intValue < 2000)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.co2huizhuo);
+ }
+ else if (2000 < intValue && intValue < 5000)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.co2queyang);
+ }
+ else if (intValue > 5000)
+ {
+ stateText = Language.StringByID(MyInternationalizationString.co2yanzhongqueyang);
+ }
+ }
+ break;
+ case "1026":
+ {
+ tagText = Language.StringByID(MyInternationalizationString.sensortemperature);
+ stateText = dic["AttriButeData1"];
+ }
+ break;
+ case "1029":
+ {
+ tagText = Language.StringByID(MyInternationalizationString.sensorhumidity);
+ stateText = dic["AttriButeData1"];
+ }
+ break;
+ }
+ }
Dictionary<string, string> airqualitysensorDic = new Dictionary<string, string>();
Send.dictionary(airqualitysensorDic, "Type", "1");
Send.dictionary(airqualitysensorDic, "IsValid", "1");
Send.dictionary(airqualitysensorDic, "MacAddr", common.DeviceAddr);
Send.dictionary(airqualitysensorDic, "Epoint", common.DeviceEpoint.ToString());
- //缂栬緫鏃剁殑鐘舵�佸��
- string stateText = "";
- if (tagText == Language.StringByID(MyInternationalizationString.kongqizhiliang))
+ if (tagText == Language.StringByID(MyInternationalizationString.kongqizhiliang))
{
-
+
var list1 = publicInterface.GetViewList("绌烘皵璐ㄩ噺");
publicInterface.SingleSelectionShow(flMain, list1, MyInternationalizationString.airqualitysensor, stateText, (strText) =>
{
@@ -1372,86 +1491,103 @@
AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
- }, () =>{ AirSonser(flMain, SelectedDeviceStatus, edit, common); });
+ }, () => {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ } });
}
else if (tagText == Language.StringByID(MyInternationalizationString.pm25))
{
- var list2= publicInterface.GetViewList("pm2.5");
- publicInterface.SingleSelectionShow(flMain, list2, MyInternationalizationString.pm25, stateText, (strText) =>
+ var list2 = publicInterface.GetViewList("pm2.5");
+ publicInterface.SingleSelectionShow(flMain, list2, MyInternationalizationString.pm25, stateText, (strText) =>
+ {
+ SelectedDeviceStatus = "TemperatureSensor";
+ string valuaStr = "";
+ if (strText == Language.StringByID(MyInternationalizationString.pmyou))
{
- SelectedDeviceStatus = "TemperatureSensor";
- string valuaStr = "";
- if (strText == Language.StringByID(MyInternationalizationString.pmyou))
- {
- valuaStr = "18";
- }
- else if (strText == Language.StringByID(MyInternationalizationString.pmliang))
- {
- valuaStr = "54";
- }
- else if (strText == Language.StringByID(MyInternationalizationString.pmqingdu))
- {
- valuaStr = "105";
- }
- else if (strText == Language.StringByID(MyInternationalizationString.pmzhongdu))
- {
- valuaStr = "130";
- }
- Send.dictionary(airqualitysensorDic, "Cluster_ID", "1066");
- Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
- Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
- Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
- Send.dictionary(airqualitysensorDic, "Range", "1");
- AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+ valuaStr = "18";
+ }
+ else if (strText == Language.StringByID(MyInternationalizationString.pmliang))
+ {
+ valuaStr = "54";
+ }
+ else if (strText == Language.StringByID(MyInternationalizationString.pmqingdu))
+ {
+ valuaStr = "105";
+ }
+ else if (strText == Language.StringByID(MyInternationalizationString.pmzhongdu))
+ {
+ valuaStr = "130";
+ }
+ Send.dictionary(airqualitysensorDic, "Cluster_ID", "1066");
+ Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
+ Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
+ Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+ Send.dictionary(airqualitysensorDic, "Range", "1");
+ AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
- }, () => {AirSonser(flMain, SelectedDeviceStatus, edit, common); });
+ }, () => {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
+ });
}
else if (tagText == Language.StringByID(MyInternationalizationString.co2))
{
- var list2 = publicInterface.GetViewList("co2");
- publicInterface.SingleSelectionShow(flMain, list2, MyInternationalizationString.co2, stateText, (strText) =>
+ var list2 = publicInterface.GetViewList("co2");
+ publicInterface.SingleSelectionShow(flMain, list2, MyInternationalizationString.co2, stateText, (strText) =>
+ {
+ SelectedDeviceStatus = "TemperatureSensor";
+ string valuaStr = "";
+ if (strText == Language.StringByID(MyInternationalizationString.co2qingxin))
{
- SelectedDeviceStatus = "TemperatureSensor";
- string valuaStr = "";
- if (strText == Language.StringByID(MyInternationalizationString.co2qingxin))
- {
- valuaStr = "500";
- }
- else if (strText == Language.StringByID(MyInternationalizationString.co2huizhuo))
- {
- valuaStr = "1000";
- }
- else if (strText == Language.StringByID(MyInternationalizationString.co2queyang))
- {
- valuaStr = "2500";
- }
- else if (strText == Language.StringByID(MyInternationalizationString.co2yanzhongqueyang))
- {
- valuaStr = "5500";
- }
- Send.dictionary(airqualitysensorDic, "Cluster_ID", "1037");
- Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
- Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
- Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
- Send.dictionary(airqualitysensorDic, "Range", "1");
- AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+ valuaStr = "500";
+ }
+ else if (strText == Language.StringByID(MyInternationalizationString.co2huizhuo))
+ {
+ valuaStr = "1500";
+ }
+ else if (strText == Language.StringByID(MyInternationalizationString.co2queyang))
+ {
+ valuaStr = "2500";
+ }
+ else if (strText == Language.StringByID(MyInternationalizationString.co2yanzhongqueyang))
+ {
+ valuaStr = "5500";
+ }
+ Send.dictionary(airqualitysensorDic, "Cluster_ID", "1037");
+ Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
+ Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
+ Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+ Send.dictionary(airqualitysensorDic, "Range", "1");
+ AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
- }, () => { AirSonser(flMain, SelectedDeviceStatus, edit, common); });
+ }, () => {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
+ });
-
+
}
else if (tagText == Language.StringByID(MyInternationalizationString.sensortemperature))
{
//缂栬緫鏃剁殑鐘舵�佸��
- string str1 = "";
- string str2 = "";
- publicInterface.TemperatureShow1(flMain, tagText, "鈩�", str2, str1, (relationValueStr, tempValueStr) =>
+ string str1 = range;
+ string str2 = stateText;
+ publicInterface.TemperatureShow1(flMain, tagText, "鈩�", str1, str2, (relationValueStr, tempValueStr) =>
{
SelectedDeviceStatus = "TemperatureSensor";
@@ -1465,16 +1601,20 @@
}, () =>
{
- AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
});
}
else if (tagText == Language.StringByID(MyInternationalizationString.sensorhumidity))
{
//缂栬緫鏃剁殑鐘舵�佸��
- string str1 = "";
- string str2 = "";
- publicInterface.TemperatureShow1(flMain, tagText, "%", str2, str1, (relationValueStr, tempValueStr) =>
+ string str1 = range;
+ string str2 = stateText;
+ publicInterface.TemperatureShow1(flMain, tagText, "%", str1, str2, (relationValueStr, tempValueStr) =>
{
SelectedDeviceStatus = "TemperatureSensor";
Send.dictionary(airqualitysensorDic, "Cluster_ID", "1029");
@@ -1483,19 +1623,25 @@
Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
Send.dictionary(airqualitysensorDic, "Range", relationValueStr);
AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
- }, () => { AirSonser(flMain, SelectedDeviceStatus, edit, common);});
+ }, () => {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
+ });
}
- }, () => { flMain.RemoveFromParent(); });
+
}
/// <summary>
- /// 绌烘皵璐ㄩ噺浼犳劅鍣�
+ /// 绌烘皵璐ㄩ噺浼犳劅鍣�(鐗规畩澶勭悊)
/// </summary>
/// <param name="flMain"></param>
/// <param name="SelectedDeviceStatus"></param>
/// <param name="edit"></param>
/// <param name="common"></param>
/// <param name="dic"></param>
- private static void AddDic(FrameLayout flMain, string SelectedDeviceStatus, bool edit, CommonDevice common, Dictionary<string, string> dic)
+ private static void AddDic(FrameLayout flMain, string SelectedDeviceStatus, bool edit, CommonDevice common, Dictionary<string, string> dic )
{
UserView.HomePage.Instance.ScrollEnabled = true;
if (SelectedDeviceStatus != "")
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs b/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs
index 3916282..ca0c158 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs
@@ -599,7 +599,7 @@
UserView.HomePage.Instance.AddChidren(timePoint);
UserView.HomePage.Instance.PageIndex += 1;
timePoint.IsEditor = true;
- timePoint.Show(conditions);
+ timePoint.Show(dic);
}
break;
case 5:
@@ -627,7 +627,7 @@
UserView.HomePage.Instance.AddChidren(memberList);
UserView.HomePage.Instance.PageIndex += 1;
MemberList.edit = true;
- memberList.Show(deviceinof, conditions);
+ memberList.Show(deviceinof, dic);
}
}
break;
@@ -1314,103 +1314,6 @@
}
- public void dddd(FrameLayout flMain,string MacAddr,string Epoint) {
-
- //Dictionary<string, string> airqualitysensorDic = new Dictionary<string, string>();
- //Send.dictionary(airqualitysensorDic, "Type", "1");
- //Send.dictionary(airqualitysensorDic, "IsValid", "1");
- //Send.dictionary(airqualitysensorDic, "MacAddr", MacAddr);
- //Send.dictionary(airqualitysensorDic, "Epoint", Epoint);
-
- //string tagText ="";
- //string SelectedDeviceStatus = "";
- //if (tagText == Language.StringByID(MyInternationalizationString.airqualitysensor))
- //{
- // string stateText = "";
- // PublicInterface publicInterface = new PublicInterface();
- // var list1 = publicInterface.GetViewList("绌烘皵璐ㄩ噺");
- // publicInterface.SingleSelectionShow(flMain, list1, MyInternationalizationString.airqualitysensor, stateText, (strText) =>
- // {
- // SelectedDeviceStatus = "TemperatureSensor";
- // string valuaStr = "";
- // if (strText == Language.StringByID(MyInternationalizationString.you))
- // {
- // valuaStr = "1";
- // }
- // else if (strText == Language.StringByID(MyInternationalizationString.liang))
- // {
- // valuaStr = "2";
- // }
- // else if (strText == Language.StringByID(MyInternationalizationString.cha))
- // {
- // valuaStr = "3";
- // }
- // Send.dictionary(airqualitysensorDic, "Cluster_ID", "1066");
- // Send.dictionary(airqualitysensorDic, "AttriButeId", "57344");
- // Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
- // Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
- // Send.dictionary(airqualitysensorDic, "Range", "1");
- // AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
-
-
- // }, () => { });
-
- //}
- //else if (tagText == Language.StringByID(MyInternationalizationString.pm25))
- //{
- // //缂栬緫鏃剁殑鐘舵�佸��
- // string str1 = "";
- // string str2 = "";
- // PublicInterface publicInterface = new PublicInterface();
- // publicInterface.TemperatureShow1(flMain, tagText, "鈩�", str2, str1, (relationValueStr, tempValueStr) =>
- // {
- // SelectedDeviceStatus = "TemperatureSensor";
- // Send.dictionary(airqualitysensorDic, "Cluster_ID", "1066");
- // Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
- // Send.dictionary(airqualitysensorDic, "AttriButeData1", tempValueStr);
- // Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
- // Send.dictionary(airqualitysensorDic, "Range", relationValueStr);
- // AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
- // }, () => { });
-
- //}
- //else if (tagText == Language.StringByID(MyInternationalizationString.sensortemperature))
- //{
- // //缂栬緫鏃剁殑鐘舵�佸��
- // string str1 = "";
- // string str2 = "";
- // PublicInterface publicInterface = new PublicInterface();
- // publicInterface.TemperatureShow1(flMain, tagText, "鈩�", str2, str1, (relationValueStr, tempValueStr) =>
- // {
-
- // SelectedDeviceStatus = "TemperatureSensor";
- // Send.dictionary(airqualitysensorDic, "Cluster_ID", "1026");
- // Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
- // Send.dictionary(airqualitysensorDic, "AttriButeData1", tempValueStr);
- // Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
- // Send.dictionary(airqualitysensorDic, "Range", relationValueStr);
- // AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
-
-
- // }, () => { });
- //}
- //else if (tagText == Language.StringByID(MyInternationalizationString.sensorhumidity))
- //{
- // //缂栬緫鏃剁殑鐘舵�佸��
- // string str1 = "";
- // string str2 = "";
- // PublicInterface publicInterface = new PublicInterface();
- // publicInterface.TemperatureShow1(flMain, tagText, "%", str2, str1, (relationValueStr, tempValueStr) =>
- // {
- // SelectedDeviceStatus = "TemperatureSensor";
- // Send.dictionary(airqualitysensorDic, "Cluster_ID", "1029");
- // Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
- // Send.dictionary(airqualitysensorDic, "AttriButeData1", tempValueStr);
- // Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
- // Send.dictionary(airqualitysensorDic, "Range", relationValueStr);
- // AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
- // }, () => { });
- //}
- }
+
}
}
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/LogicIfon.cs b/ZigbeeApp/Shared/Phone/Device/Logic/LogicIfon.cs
old mode 100755
new mode 100644
index 9725229..4ae3a2a
--- a/ZigbeeApp/Shared/Phone/Device/Logic/LogicIfon.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/LogicIfon.cs
@@ -13,7 +13,7 @@
/// </summary>
/// <param name="common">Common.</param>
/// <param name="objecttype">Objecttype.</param>
- public static void AddDeviceconditions(CommonDevice common, Dictionary<string, string> objecttype)
+ public static void AddDeviceconditions(CommonDevice common, Dictionary<string, string> objecttype)
{
for (int i = 0; i < Common.Logic.CurrentLogic.Conditions.Count; i++)
{
@@ -21,25 +21,55 @@
{
if ((Common.Logic.CurrentLogic.Conditions[i]["MacAddr"] == common.DeviceAddr) && (Common.Logic.CurrentLogic.Conditions[i]["Epoint"] == common.DeviceEpoint.ToString()))
{
- if (common.Type == DeviceType.TemperatureSensor)//璁惧娓╁害浼犳劅鍣ㄦ湁鐐圭壒鍒�
+ if (common.Type == DeviceType.TemperatureSensor)
{
- var dev = common as TemperatureSensor;
- string str = "";
- if (dev.SensorDiv == 1)
+
+ //鑾峰彇璁惧绫诲瀷
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { common });
+
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
{
- str = "1026";
+ var cluster_ID1 = Common.Logic.CurrentLogic.Conditions[i]["Cluster_ID"];
+ var attriButeId1 = Common.Logic.CurrentLogic.Conditions[i]["AttriButeId"];
+ var cluster_ID2 = objecttype["Cluster_ID"];
+ var attriButeId2 = objecttype["AttriButeId"];
+
+ bool cluster_ID = false;
+ if (cluster_ID1 == cluster_ID2 && attriButeId1 == attriButeId2)
+ {
+ cluster_ID = true;
+ }
+
+ if (cluster_ID)
+ {
+ //宸茬粡瀛樺湪绉婚櫎鍐嶉噸鏂版坊鍔�
+ Common.Logic.CurrentLogic.Conditions.RemoveAt(i);
+ Common.Logic.CurrentLogic.Conditions.Insert(i, objecttype);
+ return;
+ }
}
else
{
- str = "1029";
- }
- if (Common.Logic.CurrentLogic.Conditions[i]["Cluster_ID"] == str)
- {
- Common.Logic.CurrentLogic.Conditions.RemoveAt(i);
- Common.Logic.CurrentLogic.Conditions.Insert(i, objecttype);
- return;
- }
+ //璁惧娓╁害浼犳劅鍣�
+ var dev = common as TemperatureSensor;
+ string str = "";
+ if (dev.SensorDiv == 1)
+ {
+ str = "1026";
+ }
+ else
+ {
+ str = "1029";
+ }
+ if (Common.Logic.CurrentLogic.Conditions[i]["Cluster_ID"] == str)
+ {
+ Common.Logic.CurrentLogic.Conditions.RemoveAt(i);
+ Common.Logic.CurrentLogic.Conditions.Insert(i, objecttype);
+ return;
+ }
+ }
}
else if (common.Type == DeviceType.IASZone)
{
@@ -75,7 +105,7 @@
/// <summary>
/// 娣诲姞Logic鏉′欢鐨勬柟娉�
/// </summary>
- /// <param name="common">Common.</param>
+ /// <param name="logic">Common.</param>
/// <param name="objecttype">Objecttype.</param>
public static void AddLogicconditions(Common.Logic logic, Dictionary<string, string> objecttype)
{
@@ -264,6 +294,9 @@
Common.Logic.CurrentLogic.Accounts.Add(accountsInfo);
}
#endregion
+
+
+
}
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs b/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs
index 32fa9c5..a92ebfc 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs
@@ -201,7 +201,7 @@
/// </summary>
/// <param name="frame">鏄剧ず鍦ㄥ摢涓晫闈㈢殑鐖舵帶浠�</param>
/// <param name="symbol">绗﹀彿锛�%锛屸剝锛�</param>
- /// <param name="state1">涔嬪墠鐘舵��</param>
+ /// <param name="state1">涔嬪墠鐘舵��(姣旇緝绗﹀彿)</param>
/// <param name="state2">涔嬪墠鐘舵��</param>
/// <param name="action">杩斿洖鍊�</param>
public void TemperatureShow1(FrameLayout frame, string tlite,string symbol, string state1, string state2, Action<string, string> action, Action cancelAction)
@@ -519,7 +519,7 @@
case "绌烘皵璐ㄩ噺浼犳劅鍣�":
{
list = new List<string> {
- Language.StringByID(MyInternationalizationString.airqualitysensor),
+ Language.StringByID(MyInternationalizationString.kongqizhiliang),
Language.StringByID(MyInternationalizationString.pm25),
Language.StringByID(MyInternationalizationString.co2),
Language.StringByID(MyInternationalizationString.sensortemperature),
--
Gitblit v1.8.0