public ActionResult ArMaintenance() { var crs = from c in db.CRs join h in db.CRs_hs on c.crID equals h.crID join f in db.Fleets on c.VINnumber equals f.VinNumber select new { c.WAnumber, c.VINnumber, f.LogNumber, c.Status, hStatus = h.Status, h.Modified, c.Supplier, c.Suppliername, c.Subtotal, c.IVA, c.Total, c.Invoicenumber, c.Invoicedate, c.FleetNumber, c.UnitNumber, }; crs = crs.Where(s => s.Status.Equals("Closed")); crs = crs.Where(s => s.hStatus.Equals("Closed")); crs = crs.Where(s => !s.Suppliername.Equals("Treka")); DateTime time = DateTime.Now; DayOfWeek day = CultureInfo.InvariantCulture.Calendar.GetDayOfWeek(time); if (day >= DayOfWeek.Monday && day <= DayOfWeek.Wednesday) { time = time.AddDays(3); } // Return the week of our adjusted day int week = CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(time, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); List <APMaintenance> aPMaintenance = new List <Models.APMaintenance>(); foreach (var item in crs) { APMaintenance ag = new APMaintenance(); ag.JournalSource = "recivables"; ag.CorpCode = 501; ag.FleetNumber = item.FleetNumber; ag.UnitNumber = item.UnitNumber; ag.ProcessDate = item.Modified.ToString("MMM-yy"); ag.CRNumber = item.WAnumber; ag.PartyName = item.Supplier.ToString() + item.Suppliername; ag.TransactionDate = item.Invoicedate; ag.CurrencyCode = "MXN"; ag.TCInvoice = 1; ag.TCPayment = 1; ag.ExternalDocLocator = item.Invoicenumber; ag.NET = item.Subtotal; ag.charge = true; ag.InternalDocumentLocator = "Pha" + DateTime.Now.Year.ToString() + week.ToString(); ag.DAN = item.LogNumber; ag.EnteredDrSUM = 0; ag.EnteredCrSUM = item.Total; ag.NET = item.Total; ag.AccountedDrSUM = 0; ag.AccountedCrSUM = item.Total; aPMaintenance.Add(ag); } return(View(aPMaintenance.Distinct())); }
public ActionResult ExportArMaintenanceReport() { GridView gv = new GridView(); var crs = from c in db.CRs join h in db.CRs_hs on c.crID equals h.crID join f in db.Fleets on c.VINnumber equals f.VinNumber select new { c.WAnumber, c.VINnumber, f.LogNumber, c.Status, hStatus = h.Status, h.Modified, c.Supplier, c.Suppliername, c.Subtotal, c.IVA, c.Total, c.Invoicenumber, c.Invoicedate, c.FleetNumber, c.UnitNumber, }; crs = crs.Where(s => s.Status.Equals("Closed")); crs = crs.Where(s => s.hStatus.Equals("Closed")); crs = crs.Where(s => !s.Suppliername.Equals("Treka")); DateTime time = DateTime.Now; DayOfWeek day = CultureInfo.InvariantCulture.Calendar.GetDayOfWeek(time); if (day >= DayOfWeek.Monday && day <= DayOfWeek.Wednesday) { time = time.AddDays(3); } // Return the week of our adjusted day int week = CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(time, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); List <APMaintenance> aPMaintenance = new List <Models.APMaintenance>(); foreach (var item in crs) { APMaintenance ag = new APMaintenance(); ag.JournalSource = "payables"; ag.CorpCode = 501; ag.FleetNumber = item.FleetNumber; ag.UnitNumber = item.UnitNumber; ag.ProcessDate = item.Modified.ToString("MMM-yy"); ag.CRNumber = item.WAnumber; ag.PartyName = item.Supplier.ToString() + item.Suppliername; ag.TransactionDate = item.Invoicedate; ag.CurrencyCode = "MXN"; ag.TCInvoice = 1; ag.TCPayment = 1; ag.ExternalDocLocator = item.Invoicenumber; ag.NET = item.Subtotal; ag.charge = true; ag.InternalDocumentLocator = "Pha" + DateTime.Now.Year.ToString() + week.ToString(); ag.DAN = item.LogNumber; ag.EnteredDrSUM = 0; ag.EnteredCrSUM = item.Total; ag.NET = item.Total; ag.AccountedDrSUM = 0; ag.AccountedCrSUM = item.Total; aPMaintenance.Add(ag); } gv.DataSource = aPMaintenance.Distinct(); gv.DataBind(); Response.ClearContent(); Response.Buffer = true; Response.AddHeader("content-disposition", "attachment; filename=ARmaintenance.xls"); Response.ContentType = "application/ms-excel"; Response.Charset = ""; StringWriter sw = new StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); gv.RenderControl(htw); Response.Output.Write(sw.ToString()); Response.Flush(); Response.End(); db.SaveChanges(); return(RedirectToAction("ApMaintenance")); }