You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

222 lines
11 KiB
C#

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using DSWeb.EntityDA;
using DSWeb.Models;
using System.Collections.Generic;
using System.Xml;
namespace DSWeb
{
public partial class Login_new1 : System.Web.UI.Page
{
public string sSQL = String.Empty;
DB pDB = new DB();
Cookies cookies = new Cookies();
UserDA UserDA = new UserDA();
public string PageMeta = "";
protected void Page_Load(object sender, EventArgs e)
{
this.Page.Title = "用户登录";
PageMeta = this.Page.Title;
//this.hdISAbout.Value = System.Configuration.ConfigurationSettings.AppSettings["isabout"].ToString();
}
protected void lnkTo_Click(object sender, EventArgs e)
{
XmlDocument objXmlDoc = new XmlDocument();
objXmlDoc.Load(Server.MapPath("vote.xml"));
objXmlDoc.SelectSingleNode("/vote/item").InnerText = "1";
objXmlDoc.Save(Server.MapPath("vote.xml"));
Response.Redirect("Login_old.aspx");
}
protected void btnLogin_Click(object sender, EventArgs e)
{
string strCompanyCode = "";
string strCompanyName = "";
string strUserCodeName = "";
string strUserPassword = "";
strCompanyCode = this.list_subcompany_new.Value.Trim();
strCompanyName = this.lb_subcompany2.Value.Trim();
strUserCodeName = this.list_CODENAME_new.Value.Trim();
strUserPassword = this.tbpassword_new.Value.Trim();
if (strCompanyCode.Equals("") || strUserCodeName.Equals("") || strUserPassword.Equals(""))
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", "<script>alert('公司名称、用户名、密码不能为空,请重新登陆!');history.back();</script>");
return;
}
if (strCompanyCode.IndexOf("'") >= 0)
{
strCompanyCode = strCompanyCode.Replace("'", " ");
}
if (strCompanyCode.IndexOf("'") >= 0)
{
strUserCodeName = strUserCodeName.Replace("'", " ");
}
if (strCompanyCode.IndexOf("'") >= 0)
{
strUserPassword = strUserPassword.Replace("'", " ");
}
//if (this.list_subcompany.Text.Trim().Equals("") || this.list_CODENAME.Text.Trim().Equals("") || this.tbpassword.Text.Trim().Equals(""))
//{
// //Response.Write("<script>alert('公司名称、用户名、密码不能为空,请重新登陆!');history.back();</script>");
// Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", "<script>alert('公司名称、用户名、密码不能为空,请重新登陆!');history.back();</script>");
// return;
//}
//
UserEntity userEntity = new UserEntity();
UserDA userDA = new UserDA();
userEntity = userDA.GetSigleUserInfoBySignIn(strUserCodeName, strUserPassword, strCompanyCode);
CompanyEntity companyEntity = new CompanyEntity();
CompanyDA companyDA = new CompanyDA();
if (userEntity != null)
{
if (userEntity.Gid != null)
{
if (!userEntity.IsDeleted)
{
UserAttributeDA userAttributeDA = new UserAttributeDA();
UserAttributeEntity userAttributeEntity = new UserAttributeEntity();
userAttributeEntity = userAttributeDA.GetUserAttributeByIdAndAttrName(userEntity.Gid, "isUseSystem");
if (userAttributeEntity != null)
{
if (userAttributeEntity.Gid != null)
{
if (userAttributeEntity.RefEntity.AttributeValue.ToString().Trim().ToLower().Equals("true"))
{
Session["USERID"] = userEntity.Gid;
Session["CODENAME"] = userEntity.CodeName;
Session["SHOWNAME"] = userEntity.ShowName;
Session["PASSWORD"] = userEntity.PassWord;
if (!strCompanyCode.Trim().Equals(""))
{
companyEntity = companyDA.GetCompanyByCodeNameNoLogoImg(strCompanyCode.ToUpper());
if (companyEntity != null)
{
if (companyEntity.GID != null)
{
Session["COMPANYID"] = companyEntity.GID;
Session["COMPANYNAME"] = companyEntity.NAME;
Session["LOCALCURR"] = companyEntity.LOCALCURR;
}
}
}
Session["DEPTNAME"] = UserDA.GetUserDepartmentName(userEntity.Gid);
Session["DEPTGID"] = UserDA.GetDEPTGID(userEntity.Gid);
//Record User SignIn System
UserLoginStatusDA userLoginStatusDA = new UserLoginStatusDA();
UserLoginStatusEntity userLoginStatusEntity = new UserLoginStatusEntity();
//查看是否当前登录用户是否是时效内重新登录的用户
userLoginStatusEntity = userLoginStatusDA.GetLoginStatusByUserID(Session["USERID"].ToString());
if (userLoginStatusEntity.GID != null)
{
DateTime signDateTime = userLoginStatusEntity.SignInTime;
DateTime serverDateTime = userLoginStatusEntity.ServerDateTime;
double expiresMinutes = double.Parse(userLoginStatusEntity.ExpiresMinutes.ToString());
if (signDateTime.AddMinutes(expiresMinutes).CompareTo(serverDateTime) >= 0)
{
userLoginStatusDA.DeleteUserLoginStatus(userLoginStatusEntity.GID);
userLoginStatusEntity.GID = Guid.NewGuid().ToString();
userLoginStatusEntity.SessionID = "USERID";
userLoginStatusEntity.ExpiresMinutes = 200;
userLoginStatusDA.InsertLoginStatus(userLoginStatusEntity);
}
else
{
userLoginStatusDA.UpdateLoginStatusForReSign(userLoginStatusEntity);
}
}
else
{
userLoginStatusEntity.GID = Guid.NewGuid().ToString();
userLoginStatusEntity.SessionID = Guid.NewGuid().ToString();
userLoginStatusEntity.UserID = Session["USERID"].ToString();
userLoginStatusEntity.ExpiresMinutes = 200;
userLoginStatusDA.InsertLoginStatus(userLoginStatusEntity);
}
bool ck0 = cookies.setCookie("DSUSERID", Server.UrlEncode(userEntity.Gid));
ck0 = cookies.setCookie("COMPANYCODENAME", Server.UrlEncode(strCompanyCode));
ck0 = cookies.setCookie("COMPANYNAME", Server.UrlEncode(strCompanyName));
ck0 = cookies.setCookie("LOCALCURR", Server.UrlEncode(companyEntity.LOCALCURR));
ck0 = cookies.setCookie("CODENAME", Server.UrlEncode(userEntity.CodeName));
ck0 = cookies.setCookie("SHOWNAME", Server.UrlEncode(userEntity.ShowName));
ck0 = cookies.setCookie("PASSWORD", Server.UrlEncode(userEntity.PassWord));
/*if (this.chkRemember.Checked)
{
ck0 = cookie.setCookie("isCheckBox", Server.UrlEncode("1"));
}
else
{
ck0 = cookie.setCookie("isCheckBox", Server.UrlEncode("0"));
}*/
//Response.Redirect("~/Default.aspx");
Response.Write("<script>window.location='Default.aspx'</script>");
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key4", "<script>alert('账户已禁用,请联系管理员');history.back();</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key4", "<script>alert('用户名不存在,或用户名、密码错误,请重新登陆!');history.back();</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key4", "<script>alert('用户名不存在,或用户名、密码错误,请重新登陆!');history.back();</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key4", "<script>alert('用户名不存在,或用户名、密码错误,请重新登陆!');history.back();</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key4", "<script>alert('用户名不存在,或用户名、密码错误,请重新登陆!');history.back();</script>");
return;
}
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key4", "<script>alert('用户名不存在,或用户名、密码错误,请重新登陆!');history.back();</script>");
return;
}
}
}
}