C#影院售票系统毕业设计(3)

2019-12-30 11:00:28于海丽
  •   }    } 
  •   //如果赠票是选中的    else if (this.rdoGiveTicket.Checked) 
  •   {    if (string.IsNullOrEmpty(this.txtGiver.Text)) 
  •   {    MessageBox.Show("请输入赠票者姓名!", "提示"); 
  •   return;    } 
  •   type = "FreeTicket";    } 
  •   //创建票 使用工具类的静态方法    Ticket newTicket = TicketUtil.CreateTicket(cinema.Schedule.Items[key], cinema.Seats[seatNum], discount, customerName, type); 
  •   //如果当前座位的颜色是黄色-待售出    if (cinema.Seats[seatNum].Color == Color.Yellow) 
  •   {    //询问 
  •   DialogResult result = MessageBox.Show("是否购买?", "提示", MessageBoxButtons.YesNo);    if (result == DialogResult.Yes) 
  •   {    //重新计算票价 
  •   newTicket.CalcPrice();    //将票加入到已经售出票的集合 
  •   cinema.SoldTickets.Add(newTicket);    //更新座位颜色状态 
  •   UpdateSeat();    lblPreferentialPrice.Text = newTicket.Price.ToString(); 
  •   newTicket.Print();    //使座位集合的颜色状态改变 
  •   cinema.Seats[seatNum].Color = Color.Red;    } 
  •   }    //如果是已经售出的票 
  •   else    { 
  •   //显示当前售票信息    foreach (Ticket ticket0 in cinema.SoldTickets) 
  •   {    //已售出票集合的座位号等于当前点击座位号 并且 选中的时间等于售出票的场次的时间 并且 售出票的场次计划中电影名字等于TreeView选中时间的父节点也就是电影名称 
  •   if (ticket0.Seat.SeatNum == seatNum && ticket0.ScheduItem.Time == treeView1.SelectedNode.Text && ticket0.ScheduItem.Movie.MovieName == treeView1.SelectedNode.Parent.Text)    {