示例#1
0
 public ActionResult Login(LoginModel login)
 {
     if (Account.User != null)
     {
         return(RedirectToRoute(new { controller = "Home", action = "Index" }));
     }
     try
     {
         Employee user = new MAccounts().Login(login.UserName, login.Password);
         if (user == null)
         {
             throw new Exception("Username Or Password Is Incorrect");
         }
         Department department = new MDepartments().Get(user.Department_ID);
         if (department == null)
         {
             throw new Exception("You doesn't have the access");
         }
         Config.LogIn(user, department);
         return(RedirectToRoute(new { controller = "Home", action = "Index" }));
     }
     catch (Exception ex)
     {
         ModelState.AddModelError("", ex.Message);
     }
     return(View(login));
 }
 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" }));
 }