Exemple #1
0
        public static UsuarioInfo ObtenerUsuarioLogeado(int usuarioID)
        {
            var         usuarioPL = new UsuarioPL();
            UsuarioInfo usuario   = usuarioPL.ObtenerSupervisorID(usuarioID);

            return(usuario);
        }
Exemple #2
0
        public static FiltroUsuarioInfo ValidarCredencialesUsuario(string usuario, string contraseña)
        {
            var usuarioPL = new UsuarioPL();
            FiltroUsuarioInfo filtroUsuario = usuarioPL.ValidarUsuarioCompleto(usuario.Trim(), contraseña);

            return(filtroUsuario);
        }
 /// <summary>
 /// Guarda un Costo Organizacion
 /// </summary>
 private void Guardar()
 {
     try
     {
         bool guardar = ValidaGuardar();
         if (guardar)
         {
             var usuarioPL = new UsuarioPL();
             usuarioPL.Guardar(Contexto);
             SkMessageBox.Show(this, Properties.Resources.GuardadoConExito, MessageBoxButton.OK,
                               MessageImage.Correct);
             if (Contexto.UsuarioID == 0)
             {
                 InicializaContexto();
                 txtNombre.Focus();
             }
             else
             {
                 confirmaSalir = false;
                 Close();
             }
         }
     }
     catch (ExcepcionGenerica)
     {
         SkMessageBox.Show(this, Properties.Resources.Usuario_ErrorGuardar, MessageBoxButton.OK,
                           MessageImage.Error);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(this, Properties.Resources.Usuario_ErrorGuardar, MessageBoxButton.OK,
                           MessageImage.Error);
     }
 }
Exemple #4
0
        public static UsuarioInfo VerificarUsuario(string usuario, string contra)
        {
            UsuarioInfo usuarioInfo = null;

            try
            {
                var         usuarioPL = new UsuarioPL();
                UsuarioInfo usuarioActiveDirectory = usuarioPL.ValidarUsuario(usuario.Trim(), contra, null);
                if (usuarioActiveDirectory != null)
                {
                    usuarioInfo = usuarioPL.ObtenerPorActiveDirectory(usuario.Trim());
                    if (usuarioInfo != null)
                    {
                        var seguridadInfo = new SeguridadInfo
                        {
                            Usuario = usuarioInfo
                        };
                        //usuarioValido = true;
                        HttpContext.Current.Session["Seguridad"]    = seguridadInfo;
                        HttpContext.Current.Session["Usuario"]      = seguridadInfo.Usuario.Nombre;
                        HttpContext.Current.Session["Organizacion"] = seguridadInfo.Usuario.Organizacion.Descripcion;
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw;
            }
            return(usuarioInfo);
        }
Exemple #5
0
        public static void EnviarCorreo(string tipoSolicitud, string semanaCambio, int organizacionID, string clave, int usuarioID)
        {
            var seguridad = (SeguridadInfo)ObtenerSeguridad();

            var correo            = new CorreoPL();
            var correoenviar      = new CorreoInfo();
            var usuariosCorreo    = new List <UsuarioInfo>();
            var organizacionPL    = new OrganizacionPL();
            var usuarioInfo       = new UsuarioInfo();
            var usuarioPL         = new UsuarioPL();
            var organizacionInfo  = new OrganizacionInfo();
            var parametroPL       = new ParametroGeneralPL();
            var terminacionCorreo = new ParametroGeneralInfo();

            try
            {
                OrganizacionInfo organizacion = seguridad.Usuario.Organizacion;
                terminacionCorreo = parametroPL.ObtenerPorClaveParametro("CorreoTerminacion");

                string asuntoCorreo    = HttpContext.GetLocalResourceObject("~/Manejo/CapturaPedido.aspx", "msgAsuntoCorreo.Text").ToString();
                string mensajeCorreo   = HttpContext.GetLocalResourceObject("~/Manejo/CapturaPedido.aspx", "msgMensajeCorreo.Text").ToString();
                string parametroManejo = HttpContext.GetLocalResourceObject("~/Manejo/CapturaPedido.aspx", "clvCorreoJefeManejo.Text").ToString();

                organizacionInfo = organizacionPL.ObtenerPorID(organizacionID);
                if (string.IsNullOrEmpty(clave))
                {
                    usuarioInfo          = usuarioPL.ObtenerPorID(usuarioID);
                    correoenviar.Asunto  = String.Format(asuntoCorreo, tipoSolicitud, semanaCambio, organizacionInfo.Descripcion);
                    correoenviar.Correos = new List <string>();
                    correoenviar.Mensaje = String.Format(mensajeCorreo, tipoSolicitud, semanaCambio);
                    correoenviar.Correos.Add(usuarioInfo.UsuarioActiveDirectory + terminacionCorreo.Valor);

                    correo.EnviarCorreo(organizacion, correoenviar);
                }
                else
                {
                    usuariosCorreo = ObtenerCorreos(clave);
                    if (clave.Equals(parametroManejo))
                    {
                        usuariosCorreo.RemoveAll(x => x.OrganizacionID != organizacionID);
                    }
                    foreach (var usuario in usuariosCorreo)
                    {
                        correoenviar.Asunto  = String.Format(asuntoCorreo, tipoSolicitud, semanaCambio, organizacionInfo.Descripcion);
                        correoenviar.Correos = new List <string>();
                        correoenviar.Mensaje = String.Format(mensajeCorreo, tipoSolicitud, semanaCambio);
                        correoenviar.Correos.Add(usuario.UsuarioActiveDirectory + terminacionCorreo.Valor);

                        correo.EnviarCorreo(organizacion, correoenviar);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw;
            }
        }
        /// <summary>
        /// Llena datos seccion ajuste de inventario e historial
        /// </summary>
        private void LlenarDatosAlmacenMovimiento()
        {
            var usuarioPL             = new UsuarioPL();
            var almacenMovimientoInfo = new AlmacenMovimientoInfo
            {
                AlmacenID           = almacenID,
                FolioMovimiento     = folioMovimiento,
                AlmacenMovimientoID = almacenMovimientoID
            };
            var almacenPL         = new AlmacenPL();
            var almacenMovimiento = almacenPL.ObtenerAlmacenMovimiento(almacenMovimientoInfo);

            if (almacenMovimiento == null)
            {
                return;
            }
            //Informacion almacen
            txtFolioInventarioFisico.Text = Convert.ToString(almacenMovimiento.FolioMovimiento);

            var tipoMovimiento = new TipoMovimientoPL();
            var resultado      = tipoMovimiento.ObtenerPorID(almacenMovimiento.TipoMovimientoID);

            if (resultado != null)
            {
                txtTipoMovimiento.Text = resultado.Descripcion;
            }

            //Fecha actual
            var fechaActual = DateTime.Now;

            txtFecha.Text = fechaActual.ToString("dd'/'MM'/'yyyy' 'hh':'mm  tt", CultureInfo.InvariantCulture);
            //Obtener descripcion de estatus
            var ajusteDeInventarioPL = new AjusteDeInventarioPL();
            var estatusInfo          = ajusteDeInventarioPL.ObtenerEstatusInfo(almacenMovimiento);

            if (estatusInfo != null)
            {
                txtEstado.Text = estatusInfo.Descripcion;
            }

            //Usuarios creacion y modificacion
            var usuario = usuarioPL.ObtenerPorID(almacenMovimiento.UsuarioCreacionID);

            if (usuario != null)
            {
                txtCreadoPor.Text = usuario.Nombre;
            }

            txtModificadoPor.Text       = nombreUsuario;
            txtUltimaActualizacion.Text = fechaActual.ToString("dd'/'MM'/'yyyy' 'hh':'mm  tt", CultureInfo.InvariantCulture);

            //Fecha creacion y modificacion
            //var fechaVal = new DateTime(1492, 10, 12);
            var fechaCreacion = almacenMovimiento.FechaCreacion;

            txtFechaCreacion.Text = fechaCreacion.ToString("dd'/'MM'/'yyyy' 'hh':'mm  tt", CultureInfo.InvariantCulture);
        }
Exemple #7
0
        public void ObtenerUsuarioPorId()
        {
            var         usuarioPL = new UsuarioPL();
            UsuarioInfo usuario   = usuarioPL.ObtenerPorID(3);

            Assert.IsNotNull(usuario);
            Assert.IsNotNull(usuario.Organizacion);
            Assert.IsTrue(usuario.Organizacion.Descripcion.Length > 0);
        }
Exemple #8
0
        private void IniciarSesion()
        {
            try
            {
                //btnAceptar.IsEnabled = false;
                if (ValidarCampos())
                {
                    if (ValidaUsuario())
                    {
                        var         usuarioPL   = new UsuarioPL();
                        UsuarioInfo usuarioInfo = usuarioPL.ObtenerPorActiveDirectory(txtUsuario.Text.Trim());

                        if (usuarioInfo != null)
                        {
                            Application.Current.Properties["UsuarioActiveDirectory"] = txtUsuario.Text.Trim();
                            Application.Current.Properties["UsuarioID"]      = usuarioInfo.UsuarioID;
                            Application.Current.Properties["Nombre"]         = usuarioInfo.Nombre;
                            Application.Current.Properties["OrganizacionID"] = usuarioInfo.Organizacion.OrganizacionID;
                            Application.Current.Properties["Corporativo"]    = usuarioInfo.Corporativo;

                            var formaPrincipal = new Principal();
                            Hide();
                            formaPrincipal.Show();
                        }
                        else
                        {
                            SkMessageBox.Show(this, Properties.Resources.Login_ErrorUsuarioLocal, MessageBoxButton.OK, MessageImage.Error);
                            btnAceptar.IsEnabled  = true;
                            imgloading.Visibility = Visibility.Hidden;
                        }
                    }
                    else
                    {
                        SkMessageBox.Show(this, Properties.Resources.Login_Error, MessageBoxButton.OK, MessageImage.Error);
                        txtUsuario.Focus();
                        btnAceptar.IsEnabled  = true;
                        imgloading.Visibility = Visibility.Hidden;
                    }
                }
                else
                {
                    SkMessageBox.Show(this, Properties.Resources.Login_ErrorCampos, MessageBoxButton.OK, MessageImage.Error);
                    txtUsuario.Focus();
                    btnAceptar.IsEnabled  = true;
                    imgloading.Visibility = Visibility.Hidden;
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                SkMessageBox.Show(this, Properties.Resources.Login_ErrorValidarUsuario, MessageBoxButton.OK,
                                  MessageImage.Error);
                btnAceptar.IsEnabled  = true;
                imgloading.Visibility = Visibility.Hidden;
            }
        }
Exemple #9
0
        /// <summary>
        /// Metodo que valida el usuario en el  active directory
        /// </summary>
        private bool ValidaUsuario()
        {
            bool esValido  = false;
            var  usuarioPL = new UsuarioPL();
            ConfiguracionInfo configuracion = AuxConfiguracion.ObtenerConfiguracion();
            UsuarioInfo       usuario       = usuarioPL.ValidarUsuario(txtUsuario.Text, txtContra.Password, configuracion);

            if (usuario != null)
            {
                esValido = true;
            }
            return(esValido);
        }
 public static FiltroUsuarioInfo VerificarUsuario(string usuario, string contrasenia)
 {
     try
     {
         var usuarioPL = new UsuarioPL();
         FiltroUsuarioInfo usuarioActiveDirectory = usuarioPL.ValidarUsuarioCompleto(usuario.Trim(), contrasenia);
         return(usuarioActiveDirectory);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw;
     }
 }
        /// <summary>
        /// Valida que el Contexto tenga datos validos
        /// </summary>
        /// <returns></returns>
        private bool ValidaGuardar()
        {
            bool guardar = true;

            var mensaje = string.Empty;

            if (string.IsNullOrWhiteSpace(Contexto.Nombre))
            {
                guardar = false;
                txtNombre.Focus();
                mensaje = Properties.Resources.UsuarioEdicion_MsgNombreRequerida;
            }
            else
            {
                if (Contexto.Organizacion.OrganizacionID == 0)
                {
                    guardar = false;
                    skAyudaOrganizacion.AsignarFoco();
                    mensaje = Properties.Resources.UsuarioEdicion_MsgOrganizacionIDRequerida;
                }
                else
                {
                    if (string.IsNullOrWhiteSpace(Contexto.UsuarioActiveDirectory))
                    {
                        guardar = false;
                        txtNombreActiveDirectory.Focus();
                        mensaje = Properties.Resources.UsuarioEdicion_MsgUsuarioActiveDirectoryRequerida;
                    }
                }
            }
            if (guardar)
            {
                var         usuarioPL = new UsuarioPL();
                UsuarioInfo usuario   =
                    usuarioPL.ObtenerPorActiveDirectory(Contexto.UsuarioActiveDirectory);
                if (usuario != null && usuario.UsuarioID != Contexto.UsuarioID)
                {
                    guardar = false;
                    mensaje = string.Format(Properties.Resources.UsuarioEdicion_MsgDescripcionExistente,
                                            usuario.UsuarioID);
                    txtNombreActiveDirectory.Focus();
                }
            }
            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning);
            }

            return(guardar);
        }
Exemple #12
0
        private void BtnGuardar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (ValidarDatos())
                {
                    var usuario     = txtUsuario.Text.ToString().Trim();
                    var contrasenia = txtContrasenia.Password.ToString().Trim();

                    var         usuarioPL   = new UsuarioPL();
                    UsuarioInfo usuarioInfo = usuarioPL.ObtenerPorActiveDirectory(txtUsuario.Text.Trim());

                    if (usuarioInfo == null)
                    {
                        SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                          Properties.Resources.Login_ErrorUsuarioLocal,
                                          MessageBoxButton.OK,
                                          MessageImage.Stop);
                        txtUsuario.Focus();
                    }
                    else
                    {
                        if (rolRequeridoInfo.RolID == usuarioInfo.Operador.Rol.RolID)
                        {
                            autorizacionInfo.Usuario       = usuarioInfo;
                            autorizacionInfo.Justificacion = txtJustificacion.Text.Trim();
                            autorizacionInfo.Autorizado    = true;
                            Close();
                        }
                        else
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.Autorizacion_MsjSinPrivilegios,
                                              MessageBoxButton.OK,
                                              MessageImage.Stop);
                            txtUsuario.Focus();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Autorizacion_MsjErrorAutorizacion, MessageBoxButton.OK, MessageImage.Error);
            }
        }
Exemple #13
0
 /// <summary>
 /// Obtiene una Lista de Costos por Organizacion
 /// </summary>
 /// <param name="inicio"></param>
 /// <param name="limite"></param>
 private void ObtenerUsuarios(int inicio, int limite)
 {
     try
     {
         if (ucPaginacion.ContextoAnterior != null)
         {
             bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior);
             if (!contextosIguales)
             {
                 ucPaginacion.Inicio = 1;
                 inicio = 1;
             }
         }
         var costoOrganizacionPL = new UsuarioPL();
         var pagina = new PaginacionInfo {
             Inicio = inicio, Limite = limite
         };
         ResultadoInfo <UsuarioInfo> resultadoInfo = costoOrganizacionPL.ObtenerPorPagina(pagina, Contexto);
         if (resultadoInfo != null && resultadoInfo.Lista != null &&
             resultadoInfo.Lista.Count > 0)
         {
             gridDatos.ItemsSource       = resultadoInfo.Lista;
             ucPaginacion.TotalRegistros = resultadoInfo.TotalRegistros;
         }
         else
         {
             ucPaginacion.TotalRegistros = 0;
             ucPaginacion.AsignarValoresIniciales();
             gridDatos.ItemsSource = new List <UsuarioInfo>();
         }
     }
     catch (ExcepcionGenerica)
     {
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                           Properties.Resources.Usuario_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                           Properties.Resources.Usuario_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error);
     }
 }
        public static bool ValidaRolUsuario()
        {
            var resultado = false;

            try
            {
                var         usuarioPL = new UsuarioPL();
                UsuarioInfo usuario   = usuarioPL.ObtenerSupervisorID(Usuario.UsuarioID);
                if (usuario != null && usuario.Operador != null && usuario.Operador.Rol != null)
                {
                    resultado = (usuario.Operador.Rol.RolID == Roles.Autorizador.GetHashCode());
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(resultado);
        }
Exemple #15
0
        /// <summary>
        /// Metodo que obtiene las incidencias de la organizacion del usuario
        /// </summary>
        /// <param></param>
        /// <returns>List IncidenciasInfo</returns>
        public static List <IncidenciasInfo> ObtenerIncidenciasDeOrganizacion()
        {
            List <IncidenciasInfo> incidencias = null;
            var seguridad      = HttpContext.Current.Session["Seguridad"] as SeguridadInfo;
            int organizacionId = 0;

            if (seguridad != null)
            {
                organizacionId = seguridad.Usuario.Organizacion.OrganizacionID;
                var usuarioPL          = new UsuarioPL();
                var usuario            = usuarioPL.ObtenerNivelAlertaPorUsuarioID(seguridad.Usuario.UsuarioID);
                var nivelAlertaUsuario = usuario.Operador.Rol.NivelAlerta.NivelAlertaId;
                var usuarioCorporativo = usuario.Corporativo;
                var incidenciasPL      = new IncidenciasPL();
                incidencias = incidenciasPL.ObtenerIncidenciasPorOrganizacionID(organizacionId, usuarioCorporativo);
                incidencias =
                    incidencias.Where(x => x.NivelAlerta.NivelAlertaId <= nivelAlertaUsuario).ToList();
            }
            return(incidencias);
        }
Exemple #16
0
        /// <summary>
        /// Este método obtiene el listado de usuarios a los que se enviarán correos
        /// </summary>
        /// <param name="clave">Roles concatenados, obtenidos desde la tabla ParametrosGenerales</param>
        /// <returns>Listado de usuarios</returns>
        public static List <UsuarioInfo> ObtenerCorreos(string clave)
        {
            var correos          = new List <UsuarioInfo>();
            var parametroPL      = new ParametroGeneralPL();
            var parametroGeneral = new ParametroGeneralInfo();
            var usuarioPL        = new UsuarioPL();
            var roles            = new List <int>();

            try
            {
                parametroGeneral = parametroPL.ObtenerPorClaveParametro(clave);
                roles            = parametroGeneral.Valor.Split(',').Select(int.Parse).ToList();

                correos = usuarioPL.ObtenerCorreos(roles);
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                throw;
            }

            return(correos);
        }
        /// <summary>
        /// Metodo que filtra las incidencias de la organizacion por modulo, alerta y estatus seleccionados.
        /// </summary>
        /// <param>moduloID</param>
        /// <param>alertaID</param>
        /// <param>estatusID</param>
        /// <returns>List ListaFiltrada</returns>
        private static IEnumerable <IncidenciasInfo> ListaFiltrada(int moduloID, int alertaID, int estatusID)
        {
            List <IncidenciasInfo>        listaCompleta = lista.ListaIncidenciasEnModulo;
            IEnumerable <IncidenciasInfo> listaFiltrada = null;

            if (listaCompleta != null)
            {
                if (listaCompleta.Any())
                {
                    var seguridad = HttpContext.Current.Session["Seguridad"] as SeguridadInfo;
                    if (seguridad != null)
                    {
                        var usuarioPL          = new UsuarioPL();
                        var usuario            = usuarioPL.ObtenerNivelAlertaPorUsuarioID(seguridad.Usuario.UsuarioID);
                        var nivelAlertaUsuario = usuario.Operador.Rol.NivelAlerta.NivelAlertaId;
                        listaFiltrada = listaCompleta.Where(mod => mod.Alerta.Modulo.ModuloID == moduloID &&
                                                            mod.Alerta.AlertaID == alertaID &&
                                                            mod.Estatus.EstatusId == estatusID &&
                                                            mod.Alerta.ConfiguracionAlerta.NivelAlerta.NivelAlertaId <= nivelAlertaUsuario);
                    }
                }
            }
            return(listaFiltrada);
        }
Exemple #18
0
        /// <summary>
        /// Método con el cual se valida el folio del ticket ingresado
        /// </summary>
        private bool ValidarFolioTicket()
        {
            if (txtFolioTicket.Text.Trim() != "")
            {
                var        venta        = new VentaGanadoPL();
                var        ventadetalle = new VentaGanadoDetallePL();
                var        usuarioPl    = new UsuarioPL();
                TicketInfo Ticket       = new TicketInfo();

                Ticket.FolioTicket = int.Parse(txtFolioTicket.Text.Trim());
                if ((string)cmbTipo.SelectedItem == Properties.Resources.SalidaIndividualDeGanado_cmbTipoExterno)
                {
                    Ticket.TipoVenta = TipoVentaEnum.Externo;
                }
                else
                {
                    Ticket.TipoVenta = TipoVentaEnum.Propio;
                }

                listaAretes.Items.Clear();
                skAyudaCliente.LimpiarCampos();

                Ticket.Organizacion = AuxConfiguracion.ObtenerOrganizacionUsuario();
                VentaGanadoInfo ganado = venta.ObtenerVentaGanadoPorTicket(Ticket);
                if (ganado != null)
                {
                    UsuarioInfo usuarioSubioGanado = usuarioPl.ObtenerPorID(ganado.UsuarioModificacionID);
                    var         clientePl          = new ClientePL();
                    var         cliente            = new ClienteInfo {
                        ClienteID = ganado.ClienteID, CodigoSAP = ganado.CodigoSAP
                    };
                    cliente = clientePl.ObtenerClientePorCliente(cliente);
                    skAyudaCliente.Clave       = cliente.CodigoSAP;
                    skAyudaCliente.Descripcion = cliente.Descripcion;
                    skAyudaCliente.Info        = cliente;
                    txtCorral.Text             = ganado.CodigoCorral;

                    var pesoTara = decimal.Parse(ganado.PesoTara.ToString(CultureInfo.InvariantCulture).Replace(".00", "").Replace(",00", ""));
                    txtPesoTara.Text = pesoTara.ToString(CultureInfo.CurrentCulture);

                    txtPesoTara.IsEnabled    = false;
                    txtFolioTicket.IsEnabled = false;
                    if (!basculaConectada)
                    {
                        txtPesoBruto.IsEnabled = true;
                    }
                    skAyudaCliente.IsEnabled = false;
                    _pesoTomado = false;
                    ObtenerPesoBascula();

                    List <VentaGanadoDetalleInfo> detalle = ventadetalle.ObtenerVentaGanadoPorTicket(ganado.VentaGanadoID);
                    if (Ticket.TipoVenta == TipoVentaEnum.Propio)
                    {
                        if (detalle != null)
                        {
                            if (detalle.Count > 0)
                            {
                                lblTotalCabezas.IsEnabled        = true;
                                lblNumeroTotalCabezas.IsEnabled  = true;
                                lblNumeroTotalCabezas.Content    = detalle.Count.ToString();
                                lblNumeroTotalCabezas.Visibility = Visibility.Visible;
                                lblTotalCabezas.Visibility       = Visibility.Visible;
                            }

                            listaAretes.Visibility = Visibility.Visible;
                            cmbTipo.IsEnabled      = false;
                            cmbTipo.SelectedIndex  = 0;

                            foreach (VentaGanadoDetalleInfo ventaGanadoDetalleInfo in detalle)
                            {
                                listaAretes.Items.Add(ventaGanadoDetalleInfo);
                            }
                            nombreUsuarioSubioGanado = usuarioSubioGanado.Nombre;
                        }
                        else
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.SalidaIndividualGanado_MensajeTicketNoTieneAretes,
                                              MessageBoxButton.OK, MessageImage.Warning);
                            Limpiar();

                            return(false);
                        }
                    }
                    else
                    {
                        if (ganado.TotalCabezas > 0)
                        {
                            cmbTipo.SelectedIndex  = 1;
                            cmbTipo.IsEnabled      = false;
                            listaAretes.Visibility = Visibility.Hidden;

                            lblTotalCabezas.IsEnabled        = true;
                            lblNumeroTotalCabezas.IsEnabled  = true;
                            lblNumeroTotalCabezas.Content    = ganado.TotalCabezas.ToString();
                            lblNumeroTotalCabezas.Visibility = Visibility.Visible;
                            lblTotalCabezas.Visibility       = Visibility.Visible;

                            nombreUsuarioSubioGanado = usuarioSubioGanado.Nombre;
                        }
                        else
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.SalidaIndividualGanado_MensajeTicketNoTieneAretes,
                                              MessageBoxButton.OK, MessageImage.Warning);
                            Limpiar();

                            return(false);
                        }
                    }
                }
                else
                {
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.SalidaIndividualGanado_MensajeFolioTicketInvalido,
                                      MessageBoxButton.OK, MessageImage.Warning);
                    Limpiar();
                    return(false);
                }
            }
            return(true);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //Se obtiene el moduloID, alertaID y estatusID mediante POST
            var moduloID  = Convert.ToInt32(Request["moduloID"]);
            var alertaID  = Convert.ToInt32(Request["alertaID"]);
            var estatusID = Convert.ToInt32(Request["estatusID"]);

            //Obtenemos info del usuario por el logueado
            usuarioSeguridad = HttpContext.Current.Session["Seguridad"] as SeguridadInfo;
            //Se filtran las incidencias de la organizacion por estos parametros para mostrar en tabla
            listaFiltrada = ListaFiltrada(moduloID, alertaID, estatusID);
            var lista = new List <AlertaAccionInfo>();

            //Se obtienen las acciones configuradas para la alerta y las agrega al Dropdown de acciones.
            lista = ObtenerAccionesporAlertaID(alertaID);
            if (lista != null)
            {
                if (lista.Any())
                {
                    foreach (var objeto in lista)
                    {
                        ListItem item = new ListItem();
                        item.Text  = objeto.Descripcion;
                        item.Value = objeto.AccionId.ToString();
                        DropDownAcciones.Items.Add(item);
                    }
                }
            }
            if (usuarioSeguridad != null)
            {
                var usuarioPL = new UsuarioPL();
                //Obtiene el nivel del usuario para visualizar alertas.
                var usuario         = usuarioPL.ObtenerNivelAlertaPorUsuarioID(usuarioSeguridad.Usuario.UsuarioID);
                var estatusPosteado = Convert.ToInt32(Request["estatusID"]);
                if (listaFiltrada != null)
                {
                    var firstOrDefault     = listaFiltrada.FirstOrDefault();
                    var listafiltradaNivel =
                        listaFiltrada.Where(
                            n => n.NivelAlerta.NivelAlertaId == usuario.Operador.Rol.NivelAlerta.NivelAlertaId);
                    if (firstOrDefault != null)
                    {
                        //Obtiene los niveles de alerta configurados, actuales y de usuario para mostrar controles dependiendo
                        var nivelAlertaConfigurado = firstOrDefault.Alerta.ConfiguracionAlerta.NivelAlerta.NivelAlertaId;
                        nivelAlertaUsuario = usuario.Operador.Rol.NivelAlerta.NivelAlertaId;
                        var nivelAlertaActual = firstOrDefault.NivelAlerta.NivelAlertaId;
                        hiddenNivelAlertaID.Value      = nivelAlertaActual.ToString();
                        hiddenNivelAlertaUsuario.Value = nivelAlertaUsuario.ToString();
                        hiddenModuloID.Value           = firstOrDefault.Alerta.Modulo.ModuloID.ToString();
                        hiddenAlertaID.Value           = firstOrDefault.Alerta.AlertaID.ToString();
                        HiddenUsuarioID.Value          = usuarioSeguridad.Usuario.UsuarioID.ToString();
                        if (Estatus.RechaAlert.GetHashCode() == estatusID)
                        {
                            hiddenEsRechazado.Value = "1";
                        }
                        if (Estatus.NuevaAlert.GetHashCode() == estatusID)
                        {
                            hiddenEsNuevo.Value = "1";
                        }
                        if (Estatus.RegisAlert.GetHashCode() == estatusID)
                        {
                            hiddenEsRegistrado.Value = "1";
                        }
                        if (Estatus.VenciAlert.GetHashCode() == estatusID)
                        {
                            hiddenEsVencida.Value = "1";
                        }
                        hiddenEstatusAnteriorID.Value      = firstOrDefault.Estatus.EstatusId.ToString();
                        HiddenNivelAlertaConfigurado.Value = nivelAlertaConfigurado.ToString();

                        LimpiarCampos();

                        btnGuardar.Visible  = true;
                        btnCancelar.Visible = true;
                        btnGuardar.Enabled  = false;
                        btnCancelar.Enabled = false;
                        if (nivelAlertaActual < nivelAlertaUsuario)
                        {
                            btnGuardar.Text                = GetLocalResourceObject("Codebehind.btnGuardarText").ToString();
                            btnCancelar.Text               = GetLocalResourceObject("Codebehind.btnCancelarText").ToString();
                            DropDownAcciones.Enabled       = false;
                            TextAreaComentarios.Enabled    = false;
                            fechaRequerido.Visible         = true;
                            accionRequerido.Visible        = true;
                            horaRequerido.Visible          = true;
                            textHistorico.Visible          = true;
                            PanelControlesAcciones.Visible = true;
                        }
                        else if (nivelAlertaConfigurado == nivelAlertaUsuario && Estatus.RechaAlert.GetHashCode() == estatusPosteado)
                        {
                            btnGuardar.Text  = GetLocalResourceObject("Codebehind.btnGuardarText").ToString();
                            btnCancelar.Text = GetLocalResourceObject("Codebehind.btnCancelarText").ToString();
                            PanelControlesAcciones.Visible = true;
                            Label5.Visible              = true;
                            DropDownAcciones.Enabled    = false;
                            TextAreaComentarios.Enabled = false;
                            textHistorico.Visible       = true;
                            fechaRequerido.Visible      = true;
                            accionRequerido.Visible     = true;
                            horaRequerido.Visible       = true;
                        }
                        //Si el nivel actual es menor al nivel de usuario y se realizó POST con estatus Registrado o Vencido
                        //Muestra los controles para visualizar historico
                        else if (nivelAlertaActual < nivelAlertaUsuario && Estatus.NuevaAlert.GetHashCode() == estatusPosteado)
                        {
                            PanelControlesAcciones.Visible = true;
                            DropDownAcciones.Enabled       = false;
                            panelComentarios.Visible       = false;
                            textHistorico.Visible          = true;
                            TextAreaComentarios.Enabled    = false;
                            btnGuardar.Enabled             = false;
                            btnGuardar.Text     = GetLocalResourceObject("Codebehind.btnGuardarText").ToString();
                            btnCancelar.Enabled = false;
                            btnCancelar.Text    = GetLocalResourceObject("Codebehind.btnCancelarText").ToString();
                        }
                        //Si el nivel actual es mayor al nivel de usuario y se realizó POST con estatus Registrado o Vencido
                        //Muestra los controles para visualizar historico
                        else if (nivelAlertaActual > nivelAlertaUsuario && Estatus.RegisAlert.GetHashCode() == estatusPosteado)
                        {
                            PanelControlesAcciones.Visible = true;
                            DropDownAcciones.Enabled       = false;
                            panelComentarios.Visible       = false;
                            textHistorico.Visible          = true;
                            TextAreaComentarios.Enabled    = false;
                            btnGuardar.Enabled             = false;
                            btnGuardar.Text     = GetLocalResourceObject("Codebehind.btnGuardarText").ToString();
                            btnCancelar.Enabled = false;
                            btnCancelar.Text    = GetLocalResourceObject("Codebehind.btnCancelarText").ToString();
                        }
                        //Si el nivel configurado es menor al nivel de alerta de usuario y se realizó POST con estatus Registrado o Vencido
                        //Muestra los controles para autorizar o rechazar
                        else if (nivelAlertaConfigurado < nivelAlertaUsuario && Estatus.RegisAlert.GetHashCode() == estatusPosteado)
                        {
                            btnGuardar.Text  = GetLocalResourceObject("Codebehind.btnAutorizarText").ToString();
                            btnGuardar.ID    = "btnAutorizar";
                            btnCancelar.ID   = "btnRechazar";
                            btnGuardar.Text  = GetLocalResourceObject("Codebehind.btnAutorizarText").ToString();
                            btnCancelar.Text = GetLocalResourceObject("Codebehind.btnRechazarText").ToString();
                        }
                        else if (nivelAlertaActual == nivelAlertaUsuario)
                        {
                            if (nivelAlertaConfigurado == nivelAlertaUsuario)
                            {
                                btnGuardar.Text  = GetLocalResourceObject("Codebehind.btnGuardarText").ToString();
                                btnCancelar.Text = GetLocalResourceObject("Codebehind.btnCancelarText").ToString();
                            }
                            else
                            {
                                btnGuardar.ID    = "btnAutorizar";
                                btnCancelar.ID   = "btnRechazar";
                                btnGuardar.Text  = GetLocalResourceObject("Codebehind.btnAutorizarText").ToString();
                                btnCancelar.Text = GetLocalResourceObject("Codebehind.btnRechazarText").ToString();
                            }
                        }
                    }
                    //Si no hay mas objetos en la lista de incidencias muestra el texto de no hay mas registros
                    else
                    {
                        PanelNoRegistros.Visible = true;
                    }
                }
            }
        }