public JsonResult MakeOrder(string ticketListStr, string email, string phone, string filmName, string cinemaName, string date, string roomName, string startTime) { JArray list = JArray.Parse(ticketListStr); List <Ticket> ticketList = new List <Ticket>(); //create customer Customer cus = new Customer(); cus.email = email; cus.phone = phone; int cusId = new CustomerService().createCustomer(cus);//get cusId //create order BookingTicket order = new BookingTicket(); order.quantity = list.Count; order.bookingDate = DateTime.Today; order.customerId = cusId; order.paymentCode = RandomUtility.RandomString(9); int orderId = new BookingTicketService().CreateOrder(order); foreach (JObject item in list) { int ticketId = (int)item.GetValue("ticketId"); Ticket aTicket = new TicketService().FindByID(ticketId); if (aTicket.ticketStatus == TicketStatus.buying) { aTicket.ticketStatus = TicketStatus.buyed; //update ticket price double price = (double)new TypeOfSeatService().FindByID( (new SeatService().FindByID(aTicket.seatId).typeSeatId)).price; aTicket.price = price; string code = aTicket.ticketId + RandomUtility.RandomString(9); aTicket.paymentCode = code; aTicket.bookingId = orderId; new TicketService().Update(aTicket); } ticketList.Add(aTicket); } //send email for customer string mailContent = getEmailContent(ticketList, order, filmName, cinemaName, date, roomName, startTime); string mailSubject = "CinemaBookingTicket - Mã vé xem phim tại " + cinemaName; MailUtility.SendEmail(mailSubject, mailContent, email); var obj = ticketList .Select(item => new { ticketId = item.ticketId, ticketStatus = item.ticketStatus, }); return(Json(obj)); }