protected void btnGuardar_Click(object sender, EventArgs e) { for (int i = 20; i <= 29; i++) { dgvPagoLetra.Columns[i].Visible = true; } //primero guardar la cabecera tabla tbliquCob clstbliqCobranza formliq = new clstbliqCobranza(); tbliqCobranza objliq = new tbliqCobranza(); int idliquidacion = formliq.MaxOpeCod() + 1; objliq.idliqcob = idliquidacion; objliq.fecreg = Convert.ToDateTime( txtFecha.Text); objliq.efectivo = Convert.ToDecimal(lblCobEfecSol.Text); objliq.efectivodol = Convert.ToDecimal(lblCobEfecDol.Text); objliq.ctaViatico = Convert.ToDecimal(txtctaViasoles.Text); objliq.ctaViaticodol = Convert.ToDecimal(txtctaViadolares.Text); objliq.depositos = Convert.ToDecimal(lblCobSnefeSol.Text); objliq.depositosdol = Convert.ToDecimal(lblCobSnefeDol.Text); objliq.GastVarios = Convert.ToDecimal(txtGasVSol.Text); objliq.GastVariosdol = Convert.ToDecimal(txtGasVDol.Text); objliq.cheques = Convert.ToDecimal(txtchqSol.Text); objliq.chequesdol = Convert.ToDecimal(txtchqDol.Text); objliq.inefectivo = Convert.ToDecimal(txtegrEfeSol.Text); objliq.inefectivodol = Convert.ToDecimal(txtegrEfeDol.Text); objliq.totsoles = Convert.ToDecimal(lblSalSoles.Text); objliq.totdolares = Convert.ToDecimal(lblSalDolares.Text); objliq.observaciones = txtObservaciones.Text; // falta ingresar las observaiones y el recibidor int cod_det; int ultimo; int cod_ven; int cod_letra; int cod_cliente; int primero=0; decimal monto_total; decimal monto_cuota; decimal pago; DateTime fecha, fecha_min = DateTime.Now, fecha_max = DateTime.Now; int flag = 0; formliq.fnletraInsertar(objliq); foreach (GridViewRow row in dgvPagoLetra.Rows) { TextBox txtMon = row.FindControl("txtmonto") as TextBox; TextBox txtFecPago = row.FindControl("txtFecPago") as TextBox; TextBox txtnumrecibo = row.FindControl("txtnumrecibo") as TextBox; CheckBox chktipPago = row.FindControl("chktipPago") as CheckBox; try { if (txtMon.Text.Length > 0 && Convert.ToDouble(txtMon.Text) > 0.00) { txtMon.Text = Convert.ToDouble(txtMon.Text).ToString("N"); } else { txtMon.Text = Convert.ToDouble("0.00").ToString("N"); dgvPagoLetra.Rows[row.RowIndex].Visible= false; //dgvPagoLetra.Columns[i].Visible = true; } } catch { txtMon.Text = Convert.ToDouble("0.00").ToString("N"); dgvPagoLetra.Rows[row.RowIndex].Visible = false; } txtMon.Text = Convert.ToDouble(txtMon.Text).ToString("N"); } clspag_Letra form = new clspag_Letra(); int cod_mov = Convert.ToInt32(form.Maxcod_pago()) + 1; foreach (GridViewRow row in dgvPagoLetra.Rows) { flag = 0; fecha = Convert.ToDateTime(txtFecha.Text); TextBox pag = row.FindControl("txtmonto") as TextBox; TextBox txtFecPago = row.FindControl("txtFecPago") as TextBox; TextBox txtobsdet = row.FindControl("txtobsdetalle") as TextBox; TextBox txtnumrecibo = row.FindControl("txtnumrecibo") as TextBox; CheckBox chktipPago = row.FindControl("chktipPago") as CheckBox; cod_det = Convert.ToInt32(row.Cells[25].Text); cod_ven = Convert.ToInt32(row.Cells[22].Text); cod_letra = Convert.ToInt32(row.Cells[26].Text); cod_cliente = Convert.ToInt32(row.Cells[28].Text); ultimo = Convert.ToInt32(row.Cells[29].Text); pago = Convert.ToDecimal(pag.Text); if (primero == 0) { fecha_min = Convert.ToDateTime(txtFecPago.Text); fecha_max = Convert.ToDateTime(txtFecPago.Text); primero = 1; } else { if (Convert.ToDateTime(txtFecPago.Text) < fecha_min) { fecha_min = Convert.ToDateTime(txtFecPago.Text); } if (Convert.ToDateTime(txtFecPago.Text) > fecha_max) { fecha_max = Convert.ToDateTime(txtFecPago.Text); } } if (pago > 0) { monto_total = Convert.ToDecimal(row.Cells[11].Text); monto_cuota = Convert.ToDecimal(row.Cells[14].Text); while (flag == 0) { Pag_letras obj = new Pag_letras(); if (pago > monto_cuota) { clsdetletra update = new clsdetletra(); det_letra obj_upd = new det_letra(); obj_upd = update.GetDetLetra(cod_det); obj_upd.cestado = "2"; obj_upd.dfecpago = Convert.ToDateTime(fecha); update.fnDetLetraUpdate(obj_upd); if (ultimo == 0) { //////////////////// //crea la nota///// //////////////////// clsOpeNotas formnota = new clsOpeNotas(); Notas objnt = new Notas(); objnt.inota = Convert.ToInt32(formnota.MaxOpeCod()) + 1; objnt.dfecreg = Convert.ToDateTime(fecha); objnt.ccodnota = cod_letra.ToString(); objnt.iprvcod = cod_cliente; objnt.nmontoNota = pago - monto_cuota; objnt.cestadoNota = "N"; objnt.nmntutilizado = Convert.ToDecimal(0.00); objnt.cobservaciones = "pago excesivo de factura"; objnt.ctipo = "V"; formnota.fnNotaInsert(objnt); //////////////////////////////////////// obj.idetletra = obj_upd.idetletra; obj.idpagletra = Convert.ToInt32(form.Maxidpaglet()) + 1; obj.nmonto = monto_cuota; obj.dfecpago = Convert.ToDateTime(fecha); obj.dfecmodifi = DateTime.Today; obj.ipercod = cod_ven; obj.icodpago = cod_mov; obj.inumRecibo = txtnumrecibo.Text; obj.cobservaciones = txtobsdet.Text; obj.inumliq = idliquidacion; if (chktipPago.Checked) obj.ctipPag = "E"; else obj.ctipPag = "D"; clspag_Letra inserta = new clspag_Letra(); inserta.fnpag_letraInsertar(obj); flag = 1; } else { obj.idetletra = obj_upd.idetletra; obj.idpagletra = Convert.ToInt32(form.Maxidpaglet()) + 1; obj.nmonto = monto_cuota; obj.dfecpago = Convert.ToDateTime(fecha); obj.dfecmodifi = DateTime.Today; obj.ipercod = cod_ven; obj.icodpago = cod_mov; obj.inumRecibo = txtnumrecibo.Text; obj.cobservaciones = txtObservaciones.Text; obj.inumliq = idliquidacion; if(chktipPago.Checked) obj.ctipPag= "E"; else obj.ctipPag = "D"; clspag_Letra inserta = new clspag_Letra(); inserta.fnpag_letraInsertar(obj); pago = pago - monto_cuota; cod_det = Convert.ToInt32(update.Mindetletpend_cod(cod_letra)); monto_cuota = fnnextDeuda(cod_det); } } else { obj.idetletra = cod_det; obj.idpagletra = Convert.ToInt32(form.Maxidpaglet()) + 1; obj.nmonto = pago; obj.dfecpago = Convert.ToDateTime(fecha); obj.dfecmodifi = DateTime.Today; obj.ipercod = cod_ven; obj.icodpago = cod_mov; obj.inumRecibo = txtnumrecibo.Text; obj.cobservaciones = txtObservaciones.Text; obj.inumliq = idliquidacion; if (chktipPago.Checked) obj.ctipPag = "E"; else obj.ctipPag = "D"; clspag_Letra inserta = new clspag_Letra(); inserta.fnpag_letraInsertar(obj); if (pago == monto_cuota) { clsdetletra update = new clsdetletra(); det_letra obj_upd = new det_letra(); obj_upd = update.GetDetLetra(cod_det); obj_upd.cestado = "2"; obj_upd.dfecpago = Convert.ToDateTime(fecha); update.fnDetLetraUpdate(obj_upd); } flag = 1; } } } } for (int i = 20; i <= 29; i++) { dgvPagoLetra.Columns[i].Visible = false; } txtFecMin.Text = fecha_min.ToString("yyyy-MM-dd"); txtFecMax.Text = fecha_max.ToString("yyyy-MM-dd"); pnLiquidacion.Enabled = false; btnCancelar.Text = "Salir"; HabilitarBtn(btnGuardar, false); HabilitarBtn(btnProcesar, false); }
protected void btnPagar_Click(object sender, EventArgs e) { int cod_det; int ultimo; int cod_ven; int cod_letra; int cod_cliente; decimal monto_total; decimal monto_cuota; decimal pago; string fecha; int flag = 0; clspag_Letra form = new clspag_Letra(); int cod_mov = Convert.ToInt32(form.Maxcod_pago()) + 1; if (btnpagar.Text == "Pagar") { pncargar.Visible = true; dgvlist.Columns[13].Visible = true; txtFec.Text = DateTime.Today.ToString(); btnpagar.Text = "Guargar"; HabilitarBtn(btnCancelar, true); btnCancelar.Visible = true; } else { dgvlist.Columns[5].Visible = true; dgvlist.Columns[14].Visible = true; dgvlist.Columns[15].Visible = true; dgvlist.Columns[16].Visible = true; foreach (GridViewRow row in dgvlist.Rows) { flag = 0; fecha = txtFec.Text; TextBox pag = row.FindControl("txtmonto") as TextBox; cod_det = Convert.ToInt32(row.Cells[2].Text); cod_ven = Convert.ToInt32(row.Cells[5].Text); cod_letra = Convert.ToInt32(row.Cells[14].Text); cod_cliente = Convert.ToInt32(row.Cells[16].Text); ultimo = Convert.ToInt32(row.Cells[15].Text); pago = Convert.ToDecimal(pag.Text); if (pago > 0) { monto_total = Convert.ToDecimal(row.Cells[10].Text); monto_cuota = Convert.ToDecimal(row.Cells[12].Text); while (flag == 0) { Pag_letras obj = new Pag_letras(); if (pago > monto_cuota) { clsdetletra update = new clsdetletra(); det_letra obj_upd = new det_letra(); obj_upd = update.GetDetLetra(cod_det); obj_upd.cestado = "2"; obj_upd.dfecpago = Convert.ToDateTime(fecha); update.fnDetLetraUpdate(obj_upd); if (ultimo == 0) { //////////////////// //crea la nota///// //////////////////// clsOpeNotas formnota = new clsOpeNotas(); Notas objnt = new Notas(); objnt.inota = Convert.ToInt32(formnota.MaxOpeCod()) + 1; objnt.dfecreg = Convert.ToDateTime(fecha); objnt.ccodnota = cod_letra.ToString(); objnt.iprvcod = cod_cliente; objnt.nmontoNota = pago - monto_cuota; objnt.cestadoNota = "N"; objnt.nmntutilizado = Convert.ToDecimal(0.00); objnt.cobservaciones = "pago excesivo de factura"; objnt.ctipo = "V"; formnota.fnNotaInsert(objnt); //////////////////////////////////////// flag = 1; } else { obj.idetletra = obj_upd.idetletra; obj.idpagletra = Convert.ToInt32(form.Maxidpaglet()) + 1; obj.nmonto = monto_cuota; obj.dfecpago = Convert.ToDateTime(fecha); obj.dfecmodifi = DateTime.Today; obj.ipercod = cod_ven; obj.icodpago = cod_mov; clspag_Letra inserta = new clspag_Letra(); inserta.fnpag_letraInsertar(obj); pago = pago - monto_cuota; cod_det = Convert.ToInt32(update.Mindetletpend_cod(cod_letra)); monto_cuota = fnnextDeuda(cod_det); } } else { obj.idetletra = cod_det; obj.idpagletra = Convert.ToInt32(form.Maxidpaglet()) + 1; obj.nmonto = pago; obj.dfecpago = Convert.ToDateTime(fecha); obj.dfecmodifi = DateTime.Today; obj.ipercod = cod_ven; obj.icodpago = cod_mov; clspag_Letra inserta = new clspag_Letra(); inserta.fnpag_letraInsertar(obj); if (pago == monto_cuota) { clsdetletra update = new clsdetletra(); det_letra obj_upd = new det_letra(); obj_upd = update.GetDetLetra(cod_det); obj_upd.cestado = "2"; obj_upd.dfecpago = Convert.ToDateTime(fecha); update.fnDetLetraUpdate(obj_upd); } flag = 1; } } } } btnpagar.Text = "Pagar"; iniciar_valores(); } }