From 372c7e2495b41d2eb5d29522964be6ccdb0eb1c0 Mon Sep 17 00:00:00 2001 From: milimoe <110188673+milimoe@users.noreply.github.com> Date: Sat, 27 May 2023 16:07:20 +0800 Subject: [PATCH] Add ForgetPassword Query and Update SendRequest (#25) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 为SendRequest添加返回值 * 添加ForgetPassword相关表和查询 --- Api/Transmittal/DataRequest.cs | 22 ++++----- FunGame.Core.csproj | 2 +- Library/SQLScript/Common/Common.cs | 29 ------------ Library/SQLScript/Common/VerifyCodes.cs | 60 +++++++++++++++++++++++++ Library/SQLScript/Entity/UserQuery.cs | 5 +++ 5 files changed, 78 insertions(+), 40 deletions(-) create mode 100644 Library/SQLScript/Common/VerifyCodes.cs diff --git a/Api/Transmittal/DataRequest.cs b/Api/Transmittal/DataRequest.cs index 8da78d8..0a57d38 100644 --- a/Api/Transmittal/DataRequest.cs +++ b/Api/Transmittal/DataRequest.cs @@ -8,7 +8,7 @@ namespace Milimoe.FunGame.Core.Api.Transmittal { public class DataRequest { - public bool Success => Worker.Success; + public RequestResult Result => Worker.Result; public string Error => Worker.Error; public object? this[string key] => Worker.ResultData[key]; @@ -24,9 +24,10 @@ namespace Milimoe.FunGame.Core.Api.Transmittal Worker.RequestData.Add(key, value); } - public void SendRequest() + public RequestResult SendRequest() { Worker.SendRequest(); + return Result; } public T? GetResult(string key) @@ -42,17 +43,17 @@ namespace Milimoe.FunGame.Core.Api.Transmittal private class Request : BaseModel { public Hashtable RequestData { get; } = new(); - public Hashtable ResultData => _Result; - public bool Success => _Success; + public Hashtable ResultData => _ResultData; + public RequestResult Result => _Result; public string Error => _Error; private readonly Socket? Socket; private readonly DataRequestType RequestType; private bool _Finish = false; - private bool _Success = false; + private RequestResult _Result = RequestResult.Missing; private string _Error = ""; - private Hashtable _Result = new(); + private Hashtable _ResultData = new(); public void SendRequest() { @@ -66,11 +67,12 @@ namespace Milimoe.FunGame.Core.Api.Transmittal Thread.Sleep(100); } } + else throw new ConnectFailedException(); } catch (Exception e) { _Finish = true; - _Success = false; + _Result = RequestResult.Fail; _Error = e.GetErrorInfo(); } } @@ -91,16 +93,16 @@ namespace Milimoe.FunGame.Core.Api.Transmittal if (type == RequestType) { Dispose(); - _Result = SocketObject.GetParam(1) ?? new(); + _ResultData = SocketObject.GetParam(1) ?? new(); _Finish = true; - _Success = true; + _Result = RequestResult.Success; } } } catch (Exception e) { _Finish = true; - _Success = false; + _Result = RequestResult.Fail; _Error = e.GetErrorInfo(); } } diff --git a/FunGame.Core.csproj b/FunGame.Core.csproj index 0d190d8..fbfc64c 100644 --- a/FunGame.Core.csproj +++ b/FunGame.Core.csproj @@ -25,7 +25,7 @@ - + diff --git a/Library/SQLScript/Common/Common.cs b/Library/SQLScript/Common/Common.cs index 690ca49..b52b4cb 100644 --- a/Library/SQLScript/Common/Common.cs +++ b/Library/SQLScript/Common/Common.cs @@ -39,33 +39,4 @@ namespace Milimoe.FunGame.Core.Library.SQLScript.Common return $"{Constant.Command_Insert} {Constant.Command_Into} {TableName} ({Column_ServerName}, {Column_ServerKey}, {Column_LoginTime}) {Constant.Command_Values} ('{ServerName}', '{ServerKey}', '{DateTime.Now}')"; } } - - public class RegVerifyCodes - { - public const string TableName = "RegVerifyCodes"; - public const string Column_Username = "Username"; - public const string Column_Email = "Email"; - public const string Column_RegVerifyCode = "RegVerifyCode"; - public const string Column_RegTime = "RegTime"; - - public static string Insert_RegVerifyCodes(string Username, string Email, string RegVerifyCodes) - { - return $"{Constant.Command_Insert} {Constant.Command_Into} {TableName} ({Column_Username}, {Column_Email}, {Column_RegVerifyCode}, {Column_RegTime}) {Constant.Command_Values} ('{Username}', '{Email}', '{RegVerifyCodes}', '{DateTime.Now}')"; - } - - public static string Select_RegVerifyCode(string Username, string Email, string RegVerifyCode) - { - return $"{Constant.Command_Select} {Constant.Command_All} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}' and {Column_RegVerifyCode} = '{RegVerifyCode}'"; - } - - public static string Select_HasSentRegVerifyCode(string Username, string Email) - { - return $"{Constant.Command_Select} {Constant.Command_All} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}'"; - } - - public static string Delete_RegVerifyCode(string Username, string Email) - { - return $"{Constant.Command_Delete} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}'"; - } - } } diff --git a/Library/SQLScript/Common/VerifyCodes.cs b/Library/SQLScript/Common/VerifyCodes.cs new file mode 100644 index 0000000..0911c4a --- /dev/null +++ b/Library/SQLScript/Common/VerifyCodes.cs @@ -0,0 +1,60 @@ +namespace Milimoe.FunGame.Core.Library.SQLScript.Common +{ + public class RegVerifyCodes + { + public const string TableName = "RegVerifyCodes"; + public const string Column_Username = "Username"; + public const string Column_Email = "Email"; + public const string Column_RegVerifyCode = "RegVerifyCode"; + public const string Column_RegTime = "RegTime"; + + public static string Insert_RegVerifyCodes(string Username, string Email, string RegVerifyCodes) + { + return $"{Constant.Command_Insert} {Constant.Command_Into} {TableName} ({Column_Username}, {Column_Email}, {Column_RegVerifyCode}, {Column_RegTime}) {Constant.Command_Values} ('{Username}', '{Email}', '{RegVerifyCodes}', '{DateTime.Now}')"; + } + + public static string Select_RegVerifyCode(string Username, string Email, string RegVerifyCode) + { + return $"{Constant.Command_Select} {Constant.Command_All} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}' and {Column_RegVerifyCode} = '{RegVerifyCode}'"; + } + + public static string Select_HasSentRegVerifyCode(string Username, string Email) + { + return $"{Constant.Command_Select} {Constant.Command_All} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}'"; + } + + public static string Delete_RegVerifyCode(string Username, string Email) + { + return $"{Constant.Command_Delete} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}'"; + } + } + + public class ForgetVerifyCodes + { + public const string TableName = "ForgetVerifyCodes"; + public const string Column_Username = "Username"; + public const string Column_Email = "Email"; + public const string Column_ForgetVerifyCode = "ForgetVerifyCode"; + public const string Column_SendTime = "SendTime"; + + public static string Insert_ForgetVerifyCodes(string Username, string Email, string ForgetVerifyCodes) + { + return $"{Constant.Command_Insert} {Constant.Command_Into} {TableName} ({Column_Username}, {Column_Email}, {Column_ForgetVerifyCode}, {Column_SendTime}) {Constant.Command_Values} ('{Username}', '{Email}', '{ForgetVerifyCodes}', '{DateTime.Now}')"; + } + + public static string Select_ForgetVerifyCode(string Username, string Email, string ForgetVerifyCode) + { + return $"{Constant.Command_Select} {Constant.Command_All} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}' and {Column_ForgetVerifyCode} = '{ForgetVerifyCode}'"; + } + + public static string Select_HasSentForgetVerifyCode(string Username, string Email) + { + return $"{Constant.Command_Select} {Constant.Command_All} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}'"; + } + + public static string Delete_ForgetVerifyCode(string Username, string Email) + { + return $"{Constant.Command_Delete} {Constant.Command_From} {TableName} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{Email}'"; + } + } +} diff --git a/Library/SQLScript/Entity/UserQuery.cs b/Library/SQLScript/Entity/UserQuery.cs index cef91cd..c3bbe76 100644 --- a/Library/SQLScript/Entity/UserQuery.cs +++ b/Library/SQLScript/Entity/UserQuery.cs @@ -34,6 +34,11 @@ { return $"{Select_Users} {Constant.Command_Where} {Column_Username} = '{Username}'"; } + + public static string Select_CheckEmailWithUsername(string Username, string email) + { + return $"{Select_Users} {Constant.Command_Where} {Column_Username} = '{Username}' and {Column_Email} = '{email}'"; + } public static string Select_Users_Where(string Where) {