public override void Process(ActionData actionData) { var documentId = actionData.GetAsInteger("DocumentId"); var document = _accountService.GetAccountTransactionDocumentById(documentId); if (document == null) { return; } var printerName = actionData.GetAsString("PrinterName"); var printerTemplateName = actionData.GetAsString("PrinterTemplateName"); var printer = _cacheService.GetPrinters().FirstOrDefault(x => x.Name == printerName); var printerTemplate = _cacheService.GetPrinterTemplates().FirstOrDefault(y => y.Name == printerTemplateName); if (printer == null) { printer = _applicationState.GetTransactionPrinter(); } if (printerTemplate == null) { var documentType = _cacheService.GetAccountTransactionDocumentTypeById(document.DocumentTypeId); printerTemplate = _cacheService.GetPrinterTemplates().First(x => x.Id == documentType.PrinterTemplateId); } if (printer == null) { return; } if (printerTemplate == null) { return; } _printerService.PrintObject(document, printer, printerTemplate); }
private void OnPrint(string obj) { var printer = _applicationState.GetTransactionPrinter(); var printerTemplateId = _cacheService.GetAccountTransactionDocumentTypeById(Model.DocumentTypeId).PrinterTemplateId; var printerTemplate = _cacheService.GetPrinterTemplates().First(x => x.Id == printerTemplateId); _printerService.PrintObject(Model, printer, printerTemplate); }