From 01c46e7bfe9aa8fb20b29f70c83c03a307af548a Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期二, 22 十二月 2020 16:35:16 +0800 Subject: [PATCH] 2020-12-22 1.更新。 --- HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs | 162 +++++++++++++---------------------------------------- 1 files changed, 40 insertions(+), 122 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs index ff038fd..cbf976b 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs @@ -76,7 +76,6 @@ Scene scene; - int pageTitleId; /// <summary> /// 鏇存柊鍔熻兘row /// </summary> @@ -97,17 +96,9 @@ }; } - public void LoadPage(int titleId,Action backRefresh) + public void LoadPage(Action backRefresh) { - pageTitleId = titleId; - new TopViewDiv(bodyView, Language.StringByID(pageTitleId)).LoadTopView(backRefresh); - initPage(); - } - - public void LoadPage(int titleId) - { - pageTitleId = titleId; - new TopViewDiv(bodyView, Language.StringByID(pageTitleId)).LoadTopView(); + new TopViewDiv(bodyView, Language.StringByID(StringId.EditScene)).LoadTopView(backRefresh); initPage(); } @@ -211,7 +202,7 @@ TextAlignment = TextAlignment.CenterLeft, TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.TextFontSize, - TextID = StringId.BelongToZone, + TextID = StringId.LocationManagement, }; belongToZoneRow.AddChidren(btnBelongToTitle); @@ -232,7 +223,7 @@ TextAlignment = TextAlignment.CenterRight, TextColor = CSS_Color.PromptingColor1, TextSize = CSS_FontSize.TextFontSize, - Text = scene.GetRoomListName() == "" ? Language.StringByID(StringId.WholeHouseScene) : scene.GetRoomListName() + Text = scene.GetRoomListName() == "" ? Language.StringByID(StringId.WholeZone) : scene.GetRoomListName() }; belongToZoneRow.AddChidren(btnZoneName); @@ -291,6 +282,7 @@ Action<string> action = (obj) => { scene.delay = obj; btnSceneDelayInfo.Text = FunctionList.List.GetDelayText(obj); + scene.EditScene(); }; new PublicAssmebly().SetSceneDelayDialog(action,scene.delay); }; @@ -327,7 +319,7 @@ TextAlignment = TextAlignment.CenterLeft, TextColor = CSS_Color.MainColor, TextSize = CSS_FontSize.SubheadingFontSize, - TextID = StringId.AddFunction, + TextID = StringId.FunctionManagement, IsBold = true, }; addFunctionRow.AddChidren(btnAddFunctionTitle); @@ -369,9 +361,9 @@ Y = Application.GetRealHeight(667 - 50), Height = Application.GetRealHeight(50), TextAlignment = TextAlignment.Center, - TextColor = pageTitleId == StringId.NewScene ? CSS_Color.MainColor : CSS_Color.WarningColor, + TextColor = CSS_Color.WarningColor, TextSize = CSS_FontSize.SubheadingFontSize, - TextID = pageTitleId == StringId.NewScene ? StringId.Complete : StringId.Del, + TextID = StringId.Del, BackgroundColor = CSS_Color.MainBackgroundColor, //IsBold = true }; @@ -418,8 +410,15 @@ { functionListView.RemoveAll(); functionListView.Height = Application.GetRealWidth(65 * scene.functions.Count); - foreach (var scenefunction in scene.functions) + for(int i =0;i<scene.functions.Count;) { + var scenefunction = scene.functions[i]; + if (scenefunction.localFunction == null) + { + scene.functions.Remove(scenefunction); + continue; + } + i++; var row = new RowLayout() { Height = Application.GetRealWidth(65), @@ -523,13 +522,11 @@ row.AddRightView(btnDelSceneFunction); btnDelSceneFunction.MouseUpEventHandler = (sender, e) => { scene.functions.Remove(scenefunction); - scene.SaveSceneData(true); + scene.EditScene(); row.RemoveFromParent(); functionListView.Height = Application.GetRealWidth(65 * scene.functions.Count); //LoadFunctionRow(functionListView); }; - - } } @@ -548,93 +545,34 @@ return Language.StringByID(StringId.Close); } } - - if (sceneFunction.status.Count == 0) - { - return sceneFunctionInfo += Language.StringByID(StringId.Open); - } + sceneFunctionInfo += Language.StringByID(StringId.Open) + " "; var modeState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Mode); var tempState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.SetTemp); var fanState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed); if (modeState != null) { - sceneFunctionInfo += FunctionList.List.GetValueText(modeState.key, modeState.value); + sceneFunctionInfo += FunctionList.List.GetValueText(modeState.key, modeState.value) + " "; } if (tempState != null) { - sceneFunctionInfo += FunctionList.List.GetValueText(tempState.key, tempState.value); + sceneFunctionInfo += FunctionList.List.GetValueText(tempState.key, tempState.value) + " "; sceneFunctionInfo += FunctionList.List.GetUintString(tempState.key); } if (fanState != null) { - sceneFunctionInfo += FunctionList.List.GetValueText(fanState.key, fanState.value); + sceneFunctionInfo += FunctionList.List.GetValueText(fanState.key, fanState.value) + " "; } var briState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness); if (briState != null) { - sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + briState.value + "%"; + sceneFunctionInfo += briState.value + "%"; } var perState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent); if (perState != null) { - sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + perState.value + "%"; + sceneFunctionInfo += perState.value + "%"; } - //FunctionAttributes perTrait; - - //switch (sceneFunction.localFunction.functionType) - //{ - // case FunctionType.AC: - // sceneFunctionInfo += sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode").GetCurValueText(); - // sceneFunctionInfo += " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp").curValue.ToString() + - // sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp").uintString; - // sceneFunctionInfo += sceneFunction.localFunction.attributes.Find((obj) => obj.key == "fan").GetCurValueText(); - // break; - // case FunctionType.FloorHeating: - // sceneFunctionInfo += sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode").GetCurValueText(); - // sceneFunctionInfo += " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp").curValue.ToString() + - // sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp").uintString; - // break; - // case FunctionType.Dimmer: - // perTrait = sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness"); - // if (perTrait != null) - // { - // sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness").curValue.ToString() + "%"; - // } - // else - // { - // sceneFunctionInfo += Language.StringByID(StringId.Open); - // } - // break; - // case FunctionType.Relay: - // sceneFunctionInfo += Language.StringByID(StringId.Open); - // break; - // case FunctionType.RGB: - // perTrait = sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent"); - // if (perTrait != null) - // { - // sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness").curValue.ToString() + "%"; - // } - // else - // { - // sceneFunctionInfo += Language.StringByID(StringId.Open); - // } - // break; - // case FunctionType.Curtain: - // sceneFunctionInfo += Language.StringByID(StringId.Open); - // break; - // case FunctionType.MotorCurtain: - // perTrait = sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent"); - // if (perTrait != null) - // { - // sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent").curValue.ToString() + "%"; - // } - // else - // { - // sceneFunctionInfo += Language.StringByID(StringId.Open); - // } - // break; - //} return sceneFunctionInfo; } @@ -747,7 +685,14 @@ EventHandler<MouseEventArgs> eventHandler = (sender, e) => { Action backAction = () => { - btnZoneName.Text = scene.GetRoomListName(); + var result = scene.EditScene(); + if (result == StateCode.SUCCESS) + { + btnZoneName.Text = scene.GetRoomListName(); + }else + { + IMessageCommon.Current.ShowErrorInfoAlter(result); + } }; var ssl = new SetSceneLocationPage(scene, backAction); MainPage.BasePageView.AddChidren(ssl); @@ -808,30 +753,12 @@ { btnTakePicture.IsSelected = false; - //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) => { CropImageCallBack(imagePath); - }, imageName, 4, 3); - //if (pageTitleId == StringId.EditScene) - //{ - // scene.SaveFunctionData(); - //} pictureOptionView.Parent.RemoveFromParent(); }; btnAlbum.MouseDownEventHandler = (sender, e) => { @@ -861,10 +788,6 @@ }, imageName, 4, 3); - //if (pageTitleId == StringId.EditScene) - //{ - // scene.SaveFunctionData(); - //} pictureOptionView.Parent.RemoveFromParent(); }; @@ -872,11 +795,9 @@ pictureOptionView.Parent.RemoveFromParent(); Action<string> action = (obj) => { scene.ImagePath = obj; + addSceneImageView.ImageBytes = null;//瑙e喅鏈塈mageBytes涓嶅姞杞絀magePath addSceneImageView.ImagePath = scene.ImagePath; - if (pageTitleId == StringId.EditScene) - { - scene.SaveSceneData(true); - } + scene.EditScene(); }; var galleryPage = new GalleryPage(scene.ImagePath,action); @@ -902,12 +823,9 @@ //涓婁紶鎴愬姛鍒板洖璋� Action<string> uploadSuccessAction = (imageUrl) => { - //2020-12-03 闇�瑕佽鏈�鏂扮殑鍥剧墖璺緞鍚屾鍒颁簯绔� - scene.ImagePath = imageUrl; - if (pageTitleId == StringId.EditScene) - { - scene.SaveSceneData(true); - } + //2020-12-03 闇�瑕佽鏈�鏂扮殑鍥剧墖璺緞鍚屾鍒颁簯绔� + scene.ImagePath = imageUrl; + scene.EditScene(); }; //涓婁紶鍥剧墖鍒颁簯绔� UploadImage(selectImagePath, addSceneImageView, scene, uploadSuccessAction); @@ -940,7 +858,7 @@ return; } } - scene.SaveSceneData(true); + scene.EditScene(); FunctionList.List.scenes.Add(scene); backAction(); this.RemoveFromParent(); @@ -977,11 +895,11 @@ }.Show(bodyView); return; } - btnSceneName.Text = str; scene.name = str; - if (pageTitleId == StringId.EditScene) + var result = scene.EditScene(); + if (result == StateCode.SUCCESS) { - scene.SaveSceneData(true); + btnSceneName.Text = str; } }; EventHandler<MouseEventArgs> eventHandler = (sender, e) => -- Gitblit v1.8.0