Пример #1
0
        private void ValidarValorDeclarado()
        {
            admGuiaO.AgenteGuiaPagoID = NegociosSisPackInterface.SisPack.TipoAgenteGuia.Remitente;
            admGuiaO.UnidadVentaID    = Utiles.Validaciones.obtieneEntero(Request.Form[ddlUnidadVenta.UniqueID]);
            int resultado = admGuiaO.VerificarValorDeclaradoCorp();

            if (resultado == -1) //si devuelve false el metodo, es porque está fuera de los parametros
            {
                throw new Exception(this.TraducirTexto("Errores.Invalidos.ValorDeclaradoIncorrecto"));
            }
            // este else es por las dudas que no tenga convenio ese cliente para esa uventa, entonces
            // revisa que esté dentro de los parametros generales
            else if (resultado == 1)
            {
                //Valor declarado ingresado
                double valor = this.txtValorDeclarado.Text == "" ? 0 : Convert.ToDouble(this.txtValorDeclarado.Text);

                /*SFE: Validar si la el valor declarado se encuentra en el rango del definido por Unidad Venta, sino usar el definido como parametro general*/
                // Busco la Unidad de Venta y consulto si tiene definido un valor declarado máximo y mínimo
                int          uniVenta = admGuiaO.UnidadVentaID;
                IUnidadVenta uVenta   = UnidadVentaFactory.GetUnidadVenta();
                uVenta.UnidadVentaID = uniVenta;
                uVenta.Consultar();

                if (uVenta.ValorDeclaradoMinimo != 0 && uVenta.ValorDeclaradoMaximo != 0) //tiene definido un valor declarado, usarlos
                {
                    if ((valor < uVenta.ValorDeclaradoMinimo || valor > uVenta.ValorDeclaradoMaximo) && (Utiles.Validaciones.obtieneEntero(this.txtValorDeclarado.Text) <= 0))
                    {
                        throw new Exception(this.TraducirTexto("Errores.Invalidos.ValorDeclaradoIncorrecto"));
                    }
                }
                else // si no esta definido a nivel de Unidad de Venta tengo que utilzar el de parámetro general
                {
                    /*SFE: Esto estaba originalmente*/
                    IParametroUNegocio paramMin = ParametroUNegocioFactory.GetParametroUNegocio();
                    paramMin.UnidadNegocioID = this.UnidadNegocioID;
                    paramMin.Parametro       = NegociosSisPackInterface.SisPack.Parametro.ValorDeclaradoMinimo;
                    paramMin.Consultar();
                    double valorMin = Convert.ToDouble(paramMin.ValorString);

                    IParametroUNegocio paramMax = ParametroUNegocioFactory.GetParametroUNegocio();
                    paramMax.UnidadNegocioID = this.UnidadNegocioID;
                    paramMax.Parametro       = NegociosSisPackInterface.SisPack.Parametro.ValorDeclaradoMaximo;
                    paramMax.Consultar();
                    double valorMax = Convert.ToDouble(paramMax.ValorString);

                    if ((valor < valorMin || valor > valorMax) && (Utiles.Validaciones.obtieneEntero(this.txtValorDeclarado.Text) <= 0))
                    {
                        throw new Exception(this.TraducirTexto("Errores.Invalidos.ValorDeclaradoIncorrecto"));
                    }
                }
            }
        }