From cb7fd6a89ad9fcd9cf575025ab43873f17bf17c8 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期四, 31 十二月 2020 16:46:59 +0800
Subject: [PATCH] 2020-12-31-1
---
ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml | 16 -
ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide | 0
ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs | 344 ++++++++++++++++++++++++++++++++++++++
ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs | 172 ++++--------------
4 files changed, 388 insertions(+), 144 deletions(-)
diff --git a/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml b/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
index ebe9467..ed3e188 100644
--- a/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
+++ b/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
@@ -1,15 +1,12 @@
锘�<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="Shared/Phone/Device/Logic/LogicView/CompleteView.cs" Line="8" Column="18" />
- <File FileName="Shared/Phone/Device/Logic/TimePoint.cs" Line="477" Column="29" />
- <File FileName="Shared/Phone/Device/Logic/CurrentDeviceState.cs" Line="77" Column="23" />
- <File FileName="Shared/Phone/Device/Logic/LogicView/mFunView.cs" Line="46" Column="23" />
- <File FileName="Shared/Phone/Device/Logic/PublicInterface.cs" Line="135" Column="22" />
- <File FileName="Shared/Phone/Device/Logic/LogicDveiceStatus.cs" Line="1123" Column="36" />
- <File FileName="Shared/Phone/Device/Logic/LogicCommunalPage.cs" Line="213" Column="36" />
+ <File FileName="Shared/Phone/Device/Logic/TimePoint.cs" />
+ <File FileName="Shared/Phone/Device/Logic/Send.cs" />
+ <File FileName="Shared/Phone/Device/Logic/CurrentDeviceState.cs" Line="1251" Column="22" />
+ <File FileName="Shared/Phone/Device/Logic/PublicInterface.cs" Line="107" Column="52" />
</Files>
<Pads>
<Pad Id="ProjectPad">
@@ -22,8 +19,7 @@
<Node name="Phone" expanded="True">
<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>
diff --git a/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide b/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide
index 6d771df..e3c6dc7 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
old mode 100755
new mode 100644
index 2656bab..51f2bcd
--- a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
@@ -12,7 +12,7 @@
/// 閫変腑璇ヨ澶囧姛鑳戒綔涓烘潯浠舵垨鑰呯洰鏍囩殑瑙嗗浘鏂规硶
/// </summary>
/// <param name="common">Common.</param>
- public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str,int intValue)
+ public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str, int intValue)
{
#region -------鐣岄潰甯冨眬閮ㄥ垎
//涓嶈褰撳墠鐣岄潰婊戝姩
@@ -33,19 +33,14 @@
mFunView openView = new mFunView();
openView.frameLayout.Y = Application.GetRealHeight(140 + 20);
- //completeView.Show(l).AddChidren(openView.Show());
openView.titleBtn.TextID = MyInternationalizationString.open;
mFunView closeView = new mFunView();
- closeView.frameLayout.Y = Application.GetRealHeight(140 + 20+160);
- // closeView.frameLayout.Y = openView.frameLayout.Bottom;
- //completeView.Show(l).AddChidren(closeView.Show());
+ closeView.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160);
closeView.titleBtn.TextID = MyInternationalizationString.close;
mFunView takebackView = new mFunView();
- takebackView.frameLayout.Y = Application.GetRealHeight(140+20+160+160);
- // takebackView.frameLayout.Y = closeView.frameLayout.Bottom;
- //completeView.Show(l).AddChidren(takebackView.Show());
+ takebackView.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160 + 160);
takebackView.titleBtn.TextID = MyInternationalizationString.onoff;
takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
#region -------杩涘害鏉℃帶浠�
@@ -95,10 +90,10 @@
actionsInfo.Add("TaskList", taskListInfo);
List<Dictionary<string, string>> TaskList = null;
#endregion
- var _if=str.Split('_');
+ var _if = str.Split('_');
if (edit)
{
- if (_if[0]== "condition")
+ if (_if[0] == "condition")
{
var deviceinfo = Common.Logic.CurrentLogic.Conditions[intValue];
if (deviceinfo["Type"] == "1")
@@ -121,7 +116,7 @@
TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>;
}
}
-
+
}
}
#endregion
@@ -132,6 +127,7 @@
///鐏厜
case DeviceType.OnOffOutput:
{
+
if (_if[0] == "condition")
{
l = 2;
@@ -280,6 +276,8 @@
}
}
}
+
+
}
break;
case DeviceType.IASZone:
@@ -305,7 +303,7 @@
closeView.selectedIconBtn.Visible = false;
if (iASZonedevice.IasDeviceType == 13)
{
-
+
closeView.selectedIconBtn.Visible = true;
}
Send.dictionary(deviceConditionsInfo, "Range", "5");
@@ -321,7 +319,7 @@
closeView.selectedIconBtn.Visible = true;
Send.dictionary(deviceConditionsInfo, "Range", "8");//1
Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//0
- if (iASZonedevice.IasDeviceType == 13|| iASZonedevice.IasDeviceType == 541)
+ if (iASZonedevice.IasDeviceType == 13 || iASZonedevice.IasDeviceType == 541)
{
SelectedDeviceStatus = "";
closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
@@ -490,13 +488,13 @@
{
if (devices["AttriButeId"] == "1281")
{
- if (devices.ContainsKey("IgnoreTime")&& devices["IgnoreTime"]!="0")
+ if (devices.ContainsKey("IgnoreTime") && devices["IgnoreTime"] != "0")
{
timeValue = int.Parse(devices["IgnoreTime"]);
}
else
{
- if (devices["Range"]== "5")
+ if (devices["Range"] == "5")
{
openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
@@ -515,7 +513,7 @@
}
-
+
}
}
@@ -561,132 +559,36 @@
break;
case DeviceType.TemperatureSensor:
{
- l = 4;
- string current = Language.StringByID(MyInternationalizationString.current);
- completeView.Show(l);
- var temperatureSensor = common as TemperatureSensor;
- SelectedDeviceStatus = "TemperatureSensor";
- #region 甯冨眬View
- var PickerViewfra = new FrameLayout
+ //缂栬緫鏃剁殑鐘舵�佸��
+ string str1 = "";
+ string str2 = "";
+ if (edit && devices != null)
{
- Y = Application.GetRealHeight(140),
- Height = Application.GetRealHeight(640),
- };
- completeView.Show(l).AddChidren(PickerViewfra);
- var mUIPickerView = new UIPickerView
- {
- Height = Application.GetRealHeight(640 - 5),
- };
- PickerViewfra.AddChidren(mUIPickerView);
+ //娓╁害鍊�
+ str1 = devices["AttriButeData1"];
+ //姣旇緝鍏崇郴鍊�
+ str2 = devices["Range"];
- var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" };
- var mList2 = new List<string>();
- var mList3 = new List<string>();
- for (int i = 1; i <= 100; i++)
- {
- mList2.Add(i.ToString());
}
+ var temperatureSensor = common as TemperatureSensor;
if (temperatureSensor.SensorDiv == 1)
{
- mList3.Add("鈩�");
Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026");
- Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
- Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣�
- Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿娓╁害鍊�50鈩�
- Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
}
else
{
- mList3.Add("%");
Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029");
- Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
- Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣�
- Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿婀垮害鍊�50%
- Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
}
- mUIPickerView.setNPicker(mList1, mList2, mList3);
-
- #endregion
-
- mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
+ Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
+ Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+ completeView.Show(4);
+ PublicInterface publicInterface = new PublicInterface();
+ publicInterface.TemperatureShow(completeView.fraView, common, str2, str1, (relationValueStr, tempValueStr) =>
{
- ///娓╁害杩涚巼杞崲*100
- var strValue = (int.Parse(mList2[s2]) * 100).ToString();
SelectedDeviceStatus = "TemperatureSensor";
- Send.dictionary(deviceConditionsInfo, "AttriButeData1", strValue);
- switch (mList1[s1])
- {
- case ">":
- {
- Send.dictionary(deviceConditionsInfo, "Range", "0");
- }
- break;
- case "<":
- {
- Send.dictionary(deviceConditionsInfo, "Range", "2");
- }
- break;
- case "=":
- {
- Send.dictionary(deviceConditionsInfo, "Range", "1");
- }
- break;
- case "鈮�":
- {
- Send.dictionary(deviceConditionsInfo, "Range", "6");
- }
- break;
- case "鈮�":
- {
- Send.dictionary(deviceConditionsInfo, "Range", "7");
- }
- break;
- }
- };
-
- //榛樿=,50
- int index1 = 2, index2 = 49;
- if (edit && devices != null)
- {
- SelectedDeviceStatus = "";
- string s = "";
- switch (devices["Range"])
- {
- case "0":
- {
- s = ">";
- }
- break;
- case "1":
- {
- s = "=";
- }
- break;
- case "2":
- {
- s = "<";
- }
- break;
- case "6":
- {
- s = "鈮�";
- }
- break;
- case "7":
- {
- s = "鈮�";
- }
- break;
- }
- //鏌ユ壘绱㈠紩
- index1 = mList1.IndexOf(s);
- //杞崲娓╁害鍊�/100
- var dd = (int.Parse(devices["AttriButeData1"])/100).ToString();
- index2 = mList2.IndexOf(dd);
-
- }
- ///鏇存柊鏈�鏂扮姸鎬侊紱
- mUIPickerView.setCurrentItems(index1, index2, 0);
+ Send.dictionary(deviceConditionsInfo, "AttriButeData1", tempValueStr);
+ Send.dictionary(deviceConditionsInfo, "Range", relationValueStr);
+ });
}
break;
@@ -700,7 +602,7 @@
taskListInfo.Add(switchdictionary);
completeView.Show(l).AddChidren(openView.Show());
openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
-
+
horizontalSeekBarRowLien.Y = openView.frameLayout.Bottom;
horizontalSeekBarVol.Y = openView.frameLayout.Bottom;
completeView.Show(l).AddChidren(horizontalSeekBarRowLien);
@@ -1258,7 +1160,8 @@
};
}
break;
- case DeviceType.ColorTemperatureLight: {
+ case DeviceType.ColorTemperatureLight:
+ {
flMain.RemoveFromParent();
var nightlight = new Nightlight();
UserView.HomePage.Instance.AddChidren(nightlight);
@@ -1271,13 +1174,13 @@
{
nightlight.Show(common, edit, _if[1]);
}
-
+
}
break;
}
completeView.Btncomplete.MouseUpEventHandler += (sender, e) =>
{
- //UserView.HomePage.Instance.ScrollEnabled = true;
+ UserView.HomePage.Instance.ScrollEnabled = true;
if (SelectedDeviceStatus != "")
{
if (_if[0] == "condition")
@@ -1339,11 +1242,12 @@
}
break;
}
-
+
};
}
+
/// <summary>
/// 绌鸿皟妯″紡鐨勭姸鎬�
/// </summary>
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs b/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs
index 50c1671..05d8740 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/PublicInterface.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using Shared.Common;
using Shared.R;
+using ZigBee.Device;
namespace Shared.Phone.Device.Logic
{
@@ -99,6 +100,332 @@
}
+
+ /// <summary>
+ /// 娓╂箍搴︽柟娉�
+ /// </summary>
+ /// <param name="frame">鏄剧ず鍦ㄥ摢涓晫闈㈢殑鐖舵帶浠�</param>
+ /// <param name="common">褰撳墠璁惧</param>
+ /// <param name="state1">涔嬪墠鐘舵��</param>
+ /// <param name="state2">涔嬪墠鐘舵��</param>
+ /// <param name="action">杩斿洖鍊�</param>
+ public void TemperatureShow1(FrameLayout frameLayout, CommonDevice common, string state1, string state2, Action<string, string> action)
+ {
+ //FrameLayout frameLayout = new FrameLayout
+ //{
+ // BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor,
+ //};
+ //frame.AddChidren(frameLayout);
+ CompleteView view = new CompleteView();
+ view.Btntitle.Text= LocalDevice.Current.GetDeviceEpointName(common);
+ frameLayout.AddChidren(view.Show(4));
+ UserView.HomePage.Instance.ScrollEnabled = false;
+ view.Btncancel.MouseUpEventHandler += (sender, e) =>
+ {
+ UserView.HomePage.Instance.ScrollEnabled = true;
+ //绉婚櫎fLayout鐣岄潰
+ frameLayout.RemoveFromParent();
+ };
+
+ #region 甯冨眬View
+ var PickerViewfra = new FrameLayout
+ {
+ Y = Application.GetRealHeight(140),
+ Height = Application.GetRealHeight(640),
+ };
+ view.fraView.AddChidren(PickerViewfra);
+ var mUIPickerView = new UIPickerView
+ {
+ Height = Application.GetRealHeight(640 - 5),
+ };
+ PickerViewfra.AddChidren(mUIPickerView);
+
+ var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" };
+ var mList2 = new List<string>();
+ var mList3 = new List<string>();
+ for (int i = 1; i <= 100; i++)
+ {
+ mList2.Add(i.ToString());
+ }
+ switch (common.Type)
+ {
+ case DeviceType.TemperatureSensor:
+ {
+ var temperatureSensor = common as TemperatureSensor;
+ if (temperatureSensor.SensorDiv == 1)
+ {
+ mList3.Add("鈩�");
+ }
+ else
+ {
+ mList3.Add("%");
+
+ }
+ }
+ break;
+ }
+
+ mUIPickerView.setNPicker(mList1, mList2, mList3);
+
+ #endregion
+ //榛樿=,50
+ int index1 = 2, index2 = 49;
+ if (state1!="" && state2 != "")
+ {
+ string s = "";
+ switch (state1)
+ {
+ case "0":
+ {
+ s = ">";
+ }
+ break;
+ case "1":
+ {
+ s = "=";
+ }
+ break;
+ case "2":
+ {
+ s = "<";
+ }
+ break;
+ case "6":
+ {
+ s = "鈮�";
+ }
+ break;
+ case "7":
+ {
+ s = "鈮�";
+ }
+ break;
+ }
+ //鏌ユ壘绱㈠紩
+ index1 = mList1.IndexOf(s);
+ //杞崲娓╁害鍊�/100
+ string tempValue = (int.Parse(state2) / 100).ToString();
+ index2 = mList2.IndexOf(tempValue);
+ }
+ ///鏇存柊鏈�鏂扮姸鎬侊紱
+ mUIPickerView.setCurrentItems(index1, index2, 0);
+ mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
+ {
+ //杩斿洖绱㈠紩鍊�
+ index1 = s1;
+ index2 = s2;
+
+ string relationValueStr = "";
+ switch (mList1[index1])
+ {
+ case ">":
+ {
+ relationValueStr = "0";
+ }
+ break;
+ case "<":
+ {
+ relationValueStr = "2";
+
+ }
+ break;
+ case "=":
+ {
+ relationValueStr = "1";
+
+ }
+ break;
+ case "鈮�":
+ {
+
+ relationValueStr = "6";
+
+ }
+ break;
+ case "鈮�":
+ {
+ relationValueStr = "7";
+ }
+ break;
+ }
+ ///娓╁害杩涚巼杞崲*100
+ string tempValueStr = (int.Parse(mList2[index2]) * 100).ToString();
+ action(relationValueStr, tempValueStr);
+ };
+ view.Btncomplete.MouseUpEventHandler += (sender1, e1) =>
+ {
+ string relationValueStr = "";
+ switch (mList1[index1])
+ {
+ case ">":
+ {
+ relationValueStr = "0";
+ }
+ break;
+ case "<":
+ {
+ relationValueStr = "2";
+
+ }
+ break;
+ case "=":
+ {
+ relationValueStr = "1";
+
+ }
+ break;
+ case "鈮�":
+ {
+
+ relationValueStr = "6";
+
+ }
+ break;
+ case "鈮�":
+ {
+ relationValueStr = "7";
+ }
+ break;
+ }
+ ///娓╁害杩涚巼杞崲*100
+ string tempValueStr = (int.Parse(mList2[index2]) * 100).ToString();
+ action(relationValueStr, tempValueStr);
+ UserView.HomePage.Instance.ScrollEnabled = true;
+ //绉婚櫎fLayout鐣岄潰
+ frameLayout.RemoveFromParent();
+ };
+
+ }
+ public void TemperatureShow(FrameLayout frameLayout, CommonDevice common, string state1, string state2, Action<string, string> action)
+ {
+ #region 甯冨眬View
+ var PickerViewfra = new FrameLayout
+ {
+ Y = Application.GetRealHeight(140),
+ Height = Application.GetRealHeight(640),
+ };
+ frameLayout.AddChidren(PickerViewfra);
+ var mUIPickerView = new UIPickerView
+ {
+ Height = Application.GetRealHeight(640 - 5),
+ };
+ PickerViewfra.AddChidren(mUIPickerView);
+
+ var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" };
+ var mList2 = new List<string>();
+ var mList3 = new List<string>();
+ for (int i = 1; i <= 100; i++)
+ {
+ mList2.Add(i.ToString());
+ }
+ switch (common.Type)
+ {
+ case DeviceType.TemperatureSensor:
+ {
+ var temperatureSensor = common as TemperatureSensor;
+ if (temperatureSensor.SensorDiv == 1)
+ {
+ mList3.Add("鈩�");
+ }
+ else
+ {
+ mList3.Add("%");
+
+ }
+ }
+ break;
+ }
+
+ mUIPickerView.setNPicker(mList1, mList2, mList3);
+
+ #endregion
+ //榛樿=,50
+ int index1 = 2, index2 = 49;
+ if (state1 != "" && state2 != "")
+ {
+ string s = "";
+ switch (state1)
+ {
+ case "0":
+ {
+ s = ">";
+ }
+ break;
+ case "1":
+ {
+ s = "=";
+ }
+ break;
+ case "2":
+ {
+ s = "<";
+ }
+ break;
+ case "6":
+ {
+ s = "鈮�";
+ }
+ break;
+ case "7":
+ {
+ s = "鈮�";
+ }
+ break;
+ }
+ //鏌ユ壘绱㈠紩
+ index1 = mList1.IndexOf(s);
+ //杞崲娓╁害鍊�/100
+ string tempValue = (int.Parse(state2) / 100).ToString();
+ index2 = mList2.IndexOf(tempValue);
+ }
+ ///鏇存柊鏈�鏂扮姸鎬侊紱
+ mUIPickerView.setCurrentItems(index1, index2, 0);
+ mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
+ {
+ //杩斿洖绱㈠紩鍊�
+ index1 = s1;
+ index2 = s2;
+
+ string relationValueStr = "";
+ switch (mList1[index1])
+ {
+ case ">":
+ {
+ relationValueStr = "0";
+ }
+ break;
+ case "<":
+ {
+ relationValueStr = "2";
+
+ }
+ break;
+ case "=":
+ {
+ relationValueStr = "1";
+
+ }
+ break;
+ case "鈮�":
+ {
+
+ relationValueStr = "6";
+
+ }
+ break;
+ case "鈮�":
+ {
+ relationValueStr = "7";
+ }
+ break;
+ }
+ ///娓╁害杩涚巼杞崲*100
+ string tempValueStr = (int.Parse(mList2[index2]) * 100).ToString();
+ action(relationValueStr, tempValueStr);
+ };
+
+ }
+
/// <summary>
/// 鑾峰彇鐣岄潰鍒楄〃
/// </summary>
@@ -142,6 +469,23 @@
};
}
break;
+ case "寮�鍏�2":
+ {
+ list = new List<string> {
+ Language.StringByID(MyInternationalizationString.open),
+ Language.StringByID(MyInternationalizationString.close),
+ };
+ }
+ break;
+ case "寮�鍏�3":
+ {
+ list = new List<string> {
+ Language.StringByID(MyInternationalizationString.open),
+ Language.StringByID(MyInternationalizationString.close),
+ Language.StringByID(MyInternationalizationString.onoff),
+ };
+ }
+ break;
}
--
Gitblit v1.8.0