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/Room/UserDeviceListPage.cs |   47 +++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 39 insertions(+), 8 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Room/UserDeviceListPage.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Room/UserDeviceListPage.cs
index 8d935e9..7dbb41c 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Room/UserDeviceListPage.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Room/UserDeviceListPage.cs
@@ -267,6 +267,15 @@
                     globalSceneFileList = new List<string> ();
                 }
                 List<string> RoomsSceneFileList = new List<string> ();
+                //2020-07-24 澧炲姞鎴块棿鍦烘櫙
+                foreach (var r in Room.Lists) {
+                    if (string.IsNullOrEmpty (r.Name)) {
+                        continue;
+                    }
+                    if (r != null) {
+                        RoomsSceneFileList.AddRange (r.SceneFilePathList);
+                    }
+                }
                 List<string> TargetList = new List<string> ();
 
                 if (selectedDeviceType == "Scene") {
@@ -343,11 +352,11 @@
                         }
                         var commonBytes = IO.FileUtils.ReadFile (deviceFilePath);
                         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 ()) {
@@ -465,7 +474,7 @@
 
                                     if (remakeBytes.Length > 20) {
                                         etDeviceName.Text = CommonPage.MyEncodingGB2312.GetString (remakeBytes, 0, 20);
-                                        new Alert ("", "Remark length exceeded the limit. ", "Close").Show ();
+                                        new Alert ("", ErrorCode.RemarkLengthExceededTheLimit, "Close").Show ();
                                     }
                                 };
 
@@ -499,12 +508,18 @@
                                 dialogBottomView.AddChidren (editor);
 
                                 editor.MouseUpEventHandler += (dff, ffd) => {
-                                    byte [] remakeBytes = CommonPage.MyEncodingGB2312.GetBytes (etDeviceName.Text.Trim ());
-                                    if (remakeBytes.Length > 20) {
-                                        new Alert ("", "Remark length exceeded the limit. ", "Close").Show ();
+                                    string remakeStr = etDeviceName.Text.Trim ();
+                                    if (string.IsNullOrEmpty (remakeStr)) {
+                                        //澶囨敞涓嶈兘涓虹┖
+                                        new Alert ("", ErrorCode.RemarksCannotBeEmpty, "Close").Show ();
                                         return;
                                     }
 
+                                    byte [] remakeBytes = CommonPage.MyEncodingGB2312.GetBytes (remakeStr);
+                                    if (remakeBytes.Length > 20) {
+                                        new Alert ("", ErrorCode.RemarkLengthExceededTheLimit, "Close").Show ();
+                                        return;
+                                    }
 
                                     MainPage.Loading.Start ();
                                     //byte [] remakeBytes = CommonPage.MyEncodingGB2312.GetBytes (etDeviceName.Text.Trim ());
@@ -530,7 +545,23 @@
                                         if (reBytes != null) {
                                             Application.RunOnMainThread (() => {
                                                 btnEquipment.Text = commonDevice.Name = etDeviceName.Text.Trim ();
-                                                IO.FileUtils.SaveEquipmentMessage (commonDevice, commonDevice.LoopID.ToString ());
+                                                if (commonDevice.Type == DeviceType.InfraredMode) {
+                                                    //2020-07-03 淇绾㈠鐢佃淇敼鍚庡彉绾㈠妯″潡闂
+                                                    InfraredMode mTV = Newtonsoft.Json.JsonConvert.DeserializeObject<InfraredMode> (System.Text.Encoding.UTF8.GetString (commonBytes));
+                                                    if (mTV == null) {
+                                                        IO.FileUtils.SaveEquipmentMessage (commonDevice, commonDevice.LoopID.ToString ());
+                                                    } else {
+                                                        mTV.Name = etDeviceName.Text.Trim ();
+                                                        IO.FileUtils.SaveEquipmentMessage (mTV, mTV.LoopID.ToString ());
+                                                    }
+                                                } else {
+                                                    IO.FileUtils.SaveEquipmentMessage (commonDevice, commonDevice.LoopID.ToString ());
+                                                }
+
+
+
+
+                                                //IO.FileUtils.SaveEquipmentMessage (commonDevice, commonDevice.LoopID.ToString ());
                                                 MainPage.Loading.Hide ();
                                                 dialog.Close ();
                                             });
@@ -585,7 +616,7 @@
                             deviceScrolView.AddChidren (btnRowLine);
                         });
                     } catch (Exception ex) {
-                        Console.WriteLine (ex.Message);
+                        Utlis.WriteLine (ex.Message);
                     }
                 }
             });

--
Gitblit v1.8.0