public ActionResult Detalle(int idPago) { try { var consultapagofacturas = db.pagofacturas.Where(x => x.Pago_Id == idPago).ToList(); var listapagofacturas = new List <pagofacturas>(); foreach (var item in consultapagofacturas) { pagofacturas pagofacturas = new pagofacturas(); pagofacturas.factura = item.factura; pagofacturas.pago = item.pago; listapagofacturas.Add(pagofacturas); } var facturasagrupadas = from pf in listapagofacturas group pf by pf.factura.proveedor.RazonSocial into g select new Group <string, pagofacturas> { Key = g.Key, Values = g, TotalPagado = g.Sum(x => x.factura.Total) }; return(PartialView(facturasagrupadas.ToList())); } catch (Exception) { return(null); } }
public ActionResult PagarFactura(int?id) { try { factura factura = db.factura.FirstOrDefault(x => x.id == id); if (factura != null) { if (factura.StatusFactura_Id != 2) { var numeroActual = db.pago.ToList().Count(); int numeroPago = int.Parse(numeroActual.ToString()) + 1; factura.StatusFactura_Id = 2; factura.FechaPago = DateTime.Now; pago pagos = new pago(); pagos.Numero = numeroPago; pagos.FechaPago = DateTime.Now; pagos.FechaRegistro = DateTime.Now; pagos.AspNetUsers_Id = User.Identity.GetUserId(); pagos.MontoTotal = factura.Total; pagos.StatusPago_Id = 1; db.pago.Add(pagos); db.SaveChanges(); pagofacturas pagosFacturas = new pagofacturas(); pagosFacturas.Factura_Id = (int)id; pagosFacturas.Pago_Id = pagos.id; db.pagofacturas.Add(pagosFacturas); db.SaveChanges(); return(Json("Success", JsonRequestBehavior.AllowGet)); } else { return(Json("Error", JsonRequestBehavior.AllowGet)); } } return(null); } catch (Exception _ex) { Console.Write(_ex.Message.ToString()); return(Json("Error", JsonRequestBehavior.AllowGet)); } }
public ActionResult PagoFacturas(facturasCE model, string fechaPago, string totalSumar) { try { var facturasSeleccionadas = model.FacturasPorPagar.Where(x => x.IsChecked == true).ToList <factura>(); var numeroActual = db.pago.ToList().Count(); int numeroPago = int.Parse(numeroActual.ToString()) + 1; pago pagos = new pago(); pagos.StatusPago_Id = 1; pagos.FechaRegistro = DateTime.Now; pagos.Numero = numeroPago; pagos.FechaPago = DateTime.Parse(fechaPago); pagos.MontoTotal = decimal.Parse(totalSumar); pagos.AspNetUsers_Id = User.Identity.GetUserId(); db.pago.Add(pagos); foreach (var item in facturasSeleccionadas) { factura facturas = db.factura.Find(item.id); facturas.StatusFactura_Id = 2; facturas.FechaPago = DateTime.Parse(fechaPago); pagofacturas pagosFacturas = new pagofacturas(); pagosFacturas.Factura_Id = facturas.id; pagosFacturas.Pago_Id = pagos.id; db.pagofacturas.Add(pagosFacturas); } EnviarCorreo(); db.SaveChanges(); return(RedirectToAction("Index")); } catch (Exception _ex) { Console.WriteLine(_ex.Message.ToString()); return(null); } }