clear New Account
This commit is contained in:
parent
e069c3ccbc
commit
b532d7ae05
@ -84,7 +84,7 @@ namespace Zerolauncher
|
|||||||
});
|
});
|
||||||
DataStreamNew.Load();
|
DataStreamNew.Load();
|
||||||
_ = WebApiManager.StartListener();
|
_ = WebApiManager.StartListener();
|
||||||
AccountManager.initLoadData();
|
AccountManager.InitLoadData();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void OnExit(ExitEventArgs e)
|
protected override void OnExit(ExitEventArgs e)
|
||||||
|
|||||||
@ -29,7 +29,7 @@ namespace Zerolauncher
|
|||||||
|
|
||||||
memberBG.ContextMenu = CreateContextMenu();
|
memberBG.ContextMenu = CreateContextMenu();
|
||||||
int i = 0;
|
int i = 0;
|
||||||
foreach (var account in AccountManager.accountsList)
|
foreach (var account in AccountManager.AccountsList)
|
||||||
{
|
{
|
||||||
var member = new MemberControl();
|
var member = new MemberControl();
|
||||||
member.memberId = i++;
|
member.memberId = i++;
|
||||||
@ -48,7 +48,7 @@ namespace Zerolauncher
|
|||||||
//foreach (var btn in mLayout.Children.)
|
//foreach (var btn in mLayout.Children.)
|
||||||
mLayout.Children.Clear();
|
mLayout.Children.Clear();
|
||||||
int i = 0;
|
int i = 0;
|
||||||
foreach (var account in AccountManager.accountsList)
|
foreach (var account in AccountManager.AccountsList)
|
||||||
{
|
{
|
||||||
var member = new MemberControl();
|
var member = new MemberControl();
|
||||||
member.memberId = i++;
|
member.memberId = i++;
|
||||||
@ -124,7 +124,7 @@ namespace Zerolauncher
|
|||||||
|
|
||||||
private void editTeamItem_Click(object sender, RoutedEventArgs e)
|
private void editTeamItem_Click(object sender, RoutedEventArgs e)
|
||||||
{
|
{
|
||||||
EditTeamDialog.CreateDailog(AccountManager.teamName);
|
EditTeamDialog.CreateDailog(AccountManager.TeamName);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Button_Click_3(object sender, RoutedEventArgs e)
|
private void Button_Click_3(object sender, RoutedEventArgs e)
|
||||||
|
|||||||
@ -3,34 +3,34 @@ using System.Diagnostics;
|
|||||||
|
|
||||||
namespace Zerolauncher.Manager
|
namespace Zerolauncher.Manager
|
||||||
{
|
{
|
||||||
internal class AccountManager
|
internal static class AccountManager
|
||||||
{
|
{
|
||||||
static int teamId=0;
|
static int _teamId;
|
||||||
|
|
||||||
public static string teamName = "";
|
public static string TeamName = "";
|
||||||
|
|
||||||
public static List<AccountNew>? accountsList;
|
public static List<AccountNew>? AccountsList;
|
||||||
|
|
||||||
public static void initLoadData()
|
public static void InitLoadData()
|
||||||
{
|
{
|
||||||
teamId = AccountData.teamIndex;
|
_teamId = AccountData.TeamIndex;
|
||||||
foreach (var pair in GroupsData.data)
|
foreach (var pair in GroupsData.Data)
|
||||||
{
|
{
|
||||||
Trace.WriteLine(pair.Key, pair.Value);
|
Trace.WriteLine(pair.Key, pair.Value);
|
||||||
}
|
}
|
||||||
teamName = GroupsData.data[teamId];
|
TeamName = GroupsData.Data[_teamId];
|
||||||
accountsList = AccountData.data[teamId];
|
AccountsList = AccountData.Data[_teamId];
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ChangeTeam(int index)
|
public static void ChangeTeam(int index)
|
||||||
{
|
{
|
||||||
teamId = TeamManager.Index2Key(index);
|
_teamId = TeamManager.Index2Key(index);
|
||||||
teamId = AccountData.teamIndex;
|
_teamId = AccountData.TeamIndex;
|
||||||
teamName = GroupsData.data[teamId];
|
TeamName = GroupsData.Data[_teamId];
|
||||||
accountsList = AccountData.data[teamId];
|
AccountsList = AccountData.Data[_teamId];
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void saveEdit()
|
public static void SaveEdit()
|
||||||
{
|
{
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
MainWindow.Instance.ReloadBtn();
|
MainWindow.Instance.ReloadBtn();
|
||||||
@ -38,7 +38,7 @@ namespace Zerolauncher.Manager
|
|||||||
|
|
||||||
public static bool AddAccount(AccountNew account)
|
public static bool AddAccount(AccountNew account)
|
||||||
{
|
{
|
||||||
account.groupId = teamId;
|
account.groupId = _teamId;
|
||||||
AccountData.AddAccount(account);
|
AccountData.AddAccount(account);
|
||||||
|
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
@ -48,45 +48,53 @@ namespace Zerolauncher.Manager
|
|||||||
|
|
||||||
public static bool AddAccounts(AccountNew account)
|
public static bool AddAccounts(AccountNew account)
|
||||||
{
|
{
|
||||||
account.groupId = teamId;
|
account.groupId = _teamId;
|
||||||
AccountData.AddAccount(account);
|
AccountData.AddAccount(account);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void MoveAccount(int memberId, int newIndex)
|
public static void MoveAccount(int memberId, int newIndex)
|
||||||
{
|
{
|
||||||
var group_id = TeamManager.Index2Key(newIndex);
|
var groupId = TeamManager.Index2Key(newIndex);
|
||||||
var acc = accountsList[memberId];
|
if (AccountsList != null)
|
||||||
accountsList.RemoveAt(memberId);
|
{
|
||||||
AccountData.CheckGroup(group_id);
|
var acc = AccountsList[memberId];
|
||||||
AccountData.data[group_id].Add(acc);
|
AccountsList.RemoveAt(memberId);
|
||||||
|
if (!AccountData.CheckGroup(groupId)) return;
|
||||||
|
AccountData.Data[groupId].Add(acc);
|
||||||
|
}
|
||||||
|
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
MainWindow.Instance.ReloadBtn();
|
MainWindow.Instance.ReloadBtn();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DeleteAccount(int index) {
|
public static void DeleteAccount(int index) {
|
||||||
var nick = accountsList[index].nickName;
|
if (AccountsList != null)
|
||||||
accountsList.RemoveAt(index);
|
{
|
||||||
AccountData.dict.Remove(nick);
|
var nick = AccountsList[index].nickName;
|
||||||
|
AccountsList.RemoveAt(index);
|
||||||
|
AccountData.Dict.Remove(nick);
|
||||||
|
}
|
||||||
|
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
MainWindow.Instance.ReloadBtn();
|
MainWindow.Instance.ReloadBtn();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void editTeamName(string teamName0)
|
public static void EditTeamName(string teamName0)
|
||||||
{
|
{
|
||||||
teamName = teamName0;
|
TeamName = teamName0;
|
||||||
GroupsData.data[teamId] = teamName;
|
GroupsData.Data[_teamId] = TeamName;
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool DeleteTeam()
|
public static bool DeleteTeam()
|
||||||
{
|
{
|
||||||
if (GroupsData.data.Keys.Count == 1)
|
if (GroupsData.Data.Keys.Count == 1)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
AccountData.RemoveGroup();
|
AccountData.RemoveGroup();
|
||||||
ChangeTeam(GroupsData.data.Keys.First());
|
ChangeTeam(GroupsData.Data.Keys.First());
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
MainWindow.Instance.ReloadBtn();
|
MainWindow.Instance.ReloadBtn();
|
||||||
return true;
|
return true;
|
||||||
@ -94,18 +102,18 @@ namespace Zerolauncher.Manager
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
internal class TeamManager
|
internal static class TeamManager
|
||||||
{
|
{
|
||||||
|
|
||||||
public static int Index2Key(int index) { return GroupsData.data.ElementAt(index).Key; }
|
public static int Index2Key(int index) { return GroupsData.Data.ElementAt(index).Key; }
|
||||||
public static string[] GetAllTeamName()
|
public static string[] GetAllTeamName()
|
||||||
{
|
{
|
||||||
return GroupsData.data.Values.ToArray();
|
return GroupsData.Data.Values.ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void addTeam(string teamName)
|
public static void AddTeam(string teamName)
|
||||||
{
|
{
|
||||||
GroupsData.data.Add(GroupsData.data.Keys.LastOrDefault() + 1, teamName);
|
GroupsData.Data.Add(GroupsData.Data.Keys.LastOrDefault() + 1, teamName);
|
||||||
DataStreamNew.Save();
|
DataStreamNew.Save();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -113,7 +121,7 @@ namespace Zerolauncher.Manager
|
|||||||
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)]
|
[System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)]
|
||||||
public static AccountNew? Nick2Acc(string nickName)
|
public static AccountNew? Nick2Acc(string nickName)
|
||||||
{
|
{
|
||||||
return AccountData.dict.ContainsKey(nickName)? AccountData.dict[nickName]:null;
|
return AccountData.Dict.GetValueOrDefault(nickName);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -213,29 +213,29 @@ namespace Zerolauncher.Manager
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static class AccountData
|
internal static class AccountData
|
||||||
{
|
{
|
||||||
public static int teamIndex;
|
public static int TeamIndex;
|
||||||
|
|
||||||
public static Dictionary<int, List<AccountNew>> data = [];
|
public static readonly Dictionary<int, List<AccountNew>> Data = [];
|
||||||
|
|
||||||
public static Dictionary<String, AccountNew> dict = [];
|
public static readonly Dictionary<string, AccountNew> Dict = [];
|
||||||
|
|
||||||
public static void Init(DataItem data)
|
public static void Init(DataItem dataItem)
|
||||||
{
|
{
|
||||||
data.ReSetOffset();
|
dataItem.ReSetOffset();
|
||||||
teamIndex = data.ReadInt();
|
TeamIndex = dataItem.ReadInt();
|
||||||
var accountCount = data.ReadInt();
|
var accountCount = dataItem.ReadInt();
|
||||||
for (int i = 0; i < accountCount; i++)
|
for (var i = 0; i < accountCount; i++)
|
||||||
{
|
{
|
||||||
AddAccount(new AccountNew()
|
AddAccount(new AccountNew()
|
||||||
{
|
{
|
||||||
groupId = data.ReadInt(),
|
groupId = dataItem.ReadInt(),
|
||||||
providerId = data.ReadInt(),
|
providerId = dataItem.ReadInt(),
|
||||||
serverId = data.ReadInt(),
|
serverId = dataItem.ReadInt(),
|
||||||
userName = data.ReadStr(),
|
userName = dataItem.ReadStr(),
|
||||||
userPWD = data.ReadStr(),
|
userPWD = dataItem.ReadStr(),
|
||||||
nickName = data.ReadStr()
|
nickName = dataItem.ReadStr()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -255,41 +255,35 @@ namespace Zerolauncher.Manager
|
|||||||
|
|
||||||
public static void AddAccount(AccountNew item)
|
public static void AddAccount(AccountNew item)
|
||||||
{
|
{
|
||||||
int count = 0;
|
var count = 0;
|
||||||
while (dict.ContainsKey(item.nickName))
|
while (Dict.ContainsKey(item.nickName))
|
||||||
item.nickName += count++.ToString();
|
item.nickName += count++.ToString();
|
||||||
CheckGroup(item.groupId);
|
if (CheckGroup(item.groupId)) Data[item.groupId].Add(item);
|
||||||
data[item.groupId].Add(item);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool CheckGroup(int groupId)
|
public static bool CheckGroup(int groupId)
|
||||||
{
|
{
|
||||||
if (GroupsData.data.ContainsKey(groupId))
|
if (!GroupsData.Data.ContainsKey(groupId)) return false;
|
||||||
{
|
if (!Data.ContainsKey(groupId)) Data.Add(groupId, []);
|
||||||
if (!data.ContainsKey(groupId)) data.Add(groupId, new List<AccountNew> { });
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void RemoveGroup()
|
public static void RemoveGroup()
|
||||||
{
|
{
|
||||||
GroupsData.data.Remove(teamIndex);
|
GroupsData.Data.Remove(TeamIndex);
|
||||||
foreach (var item in data[teamIndex])
|
foreach (var item in Data[TeamIndex])
|
||||||
{
|
{
|
||||||
dict.Remove(item.nickName);
|
Dict.Remove(item.nickName);
|
||||||
}
|
}
|
||||||
data.Remove(teamIndex);
|
Data.Remove(TeamIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DataItem Out()
|
public static DataItem Out()
|
||||||
{
|
{
|
||||||
var res = new DataItem(NameSpace.Accounts, []);
|
var res = new DataItem(NameSpace.Accounts, []);
|
||||||
res.WriteInt(teamIndex);
|
res.WriteInt(TeamIndex);
|
||||||
res.WriteInt(data.Count);
|
res.WriteInt(Data.Count);
|
||||||
foreach (var items in data.Values)
|
foreach (var item in Data.Values.SelectMany(items => items))
|
||||||
{
|
|
||||||
foreach (var item in items)
|
|
||||||
{
|
{
|
||||||
res.WriteInt(item.groupId);
|
res.WriteInt(item.groupId);
|
||||||
res.WriteInt(item.providerId);
|
res.WriteInt(item.providerId);
|
||||||
@ -298,33 +292,32 @@ namespace Zerolauncher.Manager
|
|||||||
res.WriteString(item.userPWD);
|
res.WriteString(item.userPWD);
|
||||||
res.WriteString(item.nickName);
|
res.WriteString(item.nickName);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static class GroupsData
|
internal static class GroupsData
|
||||||
{
|
{
|
||||||
public static Dictionary<int, String> data = [];
|
public static readonly Dictionary<int, string> Data = [];
|
||||||
public static void Init(DataItem data)
|
public static void Init(DataItem dataItem)
|
||||||
{
|
{
|
||||||
int count = data.ReadInt();
|
var count = dataItem.ReadInt();
|
||||||
for (int i = 0; i < count; i++)
|
for (var i = 0; i < count; i++)
|
||||||
{
|
{
|
||||||
GroupsData.data.Add(data.ReadInt(), data.ReadStr());
|
Data.Add(dataItem.ReadInt(), dataItem.ReadStr());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void InitDefaultData()
|
public static void InitDefaultData()
|
||||||
{
|
{
|
||||||
data.Add(0, "队伍1");
|
Data.Add(0, "队伍1");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DataItem Out()
|
public static DataItem Out()
|
||||||
{
|
{
|
||||||
var res = new DataItem(NameSpace.Groups, []);
|
var res = new DataItem(NameSpace.Groups, []);
|
||||||
res.WriteInt(data.Count);
|
res.WriteInt(Data.Count);
|
||||||
foreach (var item in data)
|
foreach (var item in Data)
|
||||||
{
|
{
|
||||||
res.WriteInt(item.Key);
|
res.WriteInt(item.Key);
|
||||||
res.WriteString(item.Value);
|
res.WriteString(item.Value);
|
||||||
|
|||||||
@ -59,7 +59,7 @@ namespace Zerolauncher.Manager
|
|||||||
|
|
||||||
public static bool CreateGame(int memberId)
|
public static bool CreateGame(int memberId)
|
||||||
{
|
{
|
||||||
return CreateGame(AccountManager.accountsList[memberId]);
|
return CreateGame(AccountManager.AccountsList[memberId]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int CheckGameState(AccountNew account)
|
public static int CheckGameState(AccountNew account)
|
||||||
|
|||||||
@ -28,7 +28,7 @@ namespace Zerolauncher.dialog
|
|||||||
if (EditMemberDialog.member != null)
|
if (EditMemberDialog.member != null)
|
||||||
{
|
{
|
||||||
int index = (int)EditMemberDialog.member;
|
int index = (int)EditMemberDialog.member;
|
||||||
var acc = AccountManager.accountsList[index];
|
var acc = AccountManager.AccountsList[index];
|
||||||
cb_pid.SelectedIndex = acc.providerId;
|
cb_pid.SelectedIndex = acc.providerId;
|
||||||
cb_sid.SelectedIndex = acc.serverId;
|
cb_sid.SelectedIndex = acc.serverId;
|
||||||
edit_acc.Text = acc.userName;
|
edit_acc.Text = acc.userName;
|
||||||
@ -70,13 +70,13 @@ namespace Zerolauncher.dialog
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
int index = (int)EditMemberDialog.member;
|
int index = (int)EditMemberDialog.member;
|
||||||
var acc = AccountManager.accountsList[index];
|
var acc = AccountManager.AccountsList[index];
|
||||||
acc.providerId = cb_pid.SelectedIndex;
|
acc.providerId = cb_pid.SelectedIndex;
|
||||||
acc.serverId = cb_sid.SelectedIndex;
|
acc.serverId = cb_sid.SelectedIndex;
|
||||||
acc.userName = edit_acc.Text;
|
acc.userName = edit_acc.Text;
|
||||||
acc.userPWD = edit_pwd.Password;
|
acc.userPWD = edit_pwd.Password;
|
||||||
acc.nickName = edit_nick.Text;
|
acc.nickName = edit_nick.Text;
|
||||||
AccountManager.saveEdit();
|
AccountManager.SaveEdit();
|
||||||
EditMemberDialog.Close();
|
EditMemberDialog.Close();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,7 +25,7 @@ namespace Zerolauncher.dialog
|
|||||||
MessageBox.Show("昵称不能为空喵!", "提示");
|
MessageBox.Show("昵称不能为空喵!", "提示");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (isEditModle) AccountManager.editTeamName(edit_name.Text); else TeamManager.addTeam(edit_name.Text);
|
if (isEditModle) AccountManager.EditTeamName(edit_name.Text); else TeamManager.AddTeam(edit_name.Text);
|
||||||
EditTeamDialog.Close();
|
EditTeamDialog.Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -68,7 +68,7 @@ namespace Zerolauncher.dialog
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
MessageBox.Show("添加完成喵!", "提示");
|
MessageBox.Show("添加完成喵!", "提示");
|
||||||
AccountManager.saveEdit();
|
AccountManager.SaveEdit();
|
||||||
AddMemebersDialog.Close();
|
AddMemebersDialog.Close();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user