From bfb3d0d4879dca8c59ff287c92f5113162f3a33a Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期二, 27 八月 2024 15:22:48 +0800 Subject: [PATCH] 代码备份 --- OnPro/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs | 276 +++++++++++-------------------------------------------- 1 files changed, 56 insertions(+), 220 deletions(-) diff --git a/OnPro/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/OnPro/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs index a0ddf37..1bed389 100644 --- a/OnPro/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs +++ b/OnPro/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs @@ -2,7 +2,8 @@ using Shared; using System.Collections.Generic; using HDL_ON.Entity; -using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock; +using Newtonsoft.Json; + namespace HDL_ON.UI.UI2.Intelligence.Automation { @@ -59,6 +60,7 @@ public void Show(Entity.Function device, int index, bool edit) { + this.function = device; this.mEdit = edit; this.mIndex = index; @@ -236,7 +238,7 @@ int h = time / (60 * 60); int m = time % (60 * 60) / 60; int s = (time % (60 * 60) % 60); - view2.btnState.Text = inputs.hold_time + "s"; + view2.btnState.Text = LogicMethod.Current.getTimeStr(inputs.hold_time); view2.btnState.Name = h + ":" + m + ":" + s; this.hold_time = inputs.hold_time; } @@ -255,6 +257,22 @@ view.btnClick.MouseUpEventHandler += (sender, e) => { DeviceView(device, view.btnState, StringId.kaiqi, StringId.bihe); + }; + if (edit) + { + GetEditState(device, index, view.btnState, null, null, null); + } + } + break; + //绱ф�ュ懠鍙紶鎰熷櫒 + case SPK.SensorHelp: + { + LogicView.FunTypeView view = new LogicView.FunTypeView(); + view.btnText.TextID = StringId.qiujiu; + fLayout.AddChidren(view.FLayoutView()); + view.btnClick.MouseUpEventHandler += (sender, e) => + { + DeviceView(device, view.btnState, StringId.qiujiu, StringId.zhengchang,1); }; if (edit) { @@ -605,60 +623,6 @@ } } break; - //鍙瀵硅 - case SPK.doorgate: - { - - LogicView.FunTypeView view1 = new LogicView.FunTypeView(); - view1.btnText.TextID = StringId.shipintonghuahujiao; - view1.btnText.Name = Language.StringByID(StringId.shipintonghuahujiao); - fLayout.AddChidren(view1.FLayoutView()); - view1.btnClick.MouseUpEventHandler += (sender, e) => - { - this.identifier = "door_call_cloud_event"; - this.DeviceView(device, view1.btnState, StringId.shi, StringId.offLogic, 1); - }; - - LogicView.FunTypeView view2 = new LogicView.FunTypeView(); - view2.frameLayout.Y = view1.frameLayout.Bottom; - view2.btnText.TextID = StringId.renliankaimen; - fLayout.AddChidren(view2.FLayoutView()); - view2.btnClick.MouseUpEventHandler += (sender, e) => - { - this.identifier = "door_pedestrian_records"; - this.FaceAction(this, device, view2.btnState); - }; - - int intValue = 0; - if (edit) - { - Input inputs = Logic.currlogic.input[index]; - if (inputs.identifier == "door_call_cloud_event") - { - intValue = 1; - } - else - { - intValue = 2; - } - } - if (intValue == 1) - { - - view2.frameLayout.Visible = false; - - } - else if (intValue == 2) - { - - view2.frameLayout.Y = Application.GetRealHeight(0); - } - if (edit) - { - this.GetEditState(device, index, view1.btnState, view2.btnState, null, null); - } - } - break; //澶у崕鎽勫儚澶� case SPK.IpCam_Imou: { @@ -675,24 +639,6 @@ if (edit) { this.GetEditState(device, index, view.btnState, null, null, null); - } - } - break; - //钀ょ煶瑙嗛闂ㄩ攣 - case SPK.VideoDoorLock: - { - LogicView.FunTypeView view1 = new LogicView.FunTypeView(); - view1.btnText.TextID=StringId.kaimenrenyuan; - view1.btnText.Name = Language.StringByID(StringId.shipinmensuo); - fLayout.AddChidren(view1.FLayoutView()); - view1.btnClick.MouseUpEventHandler += (sender, e) => - { - this.identifier = "open_door";//寮�閿佷簨浠� - this.VideoDoorLockAction(this, device, view1.btnState); - }; - if (edit) - { - this.GetEditState(device, index, view1.btnState,null, null, null); } } break; @@ -798,6 +744,7 @@ ////钀ょ煶瑙嗛闂ㄩ攣 inputDevice.condition_type = "9"; inputDevice.identifier = this.identifier; + //inputDevice.condition = new List<Dictionary<string, string>>(); } else if (device.spk == SPK.SensorPirHold) { @@ -855,7 +802,7 @@ /// <param name="button">閫変腑鐘舵�佹樉绀烘枃鏈珺tn鎺т欢</param> /// <param name="btnText1">灞炴�х姸鎬佸�兼枃鏈�1</param> /// <param name="btnText2">灞炴�х姸鎬佸�兼枃鏈�2</param> - /// <param name="viewCount">view鏁伴噺</param> + /// <param name="viewCount">view鏁伴噺,榛樿2涓獀iew</param> private void DeviceView(Entity.Function device, Button button, int btnText1, int btnText2,int viewCount=2) { FrameLayout frame = new FrameLayout { BackgroundColor = CSS.CSS_Color.viewTrans60lucence }; @@ -872,6 +819,7 @@ case SPK.SensorGas: case SPK.SensorWater: case SPK.SensorSmoke: + case SPK.SensorHelp: { keyVlaue = "status"; if (!Is_SpkAttribute(keyVlaue)) { @@ -942,12 +890,14 @@ { case StringId.xieluo: case StringId.luoshui: + case StringId.qiujiu: { value = "alarm"; } break; case StringId.wuxieluo: case StringId.wuluoshui: + case StringId.zhengchang: { value = "normal"; } @@ -955,11 +905,19 @@ case StringId.onLogic: { value = "on"; + if (device.spk== SPK.SensorDryContact) { + value = "open"; + } + } break; case StringId.offLogic: { value = "off"; + if (device.spk == SPK.SensorDryContact) + { + value = "close"; + } } break; case StringId.youren: @@ -1059,6 +1017,7 @@ { if (edit) { + this.function = device; Input inputs = Logic.currlogic.input[index]; //娓呴櫎涔嬪墠鏃ф暟鎹� dicSateteList.Clear(); @@ -1068,44 +1027,53 @@ dicSateteList.AddRange(inputs.condition); } } + int max = 100; + int min = 1; + if (device.spk == SPK.SensorLight) + { + //鐓ф槑浼犳劅鍣� + min = 0; + max =1200; + } + new LogicView.TipPopView { }.InputBox(textInt, stateValue, (value) => { - string keyValue = "20"; + string key = "20"; string data_type = "integer"; string comparator = "="; switch (textInt) { case StringId.wendugaoyu: { - keyValue = "temperature"; + key = "temperature"; comparator = ">"; data_type = "float"; } break; case StringId.wendudiyu: { - keyValue = "temperature"; + key = "temperature"; comparator = "<"; data_type = "float"; } break; case StringId.shidugaoyu: { - keyValue = "humidity"; + key = "humidity"; comparator = ">"; } break; case StringId.shidudiyu: { - keyValue = "humidity"; + key = "humidity"; comparator = "<"; } break; } selectedState = device.spk + "_" + value; - AddDictionary(keyValue, value, data_type, comparator); + AddDictionary(key, value, data_type, comparator); SaveInput(device,index, edit); - }); + },min,max); } /// PM2.5,Co2,Tvoc璁剧疆鍊� /// </summary> @@ -1167,142 +1135,6 @@ }); } /// <summary> - /// 鍙瀵硅涓撶敤 - /// </summary> - /// <param name="frame">褰撳墠鐣岄潰</param> - /// <param name="device">褰撳墠璁惧</param> - /// <param name="btnState">鏃х姸鎬�</param> - public void FaceAction(FrameLayout frame, Entity.Function device, Button btnState) - { - selectedState = device.spk + "_"; - Loading loading = new Loading(); - frame.AddChidren(loading); - loading.Start(); - - CommonMethod.Current.SunThread(() => - { - try - { - var faceIdList = Send.Current.GetListHomeFace(device.deviceId, true); - - CommonMethod.Current.MainThread(() => - { - loading.Hide(); - string stateValue = btnState.Tag == null ? "" : btnState.Tag.ToString(); - PublicInterface publicInterface = new PublicInterface(); - publicInterface.MultiSelectShow(this, faceIdList, device.name, stateValue, (indexeList) => - { - if (indexeList.Count > 0) - { - dicSateteList.Clear(); - string s = string.Empty; - string tag = string.Empty; - //鏁版嵁灏佽 - AddDictionary("open_type", "1", "integer"); - for (int i = 0; i < indexeList.Count; i++) - { - - if (i > faceIdList.Count) - { - continue; - } - var indexe = indexeList[i]; - var face = faceIdList[indexe]; - AddDictionary("user_id", face.userId, "string"); - s += face.userName; - s += ","; - tag += face.userId; - tag += "_"; - } - //鐣岄潰鏄剧ず閫変腑鍊� - btnState.Text = s; - btnState.Tag = tag; - } - - }); - }); - } - catch { } - finally - { - Application.RunOnMainThread(() => - { - loading.Hide(); - }); - } - - }); - - } - - /// <summary> - /// 钀ょ煶瑙嗛闂ㄩ攣涓撶敤 - /// </summary> - /// <param name="frame">褰撳墠鐣岄潰</param> - /// <param name="device">褰撳墠璁惧</param> - /// <param name="btnState">鏃х姸鎬�</param> - public void VideoDoorLockAction(FrameLayout frame, Entity.Function device, Button btnState) - { - selectedState = device.spk + "_"; - Loading loading = new Loading(); - frame.AddChidren(loading); - loading.Start(); - CommonMethod.Current.SunThread(() => - { - try - { - var faceIdList = Send.Current.GetVideoDoorLockUserListInfo(device); - CommonMethod.Current.MainThread(() => - { - - loading.Hide(); - string stateValue = btnState.Text == null ? "" : btnState.Text.ToString(); - PublicInterface publicInterface = new PublicInterface(); - publicInterface.MultiSelectShow(this, faceIdList, device.name, stateValue, (indexeList) => - { - if (indexeList.Count > 0) - { - dicSateteList.Clear(); - string s = string.Empty; - string tag = string.Empty; - for (int i = 0; i < indexeList.Count; i++) - { - if (i > faceIdList.Count) - { - continue; - } - var indexe = indexeList[i]; - var face = faceIdList[indexe]; - //鏁版嵁灏佽<楂樿儨璇磋悿鐭抽偅杈规槸鎺ㄩ�佺敤鎴峰悕> - AddDictionary("open_user", face.userName, "string"); - s += face.userName; - s += ","; - tag += face.userId; - tag += "_"; - } - //鐣岄潰鏄剧ず閫変腑鍊� - btnState.Text = s; - btnState.Tag = tag; - } - - }); - - }); - } - catch { } - finally - { - Application.RunOnMainThread(() => - { - loading.Hide(); - }); - } - - }); - - } - - /// <summary> /// 鏃堕棿鏂规硶 /// </summary> /// <param name="fLayout">鍦ㄥ摢涓晫闈㈡樉绀�</param> @@ -1327,7 +1159,7 @@ this.hold_time = (h + m + s).ToString(); if (button != null) { - button.Text = this.hold_time + "s"; + button.Text = LogicMethod.Current.getTimeStr(this.hold_time); button.Name = timeValue; } selectedState = device.spk + "_" + timeValue; @@ -1502,6 +1334,10 @@ /// <returns></returns> private bool CheckSpk() { + if (this.function == null) + { + return false; + } if (this.function.spk == SPK.VideoDoorLock || this.function.spk == SPK.doorgate ) @@ -1510,7 +1346,7 @@ } return false; - } + } /// <summary> /// 鍒ゆ柇dictionaryB鏄惁瀹屾暣鍖呭惈鍙︿竴涓猟ictionaryA /// </summary> -- Gitblit v1.8.0