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); } }