public ActionResult CheckStatus(String Access = "") { Config.CheckData(); if (Config.DataExist == 2) { return(RedirectToRoute(new { controller = "Pharmacy", action = "Create", t = 1 })); } else if (Config.DataExist == 1) { return(RedirectToRoute(new { controller = "Employees", action = "Create", t = 1 })); } else if (Account.User == null || Account.Department == null) { return(RedirectToRoute(new { controller = "Account", action = "Login" })); } else { try { Employee user = new MAccounts().Login(Account.User.NIC, Account.User.Password); if (user == null || String.IsNullOrEmpty(user.NIC)) { throw new Exception(); } Employee employee = new MEmployees().Get(user.ID); if (employee == null) { throw new Exception(); } Department department = new MDepartments().Get(employee.Department_ID); if (department == null) { throw new Exception(); } Config.LogIn(employee, department); } catch { return(RedirectToRoute(new { controller = "Account", action = "Logout" })); } foreach (System.Reflection.PropertyInfo prop in typeof(Department).GetProperties()) { if (prop.PropertyType == typeof(Boolean) && (Boolean)prop.GetValue(Account.Department)) { return(null); } } } return(RedirectToRoute(new { controller = "Home", action = "Index" })); }
public Responser Login([FromBody] LoginEntity loginEntity_) { try { List <MEmployees> employees = PayRollDB.Employees_Tab.ToList().MapTo <Employees_Tab, MEmployees>(); employees = employees.Where(item => item.Email == loginEntity_.UserName && item.Password == loginEntity_.Password && item.Active == true).ToList(); if (employees.Count > 0) { //Get logged user MUser userLogged = new MUser(); MEmployees employee = employees.FirstOrDefault(); userLogged.UserID = employee.EmployeeID; userLogged.Name = string.Format("{0} {1}", employee.Name, employee.LastNames); userLogged.UserName = employee.Email; userLogged.Password = employee.Password; userLogged.RoleName = employee.RoleName; responser_.Status = 0; responser_.StatusMessage = "Login Successfully"; responser_.Data = userLogged; //Generate a Token Guid tokenLogged = Guid.NewGuid(); userLogged.Token = tokenLogged.ToString(); Employees_Tab empTab = PayRollDB.Employees_Tab.Where(item => item.EmployeeID == userLogged.UserID).ToList().FirstOrDefault(); if (empTab != null) { //Record Token in OAuth's Table TokenAuth tokenRecords = new TokenAuth(); tokenRecords.Token = tokenLogged; tokenRecords.CreationDate = DateTime.Now; tokenRecords.TokenStatusID = PayRollDB.TokenStatus.Where(item => item.Name == "Active").ToList().FirstOrDefault().TokenStatusID; PayRollDB.TokenAuth.Add(tokenRecords); PayRollDB.SaveChanges(); //Set token to user empTab.Token = tokenLogged; PayRollDB.SaveChanges(); } } else { responser_.Status = -2; responser_.StatusMessage = "Login failed: User or password is incorrect."; responser_.Data = null; } return(responser_); } catch (Exception e) { responser_.Status = -1; responser_.StatusMessage = e.Message.ToString(); responser_.Data = null; return(responser_); } }
public Responser LogOff(string id = "") { try { if (!string.IsNullOrWhiteSpace(id)) { List <MEmployees> employees = PayRollDB.Employees_Tab.ToList().MapTo <Employees_Tab, MEmployees>(); employees = employees.Where(item => item.EmployeeID == int.Parse(id)).ToList(); if (employees.Count > 0) { //Get logged user MUser userToLogOff = new MUser(); MEmployees employee = employees.FirstOrDefault(); userToLogOff.UserID = employee.EmployeeID; userToLogOff.Token = employee.Token.ToString(); //Disable Token Employees_Tab empTab = PayRollDB.Employees_Tab.Where(item => item.EmployeeID == userToLogOff.UserID).ToList().FirstOrDefault(); if (empTab != null) { //Remove token from user empTab.Token = null; PayRollDB.SaveChanges(); //Disable Token in OAuth's Table List <TokenAuth> tokenRecords = PayRollDB.TokenAuth.Where(item => item.Token.ToString().Trim() == userToLogOff.Token.Trim()).ToList(); if (tokenRecords.Count > 0) { foreach (TokenAuth item_ in tokenRecords) { item_.TokenStatusID = PayRollDB.TokenStatus.Where(item => item.Name == "Inactive").ToList().FirstOrDefault().TokenStatusID; } PayRollDB.SaveChanges(); } } responser_.Status = 0; responser_.StatusMessage = "LogOff Successfully"; responser_.Data = userToLogOff; } else { responser_.Status = -2; responser_.StatusMessage = "LogOff failed"; responser_.Data = null; } } return(responser_); } catch (Exception e) { responser_.Status = -1; responser_.StatusMessage = e.Message.ToString(); responser_.Data = null; return(responser_); } }