protected void ExecInvoiceActionView(ASC.CRM.Core.Entities.Invoice targetInvoice, InvoiceActionType actionType) { var invoiceActionViewControl = (InvoiceActionView)LoadControl(InvoiceActionView.Location); invoiceActionViewControl.ActionType = actionType; invoiceActionViewControl.TargetInvoice = targetInvoice; CommonContainerHolder.Controls.Add(invoiceActionViewControl); string headerTitle; switch (actionType) { case InvoiceActionType.Create: headerTitle = CRMInvoiceResource.CreateNewInvoice; break; case InvoiceActionType.Edit: headerTitle = String.Format(CRMInvoiceResource.EditInvoiceHeader, targetInvoice.Number); break; case InvoiceActionType.Duplicate: headerTitle = String.Format(CRMInvoiceResource.DuplicateInvoiceHeader, targetInvoice.Number); break; default: headerTitle = CRMInvoiceResource.CreateNewInvoice; break; } Master.CurrentPageCaption = headerTitle; Title = HeaderStringHelper.GetPageTitle(headerTitle); }
protected void ExecInvoicePdfView(ASC.CRM.Core.Entities.Invoice targetInvoice) { var pdfFile = Global.GetInvoicePdfExistingOrCreate(targetInvoice); MessageService.Send(HttpContext.Current.Request, MessageAction.InvoiceDownloaded, targetInvoice.Number); Response.Redirect(CommonLinkUtility.GetFullAbsolutePath(pdfFile.FileDownloadUrl)); }
protected override void PageLoad() { int invoiceID; if (int.TryParse(UrlParameters.ID, out invoiceID)) { ASC.CRM.Core.Entities.Invoice targetInvoice = Global.DaoFactory.GetInvoiceDao().GetByID(invoiceID); if (targetInvoice == null || !CRMSecurity.CanAccessTo(targetInvoice)) { Response.Redirect(PathProvider.StartURL() + "invoices.aspx"); } if (String.Compare(UrlParameters.Action, "edit", StringComparison.OrdinalIgnoreCase) == 0) { if (!CRMSecurity.CanEdit(targetInvoice)) { Response.Redirect(PathProvider.StartURL() + "invoices.aspx"); } ExecInvoiceActionView(targetInvoice, InvoiceActionType.Edit); } else if (String.Compare(UrlParameters.Action, "duplicate", StringComparison.OrdinalIgnoreCase) == 0) { ExecInvoiceActionView(targetInvoice, InvoiceActionType.Duplicate); } else if (String.Compare(UrlParameters.Action, "pdf", StringComparison.OrdinalIgnoreCase) == 0 && Global.CanDownloadInvoices) { if (!Global.CanDownloadInvoices) { Response.Redirect(PathProvider.StartURL() + "invoices.aspx"); } ExecInvoicePdfView(targetInvoice); } else { ExecInvoiceDetailsView(targetInvoice); } } else { if (String.Compare(UrlParameters.Action, "create", StringComparison.OrdinalIgnoreCase) == 0) { ExecInvoiceActionView(null, InvoiceActionType.Create); } //else if (String.Compare(UrlParameters.Action, "import", true) == 0) { // ExecImportView(); //} else { ExecListInvoiceView(); } } }
protected void ExecInvoiceDetailsView(ASC.CRM.Core.Entities.Invoice targetInvoice) { var invoiceDetailsView = (InvoiceDetailsView)LoadControl(InvoiceDetailsView.Location); invoiceDetailsView.TargetInvoice = targetInvoice; CommonContainerHolder.Controls.Add(invoiceDetailsView); var title = targetInvoice.Number.HtmlEncode(); Master.CurrentPageCaption = title; Master.CommonContainerHeader = Global.RenderItemHeaderWithMenu(title, EntityType.Invoice, false, true); Title = HeaderStringHelper.GetPageTitle(title); }
public static ASC.Files.Core.File GetInvoicePdfExistingOrCreate(ASC.CRM.Core.Entities.Invoice invoice) { var existingFile = invoice.GetInvoiceFile(); if (existingFile != null) { return(existingFile); } else { var newFile = PdfCreator.CreateFile(invoice); invoice.FileID = Int32.Parse(newFile.ID.ToString()); Global.DaoFactory.GetInvoiceDao().UpdateInvoiceFileID(invoice.ID, invoice.FileID); Global.DaoFactory.GetRelationshipEventDao().AttachFiles(invoice.ContactID, invoice.EntityType, invoice.EntityID, new[] { invoice.FileID }); return(newFile); } }
protected void ExecInvoicePdfView(ASC.CRM.Core.Entities.Invoice targetInvoice) { var pdfFile = Global.GetInvoicePdfExistingOrCreate(targetInvoice); Response.Redirect(CommonLinkUtility.GetFullAbsolutePath(pdfFile.FileDownloadUrl)); }