From 16604a593202f2f87adf71abd57d036fe7da3b52 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期一, 18 十一月 2019 10:39:42 +0800
Subject: [PATCH] 同步了全部的代码

---
 ZigbeeApp/Shared/Phone/UserCenter/Residence/EditorRoomInforForm.cs |  103 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 94 insertions(+), 9 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/EditorRoomInforForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/EditorRoomInforForm.cs
index a737171..33a4e14 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/EditorRoomInforForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/EditorRoomInforForm.cs
@@ -55,18 +55,26 @@
             //娓呯┖bodyFrame
             this.ClearBodyFrame();
 
-            var btnPic = new PicViewControl(887, 444);
+            var btnPic = new ImageView();
             btnPic.Y = Application.GetRealHeight(60);
+            btnPic.Width = Application.GetMinRealAverage(887);
+            btnPic.Height = Application.GetMinRealAverage(444);
             btnPic.Gravity = Gravity.CenterHorizontal;
-            btnPic.UnSelectedImagePath = this.cloneRoom.BackgroundImage;
+            btnPic.Radius = 17;
+            btnPic.ImagePath = this.editorRoom.BackgroundImage;
             bodyFrameLayout.AddChidren(btnPic);
+            btnPic.MouseUpEventHandler += (sender, e) =>
+            {
+                //鎴块棿鍥剧墖閫夋嫨
+                this.RoomPictrueSelect(btnPic);
+            };
 
             //鍒濆鍖栨甯�
             var tableContr = new InformationEditorControl();
             this.listview = tableContr.InitControl(bodyFrameLayout, Language.StringByID(R.MyInternationalizationString.uInfoEditor), 562, 1175);
 
             //娣诲姞鍏ㄩ儴鑿滃崟
-            this.AddAllMenuRow(tableContr);
+            this.AddAllMenuRow(tableContr, btnPic);
         }
 
         #endregion
@@ -76,7 +84,7 @@
         /// <summary>
         /// 娣诲姞鍏ㄩ儴鑿滃崟
         /// </summary>
-        private void AddAllMenuRow(InformationEditorControl tableContr)
+        private void AddAllMenuRow(InformationEditorControl tableContr, ImageView btnPic)
         {
             //銆愭埧闂村悕绉般��
             var txtRoomName = new FrameCaptionInputControl(Language.StringByID(R.MyInternationalizationString.uRoomName), this.cloneRoom.Name, this.listview.rowSpace / 2);
@@ -158,6 +166,16 @@
                 if (this.CheckCanSaveRoom() == false)
                 {
                     return;
+                }
+                if (editorRoom.BackgroundImageType == 1 || editorRoom.BackgroundImageType == 2)
+                {
+                    //鐢熸垚鍥剧墖
+                    string picName = $"Room_{DateTime.Now.ToString("yyyyMMddHHmmss")}";
+                    string picFullName = System.IO.Path.Combine(Common.Config.Instance.FullPath, picName);
+                    Shared.IO.FileUtils.WriteFileByBytes(picFullName, btnPic.ImageBytes);
+                    editorRoom.BackgroundImage = picFullName;
+                    //澶囦唤
+                    HdlAutoBackupLogic.AddOrEditorFile(picName);
                 }
                 editorRoom.Save();
 
@@ -381,6 +399,69 @@
 
         #endregion
 
+        #region 鈻� 鎴块棿鍥剧墖閫夋嫨_______________________
+
+        /// <summary>
+        /// 鎴块棿鍥剧墖閫夋嫨
+        /// </summary>
+        /// <param name="imageContr"></param>
+        private void RoomPictrueSelect(ImageView imageContr)
+        {
+            var menuContr = new BottomMenuSelectForm();
+            menuContr.AddForm(3);
+            //榛樿鍥惧簱
+            menuContr.AddMenu(Language.StringByID(R.MyInternationalizationString.LocalPicture), () =>
+            {
+                var localPic = new Phone.Device.Room.AddRoomSelectPicByLocal();
+                Shared.Phone.UserView.HomePage.Instance.AddChidren(localPic);
+                Shared.Phone.UserView.HomePage.Instance.PageIndex += 1;
+                localPic.Show();
+                localPic.action = (imgPath) =>
+                {
+                    if (string.IsNullOrEmpty(imgPath) == true)
+                    {
+                        return;
+                    }
+                    this.cloneRoom.BackgroundImageType = 0;
+                    this.cloneRoom.BackgroundImage = imgPath;
+                    imageContr.ImagePath = imgPath;
+                };
+            });
+            //鎷嶇収
+            menuContr.AddMenu(Language.StringByID(R.MyInternationalizationString.Photograph), () =>
+            {
+                //閫氳繃鐩告満鎷嶇収瑁佸壀
+                CropImage.TakePicture((imagePath) =>
+                {
+                    if (string.IsNullOrEmpty(imagePath) == true)
+                    {
+                        return;
+                    }
+                    this.cloneRoom.BackgroundImageType = 1;
+                    imageContr.ImageBytes = Shared.IO.FileUtils.ReadFile(imagePath);
+                    System.IO.File.Delete(imagePath);
+                }, "HdlPic", 2, 1);
+            });
+            //鎴戠殑鐩稿唽
+            menuContr.AddMenu(Language.StringByID(R.MyInternationalizationString.MyAblums), () =>
+            {
+                //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀
+                CropImage.SelectPicture((imagePath) =>
+                {
+                    if (string.IsNullOrEmpty(imagePath) == true)
+                    {
+                        return;
+                    }
+                    this.cloneRoom.BackgroundImageType = 2;
+                    imageContr.ImageBytes = Shared.IO.FileUtils.ReadFile(imagePath);
+                    System.IO.File.Delete(imagePath);
+
+                }, "HdlPic", 2, 1);
+            });
+        }
+
+        #endregion
+
         #region 鈻� 鐣岄潰鍏抽棴___________________________
 
         /// <summary>
@@ -429,13 +510,17 @@
                     return false;
                 }
             }
-
-            if (cloneRoom.BackgroundImageType == 1 || cloneRoom.BackgroundImageType == 2)
+            if (editorRoom.BackgroundImageType == 1 || editorRoom.BackgroundImageType == 2)
             {
-                this.cloneRoom.MoveBackGroundIamageFileToDirectory(cloneRoom.BackgroundImage, cloneRoom.BackgroundImage);
-                this.cloneRoom.BackgroundImage = $"{Common.Config.Instance.Guid}/{Common.Config.Instance.HomeId}/{cloneRoom.BackgroundImage}";
+                //鍒犻櫎鎺夊師鏉ョ殑鑷畾涔夊浘鐗�
+                if (System.IO.File.Exists(editorRoom.BackgroundImage) == true)
+                {
+                    System.IO.File.Delete(editorRoom.BackgroundImage);
+                }
+                //澶囦唤
+                string[] MyArry = editorRoom.BackgroundImage.Split(new string[] { "/", @"\" }, StringSplitOptions.RemoveEmptyEntries);
+                HdlAutoBackupLogic.DeleteFile(MyArry[MyArry.Length - 1]);
             }
-
             editorRoom.FloorId = cloneRoom.FloorId;
             editorRoom.Name = cloneRoom.Name;
             editorRoom.HumidityDevice = cloneRoom.HumidityDevice;

--
Gitblit v1.8.0