Ejemplo n.º 1
0
 private void BtnLapDon_Click(object sender, RoutedEventArgs e)
 {
     if (Checking())
     {
         try
         {
             KHACH   guest = (KHACH)cmbKH.SelectedItem;
             LICHBAY lb    = (LICHBAY)cmbMaCB.SelectedItem;
             txtTongTien.Text = (normal * GlobalItem.veThuong + vip * GlobalItem.veVIP).ToString();
             receiptMngController.addReceipt(new HOADON()
             {
                 MaCB        = lb.MaCB,
                 MaKH        = guest.ID,
                 NgayDi      = lb.NgayDi,
                 NgayMua     = dpNgayMua.SelectedDate.Value,
                 SoVeThuong  = normal,
                 TongTien    = int.Parse(txtTongTien.Text),
                 SoVeVip     = vip,
                 IsDatCho    = true,
                 IsAvailable = true,
             });
             receiptMngController.updateFlightForReceipt(lb.MaCB, lb.NgayDi, normal, vip, oriNormal, oriVip);
             this.Visibility = Visibility.Hidden;
         }
         catch
         {
             MessageBox.Show("Có vẻ bạn đã mua/đặt vé để đi chuyến này rồi, vào hóa đơn để sữa lại thôi.");
         }
     }
     else
     {
         MessageBox.Show(error.ToString());
         error.Clear();
     }
 }
        public static void updateFlightForReceipt(int macb, DateTime ngaybay, int normal, int vip, int orinornam, int orivip)
        {
            LICHBAY lb = DataProvider.ins.DB.LICHBAYs.Where(x => x.MaCB == macb && x.NgayDi == ngaybay).SingleOrDefault();

            lb.SoGheThuong += (normal - orinornam);
            lb.SoGheVip    += (vip - orivip);
            DataProvider.ins.DB.SaveChanges();
        }
Ejemplo n.º 3
0
        public static void updateShedule(int macb, DateTime ngayBayGoc, TimeSpan giodi, int ghethuong, int ghevip)
        {
            LICHBAY _new = DataProvider.ins.DB.LICHBAYs.Where(x => x.MaCB == macb && x.NgayDi == ngayBayGoc).SingleOrDefault();

            _new.GioDi       = giodi;
            _new.SoGheThuong = ghethuong;
            _new.SoGheVip    = ghevip;
            DataProvider.ins.DB.SaveChanges();
        }
Ejemplo n.º 4
0
        public static void deleteSheduleFor(int macb, DateTime ngaydi)
        {
            // Xóa lịch bay
            LICHBAY deleted = DataProvider.ins.DB.LICHBAYs.Where(x => x.MaCB == macb && x.NgayDi == ngaydi).SingleOrDefault();

            deleted.IsAvailable = false;
            DataProvider.ins.DB.SaveChanges();

            // Xóa SB trung gian
            List <SBTRUNGGIAN> lstSBTG = DataProvider.ins.DB.SBTRUNGGIANs.Where(x => x.MaCB == macb && x.NgayDi == ngaydi).ToList();

            DataProvider.ins.DB.SBTRUNGGIANs.RemoveRange(lstSBTG);
            DataProvider.ins.DB.SaveChanges();
        }
        public static bool isConCho(int macb, DateTime ngaybay, int normal, int vip)
        {
            LICHBAY   lb = DataProvider.ins.DB.LICHBAYs.Where(x => x.MaCB == macb && x.NgayDi == ngaybay).SingleOrDefault();
            CHUYENBAY cb = DataProvider.ins.DB.CHUYENBAYs.Where(x => x.MaCB == macb).SingleOrDefault();

            if (lb.SoGheThuong + normal > cb.GheThuong || lb.SoGheVip + vip > cb.GheVip)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
Ejemplo n.º 6
0
 private void BtnThanhToan_Click(object sender, RoutedEventArgs e)
 {
     if (Checking())
     {
         KHACH   guest = (KHACH)cmbKH.SelectedItem;
         LICHBAY lb    = (LICHBAY)cmbMaCB.SelectedItem;
         reservationController.translation(lb.MaCB, guest.ID, lb.NgayDi, normal, vip, int.Parse(txtTongTien.Text), dpNgayMua.SelectedDate.Value);
         this.Visibility = Visibility.Hidden;
     }
     else
     {
         MessageBox.Show(error.ToString());
         error.Clear();
     }
 }
        // Add Combo ------------------------------------------------------------

        private void BtnAddShedule_Click(object sender, RoutedEventArgs e)
        {
            if (Checking() == false)
            {
                MessageBox.Show(error.ToString());
                error.Clear();
            }
            else
            {
                try
                {
                    LICHBAY newLB = new LICHBAY()
                    {
                        MaCB        = cmbMaCB.SelectedIndex + 1,
                        GioDi       = new TimeSpan(int.Parse(txtHrs.Text), int.Parse(txtMins.Text), 0),
                        NgayDi      = dp_ngaybay.SelectedDate.Value,
                        SoGheThuong = 0,
                        SoGheVip    = 0,
                        IsAvailable = true,
                    };

                    FlightMngController.addNewShedule(newLB);
                    try
                    {
                        FlightMngController.addListSBTG(lstSBTG, lstNote, lstStop, cmbMaCB.SelectedIndex + 1, dp_ngaybay.SelectedDate.Value);
                        this.Visibility = Visibility.Collapsed;
                    }
                    catch
                    {
                        MessageBox.Show("Sân bay trung gian bị trùng");
                    }
                }
                catch
                {
                    MessageBox.Show("Đã tồn tại lịch bay này rồi");
                }
            }
        }
 private void BtnOK_Click(object sender, RoutedEventArgs e)
 {
     if (parent.method == 2)
     {
         this.Visibility = Visibility.Hidden;
     }
     else // sửa
     {
         if (Checking())
         {
             KHACH   guest = (KHACH)cmbKH.SelectedItem;
             LICHBAY lb    = (LICHBAY)cmbMaCB.SelectedItem;
             receiptMngController.updateReceipt(lb.MaCB, guest.ID, lb.NgayDi, normal, vip, int.Parse(txtTongTien.Text), dpNgayMua.SelectedDate.Value);
             receiptMngController.updateFlightForReceipt(lb.MaCB, lb.NgayDi, normal, vip, oriNormal, oriVip);
             this.Visibility = Visibility.Hidden;
         }
         else
         {
             MessageBox.Show(error.ToString());
             error.Clear();
         }
     }
 }
        private bool Checking()
        {
            bool isError = false;

            if (!int.TryParse(txtNormalSeats.Text, out normal))
            {
                error.Append("Số vé thường phải là số tự nhiên");
                isError = true;
            }
            if (!int.TryParse(txtVIPSeats.Text, out vip))
            {
                error.Append("Số vé vip phải là số tự nhiên");
                isError = true;
            }

            if (parent.method == 3 && dpNgayMua.SelectedDate == null && DateTime.Compare(dpNgayMua.SelectedDate.Value, DateTime.Today) < 0)
            {
                error.Append("Thông tin ngày mua không hợp lệ");
                isError = true;
            }
            LICHBAY lb = (LICHBAY)cmbMaCB.SelectedItem;

            if (receiptMngController.isConCho(lb.MaCB, lb.NgayDi, normal, vip) == false)
            {
                error.Append("Chuyến bay theo lịch này hiện không đủ chỗ cho số vé bạn mua");
                isError = true;
            }

            if (isError == true)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
        private void UserControl_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
        {
            DependencyObject ucParent = this.Parent;

            while (!(ucParent is UserControl))
            {
                ucParent = LogicalTreeHelper.GetParent(ucParent);
            }

            parentWind = (flightMng)ucParent;

            if (this.Visibility == Visibility.Visible)
            {
                lstCB = FlightMngController.LoadFlightData();
                cmbMaCB.ItemsSource        = lstCB;
                cmbSBTrungGian.ItemsSource = FlightMngController.LoadAirportData();

                if (parentWind.IsSheduleEdit == true)
                {// Xem - sữa
                    lblScheTitle.Content = "CHI TIẾT LỊCH BAY";

                    selected   = FlightMngController.getLBByID(GlobalItem.FlightOfSelectedShedule, GlobalItem.DateOfSelectedShedule);
                    selectedCB = FlightMngController.getCBByID(GlobalItem.FlightOfSelectedShedule);



                    cmbMaCB.IsEnabled    = false;
                    txtSBDi.IsEnabled    = false;
                    txtSBDen.IsEnabled   = false;
                    dp_ngaybay.IsEnabled = false;

                    txtNormalSeats.IsEnabled = false;
                    txtVIPSeats.IsEnabled    = false;

                    int index = GlobalItem.FlightOfSelectedShedule - 1;
                    cmbMaCB.SelectedItem = selectedCB;
                    txtSBDi.Text         = selectedCB.SBDi;
                    txtSBDen.Text        = selectedCB.SBDen;
                    txtDefaultHrs.Text   = selectedCB.ThoiGianBay.Value.Hours.ToString();
                    txtDefaultMins.Text  = selectedCB.ThoiGianBay.Value.Minutes.ToString();

                    txtMins.Text            = selected.GioDi.Value.Minutes.ToString();
                    txtHrs.Text             = selected.GioDi.Value.Hours.ToString();
                    dp_ngaybay.SelectedDate = selected.NgayDi;

                    txtNormalSeats.Text = selected.SoGheThuong.ToString();
                    txtVIPSeats.Text    = selected.SoGheVip.ToString();

                    FlightMngController.loadSBTGList(selected.MaCB, selected.NgayDi, ref lstSBTG, ref lstNote, ref lstStop);
                    listView_SBTG.ItemsSource = lstSBTG;

                    AddCombo.Visibility  = Visibility.Hidden;
                    EditCombo.Visibility = Visibility.Visible;
                    SeatCombo.Visibility = Visibility.Visible;
                }
                else
                {// Them mới
                    lblScheTitle.Content = "THÊM MỚI LỊCH BAY";

                    cmbMaCB.SelectedIndex = 0;
                    txtSBDen.IsEnabled    = false;
                    txtSBDi.IsEnabled     = false;
                    txtSBDi.Text          = lstCB.ElementAt(0).SBDi;
                    txtSBDen.Text         = lstCB.ElementAt(0).SBDen;
                    txtDefaultHrs.Text    = lstCB.ElementAt(0).ThoiGianBay.Value.Hours.ToString();
                    txtDefaultMins.Text   = lstCB.ElementAt(0).ThoiGianBay.Value.Minutes.ToString();

                    AddCombo.Visibility  = Visibility.Visible;
                    EditCombo.Visibility = Visibility.Hidden;
                    SeatCombo.Visibility = Visibility.Hidden;
                }
            }
            else
            {
                cmbMaCB.IsEnabled    = true;
                txtSBDi.IsEnabled    = true;
                txtSBDen.IsEnabled   = true;
                dp_ngaybay.IsEnabled = true;



                parentWind.loadLichBayData();
            }
        }
Ejemplo n.º 11
0
 public static void addNewShedule(LICHBAY newShedule)
 {
     DataProvider.ins.DB.LICHBAYs.Add(newShedule);
     DataProvider.ins.DB.SaveChanges();
 }
Ejemplo n.º 12
0
        private void CmbMaCB_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            LICHBAY lb = (LICHBAY)cmbMaCB.SelectedItem;

            dpNgayHetHan.SelectedDate = lb.NgayDi.AddDays(-1);
        }