private void buttonX1_Click(object sender, EventArgs e) { MyQRCode qrcode = new MyQRCode(); //qrcode.EncodeToCtrl(this.qrCodeGraphicControl1.Text + 1, this.qrCodeGraphicControl1); //qrcode.EncodeToPng("aa","aa",QRCodeSaveSize.Size165X165); //qrcode.EncodeToImage(QRCodeSaveSize.Size165X165); }
public List <TicketDTO> BuyTickets(string username, TicketRequest ticketRequest) { ticketRequest.Seats = FormatSeats(ticketRequest.Seats); CheckTicketValid(ticketRequest); List <Ticket> ticketsToAdd = new List <Ticket>(); foreach (var seat in ticketRequest.Seats) { var promotionFound = dbContext.Promotions.FirstOrDefault(x => x.Code == seat.PromotionCode && x.IsActive == true); var ticket = new Ticket() { Username = username, ShowtimeId = ticketRequest.ShowtimeId, TicketType = seat.TicketType, Seat = seat.Seat, PromotionId = promotionFound != null ? promotionFound.Id : (int?)null, Price = GetTicketPrice(ticketRequest.ShowtimeId, seat.TicketType, promotionFound), ModifiedAt = DateTime.Now, }; ticketsToAdd.Add(ticket); } dbContext.AddRange(ticketsToAdd); Save(); List <int> ticketIds = ticketsToAdd.Select((x) => x.Id).ToList(); var user = dbContext.Users.Where(u => u.Username == username).FirstOrDefault(); var showtime = dbContext.Showtime.Where(s => s.Id == ticketRequest.ShowtimeId).Include(m => m.Movie).FirstOrDefault(); Thread thread = new Thread(() => EmailService.SendEmail(MyQRCode.GenerateQRCodeImage(ticketIds), user, showtime.Movie)); thread.Start(); List <TicketDTO> resultList = ticketsToAdd.Select((x) => new TicketDTO(x)).ToList(); return(resultList); }