public ActionResult Login(string ReturnUrl) { AdminPage backEndPage = new AdminPage(); backEndPage.PageName = "Login"; ViewBag.AdminPage = backEndPage; BackEndLogin backEndLogin = new BackEndLogin() { ReturnUrl = ReturnUrl }; return(View(backEndLogin)); }
public ActionResult Login(BackEndLogin backEndLogin, string ReturnUrl) { AdminPage backEndPage = new AdminPage(); backEndPage.PageName = "Login"; ViewBag.AdminPage = backEndPage; if (ModelState.IsValidOrRefresh()) { Users users = new Users(); User user = users.GetUserByUserNameAndPassword(backEndLogin.Username, backEndLogin.Password); if (user.IsNotNull()) { ModelState.AddResult(ViewData, ModelStateResult.Success, Resources.Strings.SuccessfullyLoggedIn); var tenant = users.GetTenantByUsername(backEndLogin.Username); if (tenant != null) { // 1. Tạo người dùng (User) - UserName, Password // 2. Quản lý công ty -> Tạo công ty (Tenant) - Tên, MST, ServerName, DbBName, DbUserName, DbPassword, UserName // 3. Quản lý công ty -> Cập nhật lại thông tin UserName cho công ty (Tenant) nếu Tenant chưa có UserName // // Mỗi 1 công ty (Tenant) có duy nhất 1 mã số thuế (trùng với tên đăng nhập vào hệ thống) // Mỗi 1 công ty (Tenant) có duy nhất 1 connection string = { ServerName, DbBName, DbUserName, DbPassword, DbPort (optional) } // Mỗi 1 công ty (Tenant) có nhiều Đơn Vị Cơ Sở (dvcs) // Khi Login xong thì connection string sẽ thay đổi theo mã số thuế { ServerName, DbBName, DbUserName, DbPassword, DbPort (optional) } AdoHelper2.ConnectionString = DataHelper.BuildDynamicConnectionString(ConfigurationManager.ConnectionStrings["SM17ConnectionString"].ConnectionString, tenant); user.Dvcs = tenant.Dvcs; user.Tenant = tenant; } BackEndSessions.CurrentUser = user; AdminPages backEndPages = new AdminPages(); BackEndSessions.CurrentMenu = backEndPages.GetMenuByGroupId(user.GroupId); if (ReturnUrl.IsNotEmptyOrWhiteSpace()) { return(Redirect(HttpUtility.UrlDecode(ReturnUrl))); } else { return(RedirectToAction("Dashboard")); } } else { ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.UsernameOrPasswordNotValid); } } return(View(backEndLogin)); }
public ActionResult Login(BackEndLogin backEndLogin, string ReturnUrl) { AdminPage backEndPage = new AdminPage(); backEndPage.PageName = "Login"; ViewBag.AdminPage = backEndPage; if (ModelState.IsValidOrRefresh()) { Users users = new Users(); User user = users.GetUserByUserNameAndPassword(backEndLogin.Username, backEndLogin.Password); if (user.IsNotNull()) { ModelState.AddResult(ViewData, ModelStateResult.Success, Resources.Strings.SuccessfullyLoggedIn); BackEndSessions.CurrentUser = user; AdminPages backEndPages = new AdminPages(); BackEndSessions.CurrentMenu = backEndPages.GetMenuByGroupId(user.GroupId); if (ReturnUrl.IsNotEmptyOrWhiteSpace()) { return(Redirect(HttpUtility.UrlDecode(ReturnUrl))); } else { return(RedirectToAction("Index")); } } else { ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.UsernameOrPasswordNotValid); } } return(View(backEndLogin)); }