public async Task LogItems([FromBody] ItemLoggingRequest request) { BbqEvent bbqEvent = this.context.Events.Find(request.Event.Id); if (bbqEvent == null) { this.context.Events.Add(request.Event); } BbqItem bbqItem = this.context.Items.Find(request.Item.Id); if (bbqItem == null) { this.context.Items.Add(request.Item); } foreach (BbqItemLog log in request.ItemLogs) { var existing = this.context.ItemLogs.Find(log.Id); if (existing == null) { this.context.ItemLogs.Add(log); } } await this.context.SaveChangesAsync(); }
public async Task <BbqItem> UpdateItemAsync(BbqItem bbqItem) { using (await this.dbLock.LockAsync()) { this.context.Items.Update(bbqItem); await this.context.SaveChangesAsync(); return(bbqItem); } }
public static void Load(this BbqItem item, BbqItemViewModel viewModel) { item.Id = viewModel.Id; item.BbqEventId = viewModel.BbqEventId; item.Name = viewModel.Name; item.CurrentPhase = viewModel.CurrentPhase; item.Weight = viewModel.Weight; item.TargetTemperature = viewModel.TargetTemperature; item.CookStartTime = viewModel.CookStartTime; item.ThermometerIndex = viewModel.ThermometerIndex; // Get the item type from the definition item.ItemType = viewModel.Definition.ItemType; }