public LoginApiModel.RetornoEfetuarLogin EfetuarLogin(LoginApiModel.EfetuarLogin parametros) { var ret = new LoginApiModel.RetornoEfetuarLogin(); // var grupos = ControleDeAcesso.AutenticaUsuario(parametros.USUARIO, parametros.SENHA); if (grupos == null || grupos != null && grupos.Count > 0) { var loginObj = ControleDeAcesso.ObterConjuntoDePermissoesUsuario(HttpContext.Current.Session, parametros.USUARIO, grupos); if (loginObj.InformacoesUsuario == null) { ret.MENSAGEM = "Usuário não existente na base de dados."; } else { // if ((grupos != null)) { List <string> GruposSmart = new List <string>(); // grupos.ForEach(Item => { if ((Item.ToUpper().StartsWith("SMART."))) { GruposSmart.Add(Item); } }); // if ((GruposSmart != null && GruposSmart.Count > 0)) { ControleDeAcessoBLL BLL = new ControleDeAcessoBLL(); BLL.ValidarGrupoSistemas(loginObj.InformacoesUsuario.CODFNC, GruposSmart); // loginObj = ControleDeAcesso.ObterConjuntoDePermissoesUsuario(HttpContext.Current.Session, parametros.USUARIO, grupos); } } // if (loginObj.SistemasPermitidos.Count == 0) { ret.MENSAGEM = "Usuário sem permissão de acesso associada."; } else { ret.CODIGO = 1; } } } else { ret.MENSAGEM = "Usuário ou senha incorretos."; } // return(ret); }
public static ConjuntoDePermissoesUsuarioModulos ObterConjuntoDeModulosUsuario(int CODFNC, int CODSISINF) { ConjuntoDePermissoesUsuarioModulos retorno = new ConjuntoDePermissoesUsuarioModulos(); // var bll = new ControleDeAcessoBLL(); retorno.InformacoesUsuario = bll.ObterInformacoesUsuario(CODFNC, string.Empty).FirstOrDefault(); retorno.ModulosPermitidos = bll.ObterModulosPermitidos(CODSISINF, CODFNC); foreach (var Item in retorno.ModulosPermitidos) { Item.CONTROLES.AddRange(bll.ObterControlesPermitidos(Item.CODMDUSIS, CODSISINF, CODFNC)); } // return(retorno); }
public static ConjuntoDePermissoesUsuarioSistemas ObterConjuntoDePermissoesUsuario(HttpSessionState Session, string nomUsrRde = "", List <string> grupos = null) { ConjuntoDePermissoesUsuarioSistemas retorno = new ConjuntoDePermissoesUsuarioSistemas(); // if ((!nomUsrRde.Equals(string.Empty))) { var bll = new ControleDeAcessoBLL(); // retorno.InformacoesUsuario = bll.ObterInformacoesUsuario(0, nomUsrRde).FirstOrDefault(); if (retorno.InformacoesUsuario != null) { retorno.SistemasPermitidos = bll.ObterSistemasPermitidos(CODSISINF, retorno.InformacoesUsuario.CODFNC); if (grupos != null) { retorno.SistemasPermitidos = retorno.SistemasPermitidos.Where(x => grupos.Contains(x.DESGRPRDESISSMA)).ToList(); } } } else if (Session["ConjuntoDePermissoesUsuario"] != null) { retorno = (ConjuntoDePermissoesUsuarioSistemas)Session["ConjuntoDePermissoesUsuario"]; } // if (retorno != null && retorno.InformacoesUsuario != null && retorno.SistemasPermitidos.Count > 0) { Session["ConjuntoDePermissoesUsuario"] = retorno; } else { Session.Clear(); Session.Abandon(); } // return(retorno); }