public ActionResult SeleccionarSucursal() { var tipoUsuario = (TiposUsuarios)Session["TipoUsuario"]; if (tipoUsuario == TiposUsuarios.Usuario) { var usuarioId = Convert.ToInt32(Session["UsuarioId"]); var usuario = _db.Usuarios.Find(usuarioId); var loginSucursal = new LoginSucursal { UsuarioId = usuarioId, GrupoId = usuario.GrupoId }; var sucursales = _db.Sucursales.Where(s => s.GrupoId == usuario.GrupoId).ToList(); if (sucursales.Count == 1) { Session["SucursalId"] = sucursales.First().Id; Session["GrupoId"] = sucursales.First().GrupoId; return(RedirectToAction("Index", "Home")); } var popularDropDowns = new PopularDropDowns(loginSucursal.GrupoId, true); ViewBag.SucursalId = popularDropDowns.PopulaSucursalesUsuarios(null, usuarioId); return(View(loginSucursal)); } else { var proveedorId = Convert.ToInt32(Session["UsuarioId"]); var proveedor = _db.Proveedores.Find(proveedorId); var loginSucursal = new LoginSucursal { ProveedorId = proveedorId, GrupoId = proveedor.GrupoId }; var sucursales = _db.Sucursales.Where(s => s.GrupoId == proveedor.GrupoId).ToList(); if (sucursales.Count == 1) { Session["SucursalId"] = sucursales.First().Id; Session["GrupoId"] = sucursales.First().GrupoId; return(RedirectToAction("Index", "Home")); } var popularDropDowns = new PopularDropDowns(loginSucursal.GrupoId, true); ViewBag.SucursalId = popularDropDowns.PopulaSucursalesProveedores(null, proveedorId); return(View(loginSucursal)); } }
public ActionResult SeleccionarSucursal(LoginSucursal loginSucursal) { var tipoUsuario = (TiposUsuarios)Session["TipoUsuario"]; var popularDropDowns = new PopularDropDowns(loginSucursal.GrupoId, true); if (tipoUsuario == TiposUsuarios.Usuario) { ViewBag.SucursalId = popularDropDowns.PopulaSucursalesUsuarios(loginSucursal.GrupoId); var usuario = _db.Usuarios.Find(loginSucursal.UsuarioId); if (!usuario.TodasSucursales) { var sucursalesLigadas = _db.UsuariosSucursales.FirstOrDefault(us => us.SucursalId == loginSucursal.SucursalId && us.UsuarioId == usuario.Id); if (sucursalesLigadas == null) { ModelState.AddModelError("", "Usuario no ligado a esa sucursal"); return(View(loginSucursal)); } } Session["GrupoId"] = usuario.GrupoId; Session["SucursalId"] = loginSucursal.SucursalId; return(RedirectToAction("Index", "Home")); } else { ViewBag.SucursalId = popularDropDowns.PopulaSucursalesProveedores(loginSucursal.GrupoId); var proveedor = _db.Proveedores.Find(loginSucursal.ProveedorId); var sucursalesLigadas = _db.ProveedoresSucursales.FirstOrDefault(us => us.SucursalId == loginSucursal.SucursalId && us.ProveedorId == proveedor.Id); if (sucursalesLigadas == null) { ModelState.AddModelError("", "Proveedor no ligado a esa sucursal"); return(View(loginSucursal)); } Session["GrupoId"] = proveedor.GrupoId; Session["SucursalId"] = loginSucursal.SucursalId; return(RedirectToAction("Index", "Home")); } }