Пример #1
0
 public string ConsultarUsuarioExiste(string psusuario, string psclave)
 {
     using (Asiservy.Automatizacion.Datos.Datos.ASIS_PRODEntities db = new Asiservy.Automatizacion.Datos.Datos.ASIS_PRODEntities())
     {
         string psCodigoUsuario = db.spConsultarUsuario(psusuario, psclave).FirstOrDefault();
         return(psCodigoUsuario);
     }
 }
Пример #2
0
        public Object[] ConsultarRolesDeUsuario(string psrolid)
        {
            using (Asiservy.Automatizacion.Datos.Datos.ASIS_PRODEntities db = new Asiservy.Automatizacion.Datos.Datos.ASIS_PRODEntities())
            {
                //List<string> pListPadrestotal = new List<string>();
                //List<string> pListHijostotal = new List<string>();
                List <spConsultaOpcionesPorRol> pListPadrestotal = new List <spConsultaOpcionesPorRol>();
                List <spConsultaOpcionesPorRol> pListHijostotal  = new List <spConsultaOpcionesPorRol>();

                var piRol = (from r in db.USUARIO_ROL
                             where r.IdUsuario == psrolid && r.EstadoRegistro == "A"
                             select r.IdRol).ToList();
                foreach (var item in piRol)
                {
                    //var pListPadres = (from r in db.OPCION_ROL
                    //                   join rn in db.OPCION on r.IdOpcion equals rn.IdOpcion
                    //                   where r.IdRol == item && rn.Clase == "P"
                    //                   select rn.Nombre).ToList();
                    List <spConsultaOpcionesPorRol> pListPadres = db.spConsultaOpcionesPorRol(item).Where(x => x.Clase == "P").ToList();
                    pListPadrestotal.AddRange(pListPadres);
                }
                List <spConsultaOpcionesPorRol> ListModulos = pListPadrestotal.Where(x => x.IdModulo != null).ToList();
                foreach (var item in piRol)
                {
                    //var pListHijos = (from r in db.OPCION_ROL
                    //                  join rn in db.OPCION on r.IdOpcion equals rn.IdOpcion
                    //                  where r.IdRol == item && rn.Clase == "H"
                    //                  select rn.Formulario).ToList();
                    var pListHijos = db.spConsultaOpcionesPorRol(item).Where(x => x.Clase == "H").ToList();
                    pListHijostotal.AddRange(pListHijos);
                }
                List <ConsultaOpcionesxRolViewModel> pListPadresfilter = new List <ConsultaOpcionesxRolViewModel>();
                List <ConsultaOpcionesxRolViewModel> pListHijosfilter  = new List <ConsultaOpcionesxRolViewModel>();
                List <ModuloViewModel> pListModulosFilter = new List <ModuloViewModel>();
                pListHijosfilter = pListHijostotal.ConvertAll(x => new ConsultaOpcionesxRolViewModel
                {
                    IdOpcion   = x.IdOpcion,
                    Clase      = x.Clase,
                    Formulario = x.Formulario,
                    Nombre     = x.Nombre,
                    Padre      = x.Padre,
                    Url        = x.Url,
                    Orden      = x.Orden,
                    IdModulo   = x.IdModulo
                });
                pListPadresfilter = pListPadrestotal.ConvertAll(x => new ConsultaOpcionesxRolViewModel
                {
                    Clase      = x.Clase,
                    Formulario = x.Formulario,
                    IdOpcion   = x.IdOpcion,
                    Nombre     = x.Nombre,
                    Padre      = x.Padre,
                    Url        = x.Url,
                    Orden      = x.Orden,
                    IdModulo   = x.IdModulo
                });
                pListModulosFilter = ListModulos.ConvertAll(x => new ModuloViewModel
                {
                    IdModulo     = x.IdModulo,
                    NombreModulo = x.NombreModulo,
                    Orden        = x.OrdenModulo,
                    Icono        = x.IconoModulo
                });
                object[] oresultado = new object[4];
                //oresultado[0] = pListPadrestotal;
                //oresultado[1] = pListHijostotal;

                //**
                List <ConsultaOpcionesxRolViewModel> pListHijosPadre = (from h in pListHijosfilter
                                                                        select new ConsultaOpcionesxRolViewModel {
                    Nombre = h.Nombre, Url = h.Url, Padre = h.Padre,
                    Clase = h.Clase, Formulario = h.Formulario, IdModulo = h.IdModulo, IdOpcion = h.IdOpcion, Orden = h.Orden
                }).ToList();
                foreach (var item in pListHijosPadre)
                {
                    string padre = (from p in pListPadresfilter.Where(x => x.IdOpcion == item.Padre)
                                    select p.Nombre).FirstOrDefault();
                    item.Nombre = item.Nombre + "(" + padre + ")";
                }

                //**

                oresultado[0] = pListPadresfilter.Distinct().OrderBy(Z => Z.Orden).ToList();
                oresultado[1] = pListHijosfilter.Distinct().OrderBy(Z => Z.Orden).ToList();
                oresultado[2] = pListModulosFilter.Distinct().OrderBy(z => z.Orden).ToList();
                oresultado[3] = pListHijosPadre.Distinct().OrderBy(z => z.Orden).ToList();

                return(oresultado);
            }
        }