Пример #1
0
        /// <summary>
        /// Metodo que valida los datos para guardar
        /// </summary>
        /// <returns></returns>
        private bool ValidaGuardar()
        {
            bool   resultado = true;
            string mensaje   = string.Empty;

            try
            {
                if (string.IsNullOrWhiteSpace(txtDescripcion.Text) || Contexto.Descripcion == string.Empty)
                {
                    resultado = false;
                    mensaje   = Properties.Resources.ParametroEdicion_MsgDescripcionRequerida;
                    txtDescripcion.Focus();
                }
                else if (cmbTipoParametro.SelectedItem == null || Contexto.TipoParametro.TipoParametroID == 0)
                {
                    resultado = false;
                    mensaje   = Properties.Resources.ParametroEdicion_MsgTipoParametroIDRequerida;
                    cmbTipoParametro.Focus();
                }
                else if (string.IsNullOrWhiteSpace(txtClave.Text) || Contexto.Clave == string.Empty)
                {
                    resultado = false;
                    mensaje   = Properties.Resources.ParametroEdicion_MsgClaveRequerida;
                    txtClave.Focus();
                }
                else
                {
                    int    parametroId = Extensor.ValorEntero(txtParametroID.Text);
                    string descripcion = txtDescripcion.Text.Trim();

                    var           parametroPL = new ParametroPL();
                    ParametroInfo parametro   = parametroPL.ObtenerPorDescripcion(descripcion);

                    if (parametro != null && (parametroId == 0 || parametroId != parametro.ParametroID))
                    {
                        resultado = false;
                        mensaje   = string.Format(Properties.Resources.ParametroEdicion_MsgDescripcionExistente, parametro.ParametroID);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
            }

            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning);
            }
            return(resultado);
        }
        /// <summary>
        /// Carga el comboBox de los corrales segun la organizacion del usuario que se logueo
        /// </summary>
        void CargarCorralesComboBox()
        {
            //cbCorrales.Items.Clear();
            InicializaContexto();
            //Contexto = new SalidaPorMuerteEnTransitoInfo {OrganizacionID = Contexto.OrganizacionID};
            corrales = CorralBL.ObtenerCorralesPorOrganizacionID(Contexto.OrganizacionID);

            //cargar combobox de corrales
            if (corrales.Count == 0) //en caso de no encontrarse ningun corral
            {
                //verificar si el parametroID de la tabla de organizacion del usuario logueado este registrado en la tabla parametros
                //SP: Parametro_ObtenerPorDescripcion con la descripcion; 'Corral para faltantes de compra directa' / 'Corral para faltantes de origen propio'

                //verificar que exista la configuracion del parametro corral  de faltantes para la organizacion
                //:SP ParametroOrganizacion_ObtenerPorParametroOrganizacionID ; con OrganizacionID del usuario logueado, ParametroID que corresponda al parametro de la primera validacion

                //verificar que el corral tenga un lote activo (en caso de no hallar corrales)
                //LoteBL.ObtenerActivosPorCorral(AuxConfiguracion.ObtenerOrganizacionUsuarioID, int corralID);

                var           parametroPl = new ParametroPL();
                ParametroInfo parametroFaltantesCompraDirecta = parametroPl.ObtenerPorDescripcion(
                    Properties.Resources.SalidaGanadoTransito_Parametro_Faltantes_Compra_Directa);

                ParametroInfo parametroFaltantesOrigenPropio = parametroPl.ObtenerPorDescripcion(
                    Properties.Resources.SalidaGanadoTransito_Parametro_Faltantes_Origen_Propio);

                if ((parametroFaltantesCompraDirecta != null &&
                     parametroFaltantesCompraDirecta.Activo == EstatusEnum.Activo) ||
                    (parametroFaltantesOrigenPropio != null &&
                     parametroFaltantesOrigenPropio.Activo == EstatusEnum.Activo))
                {
                    var parametroOrganizacionPl = new ParametroOrganizacionPL();
                    var parOrganizacionFaltantesCompraDirecta =
                        new ParametroOrganizacionInfo
                    {
                        Organizacion = new OrganizacionInfo(),
                        Parametro    = new ParametroInfo()
                    };
                    parOrganizacionFaltantesCompraDirecta.Organizacion.OrganizacionID = Contexto.OrganizacionID;
                    if (parametroFaltantesCompraDirecta != null)
                    {
                        parOrganizacionFaltantesCompraDirecta.Parametro.ParametroID =
                            parametroFaltantesCompraDirecta.ParametroID;
                    }
                    parOrganizacionFaltantesCompraDirecta =
                        parametroOrganizacionPl.ObtenerPorParametroOrganizacionID(
                            parOrganizacionFaltantesCompraDirecta);

                    var parOrganizacionFaltantesOrigenPropio =
                        new ParametroOrganizacionInfo
                    {
                        Organizacion = new OrganizacionInfo(),
                        Parametro    = new ParametroInfo()
                    };
                    parOrganizacionFaltantesOrigenPropio.Organizacion.OrganizacionID = Contexto.OrganizacionID;
                    parOrganizacionFaltantesOrigenPropio.Parametro.ParametroID       =
                        parametroFaltantesOrigenPropio.ParametroID;
                    parOrganizacionFaltantesOrigenPropio =
                        parametroOrganizacionPl.ObtenerPorParametroOrganizacionID(
                            parOrganizacionFaltantesOrigenPropio);

                    if (parOrganizacionFaltantesCompraDirecta == null || parOrganizacionFaltantesOrigenPropio == null)
                    {
                        SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                          Properties.Resources.SalidaGanadoTransito_MsgConfiguracionCorralNoExiste,
                                          MessageBoxButton.OK, MessageImage.Warning);
                        BloquearPantalla();
                    }
                    else
                    {
                        if (!parOrganizacionFaltantesCompraDirecta.Activo.ValorBooleanoDesdeEnum() && !parOrganizacionFaltantesOrigenPropio.Activo.ValorBooleanoDesdeEnum())
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.SalidaGanadoTransito_MsgConfiguracionCorralNoExiste,
                                              MessageBoxButton.OK, MessageImage.Warning);
                            BloquearPantalla();
                        }
                        else
                        {
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.SalidaGanadoTransito_MsgCorralActivoNoEncontrado,
                                              MessageBoxButton.OK, MessageImage.Warning);
                            BloquearPantalla();
                        }
                    }
                }
                else
                {
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.SalidaGanadoTransito_MsgParametroCorralNoExiste, MessageBoxButton.OK,
                                      MessageImage.Warning);
                    BloquearPantalla();
                    cbCorrales.IsEnabled = true;
                }
            }
            var seleccione = new CorralesPorOrganizacionInfo
            {
                CorralID    = 0,
                Descripcion = "Seleccione"
            };

            corrales.Insert(0, seleccione);
            cbCorrales.ItemsSource   = new List <CorralesPorOrganizacionInfo>();
            cbCorrales.ItemsSource   = corrales;
            cbCorrales.SelectedValue = 0;
        }