Example #1
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;
            }
        }
Example #2
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;
            }
        }
Example #3
0
        /// <summary>
        /// Elimina estados de nota de peso con su detalle. Elimina el privilegio y notificacion si existen.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        public void EliminarEstadoNotaDePeso(int ESTADOS_NOTA_ID)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    using (var scope1 = new System.Transactions.TransactionScope())
                    {
                        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;

                        db.DeleteObject(noteStatus);

                        /*--------------------Eliminar privilegio--------------------*/
                        string PRIV_LLAVE = EstadoNotaDePesoLogic.PREFIJO_PRIVILEGIO + noteStatus.ESTADOS_NOTA_LLAVE;

                        var queryPrivilegio = from p in db.privilegios
                                              where p.PRIV_LLAVE == PRIV_LLAVE
                                              select p;

                        privilegio priv = (privilegio)queryPrivilegio.FirstOrDefault();

                        if (priv != null)
                        {
                            db.DeleteObject(priv);
                        }


                        /*--------------------Eliminar plantilla de notificacion--------------------*/
                        string PLANTILLAS_LLAVE = EstadoNotaDePesoLogic.PREFIJO_PLANTILLA + noteStatus.ESTADOS_NOTA_LLAVE;

                        db.plantillas_notificaciones.MergeOption = MergeOption.NoTracking;

                        Object    pl  = null;
                        EntityKey kpl = new EntityKey("colinasEntities.plantillas_notificaciones", "PLANTILLAS_LLAVE", PLANTILLAS_LLAVE);

                        if (db.TryGetObjectByKey(kpl, out pl))
                        {
                            plantilla_notificacion plNotif = (plantilla_notificacion)pl;

                            db.DeleteObject(plNotif);
                        }

                        db.SaveChanges();

                        scope1.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al eliminar estado de nota de peso.", ex);
                throw;
            }
        }
Example #4
0
        /// <summary>
        /// Obtiene los estados de la nota de peso siguientes. Segun clasificacion de café.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        /// <param name="CLASIFICACIONES_CAFE_ID"></param>
        /// <returns>Lista estados de la nota de peso siguientes. Segun clasificacion de café.</returns>
        public List <estado_nota_de_peso> GetEstadosNotaDePeso(int ESTADOS_NOTA_ID, int CLASIFICACIONES_CAFE_ID)
        {
            try
            {
                List <estado_nota_de_peso> estadosList = null;

                using (var db = new colinasEntities())
                {
                    var querySiguiente = from enp in db.estados_nota_de_peso.Include("estados_detalles")
                                         where enp.ESTADOS_NOTA_ID == ESTADOS_NOTA_ID
                                         select enp;

                    estado_nota_de_peso siguiente = querySiguiente.First();

                    switch (siguiente.estados_detalles.ESTADOS_DETALLE_ENABLE_ESTADO)
                    {
                    case (int)EstadoNotaDePesoLogic.HabilitarEstadosEnNotasDePeso.ActivadoEnOrden:
                        estadosList = GetEstadosSiguiente(siguiente, db);
                        break;

                    default:
                        estadosList = db.estados_nota_de_peso.Include("estados_detalles").ToList <estado_nota_de_peso>();
                        break;
                    }
                }

                ClasificacionDeCafeLogic clasificaciondecafelogic = new ClasificacionDeCafeLogic();
                bool catacionFlag = clasificaciondecafelogic.ClasificacionDeCafePasaPorCatacion(CLASIFICACIONES_CAFE_ID);

                if (catacionFlag == false)
                {
                    estadosList = estadosList.Where(esn => esn.ESTADOS_NOTA_ES_CATACION == false).ToList <estado_nota_de_peso>();
                }

                return(estadosList);
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener estados de nota de peso.", ex);
                throw;
            }
        }
Example #5
0
        /// <summary>
        /// Obtiene los estados de nota de peso siguientes.
        /// </summary>
        /// <param name="siguiente"></param>
        /// <param name="db"></param>
        /// <returns>Lista de estados de nota de peso siguientes.</returns>
        public List <estado_nota_de_peso> GetEstadosSiguiente(estado_nota_de_peso siguiente, colinasEntities db)
        {
            try
            {
                db.estados_nota_de_peso.MergeOption = MergeOption.NoTracking;

                var query = from esn in db.estados_nota_de_peso.Include("estados_detalles")
                            where siguiente.ESTADOS_NOTA_SIGUIENTE == esn.ESTADOS_NOTA_ID &&
                            siguiente.ESTADOS_NOTA_ID != esn.ESTADOS_NOTA_ID
                            select esn;

                var siguientes = query.ToList <estado_nota_de_peso>();
                siguientes.Add(siguiente);

                return(siguientes);
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener estados siguientes de nota de peso.", ex);
                throw;
            }
        }
Example #6
0
        /// <summary>
        /// Obtiene los estados de la nota de peso siguientes.
        /// </summary>
        /// <returns>Lista estados de la nota de peso siguientes.</returns>
        public List <estado_nota_de_peso> GetEstadosNotaDePeso(int ESTADOS_NOTA_ID)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var querySiguiente = from enp in db.estados_nota_de_peso.Include("estados_detalles")
                                         where enp.ESTADOS_NOTA_ID == ESTADOS_NOTA_ID
                                         select enp;

                    estado_nota_de_peso siguiente = querySiguiente.First();

                    List <estado_nota_de_peso> estadolist = null;

                    switch (siguiente.estados_detalles.ESTADOS_DETALLE_ENABLE_ESTADO)
                    {
                    case (int)EstadoNotaDePesoLogic.HabilitarEstadosEnNotasDePeso.ActivadoEnOrden:
                        estadolist = GetEstadosSiguiente(siguiente, db);
                        break;

                    case (int)EstadoNotaDePesoLogic.HabilitarEstadosEnNotasDePeso.ActivadoLibre:
                        estadolist = db.estados_nota_de_peso.Include("estados_detalles").ToList <estado_nota_de_peso>();
                        break;

                    default:
                        estadolist = new List <estado_nota_de_peso>();
                        break;
                    }

                    return(estadolist);
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener estados de nota de peso.", ex);
                throw;
            }
        }
Example #7
0
        /// <summary>
        /// Obtiene los socios segun estado de nota de peso.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        /// <returns>Los socios segun estado de nota de peso.</returns>
        public List <socio> GetSocios(int ESTADOS_NOTA_ID)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    var query = from enp in db.estados_nota_de_peso.Include("estados_detalles")
                                where enp.ESTADOS_NOTA_ID == ESTADOS_NOTA_ID
                                select enp;

                    estado_nota_de_peso estado = query.First();

                    Socios.SociosLogic sociologic = new Socios.SociosLogic();

                    List <socio> sociosList = null;

                    switch (estado.estados_detalles.ESTADOS_DETALLE_ENABLE_SOCIO_ID)
                    {
                    case (int)Socios.SociosLogic.HabilitarSocios.MostrarActivos:
                        sociosList = sociologic.getSociosActivos();
                        break;

                    default:
                        sociosList = sociologic.getData();
                        break;
                    }

                    return(sociosList);
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al obtener socios de nota de peso.", ex);
                throw;
            }
        }
Example #8
0
        /// <summary>
        /// Actualiza estado de nota de peso con su detalle. Actualiza privilegio y notificacion.
        /// </summary>
        /// <param name="ESTADOS_NOTA_ID"></param>
        /// <param name="ESTADOS_NOTA_SIGUIENTE"></param>
        /// <param name="ESTADOS_NOTA_NOMBRE"></param>
        /// <param name="ESTADOS_NOTA_DESCRIPCION"></param>
        /// <param name="ESTADOS_NOTA_ES_CATACION"></param>
        /// <param name="ESTADOS_NOTA_ESTADO"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_FECHA"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_ESTADO"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_SOCIO_ID"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE"></param>
        /// <param name="ESTADOS_DETALLE_SHOW_INFO_SOCIO"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_DETALLE"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_TARA"></param>
        /// <param name="ESTADOS_DETALLE_SHOW_DESCUENTOS"></param>
        /// <param name="ESTADOS_DETALLE_SHOW_TOTAL"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN"></param>
        /// <param name="PLANTILLAS_MENSAJE"></param>
        public void ActualizarEstadoNotaDePeso
            (int ESTADOS_NOTA_ID,
            int?ESTADOS_NOTA_SIGUIENTE,
            string ESTADOS_NOTA_NOMBRE,
            string ESTADOS_NOTA_DESCRIPCION,
            bool ESTADOS_NOTA_ES_CATACION,
            bool ESTADOS_NOTA_ESTADO,
            string MODIFICADO_POR,
            bool ESTADOS_DETALLE_ENABLE_FECHA,
            int ESTADOS_DETALLE_ENABLE_ESTADO,
            int ESTADOS_DETALLE_ENABLE_SOCIO_ID,
            bool ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE,
            bool ESTADOS_DETALLE_SHOW_INFO_SOCIO,
            bool ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA,
            bool ESTADOS_DETALLE_ENABLE_DETALLE,
            bool ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS,
            bool ESTADOS_DETALLE_ENABLE_TARA,
            bool ESTADOS_DETALLE_SHOW_DESCUENTOS,
            bool ESTADOS_DETALLE_SHOW_TOTAL,
            bool ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN,
            bool ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN,
            string PLANTILLAS_MENSAJE)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    using (var scope1 = new System.Transactions.TransactionScope())
                    {
                        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_SIGUIENTE   = ESTADOS_NOTA_SIGUIENTE == 0 ? null : ESTADOS_NOTA_SIGUIENTE;
                        noteStatus.ESTADOS_NOTA_NOMBRE      = ESTADOS_NOTA_NOMBRE;
                        noteStatus.ESTADOS_NOTA_DESCRIPCION = ESTADOS_NOTA_DESCRIPCION;
                        noteStatus.ESTADOS_NOTA_ES_CATACION = ESTADOS_NOTA_ES_CATACION;
                        noteStatus.ESTADOS_NOTA_ESTADO      = ESTADOS_NOTA_ESTADO;
                        noteStatus.MODIFICADO_POR           = MODIFICADO_POR;
                        noteStatus.FECHA_MODIFICACION       = DateTime.Today;

                        /*--------------------Actualizar detalle--------------------*/
                        estado_detalle detalle = noteStatus.estados_detalles;
                        detalle.ESTADOS_DETALLE_ENABLE_FECHA              = ESTADOS_DETALLE_ENABLE_FECHA;
                        detalle.ESTADOS_DETALLE_ENABLE_ESTADO             = ESTADOS_DETALLE_ENABLE_ESTADO;
                        detalle.ESTADOS_DETALLE_ENABLE_SOCIO_ID           = ESTADOS_DETALLE_ENABLE_SOCIO_ID;
                        detalle.ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE = ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE;
                        detalle.ESTADOS_DETALLE_SHOW_INFO_SOCIO           = ESTADOS_DETALLE_SHOW_INFO_SOCIO;
                        detalle.ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA      = ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA;
                        detalle.ESTADOS_DETALLE_ENABLE_DETALLE            = ESTADOS_DETALLE_ENABLE_DETALLE;
                        detalle.ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS    = ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS;
                        detalle.ESTADOS_DETALLE_ENABLE_TARA          = ESTADOS_DETALLE_ENABLE_TARA;
                        detalle.ESTADOS_DETALLE_SHOW_DESCUENTOS      = ESTADOS_DETALLE_SHOW_DESCUENTOS;
                        detalle.ESTADOS_DETALLE_SHOW_TOTAL           = ESTADOS_DETALLE_SHOW_TOTAL;
                        detalle.ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN = ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN;
                        detalle.ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN  = ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN;


                        /*--------------------Actualizar privilegio--------------------*/
                        string PRIV_LLAVE = EstadoNotaDePesoLogic.PREFIJO_PRIVILEGIO + noteStatus.ESTADOS_NOTA_LLAVE;

                        var queryPrivilegio = from p in db.privilegios
                                              where p.PRIV_LLAVE == PRIV_LLAVE
                                              select p;

                        privilegio notePrivilege = (privilegio)queryPrivilegio.FirstOrDefault();

                        if (notePrivilege != null)
                        {
                            notePrivilege.PRIV_NOMBRE        = "Notas de Peso " + ESTADOS_NOTA_NOMBRE;
                            notePrivilege.PRIV_DESCRIPCION   = "Acceso a nivel de datos. " + ESTADOS_NOTA_DESCRIPCION;
                            notePrivilege.MODIFICADO_POR     = MODIFICADO_POR;
                            notePrivilege.FECHA_MODIFICACION = DateTime.Today;
                        }


                        /*--------------------Actualizar plantilla de notificacion--------------------*/
                        string PLANTILLAS_LLAVE = EstadoNotaDePesoLogic.PREFIJO_PLANTILLA + noteStatus.ESTADOS_NOTA_LLAVE;

                        db.plantillas_notificaciones.MergeOption = MergeOption.NoTracking;

                        Object    pl  = null;
                        EntityKey kpl = new EntityKey("colinasEntities.plantillas_notificaciones", "PLANTILLAS_LLAVE", PLANTILLAS_LLAVE);

                        if (db.TryGetObjectByKey(kpl, out pl))
                        {
                            plantilla_notificacion noteTemplate = (plantilla_notificacion)pl;

                            noteTemplate.PLANTILLAS_NOMBRE  = "Notas de Peso " + ESTADOS_NOTA_NOMBRE;
                            noteTemplate.PLANTILLAS_ASUNTO  = "Notas de Peso " + ESTADOS_NOTA_NOMBRE;
                            noteTemplate.PLANTILLAS_MENSAJE = PLANTILLAS_MENSAJE;
                            noteTemplate.MODIFICADO_POR     = MODIFICADO_POR;
                            noteTemplate.FECHA_MODIFICACION = DateTime.Today;
                        }

                        db.SaveChanges();

                        scope1.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al actualizar estado de nota de peso.", ex);
                throw;
            }
        }
Example #9
0
        /// <summary>
        /// Inserta el estado de nota de peso con su detalle. Crea privilegio y notificacion para nota de peso.
        /// </summary>
        /// <param name="ESTADOS_NOTA_SIGUIENTE"></param>
        /// <param name="ESTADOS_NOTA_LLAVE"></param>
        /// <param name="ESTADOS_NOTA_NOMBRE"></param>
        /// <param name="ESTADOS_NOTA_DESCRIPCION"></param>
        /// <param name="ESTADOS_NOTA_ES_CATACION"></param>
        /// <param name="ESTADOS_NOTA_ESTADO"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_FECHA"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_ESTADO"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_SOCIO_ID"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE"></param>
        /// <param name="ESTADOS_DETALLE_SHOW_INFO_SOCIO"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_DETALLE"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_TARA"></param>
        /// <param name="ESTADOS_DETALLE_SHOW_DESCUENTOS"></param>
        /// <param name="ESTADOS_DETALLE_SHOW_TOTAL"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN"></param>
        /// <param name="ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN"></param>
        /// <param name="PLANTILLAS_MENSAJE"></param>
        public void InsertarEstadoNotaDePeso
            (int?ESTADOS_NOTA_SIGUIENTE,
            string ESTADOS_NOTA_LLAVE,
            string ESTADOS_NOTA_NOMBRE,
            string ESTADOS_NOTA_DESCRIPCION,
            bool ESTADOS_NOTA_ES_CATACION,
            bool ESTADOS_NOTA_ESTADO,
            string CREADO_POR,
            bool ESTADOS_DETALLE_ENABLE_FECHA,
            int ESTADOS_DETALLE_ENABLE_ESTADO,
            int ESTADOS_DETALLE_ENABLE_SOCIO_ID,
            bool ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE,
            bool ESTADOS_DETALLE_SHOW_INFO_SOCIO,
            bool ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA,
            bool ESTADOS_DETALLE_ENABLE_DETALLE,
            bool ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS,
            bool ESTADOS_DETALLE_ENABLE_TARA,
            bool ESTADOS_DETALLE_SHOW_DESCUENTOS,
            bool ESTADOS_DETALLE_SHOW_TOTAL,
            bool ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN,
            bool ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN,
            string PLANTILLAS_MENSAJE)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    using (var scope1 = new System.Transactions.TransactionScope())
                    {
                        estado_nota_de_peso noteStatus = new estado_nota_de_peso();

                        noteStatus.ESTADOS_NOTA_SIGUIENTE   = ESTADOS_NOTA_SIGUIENTE == 0 ? null : ESTADOS_NOTA_SIGUIENTE;
                        noteStatus.ESTADOS_NOTA_LLAVE       = ESTADOS_NOTA_LLAVE;
                        noteStatus.ESTADOS_NOTA_NOMBRE      = ESTADOS_NOTA_NOMBRE;
                        noteStatus.ESTADOS_NOTA_DESCRIPCION = ESTADOS_NOTA_DESCRIPCION;
                        noteStatus.ESTADOS_NOTA_ES_CATACION = ESTADOS_NOTA_ES_CATACION;
                        noteStatus.ESTADOS_NOTA_ESTADO      = ESTADOS_NOTA_ESTADO;
                        noteStatus.CREADO_POR         = noteStatus.MODIFICADO_POR = CREADO_POR;
                        noteStatus.FECHA_CREACION     = DateTime.Today;
                        noteStatus.FECHA_MODIFICACION = noteStatus.FECHA_CREACION;

                        db.estados_nota_de_peso.AddObject(noteStatus);

                        /*--------------------Crear detalle--------------------*/
                        estado_detalle detalle = new estado_detalle();
                        detalle.ESTADOS_NOTA_ID = noteStatus.ESTADOS_NOTA_ID;
                        detalle.ESTADOS_DETALLE_ENABLE_FECHA              = ESTADOS_DETALLE_ENABLE_FECHA;
                        detalle.ESTADOS_DETALLE_ENABLE_ESTADO             = ESTADOS_DETALLE_ENABLE_ESTADO;
                        detalle.ESTADOS_DETALLE_ENABLE_SOCIO_ID           = ESTADOS_DETALLE_ENABLE_SOCIO_ID;
                        detalle.ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE = ESTADOS_DETALLE_ENABLE_CLASIFICACION_CAFE;
                        detalle.ESTADOS_DETALLE_SHOW_INFO_SOCIO           = ESTADOS_DETALLE_SHOW_INFO_SOCIO;
                        detalle.ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA      = ESTADOS_DETALLE_ENABLE_FORMA_ENTREGA;
                        detalle.ESTADOS_DETALLE_ENABLE_DETALLE            = ESTADOS_DETALLE_ENABLE_DETALLE;
                        detalle.ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS    = ESTADOS_DETALLE_ENABLE_SACOS_RETENIDOS;
                        detalle.ESTADOS_DETALLE_ENABLE_TARA          = ESTADOS_DETALLE_ENABLE_TARA;
                        detalle.ESTADOS_DETALLE_SHOW_DESCUENTOS      = ESTADOS_DETALLE_SHOW_DESCUENTOS;
                        detalle.ESTADOS_DETALLE_SHOW_TOTAL           = ESTADOS_DETALLE_SHOW_TOTAL;
                        detalle.ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN = ESTADOS_DETALLE_ENABLE_REGISTRAR_BTN;
                        detalle.ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN  = ESTADOS_DETALLE_ENABLE_IMPRIMIR_BTN;

                        db.estados_detalles.AddObject(detalle);

                        /*--------------------Crear privilegio--------------------*/
                        privilegio notePrivilege = new privilegio();

                        notePrivilege.PRIV_LLAVE         = EstadoNotaDePesoLogic.PREFIJO_PRIVILEGIO + ESTADOS_NOTA_LLAVE;
                        notePrivilege.PRIV_NOMBRE        = "Notas de Peso " + ESTADOS_NOTA_NOMBRE;
                        notePrivilege.PRIV_DESCRIPCION   = "Acceso a nivel de datos. " + ESTADOS_NOTA_DESCRIPCION;
                        notePrivilege.CREADO_POR         = notePrivilege.MODIFICADO_POR = CREADO_POR;
                        notePrivilege.FECHA_CREACION     = DateTime.Today;
                        notePrivilege.FECHA_MODIFICACION = notePrivilege.FECHA_CREACION;

                        db.privilegios.AddObject(notePrivilege);

                        /*--------------------Crear plantilla de notificacion--------------------*/
                        plantilla_notificacion noteTemplate = new plantilla_notificacion();

                        noteTemplate.PLANTILLAS_LLAVE   = EstadoNotaDePesoLogic.PREFIJO_PLANTILLA + ESTADOS_NOTA_LLAVE;
                        noteTemplate.PLANTILLAS_NOMBRE  = "Notas de Peso " + ESTADOS_NOTA_NOMBRE;
                        noteTemplate.PLANTILLAS_ASUNTO  = "Notas de Peso " + ESTADOS_NOTA_NOMBRE;
                        noteTemplate.PLANTILLAS_MENSAJE = PLANTILLAS_MENSAJE;
                        noteTemplate.CREADO_POR         = noteTemplate.MODIFICADO_POR = CREADO_POR;
                        noteTemplate.FECHA_CREACION     = DateTime.Today;
                        noteTemplate.FECHA_MODIFICACION = noteTemplate.FECHA_CREACION;

                        db.plantillas_notificaciones.AddObject(noteTemplate);

                        db.SaveChanges();

                        scope1.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al insertar estado de nota de peso.", ex);
                throw;
            }
        }