public void Actualizar_Montos() { BD_JSYSEntities db = new BD_JSYSEntities(); FACTURAS obj_factura = new FACTURAS(); DETALLES_CUOTAS obj_detalle = new DETALLES_CUOTAS(); RECIBOS_COBRADOS obj_recibo = new RECIBOS_COBRADOS(); //actualizar detalle cxc if (ch_pago_total.Checked == true) { obj_detalle.MONTO_PAGADO = Convert.ToDecimal(txt_monto_cuota.Text); obj_detalle.MONTO_PENDIENTE = 0; obj_recibo.VALOR_PAGADO = Convert.ToDecimal(txt_monto_cuota.Text); obj_factura.MONTO_PAGADO = Convert.ToDecimal(txt_monto_cuota.Text); obj_recibo.VALOR_PENDIENTE = 0; } else if (ch_pago_total.Checked == false && Convert.ToDecimal(txt_valor_a_pagar.Text) >= Convert.ToDecimal(txt_monto_cuota.Text)) { obj_detalle.MONTO_PAGADO = Convert.ToDecimal(txt_monto_cuota.Text); obj_detalle.MONTO_PENDIENTE = 0; obj_recibo.VALOR_PAGADO = Convert.ToDecimal(txt_monto_cuota.Text); obj_factura.MONTO_PAGADO = Convert.ToDecimal(txt_monto_cuota.Text); obj_recibo.VALOR_PENDIENTE = 0; } else if (ch_pago_total.Checked == false && Convert.ToDecimal(txt_valor_a_pagar.Text) < Convert.ToDecimal(txt_monto_cuota.Text)) { obj_detalle.MONTO_PAGADO = Convert.ToDecimal(txt_valor_a_pagar.Text); obj_detalle.MONTO_PENDIENTE = Convert.ToDecimal(txt_monto_cuota.Text) - Convert.ToDecimal(txt_valor_a_pagar.Text); obj_recibo.VALOR_PAGADO = Convert.ToDecimal(txt_valor_a_pagar.Text); obj_factura.MONTO_PAGADO = Convert.ToDecimal(txt_valor_a_pagar.Text); obj_recibo.VALOR_PENDIENTE = Convert.ToDecimal(txt_monto_cuota.Text) - Convert.ToDecimal(txt_valor_a_pagar.Text); } obj_detalle.NUMERO_CUOTA = Convert.ToInt32(txt_no_cuota.Text); obj_detalle.ID_FACTURA = Convert.ToInt32(txt_no_factura.Text); S_Factura.Cobrar_Cuota(obj_detalle); //insertar recibo obj_recibo.ANULADO_POR = ""; obj_recibo.CREADO_POR = S_Utilidades.Datos_Usuario.USUARIO; int ID_FACTURA = Convert.ToInt32(txt_no_factura.Text); var obj_encabezado = db.ENCABEZADO_CUOTAS.Where(a => a.ID_FACTURA == ID_FACTURA).Single(); obj_recibo.CANTIDAD_CUOTAS = obj_encabezado.CANTIADA_CUOTA; obj_recibo.CUOTA_COBRADA = Convert.ToInt32(txt_no_cuota.Text); obj_recibo.ESTADO = "V"; obj_recibo.FECHA_ANULADO = ""; obj_recibo.FECHA_CREADO = DateTime.Now; obj_recibo.ID_FACTURA = ID_FACTURA; var obj_fact = db.FACTURAS.Where(f => f.ID_FACTURA == ID_FACTURA).Single(); obj_recibo.NOTA_ANULACION = ""; obj_recibo.VALOR_CUOTA = Convert.ToDecimal(txt_monto_cuota.Text); S_Factura.Insertar_Recibo_Cobros(obj_recibo); //actualizar monto factura obj_factura.ID_FACTURA = ID_FACTURA; S_Factura.Actualizar_Montos_Factura(obj_factura); }
private void btn_anular_Click(object sender, EventArgs e) { if (DG.Rows.Count == 0) { return; } if (txt_observacion.Text == "") { S_Utilidades.Mensaje_Informacion("La Observación es Obligatoria"); return; } DialogResult Resultado = MessageBox.Show("Deseas Anular Recibo(s)", "Confirmación", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (Resultado == DialogResult.Yes) { FACTURAS obj_factura = new FACTURAS(); DETALLES_CUOTAS obj_detelle = new DETALLES_CUOTAS(); RECIBOS_COBRADOS obj_recibo = new RECIBOS_COBRADOS(); foreach (DataGridViewRow row in DG.Rows) { if (Convert.ToBoolean(row.Cells[6].Value) == true) { int id_factura = Convert.ToInt32(row.Cells[2].Value); decimal valor_pagado = Convert.ToDecimal(row.Cells[4].Value); obj_factura.ID_FACTURA = id_factura; obj_factura.MONTO_PAGADO = valor_pagado; S_Factura.Actualizar_Montos_Factura_Recibo_Anulado(obj_factura); obj_detelle.ID_FACTURA = id_factura; obj_detelle.NUMERO_CUOTA = Convert.ToInt32(row.Cells[3].Value); obj_detelle.MONTO_PAGADO = valor_pagado; S_Factura.Anular_Detalle_Cuota(obj_detelle); obj_recibo.ID_RECIBO = Convert.ToInt32(row.Cells[0].Value); obj_recibo.ESTADO = "A"; obj_recibo.FECHA_ANULADO = DateTime.Now.ToString(); obj_recibo.ANULADO_POR = S_Utilidades.Datos_Usuario.USUARIO; obj_recibo.NOTA_ANULACION = txt_observacion.Text.Trim(); S_Factura.Anular_Recibo(obj_recibo); } } S_Utilidades.Mensaje_Informacion("Recibos Anulados Correctamente"); Close(); } }
public static void Anular_Recibo(RECIBOS_COBRADOS obj) { D_Factura Metodo = new D_Factura(); Metodo.Anular_Recibo(obj); }
public static void Insertar_Recibo_Cobros(RECIBOS_COBRADOS obj) { D_Factura Metodo = new D_Factura(); Metodo.Insertar_Recibo_Cobros(obj); }
private void btn_guardar_Click(object sender, EventArgs e) { if (txt_total.TextLength == 0) { S_Utilidades.Mensaje_Informacion("No hay Cuota(s) Seleccionada(s)"); return; } DETALLES_CUOTAS obj_detalle = new DETALLES_CUOTAS(); RECIBOS_COBRADOS obj_recibo = new RECIBOS_COBRADOS(); FACTURAS obj_factura = new FACTURAS(); try { foreach (DataGridViewRow row in dg_detalle_cuotas.Rows) { obj_detalle.ID_FACTURA = Convert.ToInt32(Txt_ID.Text); if (Convert.ToBoolean(row.Cells[3].Value) == true && Convert.ToDecimal(row.Cells[4].Value) > 0) { if (Convert.ToDecimal(row.Cells[4].Value) > Convert.ToDecimal(row.Cells[2].Value)) { //actualizar totales de cuotas obj_detalle.MONTO_PAGADO = Convert.ToDecimal(row.Cells[2].Value); obj_detalle.MONTO_PENDIENTE = 0; obj_detalle.NUMERO_CUOTA = Convert.ToInt32(row.Cells[0].Value); S_Factura.Cobrar_Cuota(obj_detalle); //actualizar totales de factura obj_factura.ID_FACTURA = Convert.ToInt32(Txt_ID.Text); obj_factura.MONTO_PAGADO = obj_detalle.MONTO_PAGADO; S_Factura.Actualizar_Montos_Factura(obj_factura); //asignar montos de recibos obj_recibo.VALOR_PAGADO = Convert.ToDecimal(row.Cells[2].Value); obj_recibo.VALOR_PENDIENTE = 0; } else { //actualizar totales de cuotas obj_detalle.MONTO_PAGADO = Convert.ToDecimal(row.Cells[4].Value); obj_detalle.MONTO_PENDIENTE = Convert.ToDecimal(row.Cells[2].Value) - Convert.ToDecimal(row.Cells[4].Value); obj_detalle.NUMERO_CUOTA = Convert.ToInt32(row.Cells[0].Value); S_Factura.Cobrar_Cuota(obj_detalle); //actualizar totales de factura obj_factura.ID_FACTURA = Convert.ToInt32(Txt_ID.Text); obj_factura.MONTO_PAGADO = obj_detalle.MONTO_PAGADO; S_Factura.Actualizar_Montos_Factura(obj_factura); //asignar montos de recibos obj_recibo.VALOR_PAGADO = Convert.ToDecimal(row.Cells[4].Value); obj_recibo.VALOR_PENDIENTE = obj_detalle.MONTO_PENDIENTE; } } else if (Convert.ToBoolean(row.Cells[3].Value) == true) { //actualizar totales de cuotas obj_detalle.MONTO_PAGADO = Convert.ToDecimal(row.Cells[2].Value); obj_detalle.MONTO_PENDIENTE = 0; obj_detalle.NUMERO_CUOTA = Convert.ToInt32(row.Cells[0].Value); S_Factura.Cobrar_Cuota(obj_detalle); //actualizar totales de factura obj_factura.ID_FACTURA = Convert.ToInt32(Txt_ID.Text); obj_factura.MONTO_PAGADO = obj_detalle.MONTO_PAGADO; S_Factura.Actualizar_Montos_Factura(obj_factura); //asignar montos de recibos obj_recibo.VALOR_PAGADO = Convert.ToDecimal(row.Cells[2].Value); obj_recibo.VALOR_PENDIENTE = 0; } if (Convert.ToBoolean(row.Cells[3].Value) == true) { //insertar recibos de cobros obj_recibo.ANULADO_POR = ""; obj_recibo.CREADO_POR = S_Utilidades.Datos_Usuario.USUARIO; int ID_FACTURA = Convert.ToInt32(Txt_ID.Text); var obj_encabezado = db.ENCABEZADO_CUOTAS.Where(a => a.ID_FACTURA == ID_FACTURA).Single(); obj_recibo.CANTIDAD_CUOTAS = obj_encabezado.CANTIADA_CUOTA; obj_recibo.CUOTA_COBRADA = Convert.ToInt32(row.Cells[0].Value); obj_recibo.ESTADO = "V"; obj_recibo.FECHA_ANULADO = ""; obj_recibo.FECHA_CREADO = DateTime.Now; obj_recibo.ID_FACTURA = Convert.ToInt32(Txt_ID.Text); var obj_fact = db.FACTURAS.Where(f => f.ID_FACTURA == ID_FACTURA).Single(); obj_recibo.NOTA_ANULACION = ""; obj_recibo.VALOR_CUOTA = Convert.ToDecimal(row.Cells[2].Value); S_Factura.Insertar_Recibo_Cobros(obj_recibo); } } String arry = ""; int id_factura = Convert.ToInt32(Txt_ID.Text); foreach (DataGridViewRow row in dg_detalle_cuotas.Rows) { int cuota = Convert.ToInt32(row.Cells[0].Value); if (Convert.ToBoolean(row.Cells[3].Value) == true) { var id_recibo = db.RECIBOS_COBRADOS.Where(s => s.ID_FACTURA == id_factura && s.CUOTA_COBRADA == cuota).Max(s => s.ID_RECIBO); arry += id_recibo.ToString() + ","; } } String recibos = arry.TrimEnd(','); S_Utilidades.Mensaje_Informacion("Cobros Realizados con Correctamente por un Monto Total de: " + txt_total.Text); Reportes.Rep_Recibo_Pago report = new Reportes.Rep_Recibo_Pago(); report.FilterString = "([ID_FACTURA] = " + Txt_ID.Text + " AND [ID_RECIBO] IN (" + recibos + "))"; ReportPrintTool tool = new ReportPrintTool(report); tool.ShowPreview(); Close(); } catch (Exception ex) { S_Utilidades.Mensaje_Informacion(ex.Message); } }