public void ReloadData()
        {
            try
            {
                HallsBO aHallsBO = new HallsBO();
                List<Halls> aListHalls = aHallsBO.Select_All();
                List<HallsEN> aListHallEN = new List<HallsEN> ();
                HallsEN aHallEN;
                 for (int i = 0; i < aListHalls.Count; i++)
                    {
                        aHallEN = new HallsEN();
                        aHallEN.SetValue(aListHalls[i]);
                        aHallEN.TypeDisplay = CORE.CONSTANTS.SelectedHallType(Convert.ToInt32(aListHalls[i].Type)).Name;
                        aListHallEN.Add(aHallEN);
                    }

                 dgvHalls.DataSource = aListHallEN;
                dgvHalls.RefreshDataSource();
            }
            catch (Exception ex)
            {
                MessageBox.Show("frmLst_Halls.ReloadData\n" + ex.ToString(), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void btnSelect_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            try
            {
                HallsEN aHallEN = new HallsEN();
                aHallEN.Code = grvAvailableHalls.GetFocusedRowCellValue("Code").ToString();
                aHallEN.Sku = grvAvailableHalls.GetFocusedRowCellValue("Sku").ToString();
                aHallEN.CostRef = Convert.ToDecimal(grvAvailableHalls.GetFocusedRowCellValue("CostRef"));
                aHallEN.Type = Convert.ToInt16(grvAvailableHalls.GetFocusedRowCellValue("Type"));
                aHallEN.TypeDisplay = CORE.CONSTANTS.SelectedHallType(Convert.ToInt32(aHallEN.Type)).Name;

                aListSelected.Add(aHallEN);
                dgvSelectedHalls.DataSource = aListSelected;
                dgvSelectedHalls.RefreshDataSource();

                HallExtStatusEN aTemp = aListAvailableHall.Where(a => a.Code == grvAvailableHalls.GetFocusedRowCellValue("Code").ToString()).ToList()[0];
                aListAvailableHall.Remove(aTemp);
                dgvAvailableHalls.DataSource = aListAvailableHall;
                dgvAvailableHalls.RefreshDataSource();
            }
            catch (Exception ex)
            {
                MessageBox.Show("frmTsk_UpdBooking.btnSelect_ButtonClick\n" + ex.ToString(), "Error ", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public void LoadData()
        {
            BookingHsBO aBookingHsBO = new BookingHsBO();
            BookingHallsBO aBookingHallsBO = new BookingHallsBO();
            HallsEN aTemp;
            aBookingHs = aBookingHsBO.Select_ByID(IDBookingH);
            HallsBO aHallsBO = new HallsBO();
            List<BookingHalls> aListBookingHalls = aBookingHallsBO.Select_ByIDBookigH(IDBookingH);
            //Fill data for BookingH
            txtSubject.Text = aBookingHs.Subject;
            txtBookingMoney.Text = String.Format("{0:0,0}", aBookingHs.BookingMoney);
            txtNote.Text = aBookingHs.Note;
            //Fill data for BookingHall
            dtpFrom.DateTime = Convert.ToDateTime(aListBookingHalls[0].Date);
               //tedEnd.Time = DateTime.Parse( aListBookingHalls[0].EndTime.ToString());
            //tedStart.Time = DateTime.Parse(aListBookingHalls[0].StartTime.ToString());

            for (int i = 0; i < aListBookingHalls.Count; i++)
            {
                aTemp = new HallsEN();
                aTemp.IDBookingHall = aListBookingHalls[i].ID;
                aTemp.Code = aListBookingHalls[i].CodeHall;
                aTemp.Sku = aHallsBO.Select_ByCodeHall(aListBookingHalls[i].CodeHall, 1).Sku;
                aTemp.CostRef = aListBookingHalls[i].CostRef_Halls;
                aTemp.Type = aHallsBO.Select_ByCodeHall(aListBookingHalls[i].CodeHall, 1).Type;
                aTemp.TypeDisplay = CORE.CONSTANTS.SelectedHallType(Convert.ToInt32(aTemp.Type)).Name;
                aTemp.Cost = aListBookingHalls[i].Cost;
                aTemp.TableOrPerson = aListBookingHalls[i].TableOrPerson;
                aTemp.Unit = aListBookingHalls[i].Unit;
                aListSelected.Add(aTemp);
            }
            dgvSelectedHalls.DataSource = aListSelected;
            dgvSelectedHalls.RefreshDataSource();
        }
 //hiennv
 public void LoadListHall()
 {
     try
     {
         List<HallsEN> aListHallsEN = new List<HallsEN>();
         HallsEN aHallsEN;
         for (int i = 0; i < aPaymentHallsEN.aListInfoDetailPaymentHallsEN.Count; i++)
         {
             aHallsEN = new HallsEN();
             HallsBO aHallsBO = new HallsBO();
             Halls aHalls = aHallsBO.Select_ByCodeHall(aPaymentHallsEN.aListInfoDetailPaymentHallsEN[i].aBookingHalls.CodeHall, 1);
             aHallsEN.Sku = aHalls.Sku;
             aHallsEN.CodeHall = aPaymentHallsEN.aListInfoDetailPaymentHallsEN[i].aBookingHalls.CodeHall;
             aHallsEN.IDBookingH = aPaymentHallsEN.IDBookingH;
             aHallsEN.IDBookingHall = aPaymentHallsEN.aListInfoDetailPaymentHallsEN[i].aBookingHalls.ID;
             aHallsEN.TotalMoney = aPaymentHallsEN.GetMoneyHallAndService(aPaymentHallsEN.aListInfoDetailPaymentHallsEN[i].aBookingHalls.ID);
             aListHallsEN.Add(aHallsEN);
         }
         dgvHalls.DataSource = aListHallsEN;
     }
     catch (Exception ex)
     {
         MessageBox.Show("frmTsk_PaymentHall.LoadListHall\n" + ex.ToString());
     }
 }
        public frmRpt_PaymentBookingHs(PaymentHallsEN aPaymentHallsEN)
        {
            InitializeComponent();
            this.aPaymentHallsEN = aPaymentHallsEN;
            try
            {
                //------------------------------- Hoi truong ---------------------

                lblNumberVote.Text = Convert.ToString(this.aPaymentHallsEN.IDBookingH);
                lblIDBookingH.Text = Convert.ToString(this.aPaymentHallsEN.IDBookingH);
                lblNameCustomer.Text = this.aPaymentHallsEN.NameCustomer;
                lblGroup.Text = this.aPaymentHallsEN.NameCustomerGroup;
                lblCompany.Text = this.aPaymentHallsEN.NameCompany;
                lblTaxNumberCode.Text = this.aPaymentHallsEN.TaxNumberCodeCompany;

                int day = DateTime.Now.Day;
                int month = DateTime.Now.Month;
                int year = DateTime.Now.Year;
                lblDayMonthYear.Text = "Hà nội , ngày " + day.ToString() + " tháng " + month.ToString() + " năm " + year.ToString();

                List<HallsEN> aListHallsEN = new List<HallsEN>();
                HallsEN aHallsEN;
                List<ServicesHallsEN> aListServicesHallsEN = new List<ServicesHallsEN>();
                ServicesHallsEN aServicesHallsEN;

                foreach (InfoDetailPaymentHallsEN aInfoDetailPaymentHallsEN in this.aPaymentHallsEN.aListInfoDetailPaymentHallsEN)
                {

                    aHallsEN = new HallsEN();
                    aHallsEN.IDBookingHall = aInfoDetailPaymentHallsEN.aBookingHalls.ID;
                    aHallsEN.IDBookingH = aInfoDetailPaymentHallsEN.aBookingHalls.IDBookingH;
                    aHallsEN.CodeHall = aInfoDetailPaymentHallsEN.aBookingHalls.CodeHall;
                    aHallsEN.Sku = aInfoDetailPaymentHallsEN.Sku;
                    aHallsEN.Date = aInfoDetailPaymentHallsEN.aBookingHalls.Date;
                    aHallsEN.Cost = aInfoDetailPaymentHallsEN.aBookingHalls.Cost;
                    aHallsEN.PercentTax = aInfoDetailPaymentHallsEN.aBookingHalls.PercentTax;
                    aHallsEN.CostRef_Halls = aInfoDetailPaymentHallsEN.aBookingHalls.CostRef_Halls;
                    aHallsEN.TotalMoney = aPaymentHallsEN.GetMoneyHall(aInfoDetailPaymentHallsEN.aBookingHalls.ID);
                    aListHallsEN.Add(aHallsEN);

                    foreach (ServicesHallsEN items in aInfoDetailPaymentHallsEN.aListServicesHallsEN)
                    {
                        aServicesHallsEN = new ServicesHallsEN();
                        aServicesHallsEN.SkuHall = aHallsEN.Sku;
                        aServicesHallsEN.NameService = items.NameService;
                        aServicesHallsEN.Date = items.Date;
                        aServicesHallsEN.Quantity = items.Quantity;
                        aServicesHallsEN.Cost = items.Cost;
                        aServicesHallsEN.PercentTax = items.PercentTax;
                        aListServicesHallsEN.Add(aServicesHallsEN);
                    }

                }

                //danh sach hoi truong
                this.DetailReportHall.DataSource = aListHallsEN;
                colSkuHall.DataBindings.Add("Text", this.DetailReportHall.DataSource, "Sku");
                colCreateDate.DataBindings.Add("Text", this.DetailReportHall.DataSource, "Date", "{0:dd/MM/yyyy}");
                colBookingHallCost.DataBindings.Add("Text", this.DetailReportHall.DataSource, "Cost", "{0:0,0}");
                colPercentTax.DataBindings.Add("Text", this.DetailReportHall.DataSource, "PercentTax");
                colPaymentMoneyHall.DataBindings.Add("Text", this.DetailReportHall.DataSource, "TotalMoney", "{0:0,0}");

                //danh sach dich vu su dung
                this.DetailReportService.DataSource = aListServicesHallsEN;
                colService_Sku.DataBindings.Add("Text", this.DetailReportService.DataSource, "SkuHall");
                colService_Name.DataBindings.Add("Text", this.DetailReportService.DataSource, "NameService");
                colService_Date.DataBindings.Add("Text", this.DetailReportService.DataSource, "Date", "{0:dd/MM/yyyy}");
                colService_Quantity.DataBindings.Add("Text", this.DetailReportService.DataSource, "Quantity", "{0:0,0}");
                colService_Cost.DataBindings.Add("Text", this.DetailReportService.DataSource, "Cost", "{0:0,0}");
                colService_PercentTax.DataBindings.Add("Text", this.DetailReportService.DataSource, "PercentTax");
                colService_Money.DataBindings.Add("Text", this.DetailReportService.DataSource, "Total", "{0:0,0}");

                //tong tien hoi truong truoc thue
                lblTotalMoneyHallBeforeTax.Text = String.Format("{0:0,0} (VND)", Convert.ToDecimal(this.aPaymentHallsEN.GetTotalMoneyHallBeforeTax()));
                //tong tien hoi truong sau thue
                lblTotalMoneyHallBehindTax.Text = String.Format("{0:0,0} (VND)", Convert.ToDecimal(this.aPaymentHallsEN.GetTotalMoneyHallBehindTax()));

                //tong tien dich vu hoi truong truoc thue
                lblTotalMoneyService_BookingHBeforeTax.Text = String.Format("{0:0,0} (VND)", Convert.ToDecimal(this.aPaymentHallsEN.GetTotalMoneyServiceHallBeforeTax()));
                //tong tien dich vu hoi truong sau thue
                lblTotalMoneyServices_BookingHBehindTax.Text = String.Format("{0:0,0} (VND)", Convert.ToDecimal(this.aPaymentHallsEN.GetTotalMoneyServiceHallBehindTax()));

                //tong tien bookingh

                decimal? moneyBookingHBeforeTax = Convert.ToDecimal(this.aPaymentHallsEN.GetTotalMoneyBookingHBeforeTax());
                decimal? moneyBookingHBehindTax = Convert.ToDecimal(this.aPaymentHallsEN.GetTotalMoneyBookingHBehindTax());
                lblTotalMoneyBookingHBeforeTax.Text = String.Format("{0:0,0} (VND)", moneyBookingHBeforeTax);
                lblTotalMoneyBookingHBehindTax.Text = String.Format("{0:0,0} (VND)", moneyBookingHBehindTax);
                lblBookingMoney_BookingH.Text = String.Format("{0:0,0} (VND)", Convert.ToDecimal(this.aPaymentHallsEN.GetBookingMoney()));
                lblTotalBookingH.Text = String.Format("{0:0,0} (VND)", (moneyBookingHBehindTax - Convert.ToDecimal(this.aPaymentHallsEN.GetBookingMoney())));

            }
            catch (Exception ex)
            {
                MessageBox.Show("frmRpt_PaymentBookingHs.frmRpt_PaymentBookingHs\n" + ex.ToString());
            }
        }
        //Hiennv
        public List<HallsEN> GetListHallsEN()
        {
            try
            {
                List<HallsEN> aListHalls = new List<HallsEN>();
                HallsEN aHallsEN;
                foreach (InfoDetailPaymentHallsEN item1 in this.aListInfoDetailPaymentHallsEN)
                {
                    aHallsEN = new HallsEN();
                    aHallsEN.IDBookingHall = item1.aBookingHalls.ID;
                    aHallsEN.IDBookingH = item1.aBookingHalls.IDBookingH;
                    aHallsEN.Cost = item1.aBookingHalls.Cost == null ? item1.aBookingHalls.CostRef_Halls : item1.aBookingHalls.Cost;
                    aHallsEN.PercentTax = item1.aBookingHalls.PercentTax;
                    aHallsEN.Date = item1.aBookingHalls.Date;
                    aHallsEN.Status = item1.aBookingHalls.Status;
                    aHallsEN.Code = item1.aBookingHalls.CodeHall;
                    aHallsEN.Sku = item1.Sku;
                    aHallsEN.IndexSubHalls = this.GetIndexSubHalls(item1.aBookingHalls.ID);
                    aListHalls.Add(aHallsEN);
                }

                return aListHalls;
            }
            catch (Exception ex)
            {
                throw new Exception("PaymentHallsEN:GetListRoomsEN\n" + ex.ToString());
            }
        }