private static void a_ButtonLoginEven(int iLogin, string strMachine, string strUserWindow, string strIpAddress, string strUsername, string password, string strBatch, string strRole, string strToken, ref bool loginOk) { if (iLogin != 1) { return; } //Kiểm tra Token bool has = Global.db_BPO.tbl_TokenLogins.Any(w => w.UserName == strUsername && w.IDProject == Global.StrIdProject); if (has) { var token = (from w in Global.db_BPO.tbl_TokenLogins where w.UserName == strUsername && w.IDProject == Global.StrIdProject select w.Token).FirstOrDefault(); if (token == "") { Global.db_BPO.updateToken(strUsername, Global.StrIdProject, strToken); Global.db_BPO.InsertLoginTime(strUsername, DateTime.Now, strUserWindow, strMachine, strIpAddress, strToken); loginOk = true; } else { if ( MessageBox.Show("User này đã đăng nhập ở máy khác. Bạn có muốn tiếp tục đăng nhập?", "Thông báo!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { Global.db_BPO.updateToken(strUsername, Global.StrIdProject, strToken); Global.db_BPO.InsertLoginTime(strUsername, DateTime.Now, strUserWindow, strMachine, strIpAddress, strToken); loginOk = true; } else { loginOk = false; } } } else { var token = new tbl_TokenLogin(); token.UserName = strUsername; token.IDProject = Global.StrIdProject; token.Token = ""; token.DateLogin = DateTime.Now; Global.db_BPO.tbl_TokenLogins.InsertOnSubmit(token); Global.db_BPO.SubmitChanges(); loginOk = true; Global.db_BPO.updateToken(strUsername, Global.StrIdProject, strToken); Global.db_BPO.InsertLoginTime(strUsername, DateTime.Now, strUserWindow, strMachine, strIpAddress, strToken); } }
private void btn_login_Click(object sender, EventArgs e) { var query = (from w in Global.DbBpo.tbl_Versions where w.IDProject == Global.StrIdProject select w.IDVersion).FirstOrDefault(); if (lb_version.Text == query) { if (GetInfo()) { if (Global.CheckOutSource(txt_role.Text) == true) { MessageBox.Show("Hiện tại dự án chưa có nhu cầu về nguồn nhân lực bên ngoài"); return; } if (string.IsNullOrEmpty(cbb_batchname.Text)) { if (MessageBox.Show("Không có batch nào được chọn. Bạn vẫn muốn đăng nhập?", "Thông báo!", MessageBoxButtons.YesNo) == DialogResult.No) { return; } } if (chb_luu.Checked) { Settings.Default.username = txt_username.Text; Settings.Default.password = txt_password.Text; Settings.Default.Check = true; Settings.Default.Save(); } else { Settings.Default.username = ""; Settings.Default.password = ""; Settings.Default.Check = false; Settings.Default.Save(); } Global.Token = Global.GetToken(txt_username.Text); Global.StrBatch = cbb_batchname.Text; Global.StrUserName = txt_username.Text; Global.StrPcName = txt_machine.Text; Global.StrDomainName = txt_userwindow.Text; Global.StrRole = txt_role.Text; Global.Version = lb_version.Text; bool has = Global.DbBpo.tbl_TokenLogins.Any(w => w.UserName == txt_username.Text && w.IDProject == Global.StrIdProject); if (has) { var token = (from w in Global.DbBpo.tbl_TokenLogins where w.UserName == txt_username.Text && w.IDProject == Global.StrIdProject select w.Token).FirstOrDefault(); if (token == "") { Global.DbBpo.updateToken(txt_username.Text, Global.StrIdProject, Global.Token); Global.DbBpo.InsertLoginTime_new(txt_username.Text, DateTime.Now, txt_userwindow.Text, txt_machine.Text, txt_ipaddress.Text, Global.Token, Global.StrIdProject); } else { if (MessageBox.Show(@"User đang đăng nhập vào máy khác. Bạn có muốn tiếp tục đăng nhập?", @"Notification", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { Global.DbBpo.updateToken(txt_username.Text, Global.StrIdProject, Global.Token); Global.DbBpo.InsertLoginTime_new(txt_username.Text, DateTime.Now, txt_userwindow.Text, txt_machine.Text, txt_ipaddress.Text, Global.Token, Global.StrIdProject); } else { return; } } } else { var token = new tbl_TokenLogin(); token.UserName = txt_username.Text; token.IDProject = Global.StrIdProject; token.Token = ""; token.DateLogin = DateTime.Now; Global.DbBpo.tbl_TokenLogins.InsertOnSubmit(token); Global.DbBpo.SubmitChanges(); Global.DbBpo.updateToken(txt_username.Text, Global.StrIdProject, Global.Token); Global.DbBpo.InsertLoginTime_new(txt_username.Text, DateTime.Now, txt_userwindow.Text, txt_machine.Text, txt_ipaddress.Text, Global.Token, Global.StrIdProject); } DialogResult = DialogResult.OK; } } else { MessageBox.Show("Version bạn dùng đã cũ, vui lòng cập nhật phiên bản mới!", "Thông báo!", MessageBoxButtons.OK, MessageBoxIcon.Information); Global.RunUpdateVersion(); Application.Exit(); } }