/// <summary> /// запис на файл за бюлетин към лице /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <bool> SaveFileBulletin(int id) { TinyMCEVM htmlModel = printDocumentService.FillHtmlTemplateSentenceBulletin(id); string html = await this.RenderPartialViewAsync("~/Views/Shared/", "PreviewRaw.cshtml", htmlModel, true); var pdfBytes = await new ViewAsPdfByteWriter("CreatePdf", new BlankEditVM() { HtmlContent = html }) { PageSize = Rotativa.AspNetCore.Options.Size.B5 } .GetByte(this.ControllerContext); var pdfRequest = new CdnUploadRequest() { SourceType = SourceTypeSelectVM.CasePersonBulletin, SourceId = id.ToString(), FileName = "bulletin.pdf", ContentType = "application/pdf", Title = "Бюлетин за съдимост", FileContentBase64 = Convert.ToBase64String(pdfBytes) }; bool result = await cdnService.MongoCdn_AppendUpdate(pdfRequest); Response.Headers.Clear(); return(result); }
/// <summary> /// Запис на файл за бланка /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <IActionResult> PrintBlankByTemplate(int id) { TinyMCEVM htmlModel = printService.FillHtmlTemplateDocumentTemplate(id); string html = await this.RenderPartialViewAsync("~/Views/Shared/", "PreviewRaw.cshtml", htmlModel, true); var pdfBytes = await new ViewAsPdfByteWriter("CreatePdf", new BlankEditVM() { HtmlContent = html }, true).GetByte(this.ControllerContext); return(File(pdfBytes, System.Net.Mime.MediaTypeNames.Application.Pdf, "Template" + id.ToString() + ".pdf")); }
/// <summary> /// Зареждане на бланка по документ /// </summary> /// <param name="id"></param> /// <param name="preparedBlank"></param> /// <returns></returns> private async Task <string> FillBlankByTemplate(int id, string preparedBlank = null) { string result = ""; TinyMCEVM htmlModel = printService.FillHtmlTemplateDocumentTemplate(id, preparedBlank); if (htmlModel == null) { return(result); } return(await this.RenderPartialViewAsync("~/Views/Shared/", "PreviewRaw.cshtml", htmlModel, true)); }
private async Task <BlankEditVM> InitBlankFromTemplate(int id, bool del) { var docTemplate = service.GetById <DocumentTemplate>(id); int sourceType = SourceTypeSelectVM.DocumentTemplate; if (del) { var deleted = await cdnService.MongoCdn_DeleteFiles(new CdnFileSelect() { SourceType = sourceType, SourceId = id.ToString() }); } string html = await cdnService.LoadHtmlFileTemplate(new CdnFileSelect() { SourceType = sourceType, SourceId = id.ToString() }); if (string.IsNullOrEmpty(html)) { TinyMCEVM htmlModel = printService.FillHtmlTemplateDocumentTemplate(id); html = htmlModel.Text; } var model = new BlankEditVM() { Title = "Изготвяне на документ към " + SourceTypeSelectVM.GetSourceTypeName(sourceType).ToLower(), SourceType = sourceType, SourceId = id.ToString(), HtmlHeader = string.Empty, HtmlContent = html, HtmlFooter = string.Empty, FooterIsEditable = false, ReturnUrl = Url.Action(nameof(Edit), new { id }), HasPreviewButton = true, HasResetButton = true, }; if (docTemplate.HtmlTemplateId > 0) { var htmlTemplate = service.GetById <HtmlTemplate>(docTemplate.HtmlTemplateId); var htmlModel = printService.ConvertToTinyMCVM(htmlTemplate, false); model.TemplateStyle = htmlModel.Style; } return(model); }
private async Task <byte[]> PdfBytesFromTemplate(int id, string preparedBlank = null) { TinyMCEVM htmlModel = printService.FillHtmlTemplateDocumentTemplate(id, preparedBlank); if (htmlModel == null) { return(null); } return(await new ViewAsPdfByteWriter("~/Views/Shared/PreviewRaw.cshtml", htmlModel, true, GetFooterInfoUrl(userContext.CourtId)) { PageOrientation = (Orientation)htmlModel.PageOrientation, PageMargins = new Margins(20, 20, 10, 30), //PageMargins = new Margins(10, 5, 10, 5), PageSize = Size.A4, CustomSwitches = htmlModel.SmartShrinkingPDF ? "" : "--disable-smart-shrinking" }.GetByte(this.ControllerContext)); }
/// <summary> /// Запис на файл за Протокол на изпращане на ИЛ в НАП /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <bool> SaveFileExchangeDoc(int id) { TinyMCEVM htmlModel = printService.FillHtmlTemplateExchangeDoc(id); string html = await this.RenderPartialViewAsync("~/Views/Shared/", "PreviewRaw.cshtml", htmlModel, true); var pdfBytes = await new ViewAsPdfByteWriter("CreatePdf", new BlankEditVM() { HtmlContent = html }, true).GetByte(this.ControllerContext); var pdfRequest = new CdnUploadRequest() { SourceType = SourceTypeSelectVM.ExchangeDoc, SourceId = id.ToString(), FileName = "exchangeDoc.pdf", ContentType = "application/pdf", Title = "Протокол на изпращане на ИЛ в НАП", FileContentBase64 = Convert.ToBase64String(pdfBytes) }; bool result = await cdnService.MongoCdn_AppendUpdate(pdfRequest); Response.Headers.Clear(); return(result); }