private void ObtenerActasParaCobrar(string cuit) { using (var context = new lts_sindicatoDataContext()) { cobranzas cbr = new cobranzas(); var ActasSinActualizar = (from a in context.AsignarCobranza where a.CobradorID == CobradorId && a.NroAsignacion == NroDeAsignacion && cuit == a.CUIT join b in context.ACTAS on a.Acta equals b.ACTA select new { Fecha = b.FECHA, Acta = b.ACTA, desde = b.DESDE, hasta = b.HASTA, DeudaOriginal = b.DEUDATOTAL, ImporteCobrado = b.IMPORTECOBRADO, FaltaCobrar = b.DIFERENCIA, Diferencia = b.DIFERENCIA, Inspector = b.INSPECTOR }).ToList(); var ActasParaCobrar = (ActasSinActualizar.Select(x => new { x.Fecha, x.Acta, x.desde, x.hasta, x.DeudaOriginal, x.ImporteCobrado, x.FaltaCobrar, x.Diferencia, x.Inspector, Interes = cbr.ObtenerImporteDeInteres(Convert.ToDateTime(x.Fecha), (x.Diferencia < 0) ? Convert.ToDecimal(x.Diferencia * -1) : 0, Convert.ToDecimal(txt_Interes.Text)), ImporteDeudaActualizada = cbr.ObtenerImporteDeInteres(Convert.ToDateTime(x.Fecha), (x.Diferencia < 0) ? Convert.ToDecimal(x.Diferencia * -1) : 0, Convert.ToDecimal(txt_Interes.Text)) + Convert.ToDecimal(x.Diferencia * -1) })); dgv_ActasParaCobrar.DataSource = ActasParaCobrar.ToList(); txt_TotalDeudaInicial.Text = Math.Round(Convert.ToDecimal(ActasParaCobrar.Sum(x => x.DeudaOriginal)), 2).ToString("N2"); txt_TotalIntereses.Text = Math.Round(ActasParaCobrar.Sum(x => x.Interes), 2).ToString("N2"); txt_TotalDeuda.Text = Math.Round(ActasParaCobrar.Sum(x => x.ImporteDeudaActualizada), 2).ToString("N2"); txt_DeudaInicial.Text = txt_TotalDeuda.Text; txt_Anticipo.Text = (Convert.ToDouble(txt_TotalDeuda.Text) * 0.10).ToString("N2"); Anticipo = Convert.ToDouble(txt_Anticipo.Text); dtp_VencAnticipo.Value = DateTime.Today.AddDays(5); dtp_VencCuota.Value = DateTime.Today.AddMonths(1); txt_Deuda.Text = (Convert.ToDouble(txt_TotalDeuda.Text) - Convert.ToDouble(txt_Anticipo.Text)).ToString("N2"); } }
private void ActualizarDeuda(DataGridView Dgv) { cobranzas cbr = new cobranzas(); foreach (DataGridViewRow fila in Dgv.Rows) { if (Convert.ToDecimal(fila.Cells["Diferencia"].Value) < 0) { DateTime FechaVencimientoDeActa = Convert.ToDateTime(fila.Cells["FECHA"].Value); //decimal ImporteDelActa = Convert.ToDecimal(fila.Cells["DeudaTotal"].Value); decimal ImporteDelActa = Convert.ToDecimal(fila.Cells["Diferencia"].Value) * -1; //multiplico por -1 por que toma el campo de diferencia y siempre va a ser negativo si es que falta cobrar decimal ImporteDelInteres = cbr.ObtenerImporteDeInteres(FechaVencimientoDeActa, ImporteDelActa, Convert.ToDecimal(txt_Interes.Text)); fila.Cells["IMPORTEINTERESACTUALIZADO"].Value = ImporteDelInteres; fila.Cells["ImporteDeudaActualizada"].Value = ImporteDelInteres + ImporteDelActa; } } }
private void btn_Join_Click(object sender, EventArgs e) { using (var context = new lts_sindicatoDataContext()) { //var ActaCobrador = from a in context.ACTAS // join b in context.AsignarCobranza // on a.ACTA equals b.Acta // into c // from d in c.DefaultIfEmpty() // select new // { // Acta = a.ACTA, // cobrador = (int?)d.CobradorID // }; //dgv1.DataSource = ActaCobrador.ToList(); cobranzas cbr = new cobranzas(); string inspector = "HERRERA"; var IntervaloDeFechas = cbr.ObtenerIntervaloDeFechas(msk_Desde.Text, msk_Hasta.Text); //var actas = from a in context.ACTAS // join b in context.AsignarCobranza // on a.ACTA equals b.Acta // into c // from d in c.DefaultIfEmpty() // join f in context.Cobradores // on d.CobradorID equals f.ID // into g // from h in g.DefaultIfEmpty() // where a.ACTA > 0 && // inspector == "TODOS" ? a.INSPECTOR != "TODOS" : a.INSPECTOR == inspector && // a.DEUDATOTAL > 0 && // a.FECHA >= IntervaloDeFechas.Desde && // a.FECHA <= IntervaloDeFechas.Hasta.Date // orderby a.FECHA // select new var actas = from a in context.ACTAS join b in context.AsignarCobranza on a.ACTA equals b.Acta into c from d in c.DefaultIfEmpty() join f in context.Cobradores on d.CobradorID equals f.ID into g from h in g.DefaultIfEmpty() where a.ACTA > 0 && inspector == "TODOS" ? a.INSPECTOR != "TODOS" : a.INSPECTOR == inspector && a.DEUDATOTAL > 0 && a.FECHA >= IntervaloDeFechas.Desde && a.FECHA <= IntervaloDeFechas.Hasta.Date orderby a.FECHA select new { a.FECHA, a.ACTA, a.EMPRESA, a.CUIT, a.DOMICILIO, a.DESDE, a.HASTA, a.DEUDAHISTORICA, a.INTERESES, a.DEUDAACTUALIZADA, a.INTERESFINANC, a.DEUDATOTAL, a.COBRADOTOTALMENTE, a.INSPECTOR, a.OBSERVACIONES, a.IMPORTECOBRADO, a.DIFERENCIA, a.ESTUDIO_JURIDICO, a.MONTO_CERTIF_ACTA, cobrador = (int?)d.CobradorID, h.Nombre, ImporteInteresActualizado = cbr.ObtenerImporteDeInteres(Convert.ToDateTime(a.FECHA), (a.DIFERENCIA < 0) ? Convert.ToDecimal(a.DIFERENCIA * -1) : 0, 3), ImporteDeudaActualizada = cbr.ObtenerDeudaTotalConInteres(Convert.ToDateTime(a.FECHA), (a.DIFERENCIA < 0) ? Convert.ToDecimal(a.DIFERENCIA * -1) : 0, 3, Convert.ToDecimal(a.DIFERENCIA)) }; dgv1.DataSource = actas.ToList(); lbl_CantidadDeActas.Text = actas.Count().ToString(); } }