private void Login(string userName, string pass) { BindingList <Rol> roles = new BindingList <Rol>(); try { user = svc.Login(userName, pass); roles = rolManager.GetUserRoles(user.UserID); } catch (System.Exception excep) { MessageBox.Show(excep.Message); } if (roles.Count > 1) { comboRoles.DataSource = roles; comboRoles.DisplayMember = "Nombre"; comboRoles.SelectedIndex = 0; panelRoles.Show(); } else { if (roles.Count < 1) { throw new Exception("El usuario no tiene roles asignados, contacte a un administrativo!"); } Rol rol = (Rol)roles.ElementAt(0); user.RoleID = rol.ID; user.Perfil = rol.Perfil; svc.SetUserFunctionalities(user); user.DetallesPersona = detallesManager.getDetalles(user.UserID); iniciar_sesion(); } }
private RoleListModel GetRolesViewModel() { RoleListModel roleModel = new RoleListModel(); //UserRoles roleModel.HasApacctRole = false; roleModel.HasCustServiceRole = false; roleModel.HasDataEntryRole = false; roleModel.HasExceptionsRole = false; roleModel.HasMgtReportsRole = false; roleModel.HasTopsRole = false; roleModel.HasVcRole = false; roleModel.HasFinanceuserRole = false; roleModel.HasVendCoderRole = false; roleModel.HasVerifyDupRole = false; roleModel.PREPCODE = ""; roleModel.SYMBOL = ""; roleModel.ASSIGN_SRV = ""; if (this.UserName != null) { var mgr = new RolesManager(); roleModel = mgr.GetUserRoles(this.UserName, roleModel, this.Roles as List <String>, this.AssignSrv, this.PrepCode, this.Symbol); } return(roleModel); }
// If the user has the Financeuser role, this will set all user session state // and return true. // If not, clear all session state and return false. public static bool VerifyUser(string UserName) { var session = HttpContext.Current.Session; UserName = UserName.ToUpper(); session[SessionKey.UserName] = UserName; var roleModel = new RoleListModel(); var loginMgr = new LoginManager(); var mgr = new RolesManager(); List <String> roleList = new List <String>(); // Get Roles var roles = DataAccess.GetRole(UserName, "VITAP"); foreach (DataRow row in roles.Rows) { roleList.Add(row["ROLE_NAME"].ToString()); } roleModel = mgr.GetUserRoles(UserName, roleModel, roleList, "", "", ""); // Top-level access check (finance role). if (!HasTopLevelAccess(roleModel)) { ClearSessionState(); return(false); } roleModel.USERNAME = UserName; session.Add(SessionKey.Roles, roleList); // Get Other Login Data var LoginData = loginMgr.GetLoginData(UserName).ToList().FirstOrDefault(); if (LoginData != null) { session.Add(SessionKey.AssignSrv, LoginData.ASSIGN_SRV); roleModel.ASSIGN_SRV = LoginData.ASSIGN_SRV; session.Add(SessionKey.PrepCode, LoginData.PREPCODE); roleModel.PREPCODE = LoginData.PREPCODE; session.Add(SessionKey.Symbol, LoginData.SYMBOL); roleModel.SYMBOL = LoginData.SYMBOL; } session.Add(SessionKey.RoleModel, roleModel); return(true); }