/// <summary>
 /// Consulta los parametros que están configuarados en el puerto serial
 /// </summary>
 /// <returns></returns>
 internal Parametro ConsultarParametrosPuerto()
 {
     using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
     {
         return entities.Parametros.FirstOrDefault();
     }
 }
 /// <summary>
 /// Metodo en el que retorna un solo usuario buscado por su Id
 /// </summary>
 /// <param name="UsuarioId"></param>
 /// <returns></returns>
 internal Usuario ConsultarUsuarioPorId(int UsuarioId)
 {
     using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
     {
         return entities.Usuarios.SingleOrDefault(p => p.UsuarioId == UsuarioId);
     }
 }
 /// <summary>
 /// Guardar los parametros del puerto serial
 /// </summary>
 /// <param name="objParametrosPuerto"></param>
 internal void GuardarParametrosPuerto(Parametro objParametrosPuerto)
 {
     using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
     {
         entities.Parametros.Add(objParametrosPuerto);
         entities.SaveChanges();
     }
 }
        /// <summary>
        /// Eliminar los parametros de puerto serial configurado
        /// </summary>
        /// <param name="objParametrosPuerto"></param>
        internal void EliminarParametrosPuerto(Parametro objParametrosPuerto)
        {
            using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
            {
                Parametro _objParametros = entities.Parametros.Single(p => p.ParametroId == objParametrosPuerto.ParametroId);

                entities.Parametros.Remove(_objParametros);
                entities.SaveChanges();
            }
        }
        /// <summary>
        /// Eliminar un usuario
        /// </summary>
        /// <param name="objUsuario"></param>
        internal void EliminarUsuario(Usuario objUsuario)
        {
            using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
            {
                Usuario _objUsuario = entities.Usuarios.Single(p => p.UsuarioId == objUsuario.UsuarioId);

                entities.Usuarios.Remove(_objUsuario);
                entities.SaveChanges();
            }
        }
        /// <summary>
        /// Metodo en el que retorna todos los usuarios
        /// </summary>
        /// <returns></returns>
        internal List<Usuario> ConsultarUsuarios()
        {
            using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
            {
                var listUsuarios = from u in entities.Usuarios
                                   select u;

                return listUsuarios.ToList();
            }
        }
        /// <summary>
        /// Actualizar los parametros del puerto serial
        /// </summary>
        /// <param name="objParametrosPuerto"></param>
        internal void ActualizarParametrosPuerto(Parametro objParametrosPuerto)
        {
            using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
            {
                Parametro _objParametros = entities.Parametros.Single(p => p.ParametroId == objParametrosPuerto.ParametroId);

                //_objParametros.NombrePuerto = objParametrosPuerto.NombrePuerto;
                //_objParametros.Baudios = objParametrosPuerto.Baudios;
                //_objParametros.BitParada = objParametrosPuerto.BitParada;
                //_objParametros.BitDatos = objParametrosPuerto.BitDatos;
                //_objParametros.Handshaking = objParametrosPuerto.Handshaking;

                entities.SaveChanges();
            }
        }
        /// <summary>
        /// Actualizar los campos del usuario
        /// </summary>
        /// <param name="objUsuario"></param>
        internal void ActualizarUsuario(Usuario objUsuario)
        {
            using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
            {
                Usuario _objUsuario = entities.Usuarios.Single(p => p.UsuarioId == objUsuario.UsuarioId);

                _objUsuario.Nombre = objUsuario.Nombre;
                _objUsuario.PrimerApellido = objUsuario.PrimerApellido;
                _objUsuario.SegundoApellido = objUsuario.SegundoApellido;
                _objUsuario.TipoIdentificacionId = objUsuario.TipoIdentificacionId;
                _objUsuario.NroIdentificacion = objUsuario.NroIdentificacion;
                _objUsuario.Contrasena = objUsuario.Contrasena;
                _objUsuario.Administrador = objUsuario.Administrador;

                entities.SaveChanges();
            }
        }
        /// <summary>
        /// Guardar la ruta donde será guardado el código QR de cada usuario
        /// </summary>
        /// <param name="rutaCodigoQR"></param>
        internal void IngresarCodigoQRUsuario(string rutaCodigoQR, int UsuarioId)
        {
            using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
            {
                Usuario _objUsuario = entities.Usuarios.Single(p => p.UsuarioId == UsuarioId);

                _objUsuario.DireccionCodigoQR = rutaCodigoQR;

                entities.SaveChanges();
            }
        }
 /// <summary>
 /// Guardar un usuario
 /// </summary>
 /// <param name="objUsuario"></param>
 internal void GuardarUsuario(Usuario objUsuario)
 {
     using (Domotic_localDBEntities entities = new Domotic_localDBEntities())
     {
         entities.Usuarios.Add(objUsuario);
         entities.SaveChanges();
     }
 }