private void PagarCuota(bool otroIngreso) { string cuotastr = "";// cplistEx.SelectedItems[0].SubItems[5].Text; string prestamostr = prestamocb.SelectedItem.ToString(); string conceptostr = conceptodepagotxt.Text; int reciboID = 0; int debitoID = 0; if (conceptostr != "") { for (int i = 0; i < cplistEx.Items.Count; i++) { cuotastr = cplistEx.Items[i].SubItems[0].Text; string ocapitaltmp = cplistEx.Items[i].SubItems[2].Text; string ointerestmp = cplistEx.Items[i].SubItems[3].Text; string capitaltmp = cplistEx.Items[i].SubItems[6].Text; string interestmp = cplistEx.Items[i].SubItems[7].Text; string moratmp = cplistEx.Items[i].SubItems[8].Text; double capitalstr = 0.00; double interesstr = 0.00; double ocapitalstr = 0.00; double ointeresstr = 0.00; double morastr = 0.00; bool iserror = false; if ((capitaltmp != "" || interestmp != "")) { if (capitaltmp != "") { capitalstr = Double.Parse(capitaltmp); } if (interestmp != "") { interesstr = Double.Parse(interestmp); } if (ocapitaltmp != "") { ocapitalstr = Double.Parse(ocapitaltmp); } if (ointerestmp != "") { ointeresstr = Double.Parse(ointerestmp); } if (moratmp != "") { morastr = Double.Parse(moratmp); } //don't validate payment on otro ingreso. //check if payment is greather than what is owe. //che if (otroIngreso) { //process otro ingresos if (reciboID == 0) { reciboID = cliente1.Prestamo.Pagares(0, prestamostr, cuotastr, capitalstr, interesstr, morastr, conceptostr, otroIngreso); } else if (reciboID > 0) { reciboID = cliente1.Prestamo.Pagares(reciboID, prestamostr, cuotastr, capitalstr, interesstr, morastr, conceptostr, otroIngreso); // cliente1.Prestamo.updatePagares(reciboID, prestamostr, cuotastr, capitalstr, interesstr, morastr); } }//validate cuota. else if (capitalstr > ocapitalstr || interesstr > ointeresstr || iserror) { MessageBox.Show("No puedes cobrarle mas al cliente de lo que debes.", "Error de Cuota", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (debitocb.Checked) { if (debitoID == 0) { debitoID = cliente1.Prestamo.Debito(0, prestamostr, cuotastr, capitalstr, interesstr, morastr, conceptostr); } else if (debitoID > 0) { debitoID = cliente1.Prestamo.Debito(debitoID, prestamostr, cuotastr, capitalstr, interesstr, morastr, conceptostr); } } else { if (reciboID == 0) { reciboID = cliente1.Prestamo.Pagares(0, prestamostr, cuotastr, capitalstr, interesstr, morastr, conceptostr, otroIngreso); } else if (reciboID > 0) { reciboID = cliente1.Prestamo.Pagares(reciboID, prestamostr, cuotastr, capitalstr, interesstr, morastr, conceptostr, otroIngreso); // cliente1.Prestamo.updatePagares(reciboID, prestamostr, cuotastr, capitalstr, interesstr, morastr); } } } } } // ask to print if valid reciboID if (reciboID > 0) { //clear concepto. conceptodepagotxt.Text = ""; //refresh datatable loadPrestamopagares(prestamostr); if (MessageBox.Show("Quieres imprimir el Recibo?", "Imprimir Recibo", MessageBoxButtons.YesNo) == DialogResult.Yes) { //lines = cliente1.loadReciboPago(reciboID); PrintDoc pd = new PrintDoc(); pd.Recibo(reciboID.ToString()); pd = null; } } else if (debitoID > 0) { //clear concepto. conceptodepagotxt.Text = ""; //refresh datatable loadPrestamopagares(prestamostr); if (MessageBox.Show("Quieres imprimir el Recibo?", "Imprimir Recibo", MessageBoxButtons.YesNo) == DialogResult.Yes) { //lines = cliente1.loadReciboPago(reciboID); PrintDoc pd = new PrintDoc(); pd.Debito(debitoID.ToString()); pd = null; } } } else { MessageBox.Show("No Deje el Concepto Vacio", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }