public CreatedInvoiceVM CreateIinvoice(int id) { var order = orderRepository.Get(id); var invoice = DocumentGeneratorFactory.GetGenerator(DocumentTypeEnum.Invoice); invoice.Generate(id); invoice.InvoiceDocument.OrderId = id; invoice.InvoiceDocument.CustomerId = order.CustomerId; order.Invoiced = true; orderRepository.Update(order); orderRepository.AddInvoiceToOrder(invoice.InvoiceDocument); return(new CreatedInvoiceVM() { Id = invoice.InvoiceDocument.Id, InvoiceNmuber = invoice.InvoiceDocument.InvoiceNmuber }); }
private void GenerateMarkdownFiles(string outputDirectoryPath, AssemblyInfo assemblyInfo) { var documentGeneratorFactory = new DocumentGeneratorFactory(); // Write assembly file. var documentGenerator = documentGeneratorFactory.Create(assemblyInfo); var content = documentGenerator.Generate(); var filePath = Path.Combine(outputDirectoryPath, "api.md"); File.WriteAllText(filePath, content); outputDirectoryPath = Path.Combine(outputDirectoryPath, "api"); Directory.CreateDirectory(outputDirectoryPath); // Write namespace files and directories. foreach (var @namespace in assemblyInfo.Namespaces) { var directoryPath = Path.Combine(outputDirectoryPath, @namespace.Namespace); if (!Directory.Exists(directoryPath)) { Directory.CreateDirectory(directoryPath); } documentGenerator = documentGeneratorFactory.Create(@namespace); content = documentGenerator.Generate(); filePath = Path.Join(outputDirectoryPath, $"{@namespace.Namespace}.md"); File.WriteAllText(filePath, content); } // Write type files. foreach (var @namespace in assemblyInfo.Namespaces) { var directoryPath = Path.Combine(outputDirectoryPath, @namespace.Namespace); foreach (var typeInfo in @namespace.Types) { documentGenerator = documentGeneratorFactory.Create(typeInfo); content = documentGenerator.Generate(); filePath = Path.Combine(directoryPath, $"{typeInfo.Type.Name}.md"); File.WriteAllText(filePath, content); } } }
static void Main(string[] args) { DocumentGenerator d = DocumentGeneratorFactory.GetGenerator(FileType.CSV); FileInfo f = d.Generate("ItsAlive.CSV"); }