예제 #1
0
        private void CompletaTxtCuotas(short minC, short maxC)
        {
            string txt = "";

            txt           = minC.ToString() + " - " + maxC.ToString();
            txtCuota.Text = String.Format(txt, ConfiguracionRepository.ObtenerConfiguracion().CicloLectivo);
        }
        public frmAsignarAlumnosACursos()
        {
            InitializeComponent();
            cbCarreras.DataSource    = CarrerasRepository.ObtenerCarreras().OrderBy(c => c.Nombre).ToList();
            cbCarreras.DisplayMember = "Nombre";
            cbCarreras.ValueMember   = "Id";

            lblCicloLectivo.Text = String.Format("Ciclo Lectivo {0:n0}", ConfiguracionRepository.ObtenerConfiguracion().CicloLectivo);

            txtBuscar.ForeColor   = SystemColors.GrayText;
            txtBuscar.Text        = _leyenda;
            this.txtBuscar.Leave += new System.EventHandler(this.textBox1_Leave);
            this.txtBuscar.Enter += new System.EventHandler(this.textBox1_Enter);
        }
예제 #3
0
        public frmConfiguración()
        {
            InitializeComponent();
            var conf = ConfiguracionRepository.ObtenerConfiguracion();

            txtDescPagoTérmino.DecValue    = (decimal)conf.DescuentoPagoTermino;
            txtInterésPorMora.DecValue     = (decimal)conf.InteresPorMora;
            txtCicloLectivo.IntValue       = conf.CicloLectivo;
            txtDiasVtoPagoTermino.IntValue = conf.DiasVtoPagoTermino ?? 0;
            txtEndpointAddress.Text        = conf.EndpointAddress;
            this.Text = "Configuración general";
            txtDescPagoTérmino.Select();
            _validator = new FormValidations(this, errorProvider1);
        }
예제 #4
0
 private void btnAceptar_Click(object sender, EventArgs e)
 {
     this.DialogResult = DialogResult.None;
     if (this.ValidarDatos())
     {
         try
         {
             ConfiguracionRepository.Actualizar(DescuentoPagoATérmino, InterésPorMora,
                                                CicloLectivo, DíasVtoPagoTermino, EndpointAddress);
             DialogResult = DialogResult.OK;
         }
         catch (Exception ex)
         {
             ShowError("Error al intentar grabar los datos: \n" + ex.Message);
         }
     }
 }
예제 #5
0
        private bool ActualizarWeb()
        {
            var binding = new BasicHttpBinding();
            var address = new EndpointAddress(ConfiguracionRepository.ObtenerConfiguracion().EndpointAddress);
            var cliente = new ConsultasWeb.SMPSoapClient(binding, address);

            try
            {
                cliente.ActualizarTasasMora(new WebRepository().ObtenerTasasMora());
                return(true);
            }
            catch (Exception ex)
            {
                var msg = "No se pudieron actualizar las tasas en la web: \n" + ex.Message;
                msg += "\n\n" + "¿Desea cerrar de todos modos el formulario?";
                return(MessageBox.Show(msg, "Error", MessageBoxButtons.YesNo,
                                       MessageBoxIcon.Error) == DialogResult.Yes);
            }
            finally
            {
                cliente.Close();
            }
        }
        public static Entidades.ViewModels.Configuracion GetConfiguracion(string key)
        {
            var conf = new Entidades.ViewModels.Configuracion();

            var confRepo = new ConfiguracionRepository();

            var confActual = confRepo.GetConfiguracion(key);
            conf.Nombre = key;
            if (confActual["RESPONSE"].ToString() == "OK")
            {
                conf.Estado = ConfiguracionEstado.Deshabilitado;
                if(confActual["STATUS"] == "true") conf.Estado = ConfiguracionEstado.Habilitado;

                conf.Valor = confActual["VALUE"].ToString();
            }
            else
            {
                conf.Estado = ConfiguracionEstado.NoExiste;
                conf.Valor = "NONE";
            }

            return conf;
        }
예제 #7
0
        private DataTable GenerarDetalleTodas(dsImpresiones.CupónPagoDataTable cupón, string idPago, string fechaEmisión, string fechaVencimiento, string nombre, string tipoDocumento, string documento, string curso, string carrera, DateTime fechaCompromiso, Pago pago)
        {
            var pagos = PagosRepository.ObtenerPagos(pago.IdPlanPago).Where(p => p.Fecha == null && p.NroCuota > 0);
            var min   = pagos.Min(p => p.NroCuota);
            var max   = pagos.Max(p => p.NroCuota);

            // CUOTAS *************************
            var    totalBase = pagos.Sum(p => p.ImporteCuota);
            var    importe   = totalBase.ToString("$ 0,0.00");
            string concepto  = String.Format("Cuotas de {0} a {1} ", min, max);

            cupón.AddCupónPagoRow(idPago, fechaEmisión, fechaVencimiento, nombre, tipoDocumento, documento,
                                  carrera, curso, "", "", "1", concepto, importe);

            // BECAS *************************
            decimal totalBecas = 0, totalPagoATérmino = 0, totalRecargos = 0;
            string  cuotasBecadas = "", cuotasPagoATérmino = "", cuotasRecargoPorMora = "";
            decimal descBeca    = 0;
            var     cuotas      = CuotasRepository.ObtenerCuotas();
            var     totalAPagar = (decimal)0;

            foreach (var p in pagos)
            {
                var     impBase = pago.ImporteCuota;
                decimal beca    = 0;

                var p1 = PagosRepository.ObtenerPago(p.Id);
                if (p1.PlanPago.PorcentajeBeca > 0)
                {
                    descBeca       = (decimal)p1.PlanPago.PorcentajeBeca;
                    beca           = p.ImporteCuota * (descBeca / 100);
                    totalBecas    += beca;
                    cuotasBecadas += String.IsNullOrEmpty(cuotasBecadas) ? p.NroCuota.ToString() : "," + p.NroCuota;
                }

                var cuota = cuotas.Where(c => c.NroCuota == p.NroCuota).FirstOrDefault();
                if (cuota == null)
                {
                    ShowError("Falta parametrizar la cuota " + p.NroCuota);
                    return(null);
                }
                var vtoCuota  = cuota.VtoCuota;
                var impBecado = impBase - beca;
                if (fechaCompromiso <= vtoCuota)
                {
                    var dpt             = (decimal)(ConfiguracionRepository.ObtenerConfiguracion().DescuentoPagoTermino / 100);
                    var descPagoTérmino = Math.Round(impBecado * dpt, 2);
                    totalPagoATérmino  += descPagoTérmino;
                    totalAPagar        += impBase - beca - descPagoTérmino;
                    cuotasPagoATérmino += cuotasPagoATérmino == "" ? p.NroCuota.ToString() : "," + p.NroCuota;
                }
                else
                {
                    var porcRecargo      = (ConfiguracionRepository.ObtenerConfiguracion().InteresPorMora / 100) / 30.0;
                    var díasAtraso       = Math.Truncate((fechaCompromiso - vtoCuota).TotalDays);
                    var porcRecargoTotal = (decimal)(porcRecargo * díasAtraso);
                    var recargoPorMora   = Math.Round(impBecado * porcRecargoTotal, 2);
                    totalRecargos        += recargoPorMora;
                    totalAPagar          += impBase - beca + recargoPorMora;
                    cuotasRecargoPorMora += cuotasRecargoPorMora == "" ? p.NroCuota.ToString() : "," + p.NroCuota;
                }
            }

            if (totalBecas > 0)
            {
                importe  = totalBecas.ToString("$ -0,0.00");
                concepto = String.Format("Descuento de %{0} por becas de cuotas {1} ", descBeca, cuotasBecadas);
                cupón.AddCupónPagoRow(idPago, fechaEmisión, fechaVencimiento, nombre, tipoDocumento, documento,
                                      carrera, curso, "", "", "2", concepto, importe);
            }

            if (totalPagoATérmino > 0)
            {
                importe  = totalPagoATérmino.ToString("$ -0,0.00");
                concepto = String.Format("Descuento por pago a término de cuotas {0} ", cuotasPagoATérmino);
                cupón.AddCupónPagoRow(idPago, fechaEmisión, fechaVencimiento, nombre, tipoDocumento, documento,
                                      carrera, curso, "", "", "2", concepto, importe);
            }

            if (totalRecargos > 0)
            {
                importe  = totalRecargos.ToString("$ 0,0.00");
                concepto = String.Format("Recargo por mora de cuotas {0} ", cuotasRecargoPorMora);
                cupón.AddCupónPagoRow(idPago, fechaEmisión, fechaVencimiento, nombre, tipoDocumento, documento,
                                      carrera, curso, "", "", "2", concepto, importe);
            }

            var codBarra = GenerarCódigoBarras(idPago, totalAPagar);

            foreach (dsImpresiones.CupónPagoRow row in cupón.Rows)
            {
                row.Total       = String.Format("{0:$ 0,0.00}", totalAPagar);
                row.CódigoBarra = codBarra;
            }

            return(cupón);
        }