/// <summary>
 /// Obtiene la configuración, si existe.
 /// </summary>
 /// <returns></returns>
 public Configuracion Obtener()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         return((Existe()) ? modelo.Configuracion.FirstOrDefault() : new Configuracion());
     }
 }
        /// <summary>
        /// Edita un usuario existente.
        /// </summary>
        /// <param name="usr">Datos del usuario.</param>
        /// <param name="changePassword">Indica si se le cambió el password.</param>
        public void Editar(Usuario usr, bool changePassword)
        {
            using (var modelo = new GESTOR_DOCUMENTAL())
            {
                Usuario usrEditar = modelo.Usuario.Where(o => o.IdUsuario == usr.IdUsuario).FirstOrDefault();
                if (usrEditar != null)
                {
                    usrEditar.Alias            = usr.Alias;
                    usrEditar.Nombre           = usr.Nombre;
                    usrEditar.IdGrupo          = usr.IdGrupo;
                    usrEditar.IdDepartamento   = usr.IdDepartamento;
                    usrEditar.IdArea           = usr.IdArea;
                    usrEditar.IdGrupoLector    = usr.IdGrupoLector;
                    usrEditar.FechaEdicion     = DateTime.Now;
                    usrEditar.IdUsuarioEdicion = Util.Sesion.Current.IdUsuario;

                    if (changePassword)
                    {
                        SaltHash sh = Crypto.CrearHash(usr.Password);
                        usrEditar.Password = Convert.ToBase64String(sh.hash);
                        usrEditar.Salt     = Convert.ToBase64String(sh.salt);
                    }

                    modelo.SaveChanges();
                }
            }
        }
 /// <summary>
 /// Obtiene un usuario mediante su alias.
 /// </summary>
 /// <param name="alias"></param>
 /// <returns></returns>
 public Usuario Obtener(string alias)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var usr = modelo.Usuario.Include("Grupo").Where(o => o.Alias == alias && o.Activo == true).FirstOrDefault();
         return(usr);
     }
 }
 /// <summary>
 /// Obtiene un usuario mediante su id.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public Usuario Obtener(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var usr = modelo.Usuario.Include("Grupo").Include("GrupoLector").Where(o => o.IdUsuario == id).FirstOrDefault();
         return(usr);
     }
 }
示例#5
0
 /// <summary>
 /// Obtiene un listado de todos las areas activas, indicando un filtro.
 /// </summary>
 /// <returns></returns>
 public List <Area> ObtenerActivas(string filtro)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Area.Include("Departamento").Where(o => o.Activo == true && o.Nombre.Contains(filtro)).ToList();
         return(lst);
     }
 }
示例#6
0
 /// <summary>
 /// Obtiene un listado de todos los documentos.
 /// </summary>
 /// <returns></returns>
 public List <Documento> ObtenerTodos()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Documento.Include("Area").Include("Departamento").Include("Usuario").Include("Usuario2").ToList();
         return(lst);
     }
 }
示例#7
0
 /// <summary>
 /// Obtiene un documento mediante su id.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public Documento Obtener(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var doc = modelo.Documento.Include("Area").Include("Departamento").Where(o => o.IdDocumento == id).FirstOrDefault();
         return(doc);
     }
 }
 /// <summary>
 /// Obtiene el nombre de un grupo mediante su id.
 /// </summary>
 /// <param name="nombre"></param>
 /// <returns></returns>
 public static string obtenerNombreGrupo(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         Grupo grupo = modelo.Grupo.Where(o => o.IdGrupo == id).FirstOrDefault();
         return(grupo.Nombre);
     }
 }
示例#9
0
 /// <summary>
 /// Retorna true si esta área tiene un nombre distino con respecto al que esta guardado actualmente en la base.
 /// </summary>
 /// <param name="area"></param>
 /// <returns></returns>
 public bool CambioNombre(Area area)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         Area areaEditar = modelo.Area.Where(o => o.IdArea == area.IdArea).FirstOrDefault();
         return(areaEditar.Nombre != area.Nombre);
     }
 }
示例#10
0
 /// <summary>
 /// Obtiene un área mediante su id.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public Area Obtener(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var area = modelo.Area.Include("Departamento").Where(o => o.IdArea == id).FirstOrDefault();
         return(area);
     }
 }
示例#11
0
 /// <summary>
 /// Obtiene un listado de todos los departamentos, indicando un filtro.
 /// </summary>
 /// <param name="filtro"></param>
 /// <returns></returns>
 public List <Departamento> ObtenerTodos(string filtro)
 {
     using (GESTOR_DOCUMENTAL modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Departamento.Where(o => o.Nombre.Contains(filtro)).ToList();
         return(lst);
     }
 }
示例#12
0
 /// <summary>
 /// Obtiene un listado de todos los departamentos.
 /// </summary>
 /// <returns></returns>
 public List <Departamento> ObtenerTodos()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Departamento.ToList();
         return(lst);
     }
 }
示例#13
0
 /// <summary>
 /// Retorna true si hay algún área que esté usando este departamento, de lo contrario false.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool EnUsoPorArea(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Area.Where(o => o.Activo == true && o.IdDepartamento == id).ToList();
         return(lst.Count > 0);
     }
 }
示例#14
0
 /// <summary>
 /// Retorna true si este departamento tiene un nombre distino con respecto al que esta guardado actualmente en la base.
 /// </summary>
 /// <param name="depa"></param>
 /// <returns></returns>
 public bool CambioNombre(Departamento depa)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         Departamento depaEditar = modelo.Departamento.Where(o => o.IdDepartamento == depa.IdDepartamento).FirstOrDefault();
         return(depaEditar.Nombre != depa.Nombre);
     }
 }
示例#15
0
 /// <summary>
 /// Obtiene un departamento, mediante su id.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public Departamento Obtener(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var depa = modelo.Departamento.Where(o => o.IdDepartamento == id).FirstOrDefault();
         return(depa);
     }
 }
示例#16
0
 /// <summary>
 /// Obtiene el id de un grupo mediante su nombre.
 /// </summary>
 /// <param name="nombre"></param>
 /// <returns></returns>
 public static int obtenerIdGrupo(string nombre)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         Grupo grupo = modelo.Grupo.Where(o => o.Nombre == nombre).FirstOrDefault();
         return(grupo.IdGrupo);
     }
 }
示例#17
0
 /// <summary>
 /// Retorna true si esta área pertenece a un departamento distino con respecto al que esta guardado actualmente en la base.
 /// </summary>
 /// <param name="area"></param>
 /// <returns></returns>
 public bool CambioDepartamento(Area area)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         Area areaEditar = modelo.Area.Where(o => o.IdArea == area.IdArea).FirstOrDefault();
         return(areaEditar.IdDepartamento != area.IdDepartamento);
     }
 }
示例#18
0
 /// <summary>
 /// Obtiene un listado de todos los documentos activos.
 /// </summary>
 /// <returns></returns>
 public List <Documento> ObtenerActivos()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Documento.Include("Area").Include("Departamento").Where(o => o.Activo == true).ToList();
         return(lst);
     }
 }
示例#19
0
 /// <summary>
 /// Retorna true si hay algún documento que esté usando esta área, de lo contrario false.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool EnUsoPorDocumento(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Documento.Where(o => o.IdArea == id).ToList();
         return(lst.Count > 0);
     }
 }
示例#20
0
 /// <summary>
 /// Obtiene un listado con todas las áreas.
 /// </summary>
 /// <returns></returns>
 public List <Area> ObtenerTodas()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Area.Include("Departamento").ToList();
         return(lst);
     }
 }
 /// <summary>
 /// Obtiene un listado de todos los usuarios activos, indicando un filtro.
 /// </summary>
 /// <returns></returns>
 public List <Usuario> ObtenerActivos(string filtro)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Usuario.Where(o => o.Activo == true && o.Nombre.Contains(filtro)).ToList();
         return(lst);
     }
 }
示例#22
0
 /// <summary>
 /// Obtiene la ruta del repositorio SVN.
 /// </summary>
 /// <returns></returns>
 public static string ObtenerRutaRepositorio()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         Configuracion configuracion = modelo.Configuracion.FirstOrDefault();
         return(configuracion.RutaRepositorio);
     }
 }
示例#23
0
 /// <summary>
 /// Retorna true si hay algún usuario que pertenezca a este grupo, de lo contrario false.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool EnUsoPorUsr(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Usuario.Where(o => o.Activo == true && o.IdGrupo == id).ToList();
         return(lst.Count > 0);
     }
 }
 /// <summary>
 /// Retorna true si existe la configración, de lo contrario false.
 /// </summary>
 /// <returns></returns>
 public bool Existe()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         int cuenta = modelo.Configuracion.Count();
         return(cuenta > 0);
     }
 }
示例#25
0
 /// <summary>
 /// Obtiene un grupo, mediante su id.
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public Grupo Obtener(int id)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var grupo = modelo.Grupo.Where(o => o.IdGrupo == id).FirstOrDefault();
         return(grupo);
     }
 }
示例#26
0
 /// <summary>
 /// Obtiene un listado de todos los grupos.
 /// </summary>
 /// <returns></returns>
 public List <Grupo> ObtenerTodos()
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Grupo.ToList();
         return(lst);
     }
 }
示例#27
0
 /// <summary>
 /// Obtiene un listado de todos los documentos de una determinada area.
 /// </summary>
 /// <param name="idArea"></param>
 /// <returns></returns>
 public List <Documento> ObtenerTodosArea(int idArea)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Documento.Include("Area").Include("Departamento").Where(o => o.IdArea == idArea).ToList();
         return(lst);
     }
 }
示例#28
0
 /// <summary>
 /// Obtiene un listado de todos los documentos de un determinado departamento que coincidan con un filtro.
 /// </summary>
 /// <param name="idDepartamento"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 public List <Documento> ObtenerTodosDepartamento(int idDepartamento, string filtro)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         var lst = modelo.Documento.Include("Area").Include("Departamento")
                   .Where(o => o.IdDepartamento == idDepartamento && (o.Nombre.Contains(filtro) || o.Descripcion.Contains(filtro) || o.UID.Contains(filtro))).ToList();
         return(lst);
     }
 }
 /// <summary>
 /// Inserta la configuración.
 /// </summary>
 /// <param name="conf"></param>
 public void Insertar(Configuracion conf)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         conf.FechaCreacion     = DateTime.Now;
         conf.IdUsuarioCreacion = Util.Sesion.Current.IdUsuario;
         modelo.Configuracion.Add(conf);
         modelo.SaveChanges();
     }
 }
示例#30
0
 /// <summary>
 /// Guarda un nuevo registro de documento en la base.
 /// </summary>
 /// <param name="doc"></param>
 public void Insertar(Documento doc)
 {
     using (var modelo = new GESTOR_DOCUMENTAL())
     {
         doc.Activo            = true;
         doc.FechaCreacion     = DateTime.Now;
         doc.IdUsuarioCreacion = Util.Sesion.Current.IdUsuario;
         modelo.Documento.Add(doc);
         modelo.SaveChanges();
     }
 }