public async Task <IdModel> CreateTemplate(ShoppingTemplateModel shoppingTemplate, CancellationToken cancellationToken) { var document = new ShoppingTemplateDocument(shoppingTemplate); await templatesCollection.InsertOneAsync(document, cancellationToken : cancellationToken); return(document.Id.ToIdModel()); }
public async Task <ShoppingTemplateModel> CreateTemplate(ShoppingTemplateInfo templateInfo, CancellationToken cancellationToken) { logger.LogInformation("Creating template {@TemplateInfo} ...", templateInfo); var shoppingTemplate = new ShoppingTemplateModel { Title = templateInfo.Title, Items = new List <ShoppingItemModel>(), }; var templateId = await repository.CreateTemplate(shoppingTemplate, cancellationToken); shoppingTemplate.Id = templateId; logger.LogInformation("Created template with id {TemplateId}", templateId); return(shoppingTemplate); }
public OutputShoppingTemplateData(ShoppingTemplateModel shoppingTemplate) : base(shoppingTemplate) { Items = shoppingTemplate.Items.Select(x => new ShoppingItemData(x)).ToList(); }
public ShoppingTemplateDocument(ShoppingTemplateModel shoppingTemplate) { Id = shoppingTemplate.Id?.ToObjectId() ?? default; Title = shoppingTemplate.Title; Items = shoppingTemplate.Items.Select(x => new ShoppingItemDocument(x)).ToList(); }