using System;
|
using Shared;
|
using HDL_ON.UI.CSS;
|
using HDL_ON.Stan;
|
using HDL_ON.Entity;
|
using System.Collections.Generic;
|
|
namespace HDL_ON.UI
|
{
|
/// <summary>
|
/// 管理员权限迁移的成员列表界面
|
/// </summary>
|
public class AdminMigrationMemberListPage : EditorCommonForm
|
{
|
#region ■ 变量声明___________________________
|
|
/// <summary>
|
/// 成员列表
|
/// </summary>
|
private List<ResidenceMemberInfo> listMember = null;
|
|
#endregion
|
|
#region ■ 初始化_____________________________
|
|
/// <summary>
|
/// 画面显示(底层会固定调用此方法,借以完成画面创建)
|
/// </summary>
|
public void ShowForm()
|
{
|
//管理员权限转移
|
base.SetTitleText(Language.StringByID(StringId.AdminAuthorityTransfer));
|
|
//初始化中部信息
|
this.InitMiddleFrame();
|
}
|
|
/// <summary>
|
/// 初始化中部信息
|
/// </summary>
|
private void InitMiddleFrame()
|
{
|
HdlThreadLogic.Current.RunThread(() =>
|
{
|
this.ShowProgressBar();
|
//获取成员列表
|
var responePack = new DAL.Server.HttpServerRequest().GetResidenceMemberAccount();
|
if (responePack.Code != DAL.Server.StateCode.SUCCESS)
|
{
|
//提示
|
DAL.Server.IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code);
|
this.CloseProgressBar(ShowReLoadMode.YES);
|
return;
|
}
|
this.CloseProgressBar();
|
|
this.listMember = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ResidenceMemberInfo>>(responePack.Data.ToString());
|
if (listMember.Count == 0)
|
{
|
//检测不到可供选择的成员
|
HdlMessageLogic.Current.ShowMassage(ShowMsgType.Tip, Language.StringByID(StringId.NotHadMemberToSelect));
|
return;
|
}
|
HdlThreadLogic.Current.RunMain(() =>
|
{
|
//列表控件
|
var listView = new VerticalListControl();
|
listView.Height = bodyFrameLayout.Height;
|
listView.BackgroundColor = CSS_Color.MainBackgroundColor;
|
bodyFrameLayout.AddChidren(listView);
|
|
var listIcon = new List<ImageView>();
|
for (int i = 0; i < listMember.Count; i++)
|
{
|
//添加成员行控件
|
var btnIcon = this.AddMemberRowcontrol(listView, listMember[i], i != listMember.Count - 1);
|
listIcon.Add(btnIcon);
|
}
|
//调整桌布高度
|
listView.AdjustRealHeight(0);
|
//获取成员头像
|
this.DownLoadUserIcon(listIcon);
|
});
|
});
|
}
|
|
#endregion
|
|
#region ■ 添加成员行控件_____________________
|
|
/// <summary>
|
/// 添加成员行控件
|
/// </summary>
|
/// <param name="listView">列表控件</param>
|
/// <param name="memberInfo">成员信息</param>
|
/// <param name="addLine">是否添加底线</param>
|
private ImageView AddMemberRowcontrol(VerticalListControl listView, ResidenceMemberInfo memberInfo, bool addLine)
|
{
|
//行控件
|
var rowContr = new FrameRowControl();
|
rowContr.Height = Application.GetRealHeight(65);
|
listView.AddChidren(rowContr);
|
|
//头像(初始)
|
var btnIcon = new ImageView();
|
btnIcon.X = HdlControlResourse.XXLeft;
|
btnIcon.Width = this.GetPictrueRealSize(36);
|
btnIcon.Height = this.GetPictrueRealSize(36);
|
btnIcon.Gravity = Gravity.CenterVertical;
|
btnIcon.Radius = (uint)this.GetPictrueRealSize(36) / 2;
|
btnIcon.ImagePath = "LoginIcon/2.png";
|
rowContr.AddChidren(btnIcon);
|
|
//昵称
|
var nickName = string.IsNullOrEmpty(memberInfo.nickName) == true ? memberInfo.memberName : memberInfo.nickName;
|
var btnName = rowContr.AddTopView(nickName, 200);
|
btnName.TextColor = CSS_Color.textColor;
|
btnName.X = btnIcon.Right + Application.GetRealWidth(12);
|
btnName.Y = Application.GetRealHeight(12);
|
//邮箱或者手机号
|
var strPhone = string.IsNullOrEmpty(memberInfo.childAccountPhone) == true ? memberInfo.childAccountEmail : memberInfo.childAccountPhone;
|
var btnPhone = rowContr.AddBottomView(strPhone, 200);
|
btnPhone.X = btnName.X;
|
btnPhone.Y = btnName.Bottom + Application.GetRealHeight(4);
|
|
//右箭头
|
rowContr.AddRightArrow();
|
|
//底线
|
if (addLine == true)
|
{
|
rowContr.AddBottomLine();
|
}
|
|
rowContr.ButtonClickEvent += (sender, e) =>
|
{
|
var form = new AdminMigrationMemberConfirmPage();
|
form.AddForm(memberInfo);
|
};
|
|
return btnIcon;
|
}
|
|
#endregion
|
|
#region ■ 获取成员头像_______________________
|
|
/// <summary>
|
/// 获取成员头像
|
/// </summary>
|
/// <param name="listIcon">头像控件列表,它的索引和this.listMember一致</param>
|
private void DownLoadUserIcon(List<ImageView> listIcon)
|
{
|
HdlThreadLogic.Current.RunThread(() =>
|
{
|
for (int i = 0; i < this.listMember.Count; i++)
|
{
|
var resultData = ImageUtlis.Current.DownHeadImageByImageKey(this.listMember[i].memberHeadIcon, false, this.listMember[i].childAccountRegionUrl);
|
if (this.Parent == null)
|
{
|
//界面已经关闭
|
return;
|
}
|
if (resultData != null && resultData.Length > 0)
|
{
|
int nowIndex = i;
|
HdlThreadLogic.Current.RunMain(() =>
|
{
|
listIcon[nowIndex].ImageBytes = resultData;
|
}, ShowErrorMode.NO);
|
}
|
System.Threading.Thread.Sleep(200);
|
}
|
|
}, ShowErrorMode.NO);
|
}
|
|
#endregion
|
}
|
}
|