Exemple #1
0
        private void BoletaDevuelta(string p)
        {
            try
            {
                Nuevo();
                _dtprenda.Rows.Clear();
                Boleta bol = new  EmpeñosDC(new clsConeccionDB().StringConn()).Boletas.SingleOrDefault(b => b.Folio == p);
                if (bol == null)
                {
                    XtraMessageBox.Show(String.Format("La Boleta: {0} no Existe", txtFolioBoleta.Text), "Boleta no Encontrada", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
                txtFolioBoleta.EditValue = p;
                txtFolioBoleta.Enabled   = false;
                txtNomCliente.EditValue  = bol.Cliente;
                txtCotitular.EditValue   = bol.Cotitular;
                txtPrestamo.EditValue    = bol.Prestamo;
                txtInteres.EditValue     = bol.Interes;
                dtpFechaEmpeño.DateTime  = bol.FechaPrestamo;
                dtpFechaSaldada.DateTime = bol.FechaPrestamo.AddMonths(bol.PagosInteres.Count(pg => pg.Estado));
                _dtprenda.Rows.Clear();
                if (bol.DetallesBoletas.Any())
                {
                    var prendas = bol.DetallesBoletas
                                  .Select(
                        db =>
                        new
                    {
                        db.Prenda.Descripcion,
                        db.Prenda.Peso,
                        db.Prenda.Tipo,
                        db.Prenda.Avaluo
                    });
                    foreach (var pr in prendas)
                    {
                        _dtprenda.Rows.Add(new object[] { pr.Descripcion, pr.Peso, pr.Tipo, pr.Avaluo });
                    }
                }
                else
                {
                    PrendasAnteriores(bol.Articulos).ForEach(prenda => _dtprenda.Rows.Add(new object[] { prenda, 0, 0, 0 }));
                }
                gridPrendas.DataSource = _dtprenda;
                grvPrendas.Columns[3].DisplayFormat.FormatType              = FormatType.Numeric;
                grvPrendas.Columns[3].DisplayFormat.FormatString            = "c2";
                grvPrendas.Columns[2].AppearanceCell.TextOptions.HAlignment = HorzAlignment.Center;
                gridPrendas.ForceInitialize();

                switch (bol.EstadoBoleta)
                {
                case "Vencido":
                    botonGuardar.Enabled = false;
                    XtraMessageBox.Show("El Empeño a vencido y se ha Fundido", "Boleta Vencida");
                    return;

                case "Desempeñado":
                    botonGuardar.Enabled = false;
                    DateTime fchDesempeño =
                        new EmpeñosDC(new clsConeccionDB().StringConn()).Desempeños.Single(d => d.FolioBoleta == bol.Folio).FechaDesempeño;
                    XtraMessageBox.Show("La Boleta: " + bol.Folio + " Se ha Desempeñado\n FECHA DESEMPEÑO: " + fchDesempeño.ToString("dd/MMM/yyyy"), "Boleta Desempeñada", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);

                    return;

                case "Vigente":
                    TimeSpan diasdespuesPrestamo = DateTime.Now.Subtract(dtpFechaSaldada.DateTime.Date);
                    int      diastrancurridos    = (int)diasdespuesPrestamo.TotalDays;
                    int      diasparavencer      = Convert.ToInt32(new clsModificarConfiguracion().configGetValue("DiasVencimiento"));
                    if (diastrancurridos > diasparavencer)
                    {
                        botonGuardar.Enabled = false;
                        XtraMessageBox.Show("La boleta ya esta VENCIDA \n ya han pasado " + diastrancurridos.ToString() + " DIAS  de  " + diasparavencer.ToString() + " dias para poder pagar", "Boleta VENCIDA");
                        return;
                    }
                    botonGuardar.Enabled = true;
                    break;

                case "Cancelado":
                    XtraMessageBox.Show("La Boleta esta cancelada");
                    botonGuardar.Enabled = false;
                    return;
                }
                CalcularIntereses(dtpFechaSaldada.DateTime.Date);
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show(ex.Message);
            }
        }