Commit d9dcd05c authored by tr's avatar tr

1、登录功能优化:增加密码过期校验

parent 3a28ba1f
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<configuration> <configuration>
<appSettings> <appSettings>
<add key="UpdateTime" value="2021-10-11 17:24:21.963" /> <add key="UpdateTime" value="2021-10-11 18:11:12.770" />
<add key="LoginInfo" value="wwF/xpBzWek=" /> <add key="LoginInfo" value="wwF/xpBzWek=" />
<add key="LoginVerify" value="v86f5Q3Xa7U=" />
</appSettings> </appSettings>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
......
...@@ -20,6 +20,10 @@ namespace Tools.MyCommon ...@@ -20,6 +20,10 @@ namespace Tools.MyCommon
/// </summary> /// </summary>
public static string LOGIN_INFO => "LoginInfo"; public static string LOGIN_INFO => "LoginInfo";
/// <summary> /// <summary>
/// 登录验证
/// </summary>
public static string LOGIN_VERIFY => "LoginVerify";
/// <summary>
/// 更新时间 /// 更新时间
/// </summary> /// </summary>
public static string UPDATE_TIME => "UpdateTime"; public static string UPDATE_TIME => "UpdateTime";
......
...@@ -17,24 +17,30 @@ namespace Tools.UI.sys ...@@ -17,24 +17,30 @@ namespace Tools.UI.sys
public partial class wLogin : wBasic public partial class wLogin : wBasic
{ {
DBHelper _db = null; DBHelper _db = null;
string TempName = "";
public wLogin() /// <summary>
/// 构造:登录窗口
/// </summary>
/// <param name="tempName">临时用户名</param>
public wLogin(string tempName)
{ {
InitializeComponent(); InitializeComponent();
// //
this.DialogResult = DialogResult.None; this.DialogResult = DialogResult.None;
this.TempName = tempName;
} }
private void wLogin_Load(object sender, EventArgs e) private void wLogin_Load(object sender, EventArgs e)
{ {
this.tbUserName.Text = LoginInfo.UserName; this.tbUserName.Text = string.IsNullOrEmpty(this.TempName) ? LoginInfo.UserName : this.TempName;
} }
private void btnLogin_Click(object sender, EventArgs e) private void btnLogin_Click(object sender, EventArgs e)
{ {
if (_db == null) if (_db == null)
_db = new DBHelper(Utils.GetDbLinkString204("FTT_Work")); _db = new DBHelper(Utils.GetDbLinkString204("FTT_Work"));
// //获取用户名和密码
var userName = this.tbUserName.Text.Trim(); var userName = this.tbUserName.Text.Trim();
var password = Utils.Encryptor(this.tbPassword.Text); var password = Utils.Encryptor(this.tbPassword.Text);
var sql = $@" var sql = $@"
...@@ -56,6 +62,7 @@ namespace Tools.UI.sys ...@@ -56,6 +62,7 @@ namespace Tools.UI.sys
LoginInfo.IsPrincipal = Convert.ToBoolean(dt.DefaultView[0]["IsPrincipal"].ToString()); LoginInfo.IsPrincipal = Convert.ToBoolean(dt.DefaultView[0]["IsPrincipal"].ToString());
//保存登录信息 //保存登录信息
Utils.AppSettings(APP.LOGIN_INFO, Utils.Encryptor(dt.DefaultView[0]["ID"].ToString())); Utils.AppSettings(APP.LOGIN_INFO, Utils.Encryptor(dt.DefaultView[0]["ID"].ToString()));
Utils.AppSettings(APP.LOGIN_VERIFY, password);
//关闭窗口 //关闭窗口
this.DialogResult = DialogResult.OK; this.DialogResult = DialogResult.OK;
this.Close(); this.Close();
......
...@@ -54,8 +54,6 @@ namespace Tools ...@@ -54,8 +54,6 @@ namespace Tools
this.CheckPower(); this.CheckPower();
//渲染菜单 //渲染菜单
this.RenderMenu(); this.RenderMenu();
//非部门管理员,禁用上传更新
this.tsmiSysUpload.Enabled = LoginInfo.IsPrincipal;
} }
private void WMainView_Shown(object sender, EventArgs e) private void WMainView_Shown(object sender, EventArgs e)
{ {
...@@ -439,11 +437,7 @@ namespace Tools ...@@ -439,11 +437,7 @@ namespace Tools
//登录人员点击 //登录人员点击
private void LbSysLoginUser_Click(object sender, EventArgs e) private void LbSysLoginUser_Click(object sender, EventArgs e)
{ {
wLogin login = new wLogin(); this.ShowLoginWindow();
if (login.ShowDialog() == DialogResult.OK)
{
this.SetLoginUserName();
}
} }
#endregion #endregion
...@@ -552,22 +546,56 @@ namespace Tools ...@@ -552,22 +546,56 @@ namespace Tools
if (dt.DefaultView.Count > 0) if (dt.DefaultView.Count > 0)
{ {
var userName = dt.DefaultView[0]["UserName"].ToString(); var userName = dt.DefaultView[0]["UserName"].ToString();
//初始化登录人员信息 var password = dt.DefaultView[0]["Password"].ToString();
LoginInfo.UserName = userName; //验证密码
LoginInfo.Password = dt.DefaultView[0]["Password"].ToString(); var loginVerify = Utils.AppSettings(APP.LOGIN_VERIFY);
LoginInfo.IsPrincipal = Convert.ToBoolean(dt.DefaultView[0]["IsPrincipal"].ToString()); if (loginVerify != password)
{
if (Utils.TipYN("密码已过期,请重新登录!"))
{
if (this.ShowLoginWindow(userName))
{
return;
}
}
}
else
{
//初始化登录人员信息
LoginInfo.UserName = userName;
LoginInfo.Password = password;
LoginInfo.IsPrincipal = Convert.ToBoolean(dt.DefaultView[0]["IsPrincipal"].ToString());
}
} }
} }
// //设置登录用户名
this.SetLoginUserName(); this.SetLoginUserName();
} }
/// <summary> /// <summary>
/// 显示登录窗口
/// </summary>
/// <param name="tempName">临时用户名</param>
/// <returns>bool</returns>
private bool ShowLoginWindow(string tempName = "")
{
wLogin login = new wLogin(tempName);
var isOK = login.ShowDialog() == DialogResult.OK;
if (isOK)
{
this.SetLoginUserName();
}
return isOK;
}
/// <summary>
/// 设置登录人员名称 /// 设置登录人员名称
/// </summary> /// </summary>
/// <param name="userName"></param> /// <param name="userName"></param>
private void SetLoginUserName() private void SetLoginUserName()
{ {
//设置登录用户名
this.lbSysLoginUser.Text = LoginInfo.UserName; this.lbSysLoginUser.Text = LoginInfo.UserName;
//非部门管理员,禁用上传更新
this.tsmiSysUpload.Enabled = LoginInfo.IsPrincipal;
} }
#endregion #endregion
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment