public async Task <IActionResult> GetById([FromRoute] int id) { try { var data = await _service.ReadById(id); return(Ok(new { data })); } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message)); } }
public async Task <IActionResult> GetPDF([FromRoute] int Id) { if (!ModelState.IsValid) { var exception = new { error = ResultFormatter.FormatErrorMessage(ModelState) }; return(new BadRequestObjectResult(exception)); } try { var indexAcceptPdf = Request.Headers["Accept"].ToList().IndexOf("application/pdf"); int timeoffsset = Convert.ToInt32(Request.Headers["x-timezone-offset"]); var model = await _service.ReadById(Id); if (model == null) { return(StatusCode((int)HttpStatusCode.NotFound, "Not Found")); } else { GarmentShippingInvoiceViewModel invoice = await _invoiceService.ReadById(model.InvoiceId); GarmentPackingListViewModel pl = await _packingListService.ReadById(invoice.PackingListId); GarmentCoverLetterViewModel cl = await _coverletterService.ReadByInvoiceId(invoice.Id); var PdfTemplate = new GarmentShippingInstructionPdfTemplate(); MemoryStream stream = PdfTemplate.GeneratePdfTemplate(model, cl, pl, invoice, timeoffsset); return(new FileStreamResult(stream, "application/pdf") { FileDownloadName = "Shipping Instruction - " + model.InvoiceNo + ".pdf" }); } } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message)); } }
public async Task <IActionResult> GetPDF([FromRoute] int Id) { if (!ModelState.IsValid) { var exception = new { error = ResultFormatter.FormatErrorMessage(ModelState) }; return(new BadRequestObjectResult(exception)); } try { var indexAcceptPdf = Request.Headers["Accept"].ToList().IndexOf("application/pdf"); int timeoffsset = Convert.ToInt32(Request.Headers["x-timezone-offset"]); var model = await _service.ReadById(Id); if (model == null) { return(StatusCode((int)HttpStatusCode.NotFound, "Not Found")); } else { List <GarmentShippingInvoiceViewModel> invoices = new List <GarmentShippingInvoiceViewModel>(); List <GarmentPackingListViewModel> packingLists = new List <GarmentPackingListViewModel>(); foreach (var invoiceItem in model.invoiceDetails) { GarmentShippingInvoiceViewModel invoice = await _invoiceService.ReadById(invoiceItem.invoiceId); GarmentPackingListViewModel pl = await _packingListService.ReadByInvoiceNo(invoiceItem.invoiceNo); invoices.Add(invoice); packingLists.Add(pl); } if (model.paymentType == "FORWARDER") { if (model.isFreightCharged) { var PdfTemplate = new GarmentShippingPaymentDispositionForwarderFCPDFTemplate(); MemoryStream stream = PdfTemplate.GeneratePdfTemplate(model, invoices, timeoffsset); return(new FileStreamResult(stream, "application/pdf") { FileDownloadName = model.dispositionNo + ".pdf" }); } else { var PdfTemplate = new GarmentShippingPaymentDispositionForwarderPDFTemplate(); MemoryStream stream = PdfTemplate.GeneratePdfTemplate(model, invoices, packingLists, timeoffsset); return(new FileStreamResult(stream, "application/pdf") { FileDownloadName = model.dispositionNo + ".pdf" }); } } else if (model.paymentType == "EMKL") { var PdfTemplate = new GarmentShippingPaymentDispositionEMKLPDFTemplate(); MemoryStream stream = PdfTemplate.GeneratePdfTemplate(model, invoices, timeoffsset); return(new FileStreamResult(stream, "application/pdf") { FileDownloadName = model.dispositionNo + ".pdf" }); } else { var PdfTemplate = new GarmentShippingPaymentDispositionCourierPDFTemplate(); MemoryStream stream = PdfTemplate.GeneratePdfTemplate(model, timeoffsset); return(new FileStreamResult(stream, "application/pdf") { FileDownloadName = model.dispositionNo + ".pdf" }); } } } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message)); } }