| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Text; |
| | | using HDL_ON.Entity; |
| | | using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; |
| | | using Shared; |
| | |
| | | { |
| | | public class PirMain : FrameLayout |
| | | { |
| | | /// <summary> |
| | | /// 构造函数 |
| | | /// </summary> |
| | | public PirMain() |
| | | { |
| | | /// 标记界面 |
| | | Tag = "PirMain"; |
| | | } |
| | | /// <summary> |
| | |
| | | |
| | | }; |
| | | middFLayout.AddChidren(addDevice); |
| | | if (Pir.currPir.FunctioList.Count < 10) |
| | | { |
| | | //10个遥控器就会隐藏添加图标 |
| | | // middFLayout.AddChidren(addDevice); |
| | | addDevice.Visible = true; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 界面点击事件 |
| | |
| | | ////关闭刷新View; |
| | | vv.EndHeaderRefreshing(); |
| | | |
| | | Method.GetControlList(this, () => |
| | | PirMethod.GetControlList(this, () => |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | |
| | | |
| | | SetPir setPir = new SetPir(); |
| | | MainPage.BasePageView.AddChidren(setPir); |
| | | setPir.Show(() => |
| | | { |
| | | //BackAction(); |
| | | ////刷新界面 |
| | | UIView(vv); |
| | | }); |
| | | setPir.Show(); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | }; |
| | | ///添加遥控器图标点击事件 |
| | |
| | | //进来不允许左滑 |
| | | MainPage.BasePageView.ScrollEnabled = false; |
| | | View.Buttons buttons = new View.Buttons(); |
| | | buttons.AddFrameLayout(this, (if_value, view) => |
| | | buttons.AddFrameLayout(this, (if_value, view) => |
| | | { |
| | | //关闭允许左滑 |
| | | MainPage.BasePageView.ScrollEnabled = true; |
| | | //1=空调;2=电视;3=风扇;4=机顶盒;5=DVD/EVD/VCD;6=投影仪;7=自定义; |
| | | if (if_value == 7) |
| | | { |
| | | Method method = new Method(); |
| | | PirMethod method = new PirMethod(); |
| | | method.AddControl(this, (control) => |
| | | { |
| | | //成功后移除; |
| | | view.RemoveFromParent(); |
| | | //成功后移除; |
| | | view.RemoveFromParent(); |
| | | AddButton addButton = new AddButton(); |
| | | MainPage.BasePageView.AddChidren(addButton); |
| | | addButton.Show(control); |
| | |
| | | } |
| | | else |
| | | { |
| | | if (if_value == 3 || if_value == 4 || if_value == 5 || if_value == 6) |
| | | if (if_value == 6) |
| | | { |
| | | new TipPopView().FlashingBox("暂时不支持该功能."); |
| | | new TipPopView().FlashingBox(Language.StringByID(StringId.zanshibuzhichigaigongneng)); |
| | | return; |
| | | } |
| | | if (DeviceTypeList.Count == 0) |
| | |
| | | GetDeviceTypeList(true, () => |
| | | { |
| | | DeviceTypeViewClick(if_value); |
| | | //获取成功之后移除 |
| | | view.RemoveFromParent(); |
| | | //获取成功之后移除 |
| | | view.RemoveFromParent(); |
| | | |
| | | }); |
| | | } |
| | |
| | | DeviceTypeViewClick(if_value); |
| | | view.RemoveFromParent(); |
| | | } |
| | | |
| | | } |
| | | }, 7); |
| | | }; |
| | | #endregion |
| | | ///初始化界面 |
| | | UIView(vv); |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 加载UI界面 |
| | |
| | | /// <param name="vv">上下滑控件</param> |
| | | private void UIView(VerticalRefreshLayout vv) |
| | | { |
| | | if (Pir.currPir.FunctioList.Count < 10) |
| | | { |
| | | //10个遥控器就会隐藏添加图标 |
| | | // middFLayout.AddChidren(addDevice); |
| | | addDevice.Visible = true; |
| | | } |
| | | vv.RemoveAll(); |
| | | #region 红外宝图标 版本号 名称 状态 |
| | | FrameLayout fLayout = new FrameLayout |
| | |
| | | //遥控器名称 |
| | | controlView.nameBtn.Text = control.name; |
| | | //遥控器存放区域 |
| | | controlView.areaBtn.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(control); |
| | | controlView.areaBtn.Text = Intelligence.Automation.LogicMethod.CurrLogicMethod.GetGetRoomName(control); |
| | | //标记遥控器 |
| | | controlView.delBtn.Tag = control; |
| | | //删除点击事件 |
| | |
| | | TipPopView tipPopView = new TipPopView(); |
| | | tipPopView.TipBox(StringId.tip, text, (dialog) => |
| | | { |
| | | Method.ThreadSend(new Control { deviceId=control.deviceId}, (responsePackNew) => |
| | | PirMethod.ThreadSend(new Control { deviceId=control.deviceId}, (responsePackNew) => |
| | | { |
| | | dialog.Close(); |
| | | var function = Pir.currPir.FunctioList.Find((c) => c.sid == Function.sid); |
| | |
| | | { |
| | | //回调更新名字/区域 |
| | | controlView.nameBtn.Text = device.name; |
| | | controlView.areaBtn.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(device); |
| | | controlView.areaBtn.Text = Intelligence.Automation.LogicMethod.CurrLogicMethod.GetGetRoomName(device); |
| | | |
| | | }); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | |
| | | /// <param name="if_value">控件索引值</param> |
| | | private void DeviceTypeViewClick(int if_value) |
| | | { |
| | | |
| | | var strings = View.Buttons.GetTypeString(if_value).Split('-'); |
| | | var jobDeviceType = DeviceTypeList.Find((c) => c.deviceType == strings[0]); |
| | | if (jobDeviceType == null) |
| | |
| | | }); |
| | | |
| | | }); |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 读取红外设备类型列表 |
| | |
| | | { |
| | | PirSend.GetDeviceTypesList(this, (responsePackNew) => |
| | | { |
| | | |
| | | if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") |
| | | { |
| | | //清空之前数据 |
| | | DeviceTypeList.Clear(); |
| | | var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString()); |
| | | for (int a = 0; a < jArray.Count; a++) |
| | | try |
| | | { |
| | | var jay = jArray[a]; |
| | | var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); |
| | | var objDeviceType = Newtonsoft.Json.JsonConvert.DeserializeObject<DeviceType>(str); |
| | | if (objDeviceType != null) |
| | | var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString()); |
| | | for (int a = 0; a < jArray.Count; a++) |
| | | { |
| | | if (null == DeviceTypeList.Find((c) => c.id == objDeviceType.id)) |
| | | var jay = jArray[a]; |
| | | var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); |
| | | var objDeviceType = Newtonsoft.Json.JsonConvert.DeserializeObject<DeviceType>(str); |
| | | if (objDeviceType != null) |
| | | { |
| | | DeviceTypeList.Add(objDeviceType); |
| | | if (null == DeviceTypeList.Find((c) => c.id == objDeviceType.id)) |
| | | { |
| | | DeviceTypeList.Add(objDeviceType); |
| | | } |
| | | } |
| | | } |
| | | action(); |
| | | } |
| | | action(); |
| | | catch |
| | | { |
| | | |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (tag) |
| | | { |
| | | Method method = new Method(); |
| | | PirMethod method = new PirMethod(); |
| | | method.ErrorShow(responsePackNew, ""); |
| | | } |
| | | } |
| | |
| | | { |
| | | //清空之前数据 |
| | | brandList.Clear(); |
| | | var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString()); |
| | | for (int a = 0; a < jArray.Count; a++) |
| | | try |
| | | { |
| | | var jay = jArray[a]; |
| | | var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); |
| | | var brand = Newtonsoft.Json.JsonConvert.DeserializeObject<Brand>(str); |
| | | if (brand != null) |
| | | var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString()); |
| | | for (int a = 0; a < jArray.Count; a++) |
| | | { |
| | | if (null == brandList.Find((c) => c.id == brand.id)) |
| | | var jay = jArray[a]; |
| | | var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); |
| | | var brand = Newtonsoft.Json.JsonConvert.DeserializeObject<Brand>(str); |
| | | if (brand != null) |
| | | { |
| | | brandList.Add(brand); |
| | | if (null == brandList.Find((c) => c.id == brand.id)) |
| | | { |
| | | brandList.Add(brand); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | actionBrand(brandList); |
| | | catch { } |
| | | finally |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | actionBrand(brandList); |
| | | }); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Method method = new Method(); |
| | | PirMethod method = new PirMethod(); |
| | | method.ErrorShow(responsePackNew, ""); |
| | | } |
| | | }, id, "品牌列表"); |
| | |
| | | public override void RemoveFromParent() |
| | | { |
| | | BackAction(); |
| | | BackAction = null; |
| | | base.RemoveFromParent(); |
| | | } |
| | | |