示例#1
0
        private static void RegistrarAcceso(string nombre, segabasEntities db)
        {
            try
            {
                var sacceso = new SEGACCESO()
                {
                    USUARIO          = nombre,
                    DIRECCIONIP      = HttpContext.Current.Request.UserHostAddress,
                    AUFECHACREACION  = DateTime.Now,
                    ESTASINCRONIZADA = 0
                };
                db.SEGACCESOS.AddObject(sacceso);
                db.SaveChanges();
            }

            catch (UpdateException ex)
            {
                throw new Exception(ex.Message);

                //todo: save to log 22-06-40-00
            }
            catch (Exception ex) {
                throw new Exception(ex.Message);
                //todo: save to log;
            }
        }
示例#2
0
        public static bool EsUsuarioRol(string nombreRol)
        {
            try
            {
                using (var db = new segabasEntities())
                {
                    if (UsuarioGlobal == null)
                    {
                        UsuarioGlobal = ObtenerUsuario();
                    }

                    var roles = UsuarioGlobal.RolesUsuario.Select(ur => db.SEGROLES.FirstOrDefault(r => r.IDROL == ur.IDROL)).ToList();
                    if (!roles.Any())
                    {
                        return(false);
                    }

                    var rol = roles.FirstOrDefault(r => r.NOMBRE == nombreRol);
                    return(rol != null);
                }
            }
            catch
            {
                return(false);
            }
        }
示例#3
0
 public static Usuario ObtenerUsuario(string usuario)
 {
     using (var db = new segabasEntities())
     {
         var usr =
             db.SEGUSUARIOS.FirstOrDefault(u => u.USUARIO == usuario && u.ESTAHABILITADO == 1);
         if (usr != null)
         {
             RecuperarUsuario(usr, db);
         }
         return(ObtenerUsuario());
     }
 }
示例#4
0
 public static List <SEGROLE> ObtenerRolesPorUsuario()
 {
     try
     {
         using (var db = new segabasEntities())
         {
             return(UsuarioGlobal.RolesUsuario.Select(ur => db.SEGROLES.FirstOrDefault(r => r.IDROL == ur.IDROL)).ToList());
         }
     }
     catch
     {
         return(null);
     }
 }
示例#5
0
 public static bool CambiarClave(string claveNueva)
 {
     using (var db = new segabasEntities())
     {
         var usr = db.SEGUSUARIOS.FirstOrDefault(u => u.IDUSUARIO == UsuarioGlobal.IDUSUARIO);
         if (usr == null)
         {
             return(false);
         }
         usr.CLAVE = claveNueva;
         db.SaveChanges();
         return(true);
     }
 }
示例#6
0
 public static string[] ObtenerRoles()
 {
     try
     {
         using (var db = new segabasEntities())
         {
             var roles = UsuarioGlobal.RolesUsuario.Select(ur => db.SEGROLES.FirstOrDefault(r => r.IDROL == ur.IDROL).NOMBRE);
             return(roles.ToArray());
         }
     }
     catch
     {
         return(new[] { "-" });
     }
 }
示例#7
0
        private static bool VerificarUsuario(string nombre, string clave)
        {
            using (var db = new segabasEntities())
            {
                var usr =
                    db.SEGUSUARIOS.FirstOrDefault(u => u.USUARIO == nombre && u.CLAVE == clave && u.ESTAHABILITADO == 1);

                if (usr == null)
                {
                    return(false);
                }
                RecuperarUsuario(usr, db);
                return(true);
            }
        }
示例#8
0
        private static void RecuperarUsuario(SEGUSUARIO usr, segabasEntities db)
        {
            UsuarioGlobal = new Usuario()
            {
                IDUSUARIO             = usr.IDUSUARIO,
                USUARIO               = usr.USUARIO,
                CLAVE                 = usr.CLAVE,
                IDEMPLEADO            = usr.IDEMPLEADO,
                ESTAHABILITADO        = usr.ESTAHABILITADO,
                ESTAELIMINADO         = usr.ESTAELIMINADO,
                AUUSUARIOCREACION     = usr.AUUSUARIOCREACION,
                AUFECHACREACION       = usr.AUFECHACREACION,
                AUUSUARIOMODIFICACION = usr.AUUSUARIOMODIFICACION,
                AUFECHAMODIFICACION   = usr.AUFECHAMODIFICACION,
                AUUSUARIOELIMINACION  = usr.AUUSUARIOELIMINACION,
                AUFECHAELIMINACION    = usr.AUFECHAELIMINACION,
                ESTASINCRONIZADA      = usr.ESTASINCRONIZADA,
                RolesUsuario          = db.SEGROLESUSUARIOS.Where(su => su.IDUSUARIO == usr.IDUSUARIO).ToList(),
                Menu = db.vv_OPCIONESUSUARIOSROL.Where(vv => vv.IDUSUARIO == usr.IDUSUARIO).Distinct().OrderBy(vv => vv.ORDEN).ToList()
            };

            using (var dbs = new SinabEntities())
            {
                var emp = dbs.SAB_CAT_EMPLEADOS
                          .Include("SAB_CAT_CARGOS")
                          .Include("SAB_CAT_DEPENDENCIAS")
                          .Include("SAB_CAT_ESTABLECIMIENTOS")
                          .Include("SAB_CAT_ESTABLECIMIENTOS.SAB_CAT_ZONAS")
                          .Include("SAB_CAT_ESTABLECIMIENTOS.SAB_CAT_TIPOESTABLECIMIENTOS")
                          .Include("SAB_CAT_EMPLEADOSALMACEN.SAB_CAT_ALMACENES")
                          .FirstOrDefault(em => em.IDEMPLEADO == UsuarioGlobal.IDEMPLEADO);

                if (emp != null)
                {
                    UsuarioGlobal.Empleado            = emp;
                    UsuarioGlobal.Cargo               = UsuarioGlobal.Empleado.SAB_CAT_CARGOS;
                    UsuarioGlobal.Dependencia         = UsuarioGlobal.Empleado.SAB_CAT_DEPENDENCIAS;
                    UsuarioGlobal.Establecimiento     = UsuarioGlobal.Empleado.SAB_CAT_ESTABLECIMIENTOS;
                    UsuarioGlobal.Zona                = UsuarioGlobal.Establecimiento.SAB_CAT_ZONAS;
                    UsuarioGlobal.TipoEstablecimiento = UsuarioGlobal.Establecimiento.SAB_CAT_TIPOESTABLECIMIENTOS;
                    UsuarioGlobal.EmpleadoAlmacenes   = UsuarioGlobal.Empleado.SAB_CAT_EMPLEADOSALMACEN.ToList();
                    //todo:suministros pueden ser varios
                    if (UsuarioGlobal.EmpleadoAlmacenes != null)
                    {
                        var almacenes = UsuarioGlobal.EmpleadoAlmacenes.Select(al => al.SAB_CAT_ALMACENES).ToList();
                        UsuarioGlobal.Almacenes = almacenes;

                        var sabCatEmpleadosalmacen = UsuarioGlobal.EmpleadoAlmacenes.FirstOrDefault();
                        if (sabCatEmpleadosalmacen != null)
                        {
                            var idsuministro = sabCatEmpleadosalmacen.IDSUMINISTRO;
                            var suministro   = dbs.SAB_CAT_SUMINISTROS.FirstOrDefault(
                                sm => sm.IDSUMINISTRO == idsuministro);

                            UsuarioGlobal.Suministro = suministro;
                        }
                    }
                }
            }

            RegistrarAcceso(usr.USUARIO, db);
        }