/// <summary>
        /// Método que se realizara al inicializar el UI de editar
        /// </summary>
        public void RealizarPrimeraCarga()
        {
            try {
                if (this.vista.ObtenerPaqueteNavegacion("ConfiguracionDescuentoBO") == null)
                {
                    throw new Exception("Se esperaba Datos de Navegación");
                }
                if (!(this.vista.ObtenerPaqueteNavegacion("ConfiguracionDescuentoBO") is ConfiguracionDescuentoBO))
                {
                    throw new Exception("Se esperaba un objeto de ConfiguracionDescuentoBO");
                }

                ConfiguracionDescuentoBO configuracionDescuento = (ConfiguracionDescuentoBO)this.vista.ObtenerPaqueteNavegacion("ConfiguracionDescuentoBO");
                // Agarramos los valores que enviaremos a la consulta
                ConfiguracionDescuentoBO configuracionDescuentoEditar = new ConfiguracionDescuentoBO();
                configuracionDescuentoEditar.Cliente = new CuentaClienteIdealeaseBO()
                {
                    Id = configuracionDescuento.Cliente.Id
                };
                configuracionDescuentoEditar.ContactoComercial = configuracionDescuento.ContactoComercial;

                List <ConfiguracionDescuentoBO> lst = new List <ConfiguracionDescuentoBO>();
                this.configuracionDescuentoBR = new ConfiguracionDescuentoPSLBR();
                //Obtenemos una lista con las filas que tengan el mismo cliente y contacto comercial
                lst = configuracionDescuentoBR.Consultar(dctx, configuracionDescuentoEditar).ConvertAll(s => (ConfiguracionDescuentoBO)s);

                this.vista.LimpiarSesiones();
                this.EstablecerSeguridad();
                this.EstablecerDatosaUC(this.ObtenerListaClonada(lst));
            } catch (Exception ex) {
                throw new Exception(this.nombreClase + ".RealizarPrimeraCarga: " + ex.Message);
            }
        }
        /// <summary>
        /// Realiza la consulta a la tabla configuracionDescuetos
        /// </summary>
        /// <returns>Lista de los resultados de la consulta</returns>
        public List <ConfiguracionDescuentoBO> ConsultarDescuentoUsuario()
        {
            try {
                ConfiguracionDescuentoBO bo = (ConfiguracionDescuentoBO)this.InterfazUsuarioADato();

                List <ConfiguracionDescuentoBO> lst = controlador.Consultar(dctx, bo).ConvertAll(s => (ConfiguracionDescuentoBO)s);

                return(lst);
            } catch (Exception ex) {
                throw new Exception(this.nombreClase + ".Consultar:" + ex.Message);
            }
        }
        /// <summary>
        /// Obtiene el valor a mostrar en la etiqueta máximo descuento
        /// </summary>
        public void PrepararDescuentoMaximo()
        {
            try {
                dataContext.SetCurrentProvider("Outsourcing");
                ConfiguracionDescuentoBO descuentoBO = new ConfiguracionDescuentoBO();
                descuentoBO.Cliente = new CuentaClienteIdealeaseBO {
                    Id = this.vista.CuentaClienteID
                };
                descuentoBO.Sucursal = new SucursalBO {
                    Id = this.vista.SucursalID, UnidadOperativa = new UnidadOperativaBO {
                        Id = this.vista.UnidadOperativaID
                    }
                };
                descuentoBO.UnidadOperativa = new UnidadOperativaBO {
                    Id = this.vista.UnidadOperativaID
                };
                descuentoBO.Estado      = true;
                descuentoBO.FechaInicio = DateTime.Now;
                ConfiguracionDescuentoPSLBR descuentoBR = new ConfiguracionDescuentoPSLBR();
                var descuentos = descuentoBR.Consultar(this.dataContext, descuentoBO);

                //Asignamos el % de descuento máximo a la propiedad equivalente en el modal
                //Con la intención de que previamente se haya autorizado un descuento
                decimal descuento = this.vista.TarifaPersonalizadaDescuentoMax.GetValueOrDefault();
                this.vista.TarifaPersonalizadaDescuentoMax = descuento;
                if (descuentos.Any())
                {
                    //Si el descuento anterior es menor al actual, el valor del descuento del modal se sobreescribe.
                    if (descuento < descuentos.First().DescuentoMaximo.GetValueOrDefault())
                    {
                        descuento = descuentos.First().DescuentoMaximo.GetValueOrDefault();
                        this.vista.TarifaPersonalizadaDescuentoMax = descuento;
                    }
                }
                if (descuento > 0)
                {
                    this.vista.TarifaPersonalizadaEtiqueta = "El cliente tiene autorizado hasta un " + this.vista.TarifaPersonalizadaDescuentoMax.GetValueOrDefault().ToString("0.##") + "% de descuento";
                }
            } catch (Exception ex) {
                throw new Exception(this.nombreClase + ".PrepararDescuentoMaximo: " + ex.Message);
            }
        }
        /// <summary>
        /// Método que se realizara al inicializar el UI de detalle
        /// </summary>
        public void RealizarPrimeraCarga()
        {
            try {
                if (this.vista.ObtenerDatosNavegacion() == null)
                {
                    throw new Exception("Se esperaba Datos de Navegación");
                }
                if (!(this.vista.ObtenerDatosNavegacion() is ConfiguracionDescuentoBO))
                {
                    throw new Exception("Se esperaba un objeto de ConfiguracionDescuentoBO");
                }

                ConfiguracionDescuentoBO configuracionDescuento = (ConfiguracionDescuentoBO)this.vista.ObtenerDatosNavegacion();
                // Agarramos los valores que enviaremos a la consulta
                ConfiguracionDescuentoBO configuracionDescuentoDetalle = new ConfiguracionDescuentoBO();
                configuracionDescuentoDetalle.Cliente = new CuentaClienteIdealeaseBO()
                {
                    Id = configuracionDescuento.Cliente.Id
                };
                configuracionDescuentoDetalle.ContactoComercial = configuracionDescuento.ContactoComercial;

                List <ConfiguracionDescuentoBO> lst = new List <ConfiguracionDescuentoBO>();
                this.configuracionDescuentoBR = new ConfiguracionDescuentoPSLBR();
                //Obtenemos una lista con las filas que tengan el mismo cliente y contacto comercial
                lst = configuracionDescuentoBR.Consultar(dctx, configuracionDescuentoDetalle).ConvertAll(s => (ConfiguracionDescuentoBO)s);
                //pasamos los valores a la tabla
                this.vista.Resultado = lst;
                this.vista.ActualizarResultado();

                //Pasamos a la interfaz de usuario el BO de descuentos
                this.DatoAInterfazUsuario(configuracionDescuento);
                this.vista.LimpiarSesion();
                this.EstablecerSeguridad();
            } catch (Exception ex) {
                this.MostrarMensaje("Inconsistencias al momento de obtener los datos de Configuración descuento", ETipoMensajeIU.ERROR, nombreClase + ".RealizarPrimeraCarga:" + ex.Message);
                DatoAInterfazUsuario(new ConfiguracionDescuentoBO());
                this.vista.PermitirEditar(false);
            }
        }
示例#5
0
        /// <summary>
        /// Realiza la búsqueda al la tabla ConfiguraciónDescuentos
        /// </summary>
        public void Consultar()
        {
            try {
                CargarSucursalesAutorizadas();
                ConfiguracionDescuentoBO bo = (ConfiguracionDescuentoBO)this.InterfazUsuarioADato();
                //bo.Sucursal = null;

                List <ConfiguracionDescuentoBO> lst = controlador.Consultar(dataContext, bo).ConvertAll(s => (ConfiguracionDescuentoBO)s);


                this.vista.Resultado = lst;
                this.vista.ActualizarResultado();

                if (lst.Count < 1)
                {
                    this.vista.MostrarMensaje("La búsqueda no produjo resultados", ETipoMensajeIU.INFORMACION,
                                              "No se encontraron coincidencias con los criterios ingresados. Verifique sus datos");
                }
            } catch (Exception ex) {
                throw new Exception(this.nombreClase + ".Consultar:" + ex.Message);
            }
        }