예제 #1
0
        public Usuarios IniciarSesion(string NumeroIdentificacion, string Pass)
        {
            Usuarios res = null;

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                string pass        = Convert.ToBase64String(Encoding.UTF8.GetBytes(Pass));
                string tokenSesion = $"{DateTime.Now.Ticks}{Convert.ToBase64String(UTF8Encoding.UTF8.GetBytes(NumeroIdentificacion))}";
                res = ctx.Usuarios.Where(c => c.NumeroIdentificacion.Equals(NumeroIdentificacion) && c.Password.Equals(pass) && c.Activo).FirstOrDefault();
                if (res != null)
                {
                    res.FechaUltimoInicioSesion = DateTime.Now;
                    res.tokenSesion             = tokenSesion;
                    res.horaTokenSesion         = DateTime.Now;
                    ctx.SaveChanges();
                    ctx.Entry(res).Reference(u => u.Roles).Load();
                    res.Roles.Menus.ToList();
                    ctx.Entry(res).Reference(u => u.TiposIdentificacion).Load();
                    ctx.Entry(res).Reference(u => u.Ciudades).Load();
                    res.UsuariosEquipos.ToList();
                }
                else
                {
                    throw new Exception("Usuario y/o Contraseña incorrecto(s)");
                }
            }
            return(res);
        }
예제 #2
0
        //1.1 ObtenerUnEquipo
        public Equipos ObtenerEquipo(int IdEquipo)
        {
            Equipos res = new Equipos();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Equipos.Where(e => e.IdEquipo == IdEquipo).FirstOrDefault();
                res.CalibracionesEquipos.ToList();
                foreach (CalibracionesEquipos cal in res.CalibracionesEquipos)
                {
                    ctx.Entry(cal).Reference(r => r.Laboratorios).Load();
                }
                res.TramitesEquipo.ToList();
                res.VerificacionesLabEquipos.ToList();
                foreach (VerificacionesLabEquipos ver in res.VerificacionesLabEquipos)
                {
                    ctx.Entry(ver).Reference(r => r.Laboratorios).Load();
                }
                ctx.Entry(res).Reference(r => r.MarcasEquipos).Load();
                ctx.Entry(res).Reference(r => r.TiposEquipo).Load();
                ctx.Entry(res).Reference(r => r.TiposVisita).Load();
                res.UsuariosEquipos.ToList();
            }
            return(res);
        }
예제 #3
0
        /**
         * 5)
         */
        public Propiedades ConsultaPropiedad(int IdPropiedades)
        {
            Propiedades res = null;

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Propiedades.Where(c => c.IdPropiedades == IdPropiedades).FirstOrDefault();
                ctx.Entry(res).Reference(r => r.TiposPropiedades).Load();
                ctx.Entry(res).Reference(r => r.UsosPropiedades).Load();
            }
            return(res);
        }
예제 #4
0
        public Zonas ObtenerZona(int IdZona)
        {
            Zonas res = new Zonas();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Zonas.Where(z => z.IdZona == IdZona).FirstOrDefault();
                ctx.Entry(res).Reference(z => z.Usuarios).Load();
                ctx.Entry(res).Reference(z => z.Ciudades).Load();
            }
            return(res);
        }
예제 #5
0
        public List <UsuariosEquipos> ObtenerEquiposUsuario(int IdInspector)
        {
            List <UsuariosEquipos> res = new List <UsuariosEquipos>();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.UsuariosEquipos.Where(u => u.IdInspector == IdInspector).ToList();
                foreach (UsuariosEquipos ue in res)
                {
                    ctx.Entry(ue).Reference(r => r.Equipos).Load();
                    ctx.Entry(ue).Reference(r => r.Usuarios).Load();
                }
            }
            return(res);
        }
예제 #6
0
        public List <Zonas> ObtenerZonas(string idCiudad)
        {
            List <Zonas> res = new List <Zonas>();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Zonas.Where(z => z.IdCiudad.Equals(idCiudad)).ToList();
                foreach (Zonas z in res)
                {
                    ctx.Entry(z).Reference(r => r.Ciudades).Load();
                    ctx.Entry(z).Reference(r => r.Usuarios).Load();
                }
            }
            return(res);
        }
예제 #7
0
        ////**************************************************** ZONAS => Todo lo que tenga que ver con zonas
        //CRUD ZONAS
        public List <Zonas> ObtenerZonasAll()
        {
            List <Zonas> res = new List <Zonas>();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Zonas.ToList();
                foreach (Zonas z in res)
                {
                    ctx.Entry(z).Reference(r => r.Ciudades).Load();
                    ctx.Entry(z).Reference(r => r.Usuarios).Load();
                }
            }
            return(res);
        }
예제 #8
0
        //1. Consultar Equipos
        public List <Equipos> ObtenerEquipos(int IdMarca, int IdTipoEquipo, string filtro)
        {
            List <Equipos> res = new List <Equipos>();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Equipos.Where(e => (e.SerieIDInterno.Contains(filtro) || e.Modelo.Contains(filtro)) && (IdMarca == -1 || e.IdMarcaEquipo == IdMarca) && (IdTipoEquipo == -1 || e.IdTipoEquipo == IdTipoEquipo)).ToList();
                foreach (Equipos e in res)
                {
                    ctx.Entry(e).Reference(r => r.MarcasEquipos).Load();
                    ctx.Entry(e).Reference(r => r.TiposEquipo).Load();
                    ctx.Entry(e).Reference(r => r.TiposVisita).Load();
                }
            }
            return(res);
        }
예제 #9
0
        public Usuarios ConsultarUsuario(int IdUsuario)
        {
            Usuarios res = null;

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.Usuarios.Where(u => u.IdUsuario == IdUsuario).FirstOrDefault();
                if (res != null)
                {
                    ctx.Entry(res).Reference(u => u.Roles).Load();
                    res.Roles.Menus.ToList();
                    ctx.Entry(res).Reference(u => u.TiposIdentificacion).Load();
                    ctx.Entry(res).Reference(u => u.Ciudades).Load();
                }
            }
            return(res);
        }
예제 #10
0
        //Reporte ejecución visitas / Consulta detallada de una visita
        public Visitas ConsultarVisita(int IdVisita)
        {
            Visitas visita = null;

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                visita = ctx.Visitas.Where(v => v.IdVisita == IdVisita).FirstOrDefault();
                if (visita != null)
                {
                    visita.EquiposVisita.ToList();
                    visita.FotosVisita.ToList();
                    visita.FormatosVisita.ToList();
                    if (visita.IdSolicitudProgramacion != null)
                    {
                        ctx.Entry(visita).Reference(r => r.SolicitudesProgramacionVisitas).Load();
                    }
                    ctx.Entry(visita).Reference(r => r.Clientes).Load();
                    ctx.Entry(visita).Reference(r => r.Zonas).Load();
                    ctx.Entry(visita).Reference(r => r.Ciudades).Load();
                    ctx.Entry(visita).Reference(r => r.Usuarios).Load();
                    ctx.Entry(visita).Reference(r => r.EstadosVisita).Load();
                    ctx.Entry(visita).Reference(r => r.TiposVisita).Load();
                }
                else
                {
                    throw new Exception($"No existe visita con ID {IdVisita}");
                }
            }
            return(visita);
        }
예제 #11
0
        public List <ConsecutivosFormatos> ObtenerConsecutivosUsuario(int IdUsuario)
        {
            List <ConsecutivosFormatos> res = new List <ConsecutivosFormatos>();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.ConsecutivosFormatos.Where(c => c.IdInspector == IdUsuario).ToList();
                foreach (ConsecutivosFormatos c in res)
                {
                    ctx.Entry(c).Reference(r => r.Formatos).Load();
                }
            }
            return(res);
        }
예제 #12
0
        public List <TramiteConsecutivoFormato> ConsultarTramiteConsecutivoFormato(int IdFormato, int Consecutivo)
        {
            List <TramiteConsecutivoFormato> res = new List <TramiteConsecutivoFormato>();

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                res = ctx.TramiteConsecutivoFormato.Where(f => f.IdFormato == IdFormato && f.Consecutivo == Consecutivo).ToList();
                foreach (TramiteConsecutivoFormato t in res)
                {
                    ctx.Entry(t).Reference(r => r.Usuarios).Load();
                }
            }

            return(res);
        }
예제 #13
0
        /**
         * 2)
         */
        public Clientes ConsultaDetalladaClientes(int IdCliente, string NumeroIdentificacion)
        {
            Clientes res = null;

            using (var ctx = new DB_A66D31_intratecPrbEntities1())
            {
                if (IdCliente != -1)
                {
                    res = ctx.Clientes.Where(c => c.IdCliente == IdCliente).FirstOrDefault();
                }
                else if (!string.IsNullOrEmpty(NumeroIdentificacion))
                {
                    res = ctx.Clientes.Where(c => c.NumeroIdentificacion.Equals(NumeroIdentificacion)).FirstOrDefault();
                }

                if (res != null)
                {
                    res.Propiedades.ToList();
                    foreach (Propiedades prop in res.Propiedades)
                    {
                        ctx.Entry(prop).Reference(r => r.TiposPropiedades).Load();
                        ctx.Entry(prop).Reference(r => r.UsosPropiedades).Load();
                    }
                    res.Visitas.ToList();
                    foreach (Visitas vis in res.Visitas)
                    {
                        ctx.Entry(vis).Reference(r => r.Zonas).Load();
                        ctx.Entry(vis).Reference(r => r.Usuarios).Load();
                    }
                    ctx.Entry(res).Reference(r => r.TiposIdentificacion).Load();
                    ctx.Entry(res).Reference(r => r.TiposPersona).Load();
                }
                else
                {
                    throw new Exception($"No existe cliente con ID {IdCliente}");
                }
            }
            return(res);
        }