using System; using System.Collections.Generic; using System.Linq; using System.Web.Security; using System.Web.UI; using Common; using System.Web; //2016-10-31 - create export log report - maanie public partial class AdminExport : Page { protected void Page_Load(object sender, EventArgs e) { if (User.Identity.IsAuthenticated && User.Identity.Name == "test@test.com") { FormsAuthentication.RedirectToLoginPage("RequireAuth=true"); return; } Trace.Warn(User.Identity.IsAuthenticated.ToString(), User.Identity.IsAuthenticated ? User.Identity.Name : "N/A"); if (IsPostBack) return; StartDateText.Text = DateTime.Now.AddDays(-30).ToString("MMMM d, yyyy"); StartDate.Value = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd"); EndDateText.Text = DateTime.Now.ToString("MMMM d, yyyy"); EndDate.Value = DateTime.Now.ToString("yyyy-MM-dd"); } protected void Export_Click(object sender, EventArgs e) { Trace.Warn("[Export_Click]"); Trace.Warn("StartDate", StartDate.Value); Trace.Warn("EndDate", EndDate.Value); using (var db = new DataModel()) { DateTime start; DateTime end; if (!DateTime.TryParse(StartDate.Value, out start) || !DateTime.TryParse(EndDate.Value, out end)) return; end = end.AddDays(1); //var invoices = db.vwInvoicesReadyToPrints.Where(w => w.DateCreated >= start && w.DateCreated < end).ToList(); //invoices = db.Invoices.ToList(); var dispatches = db.GetDispatchesReadyToExport(StartDate.Value.ToString(), EndDate.Value.ToString(), 1).ToList(); //hardcode to Personal Laundry now //var dispatches = db.GetDispatchesReadyToExport("2023-06-04", "2023-06-07", 1).ToList(); Trace.Warn("invoices.Count", dispatches.Count.ToString()); if (dispatches.Count <= 0) return; var exports = new List(); int documentNumber = 0; foreach (var dispatch in dispatches) { Trace.Warn("InvoiceId", dispatch.DeliveryId.ToString()); //var pastelExport = new PastelExport(invoice.InvoiceType, invoice.Id.Value, invoice.InvoiceId); //2016-09-29 - added additional column "Document Number" to export - maanie //2016-10-13 - removed workloadid and replaced it with the actual reference number - maanie var pastelExport = new PastelExport((int)dispatch.DeliveryId, (DateTime)dispatch.DateDelivered, dispatch.CustomerId, dispatch.Reference, documentNumber); Trace.Warn("Count", pastelExport.Rows.Count.ToString()); if (pastelExport.Result != null && !string.IsNullOrEmpty(pastelExport.Result)) { documentNumber++; exports.Add(pastelExport.Result); } } // invoices.Select(invoice => new PastelExport(invoice.InvoiceId).Result).ToList(); if (exports.Count <= 0) return; Response.ContentType = "Application/x-msexcel"; Response.AddHeader("content-disposition", "attachment; filename=\"pastel.csv\""); Response.Write(string.Join("\n", exports)); Response.End(); } } //2016-10-31 - create export log report - maanie protected void ExportLog_Click(object sender, EventArgs e) { using (var db = new DataModel()) { DateTime start; DateTime end; if (!DateTime.TryParse(StartDate.Value, out start) || !DateTime.TryParse(EndDate.Value, out end)) return; end = end.AddDays(1); var dispatches = db.GetDispatchesReadyToExport(StartDate.Value.ToString(), EndDate.Value.ToString(), 1).ToList(); //hardcode to Personal Laundry now //var dispatches = db.GetDispatchesReadyToExport("2023-06-04", "2023-06-07", 1).ToList(); if (dispatches.Count <= 0) return; var exports = new List(); var exportLog = new List(); int documentNumber = 0; foreach (var dispatch in dispatches) { Trace.Warn("InvoiceId", dispatch.DeliveryId.ToString()); //var pastelExport = new PastelExport(invoice.InvoiceType, invoice.Id.Value, invoice.InvoiceId); //2016-09-29 - added additional column "Document Number" to export - maanie //2016-10-13 - removed workloadid and replaced it with the actual reference number - maanie var pastelExport = new PastelExport((int)dispatch.DeliveryId, (DateTime)dispatch.DateDelivered, dispatch.CustomerId, dispatch.Reference, documentNumber); Trace.Warn("Count", pastelExport.Rows.Count.ToString()); if (pastelExport.Result != null && !string.IsNullOrEmpty(pastelExport.Result)) { documentNumber++; exports.Add(pastelExport.Result); } } // invoices.Select(invoice => new PastelExport(invoice.InvoiceId).Result).ToList(); if (exports.Count <= 0) return; exportLog = PastelExport.createPastelExportLog(documentNumber, StartDate.Value.ToString(), EndDate.Value.ToString()); Response.ContentType = "application/ms-excel"; Response.AddHeader("content-disposition", "attachment; filename=\"pastel_export_log.xls\""); Response.Write(string.Join("\n", exportLog)); Response.End(); } } }