Exemplo n.º 1
0
        public ActionResult Item(int id)
        {
            var venueItem = _venueManagementService.GetVenueLayouts(id);

            var venueItemViewModel = MapperManager.Map <VenueItemViewModel>(venueItem);

            venueItemViewModel.LayoutsList = new LayoutsListViewModel
            {
                Layouts = MapperManager.Map <List <LayoutViewModel> >(venueItem.Layouts)
            };

            return(View(venueItemViewModel));
        }
Exemplo n.º 2
0
        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);
            }
        }