陈嘉乐
2020-10-13 611786df5108dca0bdcff03834cc285cba4b8e61
HDL_ON/UI/UI2/4-PersonalCenter/ResidentialManage/FloorsManagementPageBLL.cs
@@ -1,4 +1,5 @@
using System;
using System.Collections.Generic;
using HDL_ON.Entity;
using Shared;
@@ -9,42 +10,64 @@
        /// <summary>
        /// 楼层按钮修改名称点击事件
        /// </summary>
        void LoadEvent_FloorNamgeChange(string floor,Button btn)
        void LoadEvent_FloorNamgeChange(Button btn,Button btnDel,RowLayout row,Floor floor)
        {
            btn.MouseUpEventHandler = (sender, e) =>
            {
                Action<string> editCallBack = (newName) =>
                {
                    if (DB_ResidenceData.residenceData.floors.Contains(newName))
                    //楼层名称不能为空
                    if (string.IsNullOrEmpty(newName))
                    {
                        new Tip()
                        {
                            CloseTime = 3,
                            Text = Language.StringByID(StringId.FloorNameCannotBeEmpty),
                            Direction = AMPopTipDirection.None,
                        }.Show(bodyView);
                        return;
                    }
                    if (DB_ResidenceData.residenceData.floors.Find((obj) => obj.name == newName) != null)
                    {
                        return;
                    }
                    else
                    {
                        DB_ResidenceData.residenceData.floors.Add(newName);
                        floor.name = newName;
                        DB_ResidenceData.residenceData.SaveResidenceData();
                        btn.Text = newName;
                        btnDel.Tag = newName;
                        row.Tag = newName;
                    }
                };
                new PublicAssmebly().LoadDialog_EditParater(StringId.EditFloorName, floor, editCallBack);
                var floors = new List<string>();
                foreach (var f in DB_ResidenceData.residenceData.floors)
                {
                    floors.Add(f.name);
                }
                new PublicAssmebly().LoadDialog_EditParater(StringId.EditFloorName, btn.Text, editCallBack,StringId.FloorNameCannotBeEmpty,
                    StringId.EditFloorFailed_FloorAlreadyExist,floors);
            };
        }
        Button lastButton;
        /// <summary>
        /// 房间绑定楼层,楼层选中事件
        /// </summary>
        void LoadEvent_FloorChoose(Button btn)
        {
            btn.MouseUpEventHandler = (sender, e) => {
                btn.IsSelected = true;
                btn.IsBold = true;
                if (lastButton != null)
                {
                    lastButton.IsSelected = false;
                    btn.IsBold = false;
                    if (lastButton.Text == btn.Text)
                    {
                        lastButton = null;
                    }
                    //btn.IsBold = false;
                }
                btn.IsSelected = true;
                //btn.IsBold = true;
                lastButton = btn;
            };
        }
@@ -58,10 +81,7 @@
            {
                Action action = () =>
                {
                    string delFloor = (sender as Button).Tag.ToString();
                    DB_ResidenceData.residenceData.floors.Remove(delFloor);
                    DB_ResidenceData.residenceData.SaveResidenceData();
                    topCallBcak("del", delFloor);
                    refreshFloorList("del", btn.Tag.ToString());
                };
                new PublicAssmebly().TipMsg(StringId.Tip, StringId.DelFloorTip, action);
            };
@@ -72,9 +92,17 @@
        /// </summary>
        void LoadEvent_BindFloor()
        {
            btnConfrim.MouseUpEventHandler = (sender, e) => {
                room.floorIndex = DB_ResidenceData.residenceData.floors.IndexOf(lastButton.Text.Trim());
            btnConfrim.MouseUpEventHandler = (sender, e) =>
            {
                if (lastButton == null)
                {
                    return;
                }
                room.floorId = lastButton.Tag.ToString();
                room.floorId = lastButton.Tag.ToString();
                backAction?.Invoke();
                bodyView.RemoveFromParent();
                DB_ResidenceData.residenceData.SaveResidenceData();
            };
        }