using System;
|
using System.Collections.Generic;
|
using Shared.SimpleControl;
|
|
namespace Shared
|
{
|
[System.Serializable]
|
public class RemoteInfo
|
{
|
static RemoteInfo ()
|
{
|
Current = Newtonsoft.Json.JsonConvert.DeserializeObject<RemoteInfo> (CommonPage.MyEncodingUTF8.GetString (IO.FileUtils.ReadFile ("RemoteInfoMsgList")));
|
if (Current == null)
|
Current = new RemoteInfo ();
|
}
|
|
RemoteInfo ()
|
{
|
|
}
|
|
/// <summary>
|
/// 从服务器读取相应数目的数据
|
/// </summary>
|
/// <param name="rsgID">手机ID</param>
|
public void ReadMsgList (string rsgID, bool needTip)
|
{
|
if (MainPage.LoginUser == null)
|
return;
|
#if HDL
|
System.Threading.Tasks.Task.Run (() => {
|
var se = new service.hdlcontrol.com_push.WebServicePush ();
|
var msgList = se.MsgList (rsgID);
|
foreach (var msg in msgList) {
|
Current.RemoteInfoList.Add (new RemoteInfoMsg () { Msg = msg.Msg, MsgID = msg.MsgID, MsgTime = msg.MsgTime, MsgType = msg.MsgType });
|
}
|
Current.Save ();
|
if (msgList.Length > 0) {
|
Application.RunOnMainThread (() => {
|
string tipMsg = Language.StringByID (SimpleControl.R.MyInternationalizationString.NewMessageReceived);
|
|
if (needTip) {
|
Alert alert = new Alert (Language.StringByID (SimpleControl.R.MyInternationalizationString.Tip),
|
tipMsg ,
|
Language.StringByID (SimpleControl.R.MyInternationalizationString.Close),
|
Language.StringByID (SimpleControl.R.MyInternationalizationString.Read));
|
alert.Show ();
|
alert.ResultEventHandler += (sender, e) => {
|
if (e) {
|
if (Shared.Application.IsPad) {
|
//SimpleControl.Pad.WarningList.ShowWarningListPage ();
|
} else {
|
SimpleControl.Phone.UserMiddle.ShowSettingView ();
|
var msgView = new SimpleControl.Phone.WarningList ();
|
SimpleControl.Phone.UserMiddle.SettingPageView.AddChidren (msgView);
|
msgView.ShowWarningListPage ();
|
SimpleControl.Phone.UserMiddle.SettingPageView.PageIndex = 1;
|
}
|
}
|
};
|
} else {
|
if (Shared.Application.IsPad) {
|
//SimpleControl.Pad.WarningList.ShowWarningListPage ();
|
} else {
|
SimpleControl.Phone.UserMiddle.ShowSettingView ();
|
var msgView = new SimpleControl.Phone.WarningList ();
|
SimpleControl.Phone.UserMiddle.SettingPageView.AddChidren (msgView);
|
msgView.ShowWarningListPage ();
|
SimpleControl.Phone.UserMiddle.SettingPageView.PageIndex = 1;
|
}
|
}
|
});
|
}
|
});
|
#endif
|
}
|
|
public static RemoteInfo Current {
|
get;
|
private set;
|
}
|
|
public List<RemoteInfoMsg> RemoteInfoList = new List<RemoteInfoMsg> ();
|
|
public void Add (RemoteInfoMsg msg)
|
{
|
RemoteInfoList.Add (msg);
|
Save ();
|
}
|
|
public void Del (RemoteInfoMsg msg)
|
{
|
RemoteInfoList.Remove (msg);
|
Save ();
|
}
|
|
public void CleanAll ()
|
{
|
Current.RemoteInfoList.Clear ();
|
var saveBytes = CommonPage.MyEncodingUTF8.GetBytes (Newtonsoft.Json.JsonConvert.SerializeObject (Current));
|
IO.FileUtils.WriteFileByBytes ("RemoteInfoMsgList", saveBytes);
|
}
|
|
public void Save ()
|
{
|
var saveBytes = CommonPage.MyEncodingUTF8.GetBytes (Newtonsoft.Json.JsonConvert.SerializeObject (Current));
|
IO.FileUtils.WriteFileByBytes ("RemoteInfoMsgList", saveBytes);
|
}
|
|
public RemoteInfo Get ()
|
{
|
var remoteInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<RemoteInfo> (
|
CommonPage.MyEncodingUTF8.GetString (IO.FileUtils.ReadFile ("RemoteInfoMsgList")));
|
//this = remoteInfo;
|
if (remoteInfo == null)
|
return new RemoteInfo ();
|
else
|
return remoteInfo;
|
}
|
}
|
|
[System.Serializable]
|
public class RemoteInfoMsg
|
{
|
public long MsgID;
|
|
public string Msg;
|
|
public string MsgType;
|
|
public DateTime MsgTime;
|
|
}
|
}
|