Changed to use a separate account for each email address.

This commit is contained in:
Kei-Luna
2026-05-13 08:15:33 +09:00
parent 5332d5fe1a
commit 41df375e21
7 changed files with 146 additions and 19 deletions

View File

@@ -26,11 +26,14 @@ public class AccountData : BaseDatabaseDataHelper
AccountData? result = null;
DatabaseHelper.GetAllInstance<AccountData>()?.ForEach(account =>
{
if (account.Username == username) result = account;
if (string.Equals(account.Username, username, StringComparison.OrdinalIgnoreCase)) result = account;
});
return result;
}
public static AccountData? GetAccountByEmail(string email)
=> GetAccountByUserName(email);
public static AccountData? GetAccountByUid(int uid, bool force = false)
{
var result = DatabaseHelper.GetInstance<AccountData>(uid, force);
@@ -61,8 +64,15 @@ public class AccountData : BaseDatabaseDataHelper
#region Account
public static void CreateAccount(string username, int uid, string password)
public static AccountData CreateAccount(string username, int uid, string password)
{
if (string.IsNullOrWhiteSpace(username))
throw new ArgumentException("Username cannot be empty.", nameof(username));
if (GetAccountByUserName(username) != null)
throw new InvalidOperationException($"Account '{username}' already exists.");
if (uid != 0 && GetAccountByUid(uid) != null)
throw new InvalidOperationException($"UID '{uid}' is already in use.");
var newUid = uid;
if (uid == 0)
{
@@ -84,6 +94,7 @@ public class AccountData : BaseDatabaseDataHelper
SetPassword(account, password);
DatabaseHelper.CreateInstance(account);
return account;
}
public static void DeleteAccount(int uid)
@@ -178,4 +189,4 @@ public class AccountData : BaseDatabaseDataHelper
}
#endregion
}
}

View File

@@ -128,6 +128,7 @@ public class CommandTextCHS
{
public NoticeTextCHS Notice { get; } = new();
public HelpTextCHS Help { get; } = new();
public AccountTextCHS Account { get; } = new();
public GirlTextCHS Girl { get; } = new();
public GiveAllTextCHS GiveAll { get; } = new();
public DebugTextCHS Debug { get; } = new();
@@ -218,6 +219,14 @@ public class HelpTextCHS
public string CommandAlias => "命令别名: ";
}
public class AccountTextCHS
{
public string Desc => "管理 SDK 登录使用的账号映射";
public string Usage => "用法: /account create <邮箱> <UID>";
public string Created => "已创建账号映射: {0} -> UID {1}";
public string CreateFailed => "创建账号映射失败: {0}";
}
/// <summary>
/// path: Game.Command.Girl
/// </summary>

View File

@@ -128,6 +128,7 @@ public class CommandTextCHT
{
public NoticeTextCHT Notice { get; } = new();
public HelpTextCHT Help { get; } = new();
public AccountTextCHT Account { get; } = new();
public GirlTextCHT Girl { get; } = new();
public GiveAllTextCHT GiveAll { get; } = new();
public DebugTextCHT Debug { get; } = new();
@@ -218,6 +219,14 @@ public class HelpTextCHT
public string CommandAlias => "命令別名: ";
}
public class AccountTextCHT
{
public string Desc => "管理 SDK 登入使用的帳號映射";
public string Usage => "用法: /account create <郵箱> <UID>";
public string Created => "已建立帳號映射: {0} -> UID {1}";
public string CreateFailed => "建立帳號映射失敗: {0}";
}
/// <summary>
/// path: Game.Command.Girl
/// </summary>

View File

@@ -87,6 +87,7 @@ public class CommandTextEN
{
public NoticeTextEN Notice { get; } = new();
public HelpTextEN Help { get; } = new();
public AccountTextEN Account { get; } = new();
public GirlTextEN Girl { get; } = new();
public GiveAllTextEN GiveAll { get; } = new();
public DebugTextEN Debug { get; } = new();
@@ -184,6 +185,14 @@ public class HelpTextEN
public string CommandAlias => "Command Alias";
}
public class AccountTextEN
{
public string Desc => "Manage account mappings for SDK logins";
public string Usage => "Usage: /account create <email> <uid>";
public string Created => "Created account mapping: {0} -> UID {1}";
public string CreateFailed => "Failed to create account mapping: {0}";
}
/// <summary>
/// path: Game.Command.Girl
/// </summary>