From 1265d531759b5565e9f641b17045896b52dfdba8 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期四, 03 十二月 2020 18:37:47 +0800 Subject: [PATCH] 2020-12-03 1.主页增加未读消息查询和提示处理。2.房间和场景背景上传和下载和读取方法修改处理。3.头像上传和下载方案修改处理。4.增加子账号头像下载。5.Loading 调用方法修复。6.封装ImageUtlis 图片上传和下载管理工具类 7.读取本地住宅增加判空处理。 --- HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs | 186 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 161 insertions(+), 25 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs index 00ae5a7..2dafbbf 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs @@ -3,6 +3,8 @@ using Shared; using HDL_ON.Entity; using System.Collections.Generic; +using System.Threading; +using HDL_ON.DAL.Server; namespace HDL_ON.UI { @@ -136,9 +138,13 @@ Gravity = Gravity.CenterHorizontal, Height = Application.GetRealWidth(184), Radius = (uint)Application.GetRealWidth(12), - ImagePath = scene.ImagePath + //ImagePath = scene.ImagePath }; sceneBgView.AddChidren(addSceneImageView); + + //2020-12-03 淇敼鍥剧墖鍔犺浇鏂规硶 + ImageUtlis.Current.LoadLocalOrNetworkImages(scene.ImagePath, addSceneImageView); + #region 鍦烘櫙鍚嶇Оrow sceneNameView = new FrameLayout() @@ -740,20 +746,30 @@ { btnTakePicture.IsSelected = false; - var pid = Guid.NewGuid(); + //var pid = Guid.NewGuid(); + //CropImage.TakePicture((imagePath) => + //{ + // if (imagePath != null) + // { + // addSceneImageView.ImagePath = imagePath.ToString(); + // scene.ImagePath = addSceneImageView.ImagePath; + // MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); + // } + //}, pid.ToString(), 4, 3); + + + var imageName = Guid.NewGuid().ToString(); + //var imageName = scene.sid; CropImage.TakePicture((imagePath) => { - if (imagePath != null) - { - addSceneImageView.ImagePath = imagePath.ToString(); - scene.ImagePath = addSceneImageView.ImagePath; - MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); - } - }, pid.ToString(), 4, 3); - if (pageTitleId == StringId.EditScene) - { - scene.SaveSceneData(); - } + CropImageCallBack(imagePath); + + }, imageName, 4, 3); + + //if (pageTitleId == StringId.EditScene) + //{ + // scene.SaveFunctionData(); + //} pictureOptionView.Parent.RemoveFromParent(); }; btnAlbum.MouseDownEventHandler = (sender, e) => { @@ -763,20 +779,30 @@ btnAlbum.MouseUpEventHandler = (sender, e) => { btnAlbum.IsSelected = false; - var pid = Guid.NewGuid(); + //var pid = Guid.NewGuid(); + //CropImage.SelectPicture((imagePath) => + //{ + // if (imagePath != null) + // { + // addSceneImageView.ImagePath = imagePath.ToString(); + // scene.ImagePath = addSceneImageView.ImagePath; + // MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); + // } + //}, pid.ToString(), 4, 3); + + //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀 + var imageName = Guid.NewGuid().ToString(); + //var imageName = scene.sid; CropImage.SelectPicture((imagePath) => { - if (imagePath != null) - { - addSceneImageView.ImagePath = imagePath.ToString(); - scene.ImagePath = addSceneImageView.ImagePath; - MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + imagePath); - } - }, pid.ToString(), 4, 3); - if (pageTitleId == StringId.EditScene) - { - scene.SaveSceneData(); - } + CropImageCallBack(imagePath); + }, imageName, 4, 3); + + + //if (pageTitleId == StringId.EditScene) + //{ + // scene.SaveFunctionData(); + //} pictureOptionView.Parent.RemoveFromParent(); }; @@ -797,6 +823,32 @@ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; + } + + /// <summary> + /// 瑁佸壀瀹岀収鐗囧洖璋冿紝缁熶竴澶勭悊 + /// </summary> + /// <param name="imagePath">瑁佸壀鍚庣殑鐪熷疄璺緞</param> + /// <param name="imageName">鑷畾涔夌殑鍥剧墖鍚嶇О</param> + void CropImageCallBack(string selectImagePath) + { + if (string.IsNullOrEmpty(selectImagePath) == true) + { + return; + } + + //涓婁紶鎴愬姛鍒板洖璋� + Action<string> uploadSuccessAction = (imageUrl) => + { + //2020-12-03 闇�瑕佽鏈�鏂扮殑鍥剧墖璺緞鍚屾鍒颁簯绔� + scene.ImagePath = imageUrl; + if (pageTitleId == StringId.EditScene) + { + scene.SaveSceneData(); + } + }; + //涓婁紶鍥剧墖鍒颁簯绔� + UploadImage(selectImagePath, addSceneImageView, scene, uploadSuccessAction); } /// <summary> @@ -884,5 +936,89 @@ btnEditSceneNameIcon.MouseUpEventHandler = eventHandler; } + /// <summary> + /// 涓婁紶鍥剧墖鏂规硶 + /// </summary> + /// <param name="selectImagePath">瑁佸壀鍚庣殑鍥剧墖璺緞</param> + /// <param name="imageView"></param> + /// <param name="uploadSuccessAction"></param> + void UploadImage(string selectImagePath, ImageView imageView, Scene mScene, Action<string> uploadSuccessAction) + { + try + { + MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + selectImagePath); + //1.璇诲彇瑁佸壀鍚庣殑鍥剧墖锛岀劧鍚庡垹闄� + var imageBytes = Shared.IO.FileUtils.ReadFile(selectImagePath); + System.IO.File.Delete(selectImagePath); + + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + //寮�濮嬩笂浼� + new Thread(() => + { + try + { + var newImageName = mScene.name.Trim() + ".png"; + var uploadImageObj = new UploadImageObj() + { + prefix = "ONS", + fileName = newImageName, + uid = mScene.sid, + content = imageBytes, + }; + + var imageUrl = ImageUtlis.Current.UploadImage(uploadImageObj); + if (!string.IsNullOrEmpty(imageUrl) && imageUrl.Contains(newImageName)) + { + //涓婁紶鎴愬姛 + Application.RunOnMainThread(() => + { + Utlis.WriteLine("涓婁紶鎴愬姛锛�" + imageUrl); + //1.2濡傛灉鏄嚜瀹氫箟鍥剧墖鍒犻櫎涔嬪墠鐨� + if (!imageView.ImagePath.Contains("Classification/Room/Roombg")) + { + Utlis.WriteLine("鍒犻櫎: " + imageView.ImagePath); + System.IO.File.Delete(imageView.ImagePath); + } + //閲嶅懡鍚嶄繚瀛� + FileUtils.WriteFileByBytes(imageUrl, imageBytes); + imageView.ImagePath = null; + imageView.ImageBytes = imageBytes; + //涓婁紶鎴愬姛 + Utlis.ShowTip(Language.StringByID(StringId.UploadSuccessfully)); + uploadSuccessAction?.Invoke(imageUrl); + }); + } + else + { + //涓婁紶澶辫触 + Application.RunOnMainThread(() => + { + //涓婁紶澶辫触 + Utlis.ShowTip(Language.StringByID(StringId.UploadFailed)); + }); + } + + } + catch (Exception ex) + { + } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); + } + catch { } + } } } -- Gitblit v1.8.0