Add ForgetPassword Query and Update SendRequest (#25)

* 为SendRequest添加返回值

* 添加ForgetPassword相关表和查询
This commit is contained in:
milimoe 2023-05-27 16:07:20 +08:00 committed by GitHub
parent 3eda4b8167
commit 372c7e2495
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 78 additions and 40 deletions

View File

@ -8,7 +8,7 @@ namespace Milimoe.FunGame.Core.Api.Transmittal
{ {
public class DataRequest public class DataRequest
{ {
public bool Success => Worker.Success; public RequestResult Result => Worker.Result;
public string Error => Worker.Error; public string Error => Worker.Error;
public object? this[string key] => Worker.ResultData[key]; public object? this[string key] => Worker.ResultData[key];
@ -24,9 +24,10 @@ namespace Milimoe.FunGame.Core.Api.Transmittal
Worker.RequestData.Add(key, value); Worker.RequestData.Add(key, value);
} }
public void SendRequest() public RequestResult SendRequest()
{ {
Worker.SendRequest(); Worker.SendRequest();
return Result;
} }
public T? GetResult<T>(string key) public T? GetResult<T>(string key)
@ -42,17 +43,17 @@ namespace Milimoe.FunGame.Core.Api.Transmittal
private class Request : BaseModel private class Request : BaseModel
{ {
public Hashtable RequestData { get; } = new(); public Hashtable RequestData { get; } = new();
public Hashtable ResultData => _Result; public Hashtable ResultData => _ResultData;
public bool Success => _Success; public RequestResult Result => _Result;
public string Error => _Error; public string Error => _Error;
private readonly Socket? Socket; private readonly Socket? Socket;
private readonly DataRequestType RequestType; private readonly DataRequestType RequestType;
private bool _Finish = false; private bool _Finish = false;
private bool _Success = false; private RequestResult _Result = RequestResult.Missing;
private string _Error = ""; private string _Error = "";
private Hashtable _Result = new(); private Hashtable _ResultData = new();
public void SendRequest() public void SendRequest()
{ {
@ -66,11 +67,12 @@ namespace Milimoe.FunGame.Core.Api.Transmittal
Thread.Sleep(100); Thread.Sleep(100);
} }
} }
else throw new ConnectFailedException();
} }
catch (Exception e) catch (Exception e)
{ {
_Finish = true; _Finish = true;
_Success = false; _Result = RequestResult.Fail;
_Error = e.GetErrorInfo(); _Error = e.GetErrorInfo();
} }
} }
@ -91,16 +93,16 @@ namespace Milimoe.FunGame.Core.Api.Transmittal
if (type == RequestType) if (type == RequestType)
{ {
Dispose(); Dispose();
_Result = SocketObject.GetParam<Hashtable>(1) ?? new(); _ResultData = SocketObject.GetParam<Hashtable>(1) ?? new();
_Finish = true; _Finish = true;
_Success = true; _Result = RequestResult.Success;
} }
} }
} }
catch (Exception e) catch (Exception e)
{ {
_Finish = true; _Finish = true;
_Success = false; _Result = RequestResult.Fail;
_Error = e.GetErrorInfo(); _Error = e.GetErrorInfo();
} }
} }

View File

@ -25,7 +25,7 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.3"/>
</ItemGroup> </ItemGroup>
</Project> </Project>

View File

@ -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}')"; 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}'";
}
}
} }

View File

@ -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}'";
}
}
}

View File

@ -34,6 +34,11 @@
{ {
return $"{Select_Users} {Constant.Command_Where} {Column_Username} = '{Username}'"; 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) public static string Select_Users_Where(string Where)
{ {