예제 #1
0
        /// <summary>
        /// Elimina todas las notificaciones del usuario.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        public void EliminarNotificacionesDeUsuario(string USR_USERNAME)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    var u = db.GetObjectByKey(k);

                    usuario user = (usuario)u;

                    var query = from n in user.notificaciones
                                where n.NOTIFICACION_ESTADO == (int)EstadosNotificacion.Leido
                                select n;

                    foreach (notificacion notif in query.ToList <notificacion>())
                    {
                        db.notificaciones.DeleteObject(notif);
                    }

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al eliminar todas las notificaciones de usuario.", ex);
                throw;
            }
        }
예제 #2
0
        /// <summary>
        /// Eliminar roles de usuario.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        /// <param name="roles"></param>
        /// <param name="MODIFICADO_POR"></param>
        public void EliminarRoles(string USR_USERNAME, List <int> roles, string MODIFICADO_POR)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    var u = db.GetObjectByKey(k);

                    usuario user = (usuario)u;

                    foreach (int rol_id in roles)
                    {
                        var r = db.GetObjectByKey(new EntityKey("colinasEntities.roles", "ROL_ID", rol_id));

                        rol rolEntity = (rol)r;
                        user.roles.Remove(rolEntity);
                    }

                    user.MODIFICADO_POR     = MODIFICADO_POR;
                    user.FECHA_MODIFICACION = DateTime.Today;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al eliminar roles.", ex);
                throw;
            }
        }
예제 #3
0
        /// <summary>
        /// Verfica si existe el usuario.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        /// <returns>True el usuario si existe. False el usuario no existe.</returns>
        public bool UsuarioExiste(string USR_USERNAME)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.usuarios.MergeOption = MergeOption.NoTracking;

                    Object    u = null;
                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    if (db.TryGetObjectByKey(k, out u))
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al intentar verificar usuario.", ex);
                throw;
            }
        }
예제 #4
0
        /// <summary>
        /// Obtiene los roles no de usuario.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        /// <param name="ROL_ID"></param>
        /// <param name="ROL_NOMBRE"></param>
        /// <returns>Roles no de usuario.</returns>
        public List <rol> GetRolesNoDeUsuario(string USR_USERNAME, int ROL_ID, string ROL_NOMBRE)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.roles.MergeOption = MergeOption.NoTracking;//optimizacion

                    var query = db.GetRolesNoDeUsuario(USR_USERNAME);

                    var filter = from rls in query
                                 where
                                 (ROL_ID.Equals(0) ? true : rls.ROL_ID.Equals(ROL_ID)) &&
                                 (string.IsNullOrEmpty(ROL_NOMBRE) ? true : rls.ROL_NOMBRE.Contains(ROL_NOMBRE))
                                 select rls;

                    return(filter.OrderBy(r => r.ROL_NOMBRE).ToList <rol>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener roles no de usuario.", ex);
                throw;
            }
        }
예제 #5
0
        public List <privilegio> GetPrivilegiosParaNotaDePesoDeUsuario(string USR_USERNAME)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.privilegios.MergeOption = MergeOption.NoTracking;

                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    var u = db.GetObjectByKey(k);

                    usuario user = (usuario)u;

                    var query = from r in user.roles
                                from pr in r.privilegios
                                where pr.PRIV_LLAVE.Contains(COCASJOL.LOGIC.Inventario.Ingresos.EstadoNotaDePesoLogic.PREFIJO_PRIVILEGIO)
                                select pr;

                    return(query.ToList <privilegio>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener privilegios de usuario.", ex);
                throw;
            }
        }
예제 #6
0
        /// <summary>
        /// Eliminar privilegios de rol.
        /// </summary>
        /// <param name="ROL_ID"></param>
        /// <param name="lprivilegios"></param>
        /// <param name="MODIFICADO_POR"></param>
        public void EliminarPrivilegios(int ROL_ID, List <int> lprivilegios, string MODIFICADO_POR)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.roles", "ROL_ID", ROL_ID);

                    var r = db.GetObjectByKey(k);

                    rol role = (rol)r;

                    foreach (int priv_id in lprivilegios)
                    {
                        var p = db.GetObjectByKey(new EntityKey("colinasEntities.privilegios", "PRIV_ID", priv_id));

                        privilegio privilegioEntity = (privilegio)p;
                        role.privilegios.Remove(privilegioEntity);
                    }

                    role.MODIFICADO_POR     = MODIFICADO_POR;
                    role.FECHA_MODIFICACION = DateTime.Today;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al eliminar privilegios.", ex);
                throw;
            }
        }
예제 #7
0
        /// <summary>
        /// Inserta el tipo de prestamo.
        /// </summary>
        /// <param name="prestamoid"></param>
        /// <param name="nombre"></param>
        /// <param name="descrip"></param>
        /// <param name="max"></param>
        /// <param name="interes"></param>
        /// <param name="creadopor"></param>
        public void InsertarPrestamo(int prestamoid, string nombre, string descrip, int max, int interes, string creadopor)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    prestamo nuevo = new prestamo();

                    nuevo.PRESTAMOS_NOMBRE      = nombre;
                    nuevo.PRESTAMOS_DESCRIPCION = descrip;
                    nuevo.PRESTAMOS_CANT_MAXIMA = max;
                    nuevo.PRESTAMOS_INTERES     = interes;
                    nuevo.CREADO_POR            = creadopor;
                    nuevo.MODIFICADO_POR        = creadopor;
                    nuevo.FECHA_CREACION        = DateTime.Today;
                    nuevo.FECHA_MODIFICACION    = DateTime.Today;
                    db.prestamos.AddObject(nuevo);
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al insertar prestamo.", ex);
                throw;
            }
        }
예제 #8
0
        /// <summary>
        /// Obtiene avales de solicitudes de prestamo.
        /// </summary>
        /// <param name="SOLICITUDES_ID"></param>
        /// <returns>Lista de avales de solicitudes de prestamo.</returns>
        public List <aval_x_solicitud> GetAvalesXSolicitud(int SOLICITUDES_ID = 0)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from s in db.solicitudes_prestamos.Include("avales_x_solicitud").Include("avales_x_solicitud.socios").Include("avales_x_solicitud.socios.socios_generales").Include("avales_x_solicitud.socios.socios_produccion")
                                where s.SOLICITUDES_ID == SOLICITUDES_ID
                                select s;

                    solicitud_prestamo solicitud = query.FirstOrDefault();

                    if (solicitud != null)
                    {
                        return(solicitud.avales_x_solicitud.ToList <aval_x_solicitud>());
                    }
                    else
                    {
                        return(new List <aval_x_solicitud>());
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener avales por solicitud de prestamo.", ex);
                throw;
            }
        }
예제 #9
0
        /// <summary>
        /// Obtiene el reporte movimientos de inventario de café de cooperativa.
        /// </summary>
        /// <param name="CLASIFICACIONES_CAFE_ID"></param>
        /// <param name="DOCUMENTO_TIPO"></param>
        /// <param name="FECHA"></param>
        /// <param name="FECHA_DESDE"></param>
        /// <param name="FECHA_HASTA"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <returns>Reporte movimientos de inventario de café de cooperativa.</returns>
        public List <reporte_movimientos_de_inventario_de_cafe_de_cooperativa> GetMovimientosInventarioDeCafeDeCooperativa
            (int CLASIFICACIONES_CAFE_ID,
            string DOCUMENTO_TIPO,
            string FECHA,
            DateTime FECHA_DESDE,
            DateTime FECHA_HASTA,
            string CREADO_POR,
            DateTime FECHA_CREACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from mov in db.reporte_movimientos_de_inventario_de_cafe_de_cooperativa
                                where
                                (FECHA_DESDE == default(DateTime) ? true : mov.FECHA >= FECHA_DESDE) &&
                                (FECHA_HASTA == default(DateTime) ? true : mov.FECHA <= FECHA_HASTA) &&
                                (CLASIFICACIONES_CAFE_ID == 0 ? true : mov.CLASIFICACIONES_CAFE_ID == CLASIFICACIONES_CAFE_ID) &&
                                (string.IsNullOrEmpty(DOCUMENTO_TIPO) ? true : mov.DOCUMENTO_TIPO == DOCUMENTO_TIPO) &&
                                (string.IsNullOrEmpty(CREADO_POR) ? true : mov.CREADO_POR.Contains(CREADO_POR)) &&
                                (default(DateTime) == FECHA_CREACION ? true : mov.FECHA_CREACION == FECHA_CREACION)
                                select mov;

                    return(query.ToList <reporte_movimientos_de_inventario_de_cafe_de_cooperativa>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener el reporte de movimientos de inventario de cafe de cooperativa.", ex);
                throw;
            }
        }
예제 #10
0
        /// <summary>
        /// Verifica si el estado de nota de peso esta siendo utilizado en notas de peso. Si hay notas de peso en el estado especificado.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        /// <returns>True si hay notas de peso en estado. False si no hay notas de peso en estado.</returns>
        public bool EstadoDeNotaDePesoTieneReferencias(int ESTADOS_NOTA_ID)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.estados_nota_de_peso", "ESTADOS_NOTA_ID", ESTADOS_NOTA_ID);

                    var esn = db.GetObjectByKey(k);

                    estado_nota_de_peso noteStatus = (estado_nota_de_peso)esn;

                    if (noteStatus.notas_de_peso.Count > 0)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al intentar verificar estado de nota de peso.", ex);
                throw;
            }
        }
예제 #11
0
        /// <summary>
        /// Obtiene referencias de solicitudes de prestamo.
        /// </summary>
        /// <param name="SOLICITUDES_ID"></param>
        /// <param name="REFERENCIAS_TIPO"></param>
        /// <returns>Lista de referencias de solicitudes de prestamo.</returns>
        public List <referencia_x_solicitud> GetReferenciasXSolicitud(int SOLICITUDES_ID = 0, string REFERENCIAS_TIPO = "")
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.solicitudes_prestamos", "SOLICITUDES_ID", SOLICITUDES_ID);

                    Object solic = null;

                    if (db.TryGetObjectByKey(k, out solic))
                    {
                        solicitud_prestamo solicitud = (solicitud_prestamo)solic;

                        var query = from rs in solicitud.referencias_x_solicitudes
                                    where string.IsNullOrEmpty(REFERENCIAS_TIPO) ? true : rs.REFERENCIAS_TIPO == REFERENCIAS_TIPO
                                    select rs;

                        return(query.ToList <referencia_x_solicitud>());
                    }
                    else
                    {
                        return(new List <referencia_x_solicitud>());
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener referencias por solicitud de prestamo.", ex);
                throw;
            }
        }
예제 #12
0
        /// <summary>
        /// Verifica la existencia del estado de nota de peso con la llave específica.
        /// </summary>
        /// <param name="ESTADOS_NOTA_LLAVE"></param>
        /// <returns>True si existe el estado. False si no existe el estado.</returns>
        public bool EstadoDeNotaDePesoExiste(string ESTADOS_NOTA_LLAVE)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.usuarios.MergeOption = MergeOption.NoTracking;

                    var query = from esn in db.estados_nota_de_peso
                                where esn.ESTADOS_NOTA_LLAVE == ESTADOS_NOTA_LLAVE
                                select esn;

                    if (query.Count() > 0)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al intentar verificar estado de nota de peso.", ex);
                throw;
            }
        }
예제 #13
0
        /// <summary>
        /// Desactiva el estado de nota de peso.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        /// <param name="MODIFICADO_POR"></param>
        public void DesactivarEstado(int ESTADOS_NOTA_ID, string MODIFICADO_POR)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.estados_nota_de_peso", "ESTADOS_NOTA_ID", ESTADOS_NOTA_ID);

                    var esn = db.GetObjectByKey(k);

                    estado_nota_de_peso noteStatus = (estado_nota_de_peso)esn;

                    noteStatus.ESTADOS_NOTA_ESTADO = false;
                    noteStatus.MODIFICADO_POR      = MODIFICADO_POR;
                    noteStatus.FECHA_MODIFICACION  = DateTime.Today;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al desactivar estado de nota de peso.", ex);
                throw;
            }
        }
예제 #14
0
        /// <summary>
        /// Obtiene los estados iniciales de notas de peso.
        /// </summary>
        /// <returns></returns>
        public List <estado_nota_de_peso> GetEstadosIniciales()
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var estadoSiguiente = (from es in db.estados_nota_de_peso
                                           where es.ESTADOS_NOTA_SIGUIENTE != null
                                           select(int) es.ESTADOS_NOTA_SIGUIENTE);

                    var query = from esn in db.estados_nota_de_peso.Include("estados_detalles")
                                where !estadoSiguiente.Contains(esn.ESTADOS_NOTA_ID) &&
                                esn.ESTADOS_NOTA_SIGUIENTE != null &&
                                esn.ESTADOS_NOTA_ESTADO == true
                                select esn;

                    return(query.ToList <estado_nota_de_peso>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener estados iniciales de nota de peso.", ex);
                throw;
            }
        }
예제 #15
0
        /// <summary>
        /// Inserta el rol.
        /// </summary>
        /// <param name="ROL_ID"></param>
        /// <param name="ROL_NOMBRE"></param>
        /// <param name="ROL_DESCRIPCION"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="FECHA_MODIFICACION"></param>
        public void InsertarRol
            (int ROL_ID,
            string ROL_NOMBRE,
            string ROL_DESCRIPCION,
            string CREADO_POR,
            DateTime FECHA_CREACION,
            string MODIFICADO_POR,
            DateTime FECHA_MODIFICACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    rol role = new rol();

                    role.ROL_NOMBRE         = ROL_NOMBRE;
                    role.ROL_DESCRIPCION    = ROL_DESCRIPCION;
                    role.CREADO_POR         = CREADO_POR;
                    role.FECHA_CREACION     = DateTime.Today;
                    role.MODIFICADO_POR     = CREADO_POR;
                    role.FECHA_MODIFICACION = role.FECHA_CREACION;

                    db.roles.AddObject(role);
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al insertar rol.", ex);
                throw;
            }
        }
예제 #16
0
        /// <summary>
        /// Obtiene el reporte detalle de aportaciones por socio.
        /// </summary>
        /// <param name="SOCIOS_ID"></param>
        /// <param name="DOCUMENTO_TIPO"></param>
        /// <param name="FECHA"></param>
        /// <param name="FECHA_DESDE"></param>
        /// <param name="FECHA_HASTA"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <returns>Reporte detalle de aportaciones por socio.</returns>
        public List <reporte_detalle_de_aportaciones_por_socio> GetDetalleAportacionesPorSocio
            (string SOCIOS_ID,
            string DOCUMENTO_TIPO,
            string FECHA,
            DateTime FECHA_DESDE,
            DateTime FECHA_HASTA,
            string CREADO_POR,
            DateTime FECHA_CREACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from mov in db.reporte_detalle_de_aportaciones_por_socio
                                where
                                (FECHA_DESDE == default(DateTime) ? true : mov.FECHA >= FECHA_DESDE) &&
                                (FECHA_HASTA == default(DateTime) ? true : mov.FECHA <= FECHA_HASTA) &&
                                (string.IsNullOrEmpty(SOCIOS_ID) ? true : mov.SOCIOS_ID == SOCIOS_ID) &&
                                (string.IsNullOrEmpty(DOCUMENTO_TIPO) ? true : mov.DOCUMENTO_TIPO == DOCUMENTO_TIPO) &&
                                (string.IsNullOrEmpty(CREADO_POR) ? true : mov.CREADO_POR.Contains(CREADO_POR)) &&
                                (default(DateTime) == FECHA_CREACION ? true : mov.FECHA_CREACION == FECHA_CREACION)
                                select mov;

                    return(query.ToList <reporte_detalle_de_aportaciones_por_socio>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener el reporte detalle aportaciones por socio.", ex);
                throw;
            }
        }
예제 #17
0
        /// <summary>
        /// Actualiza el rol.
        /// </summary>
        /// <param name="ROL_ID"></param>
        /// <param name="ROL_NOMBRE"></param>
        /// <param name="ROL_DESCRIPCION"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="FECHA_MODIFICACION"></param>
        public void ActualizarRol
            (int ROL_ID,
            string ROL_NOMBRE,
            string ROL_DESCRIPCION,
            string CREADO_POR,
            DateTime FECHA_CREACION,
            string MODIFICADO_POR,
            DateTime FECHA_MODIFICACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.roles", "ROL_ID", ROL_ID);

                    var r = db.GetObjectByKey(k);

                    rol role = (rol)r;

                    role.ROL_NOMBRE         = ROL_NOMBRE;
                    role.ROL_DESCRIPCION    = ROL_DESCRIPCION;
                    role.CREADO_POR         = CREADO_POR;
                    role.FECHA_CREACION     = FECHA_CREACION;
                    role.MODIFICADO_POR     = MODIFICADO_POR;
                    role.FECHA_MODIFICACION = DateTime.Today;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al actualizar rol.", ex);
                throw;
            }
        }
예제 #18
0
        /// <summary>
        /// Obtiene reporte de notas de peso.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        /// <param name="SOCIOS_ID"></param>
        /// <param name="CLASIFICACIONES_CAFE_ID"></param>
        /// <param name="FECHA"></param>
        /// <param name="FECHA_DESDE"></param>
        /// <param name="FECHA_HASTA"></param>
        /// <returns>Reporte de notas de peso.</returns>
        public List <reporte_notas_de_peso> GetDetalleNotasDePeso
            (int ESTADOS_NOTA_ID,
            string SOCIOS_ID,
            int CLASIFICACIONES_CAFE_ID,
            string FECHA,
            DateTime FECHA_DESDE,
            DateTime FECHA_HASTA)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from np in db.reporte_notas_de_peso
                                where
                                (FECHA_DESDE == default(DateTime) ? true : np.NOTAS_FECHA >= FECHA_DESDE) &&
                                (FECHA_HASTA == default(DateTime) ? true : np.NOTAS_FECHA <= FECHA_HASTA) &&
                                (string.IsNullOrEmpty(SOCIOS_ID) ? true : np.SOCIOS_ID == SOCIOS_ID) &&
                                (CLASIFICACIONES_CAFE_ID == 0 ? true : np.CLASIFICACIONES_CAFE_ID == CLASIFICACIONES_CAFE_ID) &&
                                (ESTADOS_NOTA_ID == 0 ? true : np.ESTADOS_NOTA_ID == ESTADOS_NOTA_ID)
                                select np;

                    return(query.ToList <reporte_notas_de_peso>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener el reporte detalle de notas de peso.", ex);
                throw;
            }
        }
예제 #19
0
        /// <summary>
        /// Obtiene todos los roles.
        /// </summary>
        /// <param name="ROL_ID"></param>
        /// <param name="ROL_NOMBRE"></param>
        /// <param name="ROL_DESCRIPCION"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="FECHA_MODIFICACION"></param>
        /// <returns>Lista de roles.</returns>
        public List <rol> GetRoles
            (int ROL_ID,
            string ROL_NOMBRE,
            string ROL_DESCRIPCION,
            string CREADO_POR,
            DateTime FECHA_CREACION,
            string MODIFICADO_POR,
            DateTime FECHA_MODIFICACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.roles.MergeOption = MergeOption.NoTracking;

                    var query = from rls in db.roles
                                where
                                (ROL_ID.Equals(0) ? true : rls.ROL_ID.Equals(ROL_ID)) &&
                                (string.IsNullOrEmpty(ROL_NOMBRE) ? true : rls.ROL_NOMBRE.Contains(ROL_NOMBRE)) &&
                                (string.IsNullOrEmpty(ROL_DESCRIPCION) ? true : rls.ROL_DESCRIPCION.Contains(ROL_DESCRIPCION)) &&
                                (string.IsNullOrEmpty(CREADO_POR) ? true : rls.CREADO_POR.Contains(CREADO_POR)) &&
                                (default(DateTime) == FECHA_CREACION ? true : rls.FECHA_CREACION == FECHA_CREACION) &&
                                (string.IsNullOrEmpty(MODIFICADO_POR) ? true : rls.MODIFICADO_POR.Contains(MODIFICADO_POR)) &&
                                (default(DateTime) == FECHA_MODIFICACION ? true : rls.FECHA_MODIFICACION == FECHA_MODIFICACION)
                                select rls;

                    return(query.OrderBy(r => r.ROL_NOMBRE).OrderByDescending(r => r.FECHA_MODIFICACION).ToList <rol>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener roles.", ex);
                throw;
            }
        }
예제 #20
0
        /// <summary>
        /// Obtiene el reporte hojas de liquidación
        /// </summary>
        /// <param name="SOCIOS_ID"></param>
        /// <param name="CLASIFICACIONES_CAFE_ID"></param>
        /// <param name="FECHA"></param>
        /// <param name="FECHA_DESDE"></param>
        /// <param name="FECHA_HASTA"></param>
        /// <returns>Reporte hojas de liquidación</returns>
        public List <reporte_hojas_de_liquidacion> GetDetalleHojasDeLiquidacion
            (string SOCIOS_ID,
            int CLASIFICACIONES_CAFE_ID,
            string FECHA,
            DateTime FECHA_DESDE,
            DateTime FECHA_HASTA)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from hl in db.reporte_hojas_de_liquidacion
                                where
                                (FECHA_DESDE == default(DateTime) ? true : hl.LIQUIDACIONES_FECHA >= FECHA_DESDE) &&
                                (FECHA_HASTA == default(DateTime) ? true : hl.LIQUIDACIONES_FECHA <= FECHA_HASTA) &&
                                (string.IsNullOrEmpty(SOCIOS_ID) ? true : hl.SOCIOS_ID == SOCIOS_ID) &&
                                (CLASIFICACIONES_CAFE_ID == 0 ? true : hl.CLASIFICACIONES_CAFE_ID == CLASIFICACIONES_CAFE_ID)
                                select hl;

                    return(query.ToList <reporte_hojas_de_liquidacion>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener el reporte detalle de hojas de liquidacion.", ex);
                throw;
            }
        }
예제 #21
0
        /// <summary>
        /// Eliminar el tipo de prestamo.
        /// </summary>
        /// <param name="prestamoid"></param>
        public void EliminarPrestamo(int prestamoid)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from p in db.prestamos
                                where p.PRESTAMOS_ID == prestamoid
                                select p;

                    prestamo prest = query.FirstOrDefault();

                    if (prest != null)
                    {
                        db.prestamos.DeleteObject(prest);
                    }
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al eliminar prestamo.", ex);
                throw;
            }
        }
예제 #22
0
        /// <summary>
        /// Obtiene todas las plantillas de notificaciones.
        /// </summary>
        /// <param name="PLANTILLAS_LLAVE"></param>
        /// <param name="PLANTILLAS_NOMBRE"></param>
        /// <param name="PLANTILLAS_ASUNTO"></param>
        /// <param name="PLANTILLAS_MENSAJE"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="FECHA_MODIFICACION"></param>
        /// <returns>Listas plantillas de notificaciones.</returns>
        public List <plantilla_notificacion> GetPlantillas
            (string PLANTILLAS_LLAVE,
            string PLANTILLAS_NOMBRE,
            string PLANTILLAS_ASUNTO,
            string PLANTILLAS_MENSAJE,
            string CREADO_POR,
            DateTime FECHA_CREACION,
            string MODIFICADO_POR,
            DateTime FECHA_MODIFICACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from p in db.plantillas_notificaciones
                                where
                                (string.IsNullOrEmpty(PLANTILLAS_LLAVE) ? true : p.PLANTILLAS_LLAVE.Contains(PLANTILLAS_LLAVE)) &&
                                (string.IsNullOrEmpty(PLANTILLAS_NOMBRE) ? true : p.PLANTILLAS_NOMBRE.Contains(PLANTILLAS_NOMBRE)) &&
                                (string.IsNullOrEmpty(PLANTILLAS_ASUNTO) ? true : p.PLANTILLAS_ASUNTO.Contains(PLANTILLAS_ASUNTO)) &&
                                (string.IsNullOrEmpty(PLANTILLAS_MENSAJE) ? true : p.PLANTILLAS_MENSAJE.Contains(PLANTILLAS_MENSAJE)) &&
                                (string.IsNullOrEmpty(CREADO_POR) ? true : p.CREADO_POR.Contains(CREADO_POR)) &&
                                (default(DateTime) == FECHA_CREACION ? true : p.FECHA_CREACION == FECHA_CREACION) &&
                                (string.IsNullOrEmpty(MODIFICADO_POR) ? true : p.MODIFICADO_POR.Contains(MODIFICADO_POR)) &&
                                (default(DateTime) == FECHA_MODIFICACION ? true : p.FECHA_MODIFICACION == FECHA_MODIFICACION)
                                select p;

                    return(query.OrderBy(pl => pl.PLANTILLAS_LLAVE).OrderByDescending(pl => pl.FECHA_MODIFICACION).ToList <plantilla_notificacion>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener plantillas.", ex);
                throw;
            }
        }
예제 #23
0
        /// <summary>
        /// Obtiene los privilegios de usuario.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        /// <returns>Lista de privilegios de usuario.</returns>
        public List <privilegio> GetPrivilegiosDeUsuario(string USR_USERNAME)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.privilegios.MergeOption = MergeOption.NoTracking;

                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    var u = db.GetObjectByKey(k);

                    usuario user = (usuario)u;

                    var query = from r in user.roles
                                from pr in r.privilegios
                                select pr;

                    return(query.ToList <privilegio>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener privilegios de usuario.", ex);
                throw;
            }
        }
예제 #24
0
        /// <summary>
        /// Actualiza la plantilla de notificación.
        /// </summary>
        /// <param name="PLANTILLAS_LLAVE"></param>
        /// <param name="PLANTILLAS_NOMBRE"></param>
        /// <param name="PLANTILLAS_ASUNTO"></param>
        /// <param name="PLANTILLAS_MENSAJE"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="FECHA_MODIFICACION"></param>
        public void ActualizarPlantilla
            (string PLANTILLAS_LLAVE,
            string PLANTILLAS_NOMBRE,
            string PLANTILLAS_ASUNTO,
            string PLANTILLAS_MENSAJE,
            string CREADO_POR,
            DateTime FECHA_CREACION,
            string MODIFICADO_POR,
            DateTime FECHA_MODIFICACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k  = new EntityKey("colinasEntities.plantillas_notificaciones", "PLANTILLAS_LLAVE", PLANTILLAS_LLAVE);
                    var       pl = db.GetObjectByKey(k);
                    plantilla_notificacion plantilla = (plantilla_notificacion)pl;

                    plantilla.PLANTILLAS_NOMBRE  = PLANTILLAS_NOMBRE;
                    plantilla.PLANTILLAS_ASUNTO  = PLANTILLAS_ASUNTO;
                    plantilla.PLANTILLAS_MENSAJE = PLANTILLAS_MENSAJE;
                    plantilla.MODIFICADO_POR     = MODIFICADO_POR;
                    plantilla.FECHA_MODIFICACION = DateTime.Today;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al actualizar plantilla.", ex);
                throw;
            }
        }
예제 #25
0
        /// <summary>
        /// Actualiza la clave de usuario.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        /// <param name="USR_PASSWORD"></param>
        /// <param name="MODIFICADO_POR"></param>
        public void ActualizarClave(string USR_USERNAME, string USR_PASSWORD, string MODIFICADO_POR)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    var u = db.GetObjectByKey(k);

                    usuario user = (usuario)u;

                    user.USR_PASSWORD       = USR_PASSWORD;
                    user.MODIFICADO_POR     = MODIFICADO_POR;
                    user.FECHA_MODIFICACION = DateTime.Today;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al actualizar clave.", ex);
                throw;
            }
        }
예제 #26
0
        public bool PlantillaDeNotifiacionExiste(string PLANTILLAS_LLAVE)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.plantillas_notificaciones.MergeOption = MergeOption.NoTracking;

                    Object    p = null;
                    EntityKey k = new EntityKey("colinasEntities.plantillas_notificaciones", "PLANTILLAS_LLAVE", PLANTILLAS_LLAVE);

                    if (db.TryGetObjectByKey(k, out p))
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al intentar verificar privilegio.", ex);
                throw;
            }
        }
예제 #27
0
        /// <summary>
        /// Autentica usuario y password.
        /// </summary>
        /// <param name="USR_USERNAME"></param>
        /// <param name="USR_PASSWORD"></param>
        /// <returns>True si el usuario y password son correctos. False lo contrario.</returns>
        public bool Autenticar(string USR_USERNAME, string USR_PASSWORD)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.usuarios.MergeOption = MergeOption.NoTracking;

                    Object    u = null;
                    EntityKey k = new EntityKey("colinasEntities.usuarios", "USR_USERNAME", USR_USERNAME);

                    if (db.TryGetObjectByKey(k, out u))
                    {
                        usuario usr = (usuario)u;
                        if (usr.USR_PASSWORD.CompareTo(USR_PASSWORD) == 0)
                        {
                            return(true);
                        }
                    }

                    return(false);
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al intentar login.", ex);
                throw;
            }
        }
예제 #28
0
        /// <summary>
        /// Obtiene privilegios de rol.
        /// </summary>
        /// <param name="ROL_ID"></param>
        /// <param name="PRIV_ID"></param>
        /// <param name="PRIV_NOMBRE"></param>
        /// <param name="PRIV_LLAVE"></param>
        /// <returns>Lista de privilegios de rol.</returns>
        public List <privilegio> GetPrivilegios(int ROL_ID, int PRIV_ID, string PRIV_NOMBRE, string PRIV_LLAVE)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.roles", "ROL_ID", ROL_ID);

                    var r = db.GetObjectByKey(k);

                    rol role = (rol)r;

                    var filter = from privs in role.privilegios
                                 where
                                 (PRIV_ID.Equals(0) ? true : privs.PRIV_ID.Equals(PRIV_ID)) &&
                                 (string.IsNullOrEmpty(PRIV_NOMBRE) ? true : privs.PRIV_NOMBRE.Contains(PRIV_NOMBRE)) &&
                                 (string.IsNullOrEmpty(PRIV_LLAVE) ? true : privs.PRIV_LLAVE.Contains(PRIV_LLAVE))
                                 select privs;

                    return(filter.OrderBy(p => p.PRIV_LLAVE).ToList <privilegio>());
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener privilegios.", ex);
                throw;
            }
        }
예제 #29
0
        /// <summary>
        /// Verifica si ya existe el numero de cedula.
        /// </summary>
        /// <param name="USR_CEDULA"></param>
        /// <returns>True si ya existe la cedula. False no existe.</returns>
        public bool CedulaExiste(string USR_CEDULA)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    db.usuarios.MergeOption = MergeOption.NoTracking;

                    var query = from u in db.usuarios
                                where u.USR_CEDULA == USR_CEDULA
                                select u;
                    if (query.Count() > 0)
                    {
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al intentar verificar cedula.", ex);
                throw;
            }
        }
예제 #30
0
        /// <summary>
        /// Actualiza la notificación.
        /// </summary>
        /// <param name="NOTIFICACION_ID"></param>
        /// <param name="NOTIFICACION_ESTADO"></param>
        public void ActualizarNotificacion(int NOTIFICACION_ID, EstadosNotificacion NOTIFICACION_ESTADO)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    EntityKey k = new EntityKey("colinasEntities.notificaciones", "NOTIFICACION_ID", NOTIFICACION_ID);

                    Object n = null;

                    if (db.TryGetObjectByKey(k, out n))
                    {
                        notificacion notification = (notificacion)n;

                        notification.NOTIFICACION_ESTADO = (int)NOTIFICACION_ESTADO;

                        db.SaveChanges();
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al actualizar notificacion.", ex);
                throw;
            }
        }