From 5a5a2b696866f947b6025d26c3302e8ffef46435 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期一, 11 一月 2021 16:11:20 +0800
Subject: [PATCH] 2021-01-11 1.更新MQTT连接和本地搜索网关方法。2.子账号相关接口完善

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Alexa/AlexaSettingPage.cs |  174 +++++++++++++++++----------------------------------------
 1 files changed, 53 insertions(+), 121 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Alexa/AlexaSettingPage.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Alexa/AlexaSettingPage.cs
index f20d349..f36fde0 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Alexa/AlexaSettingPage.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Alexa/AlexaSettingPage.cs
@@ -84,8 +84,8 @@
             chooseTypeView.AddChidren (btnEquipmentIcon);
             Button btnDrodIcon = new Button () {
                 X = Application.GetRealWidth (540),
-                Height = Application.GetRealHeight (46),
-                Width = Application.GetRealWidth (47),
+                Height = Application.GetMinRealAverage (46),
+                Width = Application.GetMinRealAverage (47),
                 UnSelectedImagePath = "Item/Down.png",
                 SelectedImagePath = "Item/DownSelected.png",
                 Gravity = Gravity.CenterVertical,
@@ -187,16 +187,16 @@
                     || typeString.ToString () == DeviceType.CurtainTrietex.ToString ()
                     #endregion
                     #region ac
-                    || typeString.ToString () == DeviceType.ACPanel.ToString ()
-                    || typeString.ToString () == DeviceType.ACDevice.ToString ()
-                    || typeString.ToString () == DeviceType.ACInfrared.ToString ()
-                    || typeString.ToString () == DeviceType.ACCoolmaster.ToString ()
-                    || typeString.ToString () == DeviceType.CustomAC.ToString ()
-                    || typeString.ToString () == DeviceType.HVAC.ToString ()
+                    //|| typeString.ToString () == DeviceType.ACPanel.ToString ()
+                    //|| typeString.ToString () == DeviceType.ACDevice.ToString ()
+                    //|| typeString.ToString () == DeviceType.ACInfrared.ToString ()
+                    //|| typeString.ToString () == DeviceType.ACCoolmaster.ToString ()
+                    //|| typeString.ToString () == DeviceType.CustomAC.ToString ()
+                    //|| typeString.ToString () == DeviceType.HVAC.ToString ()
                     #endregion
                     #region 
                     || typeString.ToString () == DeviceType.FanModule.ToString ()
-                    || typeString.ToString () == DeviceType.UniversalDevice.ToString ()
+                    //|| typeString.ToString () == DeviceType.UniversalDevice.ToString ()
                     #endregion
                     );
                 });
@@ -261,11 +261,11 @@
                         }
                         var commonBytes = IO.FileUtils.ReadFile (filePath);
                         if (commonBytes.Length == 0) {
-                            Console.WriteLine ("length loss");
+                            Utlis.WriteLine ("length loss");
                             continue;
                         }
                         if (commonBytes.Length == 1) {
-                            Console.WriteLine ("length loss 1");
+                            Utlis.WriteLine ("length loss 1");
                             continue;
                         }
                         if (str [1] == DeviceType.InfraredMode.ToString ()) {
@@ -283,6 +283,8 @@
                             deviceFilePath = deviceFilePath.Replace ("LightSwitchSocket", "LightSwitch");
                         } else if(deviceFilePath.Contains("ACInfrared")) {
                             deviceFilePath = deviceFilePath.Replace ("ACInfrared", "HVAC");
+                        } else if (deviceFilePath.Contains ("CurtainModel")) {
+                            deviceFilePath = deviceFilePath.Replace ("CurtainModel", "CurtainModule");
                         }
                         Common commonDevice = Newtonsoft.Json.JsonConvert.DeserializeObject<Common> (System.Text.Encoding.UTF8.GetString (commonBytes));
                         if (commonDevice.Type == DeviceType.OnePortBus || commonDevice.Type == DeviceType.OnePortWirelessFR || commonDevice.Type == DeviceType.OnePortMqttFR || commonDevice.Type == DeviceType.RCU
@@ -343,118 +345,31 @@
                             if (selectedDeviceType != "Scene") {
                                 //2020-01-10 闅愯棌淇敼鎸夐挳
                                 //return;
-                                //var btnEdit = new Button () {
-                                //    X = btnEquipment.Right + Application.GetRealWidth (80),
-                                //    Width = Application.GetRealWidth (75),
-                                //    Height = Application.GetRealHeight (72),
-                                //    Gravity = Gravity.CenterVertical,
-                                //    UnSelectedImagePath = "CrabtreeAdd/Edit.png",
-                                //    SelectedImagePath = "CrabtreeAdd/EditOn.png",
-                                //};
-                                //deviceRow.AddChidren (btnEdit);
-                                //btnEdit.MouseUpEventHandler += (sd, ds) => {
-                                //    Dialog dialog = new Dialog ();
+                                var btnEdit = new Button () {
+                                    X = btnEquipment.Right + Application.GetRealWidth (80),
+                                    Width = Application.GetMinRealAverage (75),
+                                    Height = Application.GetMinRealAverage (72),
+                                    Gravity = Gravity.CenterVertical,
+                                    UnSelectedImagePath = "CrabtreeAdd/Edit.png",
+                                    SelectedImagePath = "CrabtreeAdd/EditOn.png",
+                                };
+                                deviceRow.AddChidren (btnEdit);
 
-                                //    var dialogView = new FrameLayout () {
-                                //        Gravity = Gravity.Center,
-                                //        Width = Application.GetRealWidth (500),
-                                //        Height = Application.GetRealHeight (300),
-                                //        BackgroundColor = SkinStyle.Current.DialogColor,
-                                //        Radius = 5,
-                                //        BorderColor = SkinStyle.Current.Transparent,
-                                //        BorderWidth = 1,
-                                //    };
-                                //    dialog.AddChidren (dialogView);
-
-                                //    var etDeviceName = new EditText () {
-                                //        Y = Application.GetRealHeight (80),
-                                //        Gravity = Gravity.CenterHorizontal,
-                                //        Width = Application.GetRealWidth (350),
-                                //        Height = Application.GetRealHeight (70),
-                                //        Text = commonDevice.Name,
-                                //        TextAlignment = TextAlignment.Center,
-                                //        TextColor = SkinStyle.Current.TextColor,
-                                //        Radius = 1,
-                                //        BorderWidth = 1,
-                                //        BorderColor = SkinStyle.Current.BorderColor,
-                                //    };
-                                //    dialogView.AddChidren (etDeviceName);
-
-                                //    etDeviceName.EditorEnterAction += (obj2) => {
-                                //        Application.HideSoftInput ();
-                                //    };
-
-                                //    var dialogBottomView = new FrameLayout () {
-                                //        Y = Application.GetRealHeight (213),
-                                //        Height = Application.GetRealHeight (90),
-                                //        BackgroundColor = SkinStyle.Current.Black50Transparent,
-                                //    };
-                                //    dialogView.AddChidren (dialogBottomView);
-
-                                //    var btnClose = new Button () {
-                                //        Width = Application.GetRealWidth (250),
-                                //        TextAlignment = TextAlignment.Center,
-                                //        TextID = R.MyInternationalizationString.cancel,
-                                //        TextColor = SkinStyle.Current.TextColor,
-                                //        BackgroundColor = SkinStyle.Current.ButtonColor,
-                                //    };
-                                //    dialogBottomView.AddChidren (btnClose);
-                                //    btnClose.MouseUpEventHandler += (ddss, dddsss) => {
-                                //        dialog.Close ();
-                                //    };
-
-                                //    var editor = new Button () {
-                                //        X = btnClose.Right + 1,
-                                //        Width = Application.GetRealWidth (250),
-                                //        TextAlignment = TextAlignment.Center,
-                                //        TextID = R.MyInternationalizationString.SAVE,
-                                //        TextColor = SkinStyle.Current.TextColor,
-                                //        BackgroundColor = SkinStyle.Current.ButtonColor,
-                                //    };
-                                //    dialogBottomView.AddChidren (editor);
-
-                                //    editor.MouseUpEventHandler += (dff, ffd) => {
-                                //        MainPage.Loading.Start ();
-                                //        byte [] remakeBytes = CommonPage.MyEncodingGB2312.GetBytes (etDeviceName.Text.Trim ());
-                                //        System.Threading.Tasks.Task.Run (() => {
-                                //            byte [] updateBytes = Control.ControlBytesSendHasReturn (Command.ReadDeviceLoopInfo, commonDevice.SubnetID, commonDevice.DeviceID, new byte [] { commonDevice.BigClass, commonDevice.MinClass, commonDevice.LoopID });
-                                //            if (updateBytes == null) {
-                                //                Application.RunOnMainThread (() => {
-                                //                    new Alert ("", Language.StringByID (R.MyInternationalizationString.TipEquipmentNotOnline), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
-                                //                    MainPage.Loading.Hide ();
-                                //                    dialog.Close ();
-                                //                });
-                                //                return;
-                                //            }
-                                //            byte [] uBytes = new byte [20];
-                                //            Array.Copy (remakeBytes, 0, uBytes, 0, remakeBytes.Length < 20 ? remakeBytes.Length : 20);
-                                //            Array.Copy (uBytes, 0, updateBytes, 3, 20 < uBytes.Length ? 20 : uBytes.Length);
-                                //            var reBytes = Control.ControlBytesSendHasReturn (Command.SetDeviceLoopInfo, commonDevice.SubnetID, commonDevice.DeviceID, updateBytes);
-                                //            if (reBytes != null) {
-                                //                Application.RunOnMainThread (() => {
-                                //                    btnEquipment.Text = commonDevice.Name = etDeviceName.Text.Trim ();
-                                //                    IO.FileUtils.SaveEquipmentMessage (commonDevice, commonDevice.LoopID.ToString ());
-                                //                    MainPage.Loading.Hide ();
-                                //                    dialog.Close ();
-                                //                });
-                                //            } else {
-                                //                Application.RunOnMainThread (() => {
-                                //                    new Alert ("", Language.StringByID (R.MyInternationalizationString.FailureToModify), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
-                                //                    MainPage.Loading.Hide ();
-                                //                    dialog.Close ();
-                                //                });
-                                //            }
-                                //        });
-                                //    };
-
-                                //    dialog.Show ();
-                                //};
+                                btnEdit.MouseUpEventHandler += (sd, ds) => {
+                                    Action successAction = () => {
+                                        GenericDialog.Current.RefreshRemark (commonDevice);
+                                        if (!roomDeviceFilePathList.Contains (filePath)) {
+                                            roomDeviceFilePathList.Add (filePath);
+                                        }
+                                    };
+                                    GenericDialog.Current.ShowModifyRemarksDialog (commonDevice, commonBytes, btnEquipment, successAction);
+                                };
                             }
 
                             var btnChoose = new Button () {
                                 X = Application.GetRealWidth (472 + 80),
-                                Width = Application.GetRealWidth (75),
-                                Height = Application.GetRealHeight (72),
+                                Width = Application.GetMinRealAverage (75),
+                                Height = Application.GetMinRealAverage (72),
                                 Gravity = Gravity.CenterVertical,
                                 UnSelectedImagePath = "CrabtreeAdd/Choose.png",
                                 SelectedImagePath = "CrabtreeAdd/ChooseOn.png",
@@ -463,6 +378,8 @@
                             };
                             btnChoose.AddTag ("DeviceFilePath", deviceFilePath);
                             deviceRow.AddChidren (btnChoose);
+
+                          
 
                             btnChoose.MouseUpEventHandler += (sendere, ee) => {
                                 btnChoose.IsSelected = !btnChoose.IsSelected;
@@ -483,9 +400,24 @@
                                     showList.Remove (((Button)sendere).Tag.ToString ());
                                 }
                             };
+
+                            if (selectedDeviceType == "Scene") {
+                                //string [] str = filePath.Split ('_');
+                                var sceneName = str [str.Length - 2];//鍊掓暟绗竴浣嶄负鍦烘櫙鍚�
+                                btnChoose.IsSelected = showList.Contains (sceneName);
+                                btnChoose.Enable = !btnChoose.IsSelected;
+                            } else {
+                                //2020-07-23 濡傛灉鍖归厤鍒欏垽鏂槸鍚︽坊鍔犵湡姝g殑璺緞
+                                if (btnChoose.IsSelected) {
+                                    if (!roomDeviceFilePathList.Contains (filePath)) {
+                                        roomDeviceFilePathList.Add (filePath);
+                                    }
+                                }
+                            }
+
                         });
                     } catch (Exception ex) {
-                        Console.WriteLine (ex.Message);
+                        Utlis.WriteLine (ex.Message);
                     }
                 }
             });
@@ -500,7 +432,7 @@
                     Language.StringByID(R.MyInternationalizationString.All),
                     Language.StringByID(R.MyInternationalizationString.Scenes),
                     Language.StringByID(R.MyInternationalizationString.Lights),
-                    Language.StringByID(R.MyInternationalizationString.AC),
+                    //Language.StringByID(R.MyInternationalizationString.AC),
                     Language.StringByID(R.MyInternationalizationString.Curtains),
                     //Language.StringByID(R.MyInternationalizationString.FoolHeat),
                     //Language.StringByID(R.MyInternationalizationString.FreshAir),
@@ -510,7 +442,7 @@
                     //Language.StringByID (R.MyInternationalizationString.LogicModule),
                     //Language.StringByID(R.MyInternationalizationString.ElectricalControl),
                     //Language.StringByID (R.MyInternationalizationString.MusicModel),
-                    Language.StringByID (R.MyInternationalizationString.UniversalDevice),
+                    //Language.StringByID (R.MyInternationalizationString.UniversalDevice),
                     //Language.StringByID (R.MyInternationalizationString.Sensor),
                 };
 

--
Gitblit v1.8.0