public IHttpActionResult GetDemeritReports(MeritReportDateModel search) { try { List <MeritReportViewModel> meritList = new List <MeritReportViewModel>(); List <MeritReportViewModel> reportMeritList = new List <MeritReportViewModel>(); IEnumerable <MeritReportEntityModel> merits = new List <MeritReportEntityModel>(); merits = _report.CreateReport(search.colorCodeId, search.fromDate, search.toDate, search.typeId, search.order); if (merits.Count() > 0) { foreach (MeritReportEntityModel merit in merits) { var a = meritList.Find(x => x.description == merit.Description && x.ntcNo == merit.NTCNo); if (a == null) { MeritReportViewModel meritView = new MeritReportViewModel(); meritView.id = merit.ID; meritView.fullName = merit.FullName; meritView.description = merit.Description; meritView.inqueryDate = merit.InqueryDate.ToString(@"yyyy-MM-dd"); meritView.ntcNo = merit.NTCNo; meritView.count = 1; meritList.Add(meritView); } else { a.count++; } } reportMeritList = meritList.Where(x => x.count > 2).ToList(); } var messageData = new { code = Constant.SuccessMessageCode, message = Constant.MessageSuccess }; var returnObject = new { roleList = reportMeritList, messageCode = messageData }; return(Ok(returnObject)); } catch (Exception ex) { string errorLogId = _eventLog.WriteLogs(User.Identity.Name, ex, MethodBase.GetCurrentMethod().Name); var messageData = new { code = Constant.ErrorMessageCode, message = String.Format(Constant.MessageTaskmateError, errorLogId) }; var returnObject = new { messageCode = messageData }; return(Ok(returnObject)); } }
public HttpResponseMessage CancelationReport(DateTime fromDate, DateTime toDate, int typeId, string order) { try { List <MeritReportViewModel> meritList = new List <MeritReportViewModel>(); List <MeritReportViewModel> reportMeritList = new List <MeritReportViewModel>(); IEnumerable <MeritReportEntityModel> merits = new List <MeritReportEntityModel>(); merits = _report.CreateReport(1, fromDate, toDate, typeId, order); if (merits.Count() > 0) { foreach (MeritReportEntityModel merit in merits) { var a = meritList.Find(x => x.description == merit.Description && x.ntcNo == merit.NTCNo); if (a == null) { MeritReportViewModel meritView = new MeritReportViewModel(); meritView.id = merit.ID; meritView.fullName = merit.FullName; meritView.description = merit.Description; meritView.inqueryDate = merit.InqueryDate.ToString(@"yyyy-MM-dd"); meritView.ntcNo = merit.NTCNo; meritView.count = 1; meritList.Add(meritView); } else { a.count++; } } meritList = meritList.Where(x => x.count > 2).ToList(); } MemoryStream stream = new MemoryStream(); HttpResponseMessage result = new HttpResponseMessage(); using (var package = new ExcelPackage(stream)) { ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Report - " + DateTime.Now.ToShortDateString()); // Add some formatting to the worksheet worksheet.TabColor = System.Drawing.Color.Blue; worksheet.DefaultRowHeight = 12; worksheet.HeaderFooter.FirstFooter.LeftAlignedText = string.Format("Generated: {0}", DateTime.Now.ToShortDateString()); worksheet.Row(1).Height = 20; worksheet.Row(2).Height = 18; // Start adding the header _exel.CreateExcelHeader(worksheet, "Cancelation Of License Report", 1, 2, "A1", "H1", false, true); _exel.CreateExcelHeader(worksheet, "NTC NO", 3, 1, "A4", "B4", true, true); _exel.CreateExcelHeader(worksheet, "Driver Name", 3, 2, "C4", "D4", false, true); _exel.CreateExcelHeader(worksheet, "Offence", 3, 3, "E4", "F4", false, true); _exel.CreateExcelHeader(worksheet, "Pannel Date", 3, 4, "G4", "H4", false, true); int rowId = 5; int receiptCount = meritList.Count(); foreach (var s in meritList) { _exel.CreateExcelContents(worksheet, s.ntcNo, rowId, 1, "A" + rowId, "B" + rowId, true, true, false, false, "", ""); _exel.CreateExcelContents(worksheet, s.fullName, rowId, 2, "C" + rowId, "D" + rowId, true, true, false, false, "", ""); _exel.CreateExcelContents(worksheet, s.description, rowId, 3, "E" + rowId, "F" + rowId, true, true, false, false, "", ""); _exel.CreateExcelContents(worksheet, s.inqueryDate, rowId, 4, "G" + rowId, "H" + rowId, true, true, false, false, "", ""); rowId += 1; } package.Workbook.Properties.Title = "CANCELATION OF LICENSE REPORT"; package.Workbook.Properties.Author = "NTC"; package.Workbook.Properties.Company = "NTC"; result.Content = new ByteArrayContent(package.GetAsByteArray()); } result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = "Cancelation Of License Report - " + DateTime.Now.ToShortDateString() + ".xlsx" }; return(result); } catch (Exception ex) { return(null); } }