/// <summary>
        /// Generate the view of the seats
        /// </summary>
        private void GenerateSeatings()
        {
            try
            {
                var                           details             = _seatingService.getSeatingDetails();
                List <Block>                  blockDetails        = _seatingService.getBlocksDetails();
                List <List <Seat> >           blockSeatDetailList = (List <List <Seat> >)details[2];
                ObservableCollection <SeatUI> row = null;
                ObservableCollection <ObservableCollection <SeatUI> > block = null;
                ObservableCollection <ObservableCollection <ObservableCollection <SeatUI> > > floors = null;

                var _floors = blockDetails.GroupBy(x => x.Floor)
                              .Select(g => g.First());

                var _floorCount = 0;
                foreach (var _floorDetails in _floors)//get floors
                {
                    floors = new ObservableCollection <ObservableCollection <ObservableCollection <SeatUI> > >();
                    var _blockDetails = blockDetails.Where(x => x.Floor == _floorDetails.Floor);
                    var _blockCount   = 0;
                    foreach (var _blocks in _blockDetails)//get blocks in each floor
                    {
                        block = new ObservableCollection <ObservableCollection <SeatUI> >();
                        var _blockRowCount   = 0;
                        var _blockRowDetails = _seatingService.getBlockRowsByBlockNo(_blocks.BlockNo);
                        foreach (var _rowDetails in _blockRowDetails)//get rows in each block
                        {
                            row = new ObservableCollection <SeatUI>();
                            var _rowSeats = _rowDetails.Seats;
                            foreach (var _seat in _rowSeats)
                            {
                                SeatUI seatDetails = new SeatUI();
                                seatDetails.BgColour   = Constants.initialSeatColour;
                                seatDetails.Width      = 15;
                                seatDetails.Height     = 18;
                                seatDetails.SeatNo     = _seat.SeatNo;
                                seatDetails.RowNo      = _blockRowCount;
                                seatDetails.BlockNo    = _blockCount;
                                seatDetails.FloorNo    = _floorCount;
                                seatDetails.TicketNo   = _seat.Ticket.TicketNo;
                                seatDetails.TicketType = _seat.Ticket.TicketType.TypeName;
                                seatDetails.IsEditable = true;
                                seatDetails.RowLetter  = _seat.BlockRow.RowLetter;
                                switch (seatDetails.TicketType)
                                {
                                case "Platinum":
                                    seatDetails.TicketTypeColour = Constants.platinumTickectColour;
                                    break;

                                case "Gold":
                                    seatDetails.TicketTypeColour = Constants.goldTickectColour;
                                    break;

                                case "Silver":
                                    seatDetails.TicketTypeColour = Constants.silverTickectColour;
                                    break;

                                case "Bronze":
                                    seatDetails.TicketTypeColour = Constants.bronzeTickectColour;
                                    break;

                                default:
                                    break;
                                }

                                if (_blocks.Direction.ToLower().Contains("left"))//align seats
                                {
                                    seatDetails.SeatAlignment = "Right";
                                }
                                else if (_blocks.Direction.ToLower().Contains("right"))
                                {
                                    seatDetails.SeatAlignment = "Left";
                                }

                                row.Add(seatDetails);
                            }
                            block.Add(row);
                            _blockRowCount++;
                        }
                        floors.Add(block);
                        _blockCount++;
                    }
                    SeatUIList.Add(floors);
                    _floorCount++;
                }
            }
            catch (Exception ex)
            {
                Status    = ex.Message;
                IsWarning = true;
            }
        }