Beispiel #1
0
        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);
            }
        }
Beispiel #2
0
 public async Task <IActionResult> SaveDayList([FromBody] CreateDayListViewModel model)
 {
     return(Json(await _dayListService.CreateDayList(model)));
 }