public Crecibo_debito BuscarDeCompra(Ccuenta_corriente obj, Ccompra ocompra) { CargarAltasDebitosyCreditos(obj); foreach (Crecibo_debito aux in obj.Debitos) { if (aux.Compra() != null) { if (aux.Compra().Id == ocompra.Id) { return(aux); } } } CargarBajasDebitosyCreditos(obj); foreach (Crecibo_debito aux in obj.Debitos) { if (aux.Compra() != null) { if (aux.Compra().Id == ocompra.Id) { return(aux); } } } SacarBajas(obj); return(null); }
//COMBO BOX Y CHECK BOX private void cb_proveedor_SelectedIndexChanged(object sender, EventArgs e) { try { if (modificacion) { Cproveedor opro = (Cproveedor)cb_proveedor.SelectedItem; if (opro != null) { Ccuenta_corriente ocuenta = opro.DevolverCuentaCorriente(); if (ocuenta.Creditos == null) { admCuentas.CargarAltasDebitosyCreditos(ocuenta); } } } else { if (oCompra != null) { if (oCompra.Proveedor != null) { cb_proveedor.Text = oCompra.Proveedor.Nombre; } } } } catch (Exception ex) { Frm_confirmacion frm = new Frm_confirmacion(ex.Message, "Bueno, esto es embarazoso. Pero lo solucionaremos :)", "Aceptar"); frm.ShowDialog(); } }
public void SacarBajas(Ccuenta_corriente obj) { Cpago_credito objCred; int cont = 0; while (cont < obj.Creditos.Count) { objCred = obj.Creditos[cont]; if (objCred.Alta) { cont++; } else { obj.Creditos.Remove(objCred); } } cont = 0; Crecibo_debito objDeb; while (cont < obj.Debitos.Count) { objDeb = obj.Debitos[cont]; if (objDeb.AltaOp()) { cont++; } else { obj.Debitos.Remove(objDeb); } } }
public void DarTodasDeBaja(Ccuenta_corriente obj) { Cdatos_operaciones.DarDeBajas(obj); obj.Creditos.Clear(); obj.Debitos.Clear(); obj.Saldo = 0; }
static public void Eliminar(Ccuenta_corriente obj) { string cmdtext = "DELETE FROM [CUENTAS_CORRIENTES] WHERE id_cuenta_corriente=" + obj.ID; cDatos.ActualizarDatos(cmdtext); Actualizar = true; }
public Frm_cuenta_corriente(Cusuario obj, Ccaja_diaria ocaja) { InitializeComponent(); Text = Text + obj.Nombre; L_descripcion.Text = "Apellido y Nombre :" + obj.Nombre + "\nDomicilio : " + obj.Domicilio + "\nLocalidad : " + obj.Localidad + "\nMail : " + obj.Email + "\nTel :" + obj.Tel + "\nCel :" + obj.Cel; lbl_saldo.Text = obj.Saldo.ToString(); objcuenta = obj.DevolverCuentaCorriente(); objpersona = obj; ObjCajaDiaria = ocaja; }
static public void Modificar(Ccuenta_corriente obj) { try { string cmdtxt = "UPDATE [CUENTAS_CORRIENTES] SET saldo = " + (obj.Saldo.ToString()).Replace(",", ".") + " WHERE id_cuenta_corriente=" + obj.ID; cDatos.ActualizarDatos(cmdtxt); Actualizar = true; } catch { throw new ArgumentException("Error al modificar la forma de pago"); } }
static public void Agregar(string tabla, Coperacion obj, Ccuenta_corriente cuenta, string concepto) { try { string cmdtxt = "INSERT INTO " + tabla + " (numero,concepto,importe,fecha,id_cuenta_corriente,alta) VALUES (" + obj.Numero + ",'" + concepto + "'," + (obj.Importe.ToString()).Replace(",", ".") + "," + obj.Fecha.ToSqlDate() + "," + cuenta.ID + ",1)"; cDatos.ActualizarDatos(cmdtxt); Actualizar = true; } catch { throw new ArgumentException("Error al cargar la operacion"); } }
//static public Ccuenta_corriente Devolver(int id_persona) //{ // try // { // String cmdtext = "SELECT id_cuenta_corriente,saldo FROM [CUENTAS_CORRIENTES] where id_persona=" + id_persona; // DataTable DT = cDatos.DevolverDatos(cmdtext); // if (DT.Rows.Count == 0) // return null; // else // return new Ccuenta_corriente(Convert.ToInt32(DT.Rows[0][0]), Convert.ToDecimal(DT.Rows[0][1])); // } // catch // { // throw new ArgumentException("Error al devolver la cuenta corriente"); // } ////} //static public bool TieneDebitosoCreditos(Ccuenta_corriente obj){ // String cmdtext = "SELECT Cid_cuenta_corriente FROM [CUENTAS_CORRIENTES]C where id_persona=" + obj.ID; // DataTable DT = cDatos.DevolverDatos(cmdtext); // if (DT.Rows.Count == 0) // return false; // return true; //} static public void Agregar(Ccuenta_corriente obj, Cpersona objpersona) { try { string cmdtxt = "INSERT INTO [CUENTAS_CORRIENTES] (alta,id_cuenta_corriente,saldo,id_persona) VALUES(1," + obj.ID + "," + obj.Saldo + "," + objpersona.ID + ")"; cDatos.ActualizarDatos(cmdtxt); Actualizar = true; } catch { throw new ArgumentException("Error al cargar la cuenta corriente"); } }
static public void CambiarAlta(Ccuenta_corriente obj, bool alta) { try { string cmdtxt = "UPDATE [CUENTA_CORRIENTE] SET alta ='" + alta + "' WHERE id_cuenta_corriente=" + obj.ID; cDatos.ActualizarDatos(cmdtxt); Actualizar = true; } catch { throw new ArgumentException("Error al modificar la forma de pago"); } }
// METODOS ABM public void Agregar(Ccuenta_corriente obj, Cpersona objpersona) { try { ultimo++; obj.ID = ultimo; Cdatos_cuentas_corrientes.Agregar(obj, objpersona); objpersona.AgregarCuentaCorriente(obj); } catch { Agregar(obj, objpersona); } }
static public void DarDeBajas(Ccuenta_corriente obj) { try { string cmdtxt = "UPDATE [PAGOS_CREDITOS] SET alta = 0 WHERE id_cuenta_corriente=" + obj.ID; cDatos.ActualizarDatos(cmdtxt); cmdtxt = "UPDATE [RECIBOS_DEBITOS] SET alta = 0 WHERE id_cuenta_corriente=" + obj.ID; cDatos.ActualizarDatos(cmdtxt); } catch { throw new ArgumentException("Error al modificar la operacion"); } }
public void DarBajaoAlta(Cpago_credito obj, Ccuenta_corriente objcuenta, bool alta) { Cdatos_operaciones.Modificar("[PAGOS_CREDITOS]", obj, alta, obj.Concepto); if (alta) { objcuenta.Creditos.Remove(obj); obj.Alta = alta; objcuenta.AgregarCredito(obj); } else { objcuenta.EliminarCredito(obj); } }
public void DarBajaoAlta(Crecibo_debito obj, Ccuenta_corriente objcuenta, bool alta) { Cdatos_operaciones.Modificar("[RECIBOS_DEBITOS]", obj, alta, obj.Concepto); if (alta) { objcuenta.Debitos.Remove(obj); obj.Alta = alta; objcuenta.AgregarDebito(obj); } else { objcuenta.EliminarDebito(obj); } }
public void CargarRecibosDePagos(Ccuenta_corriente obj) { DataTable tabla; foreach (Cpago_credito aux in obj.Creditos) { tabla = Cdatos_operaciones.DevolverRebibosDePagos(aux); if (tabla.Rows.Count > 0 && aux.Recibos() == null) { aux.InstanciaRecibos(); foreach (DataRow DR in tabla.Rows) { aux.AgregarRecibo(obj.BuscarDebito(Convert.ToInt32(DR[0]))); } } } }
public void ActualizarInflacionDeCreditos(Ccuenta_corriente ocuenta) { foreach (Cpago_credito ocredito in ocuenta.Creditos) { Cventa oVenta = ocredito.Venta(); if (oVenta != null) { if (oVenta.Items().Count == 0) { Ctrl_Ventas admventa = Ctrl_Ventas.ClaseActiva(); admventa.CargarItems(oVenta, ocredito.ID_Caja_Diaria()); } decimal TotalInflado = 0; foreach (Citem item in oVenta.Items()) { TotalInflado += item.Articulo.Precio * item.Cantidad; } decimal ImporteNuevoCredito; if (oVenta.Pago2 != null) { decimal importeAcuenta; if (oVenta.Pago.FormaPago.ID == 2) { importeAcuenta = oVenta.Pago.Importe; } else { importeAcuenta = oVenta.Pago2.Importe; } ImporteNuevoCredito = (importeAcuenta / oVenta.Total) * TotalInflado; } else { ImporteNuevoCredito = TotalInflado; } ImporteNuevoCredito = Math.Round(ImporteNuevoCredito, 2, MidpointRounding.AwayFromZero); if (ImporteNuevoCredito != ocredito.Importe) { ocuenta.ModificarCredito(ocredito, ImporteNuevoCredito); ModificarOperacion(ocredito); } } } }
public Frm_cuenta_corriente(Cproveedor obj, Ccaja_diaria ocaja) { InitializeComponent(); Text = Text + obj.Nombre; L_descripcion.Text = "CUIT : " + obj.CUIT + "\nApellido y Nombre : " + obj.Nombre + "\nDomicilio : " + obj.Domicilio + "\nLocalidad : " + obj.Localidad + "\nMail : " + obj.Email + "\nTel :" + obj.Tel + "\nCel :" + obj.Cel; lbl_saldo.Text = obj.Saldo.ToString(); objcuenta = obj.DevolverCuentaCorriente(); lbl_creditos.Text = "DEBITOS"; lbl_debito.Text = "CREDITOS"; rb_credito.Text = "Debito"; rb_debito.Text = "Credito"; btn_Agregar.Text = " Agregar debito"; btn_AgregarDebito.Text = " Agregar Credito"; btn_actualizarSaldo.Visible = false; objpersona = obj; proveedor = true; ObjCajaDiaria = ocaja; }
public void EliminarOperacionesDe(Ccuenta_corriente obj) { if (obj.Debitos != null) { foreach (Crecibo_debito debito in obj.Debitos) { EliminarRefOperacion(debito, "[COBROS-RECIBOS]"); } Cdatos_operaciones.Eliminar("[RECIBOS_DEBITOS]", obj); } if (obj.Creditos != null) { foreach (Cpago_credito credito in obj.Creditos) { EliminarRefOperacion(credito, "[GASTOS-PAGOS]"); } Cdatos_operaciones.Eliminar("[PAGOS_CREDITOS]", obj); } }
public void CargarBajasDebitosyCreditos(Ccuenta_corriente obj) { DataTable DT = Cdatos_operaciones.DevolverDebitos(obj, false); int index = 0; Crecibo_debito oDebito; foreach (DataRow DR in DT.Rows) { oDebito = new Crecibo_debito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), false); obj.Debitos.Insert(index, oDebito); index++; if (DR[4].ToString() != "") { oDebito.Compra(new Ccompra(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[5]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDateTime(DR[8]))); } } DT = Cdatos_operaciones.DevolverCreditos(obj, false); index = 0; Cpago_credito oCredito = null; Cpago oPago; Ctrl_formas_pagos adm = Ctrl_formas_pagos.ClaseActiva(); foreach (DataRow DR in DT.Rows) { if (index == 0 || obj.Creditos[index].Numero != Convert.ToInt32(DR[0])) { oCredito = new Cpago_credito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), false); obj.Creditos.Insert(index, oCredito); index++; if (DR[4].ToString() != "") { oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10])); oCredito.Venta(new Cventa(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), oPago)); oCredito.ID_Caja_Diaria(Convert.ToInt32(DR[5])); } } else { oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10])); oCredito.Venta().Pago2 = oPago; } } }
public void AgregarOperacion(Cpago_credito objcredito, Ccuenta_corriente objcuenta) { if (ultimoCredito == 0) { ultimoCredito = Cdatos_operaciones.DevolverUltimo("[PAGOS_CREDITOS]"); } try { ultimoCredito++; objcredito.Numero = ultimoCredito; Cdatos_operaciones.Agregar("[PAGOS_CREDITOS]", objcredito, objcuenta, objcredito.Concepto); objcuenta.AgregarCredito(objcredito); Cdatos_cuentas_corrientes.Modificar(objcuenta); } catch { AgregarOperacion(objcredito, objcuenta); } }
public void AgregarOperacion(Crecibo_debito objDebito, Ccuenta_corriente objcuenta) { if (ultimoDebito == 0) { ultimoDebito = Cdatos_operaciones.DevolverUltimo("[RECIBOS_DEBITOS]"); } try { ultimoDebito++; objDebito.Numero = ultimoDebito; Cdatos_operaciones.Agregar("[RECIBOS_DEBITOS]", objDebito, objcuenta, objDebito.Concepto); objcuenta.AgregarDebito(objDebito); Cdatos_cuentas_corrientes.Modificar(objcuenta); } catch { AgregarOperacion(objDebito, objcuenta); } }
public bool TieneCreditosODebitos(Ccuenta_corriente obj) { CargarAltasDebitosyCreditos(obj); if (obj.Creditos.Count > 0) { return(true); } if (obj.Debitos.Count > 0) { return(true); } CargarBajasDebitosyCreditos(obj); if (obj.Creditos.Count > 0) { return(true); } if (obj.Debitos.Count > 0) { return(true); } return(false); }
public void Modificar(Ccuenta_corriente obj) { Cdatos_cuentas_corrientes.Modificar(obj); }
static public void Eliminar(string tabla, Ccuenta_corriente obj) { string cmdtext = "DELETE FROM " + tabla + " WHERE id_cuenta_corriente=" + obj.ID; cDatos.ActualizarDatos(cmdtext); }
static public DataTable DevolverDebitos(Ccuenta_corriente obj, bool alta) { string cmdtext = "SELECT R.numero,Concepto,Importe,R.fecha,Y.id_compra,Y.subtotal,Y.total,Y.descuento_obtenidos,Y.fecha FROM [RECIBOS_DEBITOS] R left join [Compras-DEBITOS] C on C.numero=R.numero left join [COMPRAS] Y on Y.id_compra= C.id_compra where id_cuenta_corriente=" + obj.ID + " and Alta='" + alta + "'"; return(cDatos.DevolverDatos(cmdtext)); }
private void btn_Guardar_Click(object sender, EventArgs e) { try{ Oconcepto = (Cconcepto)cb_concepto.SelectedItem; if (Gasto) { Cgasto obj = new Cgasto(Oconcepto, Convert.ToDecimal(txt_importe.Text), (Cforma_pago)cb_FormasPagos.SelectedValue); if (Ooperacion == null) { if (obj.FORMAPAGO().Altera_caja) { if (ObjCajaDiaria.Efec_final >= obj.Importe) { adm.AgregarOperacion(obj, ObjCajaDiaria); } else { throw new Exception("No tiene suficiente plata en caja como para pagar ese gasto"); } } else { adm.AgregarOperacion(obj, ObjCajaDiaria); } } else { if (obj.FORMAPAGO().Altera_caja) { if (ObjCajaDiaria.Efec_final < (obj.Importe - Ooperacion.Importe)) { throw new Exception("No tiene suficiente plata en caja como para pagar ese gasto"); } } adm.ModificarOperacion((Cgasto)Ooperacion, obj, ObjCajaDiaria); } if (cb_registrar.Checked) { Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); Cpago_credito objcu = new Cpago_credito(obj.Concepto, obj.Importe, DateTime.Today, true); Cproveedor objproveedor = ((Cproveedor)Opersona); admCuentas.CargarAltasDebitosyCreditos(objproveedor.DevolverCuentaCorriente()); admCuentas.AgregarOperacion(objcu, objproveedor.DevolverCuentaCorriente()); admCuentas.AgregarReferiaEntreOperacion(objcu, obj); } else { if (Opersona != null) { Cgasto ogasto = (Cgasto)Ooperacion; if (obj.Importe != ogasto.Credito().Importe) { Ccuenta_corriente cuenta = Opersona.DevolverCuentaCorriente(); ogasto.Credito().Importe = obj.Importe; cuenta.ModificarCredito(cuenta.BuscarCredito(ogasto.Credito().Numero), obj.Importe); Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); admCuentas.ModificarOperacion(ogasto.Credito()); } } } } else { Ccobro obj = new Ccobro(Oconcepto, Convert.ToDecimal(txt_importe.Text), (Cforma_pago)cb_FormasPagos.SelectedValue); if (Ooperacion == null) { adm.AgregarOperacion(obj, ObjCajaDiaria); } else { adm.ModificarOperacion((Ccobro)Ooperacion, obj, ObjCajaDiaria); } if (cb_registrar.Checked) { Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); Crecibo_debito objc = new Crecibo_debito(obj.Concepto, obj.Importe, DateTime.Today, true); Ccliente objcliente = ((Ccliente)Opersona); admCuentas.CargarAltasDebitosyCreditos(objcliente.DevolverCuentaCorriente()); admCuentas.AgregarOperacion(objc, objcliente.DevolverCuentaCorriente()); admCuentas.AgregarReferiaEntreOperacion(objc, obj); } else { if (Opersona != null) { Ccobro ocobro = (Ccobro)Ooperacion; if (obj.Importe != ocobro.Debito().Importe) { Ccuenta_corriente cuenta = Opersona.DevolverCuentaCorriente(); ocobro.Debito().Importe = obj.Importe; cuenta.ModificarDebito(cuenta.BuscarDebito(ocobro.Debito().Numero), obj.Importe); Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); admCuentas.ModificarOperacion(ocobro.Debito()); } } } } Close(); } catch (Exception ex) { Frm_confirmacion frm = new Frm_confirmacion(ex.Message, "Error", "Aceptar"); frm.ShowDialog(); } }
public void Eliminar(Ccuenta_corriente obj) { Cdatos_cuentas_corrientes.Eliminar(obj); }
public Ccuenta_corriente EliminarOperacion(Cpago_credito obj, bool tienepago, Ccuenta_corriente cuenta) { Cdatos_operaciones.EliminarReferenciaDebitosCreditos("Credito", obj); if (tienepago) { EliminarRefOperacion(obj, "[GASTOS-PAGOS]"); } Cdatos_operaciones.Eliminar("[PAGOS_CREDITOS]", obj); cuenta.EliminarCredito(obj); return(cuenta); }
public Ccuenta_corriente EliminarOperacion(Crecibo_debito obj, bool tienecobro, Ccuenta_corriente cuenta) { Cdatos_operaciones.EliminarReferenciaDebitosCreditos("Debito", obj); if (tienecobro) { EliminarRefOperacion(obj, "[COBROS-RECIBOS]"); } Cdatos_operaciones.Eliminar("[RECIBOS_DEBITOS]", obj); cuenta.EliminarDebito(obj); return(cuenta); }
public void CargarAltasDebitosyCreditos(Ccuenta_corriente obj) { if (obj.Creditos == null) { decimal saldoActual = obj.Saldo; obj.Saldo = 0; DataTable DT = Cdatos_operaciones.DevolverDebitos(obj, true); obj.Debitos = new List <Crecibo_debito>(); Crecibo_debito oDebito; foreach (DataRow DR in DT.Rows) { oDebito = new Crecibo_debito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), true); obj.AgregarDebito(oDebito); if (DR[4].ToString() != "") { oDebito.Compra(new Ccompra(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[5]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDateTime(DR[8]))); } } DT = Cdatos_operaciones.DevolverCreditos(obj, true); obj.Creditos = new List <Cpago_credito>(); Cpago_credito oCredito = null; int index = 0; Cpago oPago; Ctrl_formas_pagos adm = Ctrl_formas_pagos.ClaseActiva(); foreach (DataRow DR in DT.Rows) { if (index == 0) { oCredito = new Cpago_credito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), true); //obj.Creditos.Insert(index, oCredito); obj.AgregarCredito(oCredito); index++; if (DR[4].ToString() != "") { oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10])); oCredito.Venta(new Cventa(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDecimal(DR[6]) - Convert.ToDecimal(DR[7]), oPago)); oCredito.ID_Caja_Diaria(Convert.ToInt32(DR[5])); } } else { if (obj.Creditos[index - 1].Numero != Convert.ToInt32(DR[0])) { oCredito = new Cpago_credito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), true); //obj.Creditos.Insert(index, oCredito); obj.AgregarCredito(oCredito); index++; if (DR[4].ToString() != "") { oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10])); oCredito.Venta(new Cventa(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDecimal(DR[6]) - Convert.ToDecimal(DR[7]), oPago)); oCredito.ID_Caja_Diaria(Convert.ToInt32(DR[5])); } } else { oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10])); oCredito.Venta().Pago2 = oPago; } } } if (saldoActual != obj.Saldo) { Modificar(obj); } } }