using System;
using System.Collections.Generic;
using HDL_ON.Common;
using HDL_ON.DAL.Server;
using Shared;
namespace HDL_ON.UI
{
///
/// 功能分配房间BLL
///
public partial class ChooseRoomPage
{
///
/// 加载事件列表
///
void LoadEventLoad()
{
LoadMethod_AllElection();
}
///
/// 全选按钮事件
///
void LoadMethod_AllElection()
{
btnAllRoomText.MouseUpEventHandler += (sender, e) =>
{
btnChooseAll.IsSelected = !btnChooseAll.IsSelected;
for (int i = 0; i < contentView.ChildrenCount; i++)
{
var view = contentView.GetChildren(i);
if (view.GetType() == typeof(FrameLayout))
{
if (view.Tag != null && view.Tag.ToString() == "row")
{
for (int j = 0; j < (view as FrameLayout).ChildrenCount; j++)
{
var btn = (view as FrameLayout).GetChildren(j);
if (btn.GetType() == typeof(Button))
{
if (btn.Tag != null && btn.Tag.ToString() == "ChooseIcon")
{
(btn as Button).IsSelected = btnChooseAll.IsSelected;
}
}
}
}
}
}
function.roomIds.Clear();
if (btnChooseAll.IsSelected)
{
foreach (var room in Entity.SpatialInfo.CurrentSpatial.RoomList)
{
if (btnChooseAll.IsSelected)
{
function.roomIds.Add(room.roomId);
}
}
}
function.UpdataRoomIds();
Entity.SpatialInfo.CurrentSpatial.InitRoomListFunctions();
};
}
///
/// 房间选中事件
///
void LoadEvent_RoomSelected(Entity.Room room,bool isAdd)
{
if (isAdd)
{
function.roomIds.Add(room.roomId);
//room.AddRoomFunction(function);
}
else
{
function.roomIds.Remove(room.roomId);
//room.RemoveRoomFunction(function);
}
//function.UpdataRoomIds();
new System.Threading.Thread(() =>
{
try
{
var pack = ApiUtlis.Ins.HttpRequest.UpdataDevcieBindRoomInfo(function);
//直接保存本地,
function.SaveFunctionFile();
if (pack.Code == StateCode.SUCCESS)
{
if (UI.RoomPage.bodyView != null)
{
Application.RunOnMainThread(() =>
{
UI.RoomPage.bodyView.ReLoadPage();
});
}
}
else
{
IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
}
}
catch (Exception ex){
MainPage.Log("房间绑定设备异常" + ex.Message);
}
})
{ IsBackground = true }.Start();
if (function.roomIds.Count == Entity.SpatialInfo.CurrentSpatial.RoomList.Count)
{
btnChooseAll.IsSelected = true;
}
else
{
btnChooseAll.IsSelected = false;
}
}
}
}