public async Task <List <ElementModel> > AddRoomElements(RoomElementWarpper wrapper) { List <int> roomIds = new List <int>(); foreach (ElementModel model in wrapper.Elements) { if (model.Id == 0) { var element = model.MapTo <WaitingRoomElements>(); element.IsDeleted = false; _dbContext.WaitingRoomElement.Add(element); await _dbContext.SaveChangesAsync(); model.Id = element.Id; roomIds.Add(element.Id); } else { var element = await _dbContext.WaitingRoomElement.Where(item => item.Id == model.Id).FirstOrDefaultAsync(); element.Position = model.Position; element.Content = model.Content; element.ElementType = model.ElementType; await _dbContext.SaveChangesAsync(); roomIds.Add(model.Id); } } var elements = await _dbContext.WaitingRoomElement.Where(item => wrapper.DeleteElements.Contains(item.Id)).ToListAsync(); foreach (WaitingRoomElements em in elements) { em.IsDeleted = true; await _dbContext.SaveChangesAsync(); } return(wrapper.Elements); }
public async Task <List <ElementModel> > AddRoomElements(RoomElementWarpper wrapper) { return(await _repo.AddRoomElements(wrapper)); }
public async Task <List <ElementModel> > AddRoomElement([FromBody] RoomElementWarpper model) { return(await _manager.AddRoomElements(model)); }