Ejemplo n.º 1
0
        public JsonResult CreateSvgRows(SectorInfo sectorInfo)
        {
            int sectorId = 0;
            int maxRow = 0;
            int maxCol = 0;
            int svgX = 0;
            int svgY = 25;
            int spaceX = 10;
            int spaceY = 45;

            if (sectorInfo.SectorId == 0)
            {
                using (var ctx = new TicketDbContext())
                {
                    sectorId = ctx.Sectors.First().Id;
                    maxRow = ctx.Seats.Where(r => r.Sector.Id == sectorId).Max(s => s.Row);
                    maxCol = ctx.Seats.Where(r => r.Sector.Id == sectorId).Max(c => c.Number);
                }
            }
            else
            {
                sectorId = sectorInfo.SectorId;
                maxRow = sectorInfo.RowNumber;
                maxCol = sectorInfo.SeatNumber;

            }

            SVG_model[] k = new SVG_model[maxRow];
            int rowNumberX = maxCol*70 + 140;

            for (int i = 0; i < maxRow; i++)
            {
                SVG_model test = new SVG_model();
                test.svgId = "R " + (i + 1) + "";
                test.svgRow = i + 1;
                test.svgX = 25;
                test.svgY = (svgY + spaceY)*i + 30;
                k[i] = test;
            }

            return Json(k, JsonRequestBehavior.AllowGet);
        }
Ejemplo n.º 2
0
        public JsonResult CreateSvgItems(SectorInfo sectorInfo)
        {
            int sectorId = 0;
            int maxRow = 0;
            int maxCol = 0;
            int eventId;
            int svgX = 60;
            int svgY = 60;
            int spaceX = 10;
            int spaceY = 10;

            if (sectorInfo.SectorId == 0)
            {
                using (var ctx = new TicketDbContext())
                {
                    sectorId = ctx.Sectors.First().Id;
                    eventId = ctx.Events.First().Id;
                    maxRow = ctx.Seats.Where(r => r.Sector.Id == sectorId).Max(s => s.Row);
                    maxCol = ctx.Seats.Where(r => r.Sector.Id == sectorId).Max(c => c.Number);
                }
            }
            else
            {
                sectorId = sectorInfo.SectorId;
                eventId = sectorInfo.EventId;
                maxRow = sectorInfo.RowNumber;
                maxCol = sectorInfo.SeatNumber;
            }

            SVG_model[,] k = new SVG_model[maxRow, maxCol];

            List<Seat> seats = new List<Seat>();
            List<Ticket> tickets = new List<Ticket>();
            List<int> seatsIdList = new List<int>();

            using (var ctx = new TicketDbContext())
            {
                seats = ctx.Seats.Where(s => s.Sector.Id == sectorId).Cast<Seat>().ToList();
                tickets = ctx.Tickets.Where(t => t.Event.Id == eventId).Cast<Ticket>().ToList();
                seatsIdList = tickets.Select(t => t.Seat.Id).ToList();
            }

            int i = 0;
            int j = 0;
            foreach (var seat in seats)
            {
                var test = new SVG_model();
                test.svgReserved = seatsIdList.Find(s => s == seat.Id) != 0;
                test.svgId = "r" + seat.Id;
                test.svgRow = i + 1;
                test.svgCol = j + 1;
                test.svgX = (svgX + spaceX)*j + 60;
                test.svgY = (svgY + spaceY)*i;
                k[i, j] = test;
                j++;
                if (j == maxCol)
                {
                    j = 0;
                    i++;
                }

            }
            return Json(k, JsonRequestBehavior.AllowGet);
        }