public ActionResult Item(int id) { var layout = _layoutManageService.GetLayoutAreas(id); var layoutItemViewModel = MapperManager.Map <LayoutItemViewModel>(layout); layoutItemViewModel.Venue = MapperManager.Map <VenueViewModel>(layout.Venue); layoutItemViewModel.AreasList = new AreasListViewModel { Areas = MapperManager.Map <List <AreaViewModel> >(layout.Areas) }; return(View(layoutItemViewModel)); }
protected override async Task SaveChanges() { // added item var venueModelForAdd = _dataSource.Where(x => x.Status == ModelInfo.NewItem).ToArray(); foreach (var item in venueModelForAdd) { var venueDto = new VenueDto { Description = item.Description, Address = item.Address, Phone = item.Phone, }; _venueService.CreateVenue(venueDto); } // updated item var venueModelForUpdate = _dataSource.Where(x => x.Status == ModelInfo.Changed).ToArray(); foreach (var item in venueModelForUpdate) { var venueDto = new VenueDto { Id = item.Id, Description = item.Description, Address = item.Address, Phone = item.Phone, }; _venueService.EditVenue(venueDto); } // deleted items var venueModelsForDelete = _dataSource.Where(x => x.Status == ModelInfo.Deleted).ToArray(); foreach (var item in venueModelsForDelete) { var layouts = _venueService.GetVenueLayouts(item.Id).Layouts; foreach (var layout in layouts) { var areas = _layoutService.GetLayoutAreas(layout.Id).Areas; foreach (var area in areas) { var seats = _areaService.GetAreaSeats(area.Id).Seats; foreach (var seatModel in seats) { _seatService.DeleteSeat(seatModel.Id); } _areaService.DeleteArea(area.Id); } _layoutService.DeleteLayout(layout.Id); } _venueService.DeleteVenue(item.Id); } }