| | |
| | | uploadScene.DeviceListObject.Add (new AddCloudSceneDeviceData () { |
| | | Command = (int)Command.UpdataCurtainModelStutas, SubnetId = device.SubnetID, DeviceId = device.DeviceID, |
| | | DeviceName = device.Name, DeviceType = "CurtainModule", LoopId = device.LoopID, |
| | | DataString = device.Status.ToString () |
| | | DataString = ((byte)device.Status).ToString () |
| | | }); |
| | | } |
| | | } else if (common.Type == DeviceType.CurtainRoller) { |
| | |
| | | uploadScene.DeviceListObject.Add (new AddCloudSceneDeviceData () { |
| | | Command = (int)Command.UpdataCurtainModelStutas, SubnetId = device.SubnetID, DeviceId = device.DeviceID, |
| | | DeviceName = device.Name, DeviceType = "CurtainRoller", LoopId = device.LoopID, |
| | | DataString = (device.Status + 3).ToString () |
| | | DataString = ((byte)device.CurtainProress + 3).ToString () |
| | | }); |
| | | } |
| | | } else if (common.Type == DeviceType.CurtainTrietex) { |
| | |
| | | uploadScene.DeviceListObject.Add (new AddCloudSceneDeviceData () { |
| | | Command = (int)Command.UpdataCurtainModelStutas, SubnetId = device.SubnetID, DeviceId = device.DeviceID, |
| | | DeviceName = device.Name, DeviceType = "CurtainRoller", LoopId = device.LoopID, |
| | | DataString = (device.Status + 3).ToString () |
| | | DataString = ((byte)device.CurtainProress + 3).ToString () |
| | | }); |
| | | } |
| | | } else if (common.Type == DeviceType.HVAC || common.Type == DeviceType.ACInfrared) { |
| | |
| | | Command = (int)Command.SetScene, SubnetId = device.SubnetID, DeviceId = device.DeviceID, |
| | | DeviceName = device.Name, DeviceType = "SceneControl", LoopId = device.AreaID, |
| | | DataString = device.AreaSceneID.ToString () |
| | | }); |
| | | } |
| | | } else if (common.Type == DeviceType.UniversalDevice) {//2020-09-02 新增通用开关 |
| | | var device = Newtonsoft.Json.JsonConvert.DeserializeObject<UniversalDevice> (System.Text.Encoding.UTF8.GetString (IO.FileUtils.ReadFile (deviceFilePath))); |
| | | if (device != null) { |
| | | uploadScene.DeviceListObject.Add (new AddCloudSceneDeviceData () { |
| | | Command = (int)Command.SetCommonSwitch, SubnetId = device.SubnetID, DeviceId = device.DeviceID, |
| | | DeviceName = device.Name, DeviceType = "UniversalDevice", LoopId = device.LoopID, |
| | | DataString = device.SendBytes[1].ToString(), |
| | | }); |
| | | } |
| | | } |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | alexaDeviceLista = ReadDeviceList (); |
| | | Application.RunOnMainThread (() => { |
| | | InitDevcieRow (alexaDeviceLista, bodyView); |
| | |
| | | var requestObj = new GetDeviceListObj () { RegionID = UserConfig.Instance.CurrentRegion.Id }; |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); |
| | | var revertObj = MainPage.RequestHttps (API.GetDeviceList, requestJson); |
| | | if (revertObj.StateCode.ToUpper () == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper () == StateCode.SUCCESS) { |
| | | deviceList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UpdateDeviceObj>> (revertObj.ResponseData.ToString ()); |
| | | } else { |
| | | //2020-06-29 弹窗提示错误 |
| | |
| | | //var requestObj = new UploadDevicesObj () { Device = uploadDevice }; |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (uploadDevice); |
| | | var revertObj = MainPage.RequestHttps (API.UploadDevices, requestJson); |
| | | if (revertObj.StateCode.ToUpper() == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | return true; |
| | | }else if (revertObj.StateCode == "Exist") { |
| | | Application.RunOnMainThread (() => { |
| | |
| | | |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (mUpdateAlexaDeviceObj); |
| | | var revertObj = MainPage.RequestHttps (API.UpdateDevice, requestJson); |
| | | if (revertObj.StateCode.ToUpper () == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper () == StateCode.SUCCESS) { |
| | | return true; |
| | | } else if (revertObj.StateCode == "Exist") { |
| | | Application.RunOnMainThread (() => { |
| | |
| | | var requestObj = new DelDeviceObj () { Id = commonId }; |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); |
| | | var revertObj = MainPage.RequestHttps (API.DeleteDevice, requestJson); |
| | | if (revertObj.StateCode.ToUpper() == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | return true; |
| | | } else { |
| | | //2020-06-29 弹窗提示错误 |
| | |
| | | var requestObj = new SceneByRegionListObj () { RegionID = UserConfig.Instance.CurrentRegion.Id }; |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); |
| | | var revertObj = MainPage.RequestHttps (API.GetSceneList, requestJson); |
| | | if (revertObj.StateCode.ToUpper() == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SceneByRegion>> (revertObj.ResponseData.ToString ()); |
| | | } else { |
| | | //2020-06-29 弹窗提示错误 |
| | |
| | | { |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (sceneMark); |
| | | var revertObj = MainPage.RequestHttps (API.AddSceneAndDeviceList, requestJson); |
| | | if (revertObj.StateCode.ToUpper() == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | //var requestAddDeviceObj = new BindDeviceToSceneItemObj () { SceneId = sceneId, Command = command, DeviceID = 0, DataString = dataString }; |
| | | //var requestAddDeviceJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestAddDeviceObj); |
| | | //var revertAddDeviceObj = MainPage.RequestHttps ("BindDeviceToSceneItem", requestAddDeviceJson); |
| | | //if (revertAddDeviceObj.StateCode.ToUpper() == "SUCCESS") { |
| | | //if (revertAddDeviceObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | return true; |
| | | //} |
| | | } else if (revertObj.StateCode == "Exist") { |
| | |
| | | // var requestAddDeviceObj = new BindDeviceToSceneItemObj () { SceneId = sceneId, Command = command, DeviceID = 0, DataString = dataString }; |
| | | // var requestAddDeviceJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestAddDeviceObj); |
| | | // var revertAddDeviceObj = MainPage.RequestHttps ("BindDeviceToSceneItem", requestAddDeviceJson); |
| | | // if (revertAddDeviceObj.StateCode.ToUpper() == "SUCCESS") { |
| | | // if (revertAddDeviceObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | // return true; |
| | | // } |
| | | // return false; |
| | |
| | | var requestObj = new DeleteSceneObj () { Id = sceneId }; |
| | | var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); |
| | | var revertObj = MainPage.RequestHttps (API.DeleteScene, requestJson); |
| | | if (revertObj.StateCode.ToUpper() == "SUCCESS") { |
| | | if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) { |
| | | return true; |
| | | } else { |
| | | //2020-06-29 弹窗提示错误 |
| | |
| | | #endregion |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="bodyView"></param> |
| | | /// <param name="isScene"></param> |
| | | void AddTopTitleView (VerticalScrolViewLayout bodyView, bool isScene = false) { |
| | | var chooseTypeView = new RowLayout () { |
| | | Height = Application.GetRealHeight (80), |
| | | BackgroundColor = SkinStyle.Current.TitileView, |
| | | }; |
| | | bodyView.AddChidren (chooseTypeView); |
| | | Button btnEquipmentIcon = new Button () { |
| | | Width = Application.GetRealHeight (65), |
| | | Height = Application.GetRealHeight (65), |
| | | UnSelectedImagePath = "Item/LogicModule.png", |
| | | X = Application.GetRealWidth (30), |
| | | Gravity = Gravity.CenterVertical, |
| | | }; |
| | | chooseTypeView.AddChidren (btnEquipmentIcon); |
| | | |
| | | Button btnEquipmentType = new Button () { |
| | | Width = Application.GetRealHeight (460), |
| | | X = btnEquipmentIcon.Right, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = Language.StringByID (R.MyInternationalizationString.Device), |
| | | TextColor = SkinStyle.Current.TextColor1, |
| | | SelectedTextColor = SkinStyle.Current.DialogTextColor |
| | | }; |
| | | chooseTypeView.AddChidren (btnEquipmentType); |
| | | |
| | | if (isScene) { |
| | | btnEquipmentIcon.UnSelectedImagePath = "Scene/Scene.png"; |
| | | btnEquipmentType.Text = Language.StringByID (R.MyInternationalizationString.Scenes); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 添加设备界面 |
| | | /// </summary> |
| | | public void InitDevcieRow (List<UpdateDeviceObj> list, VerticalScrolViewLayout bodyView) |
| | | { |
| | | bodyView.RemoveAll (); |
| | | |
| | | if (list.Count > 0) { |
| | | //添加标题 |
| | | AddTopTitleView (bodyView); |
| | | } |
| | | |
| | | foreach (var device in list) { |
| | | var rowView = new RowLayout () { |
| | | Height = Application.GetRealHeight (110), |
| | |
| | | alert.Show (); |
| | | alert.ResultEventHandler += (s, dd) => { |
| | | if (dd) { |
| | | if (DelDevice (device.Id)) { |
| | | rowView.RemoveFromParent (); |
| | | list.Remove (device); |
| | | } |
| | | //if (DelDevice (device.Id)) { |
| | | // rowView.RemoveFromParent (); |
| | | // list.Remove (device); |
| | | //} |
| | | |
| | | System.Threading.Tasks.Task.Run (() => { |
| | | Application.RunOnMainThread (() => { |
| | | MainPage.Loading.Start (Language.StringByID (R.MyInternationalizationString.load)); |
| | | }); |
| | | try { |
| | | var result = DelDevice (device.Id); |
| | | Application.RunOnMainThread (() => { |
| | | if (result) { |
| | | rowView.RemoveFromParent (); |
| | | list.Remove (device); |
| | | } |
| | | }); |
| | | |
| | | } catch { } finally { |
| | | |
| | | Application.RunOnMainThread (() => { |
| | | MainPage.Loading.Hide (); |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | }; |
| | | }; |
| | |
| | | /// </summary> |
| | | public void InitSceneRow (List<SceneByRegion> list, VerticalScrolViewLayout bodyView) |
| | | { |
| | | if (list.Count > 0) { |
| | | //添加标题 |
| | | AddTopTitleView (bodyView, true); |
| | | } |
| | | |
| | | foreach (var scene in list) { |
| | | var rowView = new RowLayout () { |
| | | Height = Application.GetRealHeight (110), |
| | |
| | | alert.Show (); |
| | | alert.ResultEventHandler += (s, dd) => { |
| | | if (dd) { |
| | | if (DelScene (scene.SceneId)) { |
| | | rowView.RemoveFromParent (); |
| | | list.Remove (scene); |
| | | } |
| | | //if (DelScene (scene.SceneId)) { |
| | | // rowView.RemoveFromParent (); |
| | | // list.Remove (scene); |
| | | //} |
| | | |
| | | System.Threading.Tasks.Task.Run (() => { |
| | | Application.RunOnMainThread (() => { |
| | | MainPage.Loading.Start (Language.StringByID (R.MyInternationalizationString.load)); |
| | | }); |
| | | try { |
| | | var result = DelScene (scene.SceneId); |
| | | Application.RunOnMainThread (() => { |
| | | if (result) { |
| | | rowView.RemoveFromParent (); |
| | | list.Remove (scene); |
| | | } |
| | | }); |
| | | |
| | | } catch { } finally { |
| | | |
| | | Application.RunOnMainThread (() => { |
| | | MainPage.Loading.Hide (); |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | }; |
| | | }; |