mirror of
https://github.com/project-redbud/FunGame-Desktop.git
synced 2025-04-20 20:19:34 +08:00

* 添加找回密码,首次尝试使用DataRequest * 跟随Core修改 * 完成ForgetPassword 第一部分 * Remove Newtonsoft.Json * 跟随Core工厂方法的改动
123 lines
5.3 KiB
C#
123 lines
5.3 KiB
C#
using Milimoe.FunGame.Core.Api.Transmittal;
|
||
using Milimoe.FunGame.Core.Library.Constant;
|
||
using Milimoe.FunGame.Core.Library.Exception;
|
||
using Milimoe.FunGame.Core.Library.SQLScript.Common;
|
||
using Milimoe.FunGame.Core.Library.SQLScript.Entity;
|
||
using Milimoe.FunGame.Desktop.Library;
|
||
using Milimoe.FunGame.Desktop.Library.Component;
|
||
|
||
namespace Milimoe.FunGame.Desktop.UI
|
||
{
|
||
public partial class ForgetPassword
|
||
{
|
||
public ForgetPassword()
|
||
{
|
||
InitializeComponent();
|
||
}
|
||
|
||
protected override void BindEvent()
|
||
{
|
||
base.BindEvent();
|
||
}
|
||
|
||
private void FindPassword_Click(object sender, EventArgs e)
|
||
{
|
||
if (RunTime.Socket != null)
|
||
{
|
||
string username = UsernameText.Text.Trim();
|
||
string email = EmailText.Text.Trim();
|
||
if (username == "" || email == "")
|
||
{
|
||
ShowMessage.ErrorMessage("账号或邮箱不能为空!");
|
||
UsernameText.Focus();
|
||
return;
|
||
}
|
||
|
||
string msg = "";
|
||
bool success = false;
|
||
|
||
try
|
||
{
|
||
DataRequest request = RunTime.NewDataRequest(DataRequestType.GetFindPasswordVerifyCode);
|
||
request.AddRequestData(UserQuery.Column_Username, username);
|
||
request.AddRequestData(UserQuery.Column_Email, email);
|
||
request.AddRequestData(ForgetVerifyCodes.Column_ForgetVerifyCode, "");
|
||
request.SendRequest();
|
||
if (request.Result == RequestResult.Success)
|
||
{
|
||
msg = request.GetResult<string>("msg") ?? "";
|
||
if (msg.Trim() != "")
|
||
{
|
||
// 如果返回一个信息,则停止找回密码
|
||
ShowMessage.ErrorMessage(msg);
|
||
}
|
||
else
|
||
{
|
||
while (!success)
|
||
{
|
||
request[ForgetVerifyCodes.Column_ForgetVerifyCode] = "";
|
||
string verifycode = ShowMessage.InputMessageCancel("请输入找回密码邮件中的6位数字验证码", "注册验证码", out MessageResult result);
|
||
if (result != MessageResult.Cancel)
|
||
{
|
||
if (verifycode.Trim() != "")
|
||
{
|
||
request[ForgetVerifyCodes.Column_ForgetVerifyCode] = verifycode;
|
||
request.SendRequest();
|
||
if (request.Result == RequestResult.Success)
|
||
{
|
||
msg = request.GetResult<string>("msg") ?? "";
|
||
if (msg.Trim() != "")
|
||
{
|
||
ShowMessage.ErrorMessage(msg);
|
||
}
|
||
else
|
||
{
|
||
success = true;
|
||
break;
|
||
}
|
||
}
|
||
else
|
||
{
|
||
RunTime.WritelnSystemInfo(request.Error);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
ShowMessage.WarningMessage("不能输入空值!");
|
||
}
|
||
}
|
||
else break;
|
||
}
|
||
if (success)
|
||
{
|
||
bool checkpass = true;
|
||
while (checkpass)
|
||
{
|
||
string newpass = ShowMessage.InputMessageCancel("请输入新密码", "新密码", out MessageResult result);
|
||
if (newpass.Trim() != "")
|
||
{
|
||
if (newpass.Length < 6 || newpass.Length > 15) // 字节范围 3~12
|
||
{
|
||
ShowMessage.ErrorMessage("密码长度不符合要求:6~15个字符数");
|
||
}
|
||
else checkpass = false;
|
||
}
|
||
}
|
||
// TODO. 等更新UpdatePassword
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
RunTime.WritelnSystemInfo(request.Error);
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
RunTime.WritelnSystemInfo(ex.GetErrorInfo());
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|