using System;
|
using HDL_ON.DAL.Server;
|
using HDL_ON.Entity;
|
using Shared;
|
|
namespace HDL_ON.UI
|
{
|
public partial class PersonalCenterPage
|
{
|
|
|
/// <summary>
|
/// 加载事件列表
|
/// </summary>
|
void LoadEventList()
|
{
|
LoadEvent_SwitchHome();
|
LoadEvent_GoPersonalDataPage();
|
LoadEvent_SkipAboutOnPage();
|
LoadEvent_SkipGetSupportPage();
|
if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare)
|
{
|
LoadEvent_SkipResdentialManagePage();
|
LoadEvent_GoMemberManagement();
|
LoadEvent_SkipbtnAddFunctionPage();
|
}
|
}
|
|
#region 切换住宅
|
/// <summary>
|
/// 住宅列表点击事件
|
/// </summary>
|
void LoadEvent_SwitchHome()
|
{
|
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
|
{
|
var dialog = new Dialog();
|
var dialogBody = new FrameLayout();
|
dialog.AddChidren(dialogBody);
|
dialogBody.MouseUpEventHandler = (sender1, e1) =>
|
{
|
dialog.Close();
|
};
|
|
var dispalyView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(10),
|
Y = Application.GetRealHeight(268),
|
Width = Application.GetRealWidth(160),
|
Height = Application.GetRealHeight(110),
|
BackgroundImagePath = "PersonalCenter/HomeList1bg.png",
|
};
|
dialogBody.AddChidren(dispalyView);
|
|
var contentView = new VerticalScrolViewLayout()
|
{
|
X = Application.GetRealWidth(22),
|
Y = Application.GetRealHeight(15),
|
Width = Application.GetRealWidth(150),
|
Height = Application.GetRealHeight(45),
|
ScrollEnabled = false
|
};
|
dispalyView.AddChidren(contentView);
|
|
if (UserInfo.Current.regionList.Count < 2)
|
{
|
|
}
|
else if (UserInfo.Current.regionList.Count < 3)
|
{
|
dispalyView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(10),
|
Y = Application.GetRealHeight(268),
|
Width = Application.GetRealWidth(160),
|
Height = Application.GetRealHeight(105),
|
BackgroundImagePath = "PersonalCenter/HomeList1bg.png",
|
};
|
dialogBody.AddChidren(dispalyView);
|
|
contentView.Height = Application.GetRealHeight(45 * 2);
|
dispalyView.AddChidren(contentView);
|
}
|
else if (UserInfo.Current.regionList.Count < 4)
|
{
|
dispalyView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(10),
|
Y = Application.GetRealHeight(268),
|
Width = Application.GetRealWidth(160),
|
Height = Application.GetRealHeight(155),
|
BackgroundImagePath = "PersonalCenter/HomeList2bg.png",
|
};
|
dialogBody.AddChidren(dispalyView);
|
|
contentView.Height = Application.GetRealHeight(45 * 3);
|
dispalyView.AddChidren(contentView);
|
}
|
else if (UserInfo.Current.regionList.Count < 5)
|
{
|
dispalyView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(10),
|
Y = Application.GetRealHeight(268),
|
Width = Application.GetRealWidth(160),
|
Height = Application.GetRealHeight(200),
|
BackgroundImagePath = "PersonalCenter/HomeList3bg.png",
|
};
|
dialogBody.AddChidren(dispalyView);
|
|
contentView.Height = Application.GetRealHeight(45 * 4);
|
dispalyView.AddChidren(contentView);
|
}
|
else
|
{
|
dispalyView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(10),
|
Y = Application.GetRealHeight(268),
|
Width = Application.GetRealWidth(160),
|
Height = Application.GetRealHeight(245),
|
BackgroundImagePath = "PersonalCenter/HomeList4bg.png",
|
};
|
dialogBody.AddChidren(dispalyView);
|
|
contentView.Height = Application.GetRealHeight(45 * 5);
|
contentView.ScrollEnabled = true;
|
dispalyView.AddChidren(contentView);
|
}
|
|
|
|
foreach (var home in UserInfo.Current.regionList)
|
{
|
var btnHomeName = new Button()
|
{
|
Width = Application.GetRealWidth(112),
|
Height = Application.GetRealHeight(44),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS.CSS_Color.FirstLevelTitleColor,
|
SelectedTextColor = CSS.CSS_Color.MainColor,
|
Text = home.Name,
|
TextSize = home.Name.Length > 14 ? CSS.CSS_FontSize.TextFontSize : CSS.CSS_FontSize.SubheadingFontSize,
|
IsSelected = DB_ResidenceData.residenceData.residecenInfo.RegionID == home.RegionID,
|
IsMoreLines = true,
|
Tag = home.RegionID
|
};
|
contentView.AddChidren(btnHomeName);
|
|
if (UserInfo.Current.regionList.IndexOf(home) < UserInfo.Current.regionList.Count - 1)
|
{
|
contentView.AddChidren(new Button()
|
{
|
Width = Application.GetRealWidth(112),
|
Height = Application.GetRealHeight(1),
|
BackgroundColor = CSS.CSS_Color.BackgroundColor
|
});
|
}
|
|
btnHomeName.MouseUpEventHandler += (senderH, en) =>
|
{
|
var regionId = (string)btnHomeName.Tag;
|
dialog.Close();
|
//DB_ResidenceData.residenceData.CurReginID = regionId;
|
LoadEvent_ChangeCurHome(UserInfo.Current.regionList.Find((obj) => obj.RegionID == regionId));
|
LoadContentView();
|
};
|
}
|
dialog.Show();
|
};
|
|
btnResidenceDownIcon.MouseUpEventHandler = eventHandler;
|
btnCurResidenceName.MouseUpEventHandler = eventHandler;
|
}
|
/// <summary>
|
/// 更换当前选中住宅
|
/// </summary>
|
/// <param name="homeTemp"></param>
|
void LoadEvent_ChangeCurHome(RegionInfoRes homeTemp)
|
{
|
if (DB_ResidenceData.residenceData.CurReginID == homeTemp.RegionID)
|
{
|
return;
|
}
|
string oldRegionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID.ToString());
|
string newRegionRootPath = FileUtils.CreateRegionBackup(homeTemp.RegionID.ToString());
|
DB_ResidenceData.residenceData.CurReginID = homeTemp.RegionID;
|
DB_ResidenceData.residenceData.SaveResidenceData();
|
var waitPage = new Loading();
|
bodyView.AddChidren(waitPage);
|
waitPage.Start(Language.StringByID(StringId.PleaseWait));
|
new System.Threading.Thread(() =>
|
{
|
try
|
{
|
var backuplist = FileUtils.ReadFiles();
|
int index = 0;
|
FileUtils.DeleteRegionFiles(oldRegionRootPath);
|
//移动文件
|
foreach (var fileName in backuplist)
|
{
|
System.IO.FileInfo fileInfo = new System.IO.FileInfo(FileUtils.RootPath + fileName);
|
if (fileName == "headImage.png")
|
{
|
continue;
|
}
|
if (fileInfo.Exists)
|
{
|
fileInfo.MoveTo(oldRegionRootPath + fileName);
|
MainPage.Log("move file : " + fileName);
|
}
|
index++;
|
Application.RunOnMainThread(() =>
|
{
|
int pro = (int)(index * 1.0 / backuplist.Count * 50);
|
waitPage.Text = pro.ToString() + "%";
|
});
|
}
|
//删除本地文件
|
foreach (var fileName in backuplist)
|
{
|
if (fileName == "headImage.png")
|
{
|
continue;
|
}
|
FileUtils.DeleteFile(fileName);
|
}
|
//倒出新住宅数据
|
FileUtils.RestoreRegionFiles(newRegionRootPath);
|
UserInfo.Current.SaveUserInfo();
|
DB_ResidenceData.residenceData.EixtAccount();
|
DB_ResidenceData.residenceData.CurReginID = homeTemp.RegionID;
|
OnAppConfig.Instance.SaveUserConfig();
|
DB_ResidenceData.InitRoomFunction();
|
DB_ResidenceData.residenceData.SaveResidenceData();
|
//刷新一次住宅网关
|
new HttpServerRequest().GetHomeGatewayList();
|
|
Application.RunOnMainThread(() =>
|
{
|
btnCurResidenceName.Text = DB_ResidenceData.residenceData.residecenInfo.Name;
|
});
|
}
|
catch (Exception ex)
|
{
|
Application.RunOnMainThread(() =>
|
{
|
new Alert(Language.StringByID(StringId.Tip), Language.StringByID(StringId.OperationFailed),
|
Language.StringByID(StringId.Close)).Show();
|
});
|
MainPage.Log(ex.Message);
|
}
|
finally
|
{
|
Application.RunOnMainThread(() =>
|
{
|
waitPage.Hide();
|
waitPage.RemoveFromParent();
|
});
|
}
|
})
|
{ IsBackground = true }.Start();
|
}
|
#endregion
|
|
#region 住宅管理
|
void LoadEvent_SkipResdentialManagePage()
|
{
|
if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare)
|
{
|
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
|
{
|
Action updateResidenceName = () =>
|
{
|
btnCurResidenceName.Text = DB_ResidenceData.residenceData.residecenInfo.Name;
|
};
|
var residentialManagePage = new ResidentialManagePage(updateResidenceName);
|
MainPage.BasePageView.AddChidren(residentialManagePage);
|
residentialManagePage.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
btnResidenceManageIcon.MouseUpEventHandler = eventHandler;
|
btnResidenceManageText.MouseUpEventHandler = eventHandler;
|
}
|
}
|
#endregion
|
|
#region 个人中心
|
void LoadEvent_GoPersonalDataPage()
|
{
|
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
|
{
|
Action updataHeadImage = () =>
|
{
|
userHeadImageView.ImagePath = UserInfo.Current.headImagePagePath;
|
};
|
Action updataUserName = () =>
|
{
|
btnUserName.Text = UserInfo.Current.userName;
|
};
|
|
var personalDataView = new PersonalDataPage(updataHeadImage, updataUserName);
|
MainPage.BasePageView.AddChidren(personalDataView);
|
personalDataView.LoadView();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
userHeadImageView.MouseUpEventHandler = eventHandler;
|
btnUserName.MouseUpEventHandler = eventHandler;
|
btnEmail.MouseUpEventHandler = eventHandler;
|
|
}
|
#endregion
|
|
#region 成员管理
|
void LoadEvent_GoMemberManagement()
|
{
|
EventHandler<MouseEventArgs> eHandler = (sender, e) =>
|
{
|
var mmp = new MemberManagementPage();
|
MainPage.BasePageView.AddChidren(mmp);
|
mmp.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
btnResidenceMemberIcon.MouseUpEventHandler = eHandler;
|
btnResidenceMemberText.MouseUpEventHandler = eHandler;
|
}
|
|
#endregion
|
|
#region 添加设备
|
void LoadEvent_SkipbtnAddFunctionPage()
|
{
|
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
|
{
|
var page = new SearchDevicePage();
|
MainPage.BasePageView.AddChidren(page);
|
page.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
btnResidenceAddFunctionIcon.MouseUpEventHandler = eventHandler;
|
btnResidenceAddFunctionText.MouseUpEventHandler = eventHandler;
|
}
|
#endregion
|
|
#region 关于On、获取支持
|
/// <summary>
|
/// 跳转至关于On页面
|
/// </summary>
|
void LoadEvent_SkipAboutOnPage()
|
{
|
btnAboutOnText.MouseUpEventHandler = (sender, e) =>
|
{
|
var aboutOnPage = new AboutOnPage();
|
MainPage.BasePageView.AddChidren(aboutOnPage);
|
aboutOnPage.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
}
|
/// <summary>
|
/// 跳转至获取支持页面
|
/// </summary>
|
void LoadEvent_SkipGetSupportPage()
|
{
|
btnSupportText.MouseUpEventHandler = (sender, e) =>
|
{
|
//var getsupportPage = new GetSupportPage();
|
//MainPage.BasePageView.AddChidren(getsupportPage);
|
//getsupportPage.LoadPage();
|
//MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
|
|
var getsupportPage = new FAQHelpPage();
|
MainPage.BasePageView.AddChidren(getsupportPage);
|
getsupportPage.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
};
|
}
|
#endregion
|
|
|
}
|
}
|