using System;
|
using System.Collections.Generic;
|
using Shared.Common;
|
|
namespace Shared.Phone.Device.CommonForm
|
{
|
public class SelectZone
|
{
|
public Action<Common.Room> ZoneAction;
|
/// <summary>
|
/// curRoom
|
/// </summary>
|
private Common.Room curRoom;
|
/// <summary>
|
/// 标题
|
/// </summary>
|
public string title = Language.StringByID(R.MyInternationalizationString.BelongZone);
|
/// <summary>
|
/// Init
|
/// </summary>
|
public void Init()
|
{
|
List<string> floorIds = new List<string> { };
|
List<string> floorNames = new List<string> { };
|
List<List<string>> roomNames = new List<List<string>> { };
|
List<List<Common.Room>> rooms = new List<List<Common.Room>> { };
|
List<Common.Room> rs = new List<Common.Room> { };
|
List<string> rNames = new List<string> { };
|
if (Config.Instance.Home.FloorDics.Count > 0)
|
{
|
foreach (var floor in Config.Instance.Home.FloorDics)
|
{
|
if (UserCenter.HdlRoomLogic.Current.GetRoomsByFloorId(floor.Key).Count > 0)
|
{
|
floorIds.Add(floor.Key);
|
floorNames.Add(floor.Value);
|
|
roomNames.Add(UserCenter.HdlRoomLogic.Current.GetRoomNamesByFloorId(floor.Key));
|
rooms.Add(UserCenter.HdlRoomLogic.Current.GetRoomsByFloorId(floor.Key));
|
}
|
}
|
PickerView.ShowSecondary(floorNames, roomNames, (index1, index2) =>
|
{
|
curRoom = rooms[index1][index2];
|
ZoneAction?.Invoke(curRoom);
|
}, 0, 0, title,
|
Language.StringByID(R.MyInternationalizationString.Confrim),
|
Language.StringByID(R.MyInternationalizationString.Cancel));
|
}
|
else
|
{
|
var listAllRoom = UserCenter.HdlRoomLogic.Current.GetAllListRooms();
|
for (int i = 0; i < listAllRoom.Count; i++)
|
{
|
var r = listAllRoom[i];
|
if (r.IsLove)
|
{
|
continue;
|
}
|
rs.Add(r);
|
rNames.Add(r.Name);
|
}
|
PickerView.Show(rNames, (index1) =>
|
{
|
curRoom = rs[index1];
|
ZoneAction?.Invoke(curRoom);
|
}, 0, title,
|
Language.StringByID(R.MyInternationalizationString.Confrim),
|
Language.StringByID(R.MyInternationalizationString.Cancel));
|
}
|
}
|
}
|
}
|