From 691b0f2434acc1685b43f873657c9230726ffe6f Mon Sep 17 00:00:00 2001
From: chenqiyang <1406175257@qq.com>
Date: 星期二, 19 四月 2022 13:38:20 +0800
Subject: [PATCH] 1.增加人脸、可视对讲入口 2.增加清除推送角标数值接口 3.修改初始化全视通、登出全视通
---
ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs | 712 +++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 520 insertions(+), 192 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
index 511bc75..f3e6269 100755
--- 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)
+ public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str, int intValue)
{
#region -------鐣岄潰甯冨眬閮ㄥ垎
//涓嶈褰撳墠鐣岄潰婊戝姩
@@ -22,7 +22,7 @@
completeView.Btntitle.Text = LocalDevice.Current.GetDeviceEpointName(common);
EventHandler<MouseEventArgs> clickcancel = (sender, e) =>
{
- if (!edit)
+ if (edit)
{
UserView.HomePage.Instance.ScrollEnabled = true;
}
@@ -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 -------杩涘害鏉℃帶浠�
@@ -59,18 +54,19 @@
};
var horizontalSeekBarVol = new DiyImageSeekBar
{
- //Y = openView.frameLayout.Bottom,
- X = Application.GetRealWidth(80),
- Width = Application.GetRealWidth(915),
- Height = Application.GetRealHeight(160),
+ //Y = openView.frameLayout.Bottom,//杩涘害鏉$埗鎺т欢Y鍧愭爣
+ X = Application.GetRealWidth(80),//杩涘害鏉鍧愭爣
+ Width = Application.GetRealWidth(915),//杩涘害鏉$殑闀垮害
+ Height = Application.GetRealHeight(160),//杩涘害鏉$埗鎺т欢楂樺害
IsProgressTextShow = true,//鏄剧ず鐧惧垎姣�
IsClickable = false,//杩涘害鏉℃槸鍚︽粦鍔�
ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected,//閫変腑杩涘害鏉¢鑹�
ThumbImagePath = "ZigeeLogic/progressbtn2.png",//杩涘害鏉℃寜閽浘鏍�
ThumbImageHeight = Application.GetRealHeight(56),//杩涘害鏉℃寜閽浘鏍囩殑楂樺害锛堥粯璁ゆ鏂瑰舰锛氬鍜岄珮涓�鏍凤級
ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor,
- ProgressTextSize = 9,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12
- SeekBarViewHeight = Application.GetRealHeight(5),//杩涘害鏉$殑楂樺害10
+ ProgressTextSize = 12,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12
+ SeekBarViewHeight = Application.GetRealHeight(6),//杩涘害鏉$殑楂樺害10
+ SeekBarPadding = 30,
};
#endregion
#endregion
@@ -94,38 +90,33 @@
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")
{
- foreach (var deviceinfo in Common.Logic.CurrentLogic.Conditions)
+ var deviceinfo = Common.Logic.CurrentLogic.Conditions[intValue];
+ if (deviceinfo["Type"] == "1")
{
- if (deviceinfo["Type"] == "1")
+ if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"])
{
- if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"])
- {
- devices = deviceinfo;
- break;
+ devices = deviceinfo;
- }
}
}
}
else
{
- foreach (var deviceinfo in Common.Logic.CurrentLogic.Actions)
+ var deviceinfo = Common.Logic.CurrentLogic.Actions[intValue];
+ if (deviceinfo["LinkType"].ToString() == "0")
{
- if (deviceinfo["LinkType"].ToString() == "0")
- {
- if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString())
- {
- TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>;
- break;
- }
+ if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString())
+ {
+ TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>;
}
}
+
}
}
#endregion
@@ -136,6 +127,7 @@
///鐏厜
case DeviceType.OnOffOutput:
{
+
if (_if[0] == "condition")
{
l = 2;
@@ -284,6 +276,8 @@
}
}
}
+
+
}
break;
case DeviceType.IASZone:
@@ -298,7 +292,7 @@
Send.dictionary(deviceConditionsInfo, "AttriButeId", "1281");
Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
- int timevalue = 0;
+ int timeValue = 0;
///鐐瑰嚮纭浜嬩欢
openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
{
@@ -309,10 +303,11 @@
closeView.selectedIconBtn.Visible = false;
if (iASZonedevice.IasDeviceType == 13)
{
+
closeView.selectedIconBtn.Visible = true;
}
Send.dictionary(deviceConditionsInfo, "Range", "5");
- Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1");
+ Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//鏀寔1鍜�2;1+2=3
};
///鐐瑰嚮鍙栨秷浜嬩欢
closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
@@ -322,53 +317,109 @@
closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
openView.selectedIconBtn.Visible = false;
closeView.selectedIconBtn.Visible = true;
- Send.dictionary(deviceConditionsInfo, "Range", "1");
- Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0");
- if (iASZonedevice.IasDeviceType == 13)
+ Send.dictionary(deviceConditionsInfo, "Range", "8");//1
+ Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//0
+ if (iASZonedevice.IasDeviceType == 13 || iASZonedevice.IasDeviceType == 541)
{
SelectedDeviceStatus = "";
- openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
- openView.selectedIconBtn.Visible = false;
- closeView.selectedIconBtn.Visible = true;
var ignoreTime = new IgnoreTime();
UserView.HomePage.Instance.AddChidren(ignoreTime);
UserView.HomePage.Instance.PageIndex += 1;
- ignoreTime.Show(common, closeView.titleBtn.Text, edit, timevalue, _if[1]);
+ ignoreTime.Show(common, closeView.titleBtn.Text, edit, timeValue, _if[1]);
}
-
-
};
switch (iASZonedevice.IasDeviceType)
{
case 13:
{
- openView.titleBtn.TextID = MyInternationalizationString.someone;
- closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1;
- closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
- closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
- closeView.selectedIconBtn.Visible = true;
- completeView.Show(2).AddChidren(openView.Show());
- completeView.Show(2).AddChidren(closeView.Show());
+
+ if (common.ModelIdentifier == "MSPIRB-ZB.10")
+ {
+ int _height = 3;
+ if (edit)
+ {
+ _height = 2;
+ }
+ var view = completeView.Show(_height);
+ openView.titleBtn.TextID = MyInternationalizationString.someone;
+ closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1;
+ closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+ closeView.selectedIconBtn.Visible = true;
+ view.AddChidren(openView.Show());
+ view.AddChidren(closeView.Show());
+
+ takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+ takebackView.selectedIconBtn.Visible = true;
+ takebackView.titleBtn.TextID = MyInternationalizationString.ambientLight;
+ takebackView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+ if (edit)
+ {
+
+ if (devices["Cluster_ID"] == "1024")
+ {
+ flMain.RemoveFromParent();
+ var illumination = new Illumination();
+ UserView.HomePage.Instance.AddChidren(illumination);
+ UserView.HomePage.Instance.PageIndex += 1;
+ illumination.Show(common, takebackView.titleBtn.Text, int.Parse(devices["AttriButeData1"]), true);
+ }
+ else
+ {
+ closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+ }
+ }
+ else
+ {
+ view.AddChidren(takebackView.Show());
+
+ }
+
+
+ takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+ {
+ SelectedDeviceStatus = "";
+ openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+ openView.selectedIconBtn.Visible = false;
+ var illumination = new Illumination();
+ UserView.HomePage.Instance.AddChidren(illumination);
+ UserView.HomePage.Instance.PageIndex += 1;
+ illumination.Show(common, takebackView.titleBtn.Text, 0, false);
+
+ };
+
+ }
+ else
+ {
+
+ openView.titleBtn.TextID = MyInternationalizationString.someone;
+ closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1;
+ closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+ closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+ closeView.selectedIconBtn.Visible = true;
+ completeView.Show(2).AddChidren(openView.Show());
+ completeView.Show(2).AddChidren(closeView.Show());
+
+ }
}
break;
case 21:
case 22:
{
#region
+ var view = completeView.Show(3);
openView.titleBtn.TextID = MyInternationalizationString.logicopen;
closeView.titleBtn.TextID = MyInternationalizationString.logicclose;
- completeView.Show(3).AddChidren(openView.Show());
- completeView.Show(3).AddChidren(closeView.Show());
+ view.AddChidren(openView.Show());
+ view.AddChidren(closeView.Show());
- mFunView timeoutView = new mFunView();
- timeoutView.frameLayout.Y = closeView.frameLayout.Bottom;
- timeoutView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
- completeView.Show(3).AddChidren(timeoutView.Show());
- timeoutView.titleBtn.TextID = MyInternationalizationString.closetimeout;
- timeoutView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
- timeoutView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
+ takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+ takebackView.selectedIconBtn.Visible = true;
+ takebackView.titleBtn.TextID = MyInternationalizationString.closetimeout;
+ takebackView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png";
+ view.AddChidren(takebackView.Show());
+ takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
{
SelectedDeviceStatus = "";
openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
@@ -378,7 +429,7 @@
var ignoreTime = new IgnoreTime();
UserView.HomePage.Instance.AddChidren(ignoreTime);
UserView.HomePage.Instance.PageIndex += 1;
- ignoreTime.Show(common, timeoutView.titleBtn.Text, edit, timevalue, _if[1]);
+ ignoreTime.Show(common, takebackView.titleBtn.Text, edit, timeValue, _if[1]);
};
@@ -437,13 +488,13 @@
{
if (devices["AttriButeId"] == "1281")
{
- if (devices.ContainsKey("IgnoreTime"))
+ if (devices.ContainsKey("IgnoreTime") && devices["IgnoreTime"] != "0")
{
- timevalue = int.Parse(devices["IgnoreTime"]);
+ timeValue = int.Parse(devices["IgnoreTime"]);
}
else
{
- if (devices["AttriButeData1"] == "1")
+ if (devices["Range"] == "5")
{
openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
@@ -463,7 +514,6 @@
}
-
}
}
@@ -478,7 +528,8 @@
Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
completeView.Show(l).AddChidren(openView.Show());
- openView.titleBtn.Text = Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString();
+ openView.titleBtn.Text = LocalDevice.Current.GetDeviceEpointName(common);
+ //openView.titleBtn.Text =Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString();
openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
openView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
{
@@ -496,7 +547,7 @@
}
break;
case DeviceType.DoorLock:
- {
+ {
flMain.RemoveFromParent();
var memberList = new MemberList();
@@ -508,133 +559,53 @@
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
- {
- 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);
- var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" };
- var mList2 = new List<string>();
- var mList3 = new List<string>();
- for (int i = 1; i <= 100; i++)
+ //鑾峰彇璁惧绫诲瀷
+ var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { common });
+
+ //绌烘皵璐ㄩ噺浼犳劅鍣�
+ if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
{
- mList2.Add(i.ToString());
- }
- 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");
+ AirSonser(flMain, SelectedDeviceStatus, edit, common, devices);
}
else
{
- mList3.Add("%");
- Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029");
+
+
+ //缂栬緫鏃剁殑鐘舵�佸��
+ string str1 = "";
+ string str2 = "";
+ string str3 = "";
+ if (edit && devices != null)
+ {
+ //娓╁害鍊�
+ str1 = devices["AttriButeData1"];
+ //姣旇緝鍏崇郴鍊�
+ str2 = devices["Range"];
+
+ }
+ var temperatureSensor = common as TemperatureSensor;
+ if (temperatureSensor.SensorDiv == 1)
+ {
+ str3 = "鈩�";
+ Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026");
+ }
+ else
+ {
+ str3 = "%";
+ 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) =>
- {
- ///娓╁害杩涚巼杞崲*100
- var strValue = (int.Parse(mList2[s2]) * 100).ToString();
- SelectedDeviceStatus = "TemperatureSensor";
- Send.dictionary(deviceConditionsInfo, "AttriButeData1", strValue);
- switch (mList1[s1])
+ completeView.Show(4);
+ PublicInterface publicInterface = new PublicInterface();
+ publicInterface.TemperatureShow(completeView.fraView, str3, str2, str1, (relationValueStr, tempValueStr) =>
{
- 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);
-
+ SelectedDeviceStatus = "TemperatureSensor";
+ Send.dictionary(deviceConditionsInfo, "AttriButeData1", tempValueStr);
+ Send.dictionary(deviceConditionsInfo, "Range", relationValueStr);
+ });
}
- ///鏇存柊鏈�鏂扮姸鎬侊紱
- mUIPickerView.setCurrentItems(index1, index2, 0);
-
}
break;
///璋冨厜鐏厜
@@ -647,7 +618,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);
@@ -688,7 +659,6 @@
var lightbrightnessvalue = (254 * horizontalSeekBarVol.Progress) / 100;
Send.dictionary(switchdictionary, "Data1", lightbrightnessvalue.ToString());
};
-
///鍙栨秷浜嬩欢
closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
{
@@ -701,7 +671,6 @@
Send.dictionary(switchdictionary, "TaskType", "1");
Send.dictionary(switchdictionary, "Data1", "0");//榛樿鍊�
};
-
//鍙栧弽
takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
{
@@ -1205,10 +1174,29 @@
};
}
break;
+ case DeviceType.ColorTemperatureLight:
+ {
+ flMain.RemoveFromParent();
+ var nightlight = new Nightlight();
+ UserView.HomePage.Instance.AddChidren(nightlight);
+ UserView.HomePage.Instance.PageIndex += 1;
+ if (edit)
+ {
+ nightlight.Show(common, edit, _if[1], Common.Logic.CurrentLogic.Actions[intValue]);
+ }
+ else
+ {
+ 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")
@@ -1231,7 +1219,7 @@
{
if (!edit)
{
- var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
+ var alert = new UserCenter.ShowMsgControl(ShowMsgType.Normal,
Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
Language.StringByID(MyInternationalizationString.confrim));
alert.Show();
@@ -1270,12 +1258,11 @@
}
break;
}
-
+
};
}
-
- /// <summary>
+ /// <summary>
/// 绌鸿皟妯″紡鐨勭姸鎬�
/// </summary>
/// <param name="modestring"></param>
@@ -1341,5 +1328,346 @@
}
}
+ /// <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();
+ if (edit&&dic!=null) {
+ AirProperty(flMain, dic, common,"", edit, SelectedDeviceStatus);
+ }
+ else
+ {
+ 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());
+ if (tagText == Language.StringByID(MyInternationalizationString.kongqizhiliang))
+ {
+
+ 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);
+
+
+ }, () => {
+ 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) =>
+ {
+ 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);
+
+
+ }, () => {
+ 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) =>
+ {
+ SelectedDeviceStatus = "TemperatureSensor";
+ string valuaStr = "";
+ if (strText == Language.StringByID(MyInternationalizationString.co2qingxin))
+ {
+ 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);
+
+
+ }, () => {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
+ });
+
+
+
+ }
+ else if (tagText == Language.StringByID(MyInternationalizationString.sensortemperature))
+ {
+ //缂栬緫鏃剁殑鐘舵�佸��
+ string str1 = range;
+ string str2 = stateText;
+ publicInterface.TemperatureShow1(flMain, tagText, "鈩�", str1, str2, (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);
+
+
+ }, () =>
+ {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
+
+ });
+ }
+ else if (tagText == Language.StringByID(MyInternationalizationString.sensorhumidity))
+ {
+ //缂栬緫鏃剁殑鐘舵�佸��
+ string str1 = range;
+ string str2 = stateText;
+ publicInterface.TemperatureShow1(flMain, tagText, "%", str1, str2, (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);
+ }, () => {
+ if (edit) { flMain.RemoveFromParent(); }
+ else
+ {
+ AirSonser(flMain, SelectedDeviceStatus, edit, common);
+ }
+ });
+ }
+
+ }
+ /// <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 )
+ {
+ UserView.HomePage.Instance.ScrollEnabled = true;
+ if (SelectedDeviceStatus != "")
+ {
+ //娣诲姞鏉′欢
+ LogicIfon.AddDeviceconditions(common, dic);
+ }
+ else
+ {
+ if (!edit)
+ {
+ var alert = new UserCenter.ShowMsgControl(ShowMsgType.Normal,
+ Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
+ Language.StringByID(MyInternationalizationString.confrim));
+ alert.Show();
+ return;
+ }
+
+ }
+ flMain.RemoveFromParent();
+ //鑷姩鍖�
+ var logicCommunalPage = new LogicCommunalPage();
+ UserView.HomePage.Instance.AddChidren(logicCommunalPage);
+ UserView.HomePage.Instance.PageIndex += 1;
+ logicCommunalPage.Show(() => { });
+ }
+
}
}
--
Gitblit v1.8.0