public async Task <JsonResponse> CreateDayList(CreateDayListViewModel model) { var transact = _context.Database.BeginTransaction(); var response = new JsonResponse(); try { var dayList = new DayList() { Name = model.name, DateAdded = _dateProvider.GetCurrentDateTime(), SubscriberUserId = _userProvider.GetUserId() }; _context.DayLists.Add(dayList); await _context.SaveChangesAsync(); foreach (var place in model.dayListPlaces) { _context.PlaceDayLists.Add(new PlaceDayList() { PlaceId = place.Id, DayListId = dayList.Id, ZoomLevel = 8 }); } await _context.SaveChangesAsync(); transact.Commit(); return(response); } catch { transact.Rollback(); response.Success = false; response.Errors.Add("An error occurred while writing to the database."); return(response); } }
public async Task <IActionResult> SaveDayList([FromBody] CreateDayListViewModel model) { return(Json(await _dayListService.CreateDayList(model))); }