public void tinhTienPhong()
        {
            TimeSpan            nhan6h  = new TimeSpan(6, 0, 0);
            TimeSpan            nhan13h = new TimeSpan(13, 0, 0);
            TimeSpan            nhan14h = new TimeSpan(14, 0, 0);
            PhongBUS            pbus    = new PhongBUS();
            eHoaDonTienPhong    hdtp    = new eHoaDonTienPhong();
            ChiTietThuePhongBUS cttpbus = new ChiTietThuePhongBUS();

            foreach (var item in cttpbus.getChiTietThuePhong_By_MaThue_MaPhong(MaThue, pbus.maPhong_byTen(TenPhong)))
            {
                lblNhanPhong.Text = item.GioVao + "   " + item.NgayVao.ToShortDateString();
                string gioMacDinh = nhan14h + "  " + item.NgayVao.ToShortDateString();
                lblTraPhong.Text = DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString();
                TimeSpan date = Convert.ToDateTime(lblTraPhong.Text) - Convert.ToDateTime(lblNhanPhong.Text);
                int      ngay = date.Days;
                int      h    = date.Hours;
                if (item.NgayVao == DateTime.Now.Date)
                {
                    tienphong         = hdtp.tinhTienPhong(item, tienPhong(pbus.getLoaiPhong_ByID(item.MaPhong)), Convert.ToDateTime(lblNhanPhong.Text), Convert.ToDateTime(lblTraPhong.Text));
                    txtTienPhong.Text = (string.Format("{0:#,##0}", tienphong)).ToString();
                }
                else
                {
                    tienphong         = hdtp.tinhTienPhong(item, tienPhong(pbus.getLoaiPhong_ByID(item.MaPhong)), Convert.ToDateTime(gioMacDinh), Convert.ToDateTime(lblTraPhong.Text));
                    txtTienPhong.Text = (string.Format("{0:#,##0}", tienphong)).ToString();
                }
                if (ngay == 0 && h < 5)
                {
                    lblGhiChu.Text = item.GhiChu + "\n" + "\nSố tiền phòng: " + item.GioVao + " " + item.NgayVao.ToShortDateString() + "đến " + lblTraPhong.Text + " là " + string.Format("{0:#,##0}", tienphong).ToString() + " đồng";
                    phuthu         = 0;
                    txtPhuThu.Text = string.Format("{0:#,##0}", phuthu).ToString();
                }
                else
                {
                    if (item.GioVao > nhan6h && item.GioVao < nhan13h)
                    {
                        lblGhiChu.Text = item.GhiChu + "\n" + "Số tiền khách đến sớm: " + item.GioVao + " " + item.NgayVao.ToShortDateString() + "đến " + nhan14h + " " + item.NgayVao.ToShortDateString() + "là " + string.Format("{0:#,##0}", phuthu).ToString() + " đồng"
                                         + "\nSố tiền phòng: " + nhan14h + " " + item.NgayVao.ToShortDateString() + "đến " + lblTraPhong.Text + " là " + string.Format("{0:#,##0}", tienphong).ToString() + " đồng";
                    }
                    else
                    {
                        lblGhiChu.Text = item.GhiChu + "\n" + "\nSố tiền phòng: " + item.GioVao + " " + item.NgayVao.ToShortDateString() + " đến " + lblTraPhong.Text + " là " + string.Format("{0:#,##0}", tienphong).ToString() + " đồng";
                    }
                }
                tienkhac        += item.TienKhac;
                txtTienKhac.Text = string.Format("{0:#,##0}", tienkhac).ToString();
            }
        }
Exemple #2
0
        private void cboPhongTrong_SelectedIndexChanged(object sender, EventArgs e)
        {
            LoaiPhongBUS        lpbus   = new LoaiPhongBUS();
            PhongBUS            pbus    = new PhongBUS();
            ChiTietThuePhongBUS cttpbus = new ChiTietThuePhongBUS();
            eChiTietThuePhong   cttp    = new eChiTietThuePhong();
            eHoaDonTienPhong    hdtp    = new eHoaDonTienPhong();

            cttp = cttpbus.getCTTP_By_MaPhong_TrangThai(pbus.maPhong_byTen(TenPhong), false);
            double tienPhongCu  = hdtp.tinhTienPhong(cttp, lpbus.donGia(pbus.getLoaiPhong_ByID(pbus.maPhong_byTen(TenPhong))), Convert.ToDateTime(cttp.GioVao + "   " + cttp.NgayVao.ToShortDateString()), Convert.ToDateTime(DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString()));
            double tienPhongMoi = hdtp.tinhTienPhong(cttp, lpbus.donGia(pbus.getLoaiPhong_ByID(pbus.maPhong_byTen(cboPhongTrong.Text.Trim()))), Convert.ToDateTime(cttp.GioVao + "   " + cttp.NgayVao.ToShortDateString()), Convert.ToDateTime(DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString()));

            tienkhac         = tienPhongCu - tienPhongMoi + cttp.TienKhac;
            lblTienKhac.Text = (string.Format("{0:#,##0 vnd}", tienkhac).ToString());
        }
Exemple #3
0
        public double tienPhong(ArrayList ds)
        {
            double              tienPhong = 0;
            PhongBUS            pbus      = new PhongBUS();
            ThuePhongBUS        tpbus     = new ThuePhongBUS();
            LoaiPhongBUS        lpbus     = new LoaiPhongBUS();
            ChiTietThuePhongBUS cttpbus   = new ChiTietThuePhongBUS();
            eHoaDonTienPhong    hdtp      = new eHoaDonTienPhong();

            foreach (string item in ds)
            {
                foreach (var cttp in cttpbus.getChiTietThuePhong_By_MaThue(item))
                {
                    tienPhong += hdtp.tinhTienPhong(cttp, lpbus.donGia(pbus.getLoaiPhong_ByID(cttp.MaPhong)), Convert.ToDateTime(cttp.GioVao + " " + cttp.NgayVao.ToShortDateString()), Convert.ToDateTime(cttp.GioRa + " " + cttp.NgayRa.ToShortDateString())) + hdtp.tinhTienPhuThu(cttp, lpbus.donGia(pbus.getLoaiPhong_ByID(cttp.MaPhong))) + cttp.TienKhac;
                }
            }
            return(tienPhong);
        }
        public DataTable DataTable_DSTP(ArrayList ds)
        {
            KhachHangBUS        khbus   = new KhachHangBUS();
            PhongBUS            pbus    = new PhongBUS();
            ThuePhongBUS        tpbus   = new ThuePhongBUS();
            DoanBUS             dbus    = new DoanBUS();
            LoaiPhongBUS        lpbus   = new LoaiPhongBUS();
            ChiTietThuePhongBUS cttpbus = new ChiTietThuePhongBUS();
            eHoaDonTienPhong    hdtp    = new eHoaDonTienPhong();
            DataTable           dt      = new DataTable();

            dt.Columns.Add("Tên khách hàng", typeof(string));
            dt.Columns.Add("Tiền phòng", typeof(double));
            dt.Columns.Add("Thời gian vào", typeof(string));
            dt.Columns.Add("Thời gian ra", typeof(string));
            foreach (string item in ds)
            {
                double tienPhong = 0;
                foreach (var cttp in cttpbus.getChiTietThuePhong_By_MaThue(item))
                {
                    tienPhong += hdtp.tinhTienPhong(cttp, lpbus.donGia(pbus.getLoaiPhong_ByID(cttp.MaPhong)), Convert.ToDateTime(cttp.GioVao + " " + cttp.NgayVao.ToShortDateString()), Convert.ToDateTime(cttp.GioRa + " " + cttp.NgayRa.ToShortDateString())) + hdtp.tinhTienPhuThu(cttp, lpbus.donGia(pbus.getLoaiPhong_ByID(cttp.MaPhong))) + cttp.TienKhac;
                }
                if (tpbus.getMaDoan_ByMaThue(item) == null)
                {
                    foreach (var cttp in cttpbus.getChiTietThuePhong_By_MaThue(item))
                    {
                        dt.Rows.Add(khbus.getenKH_ByID(cttp.MaKhach), tienPhong, cttp.GioVao + " " + cttp.NgayVao.ToShortDateString(), cttp.GioRa + " " + cttp.NgayRa.ToShortDateString());
                    }
                }
                else
                {
                    foreach (var cttp in cttpbus.getChiTietThuePhong_By_MaThue(item))
                    {
                        dt.Rows.Add(dbus.getTen_ById(tpbus.getMaDoan_ByMaThue(item)), tienPhong, cttp.GioVao + " " + cttp.NgayVao.ToShortDateString(), cttp.GioRa + " " + cttp.NgayRa.ToShortDateString());
                        break;
                    }
                }
            }
            return(dt);
        }
        public void loadThuePhong_Doan()
        {
            ChiTietThuePhongBUS      cttpbus  = new ChiTietThuePhongBUS();
            ThuePhongBUS             tpbus    = new ThuePhongBUS();
            DoanBUS                  dbus     = new DoanBUS();
            LoaiPhongBUS             lpbus    = new LoaiPhongBUS();
            PhongBUS                 pbus     = new PhongBUS();
            ChiTietDichVuBUS         ctdvbus  = new ChiTietDichVuBUS();
            DichVuBUS                dvbus    = new DichVuBUS();
            List <eChiTietThuePhong> list_ect = new List <eChiTietThuePhong>();

            list_ect = cttpbus.getChiTietThuePhong_By_MaThue_TrangThai(tpbus.getMaThue_ByMaDoan(dbus.getId_ByTenDoan(txtTenDoan.Text), 0), 0);

            for (int i = 0; i < list_ect.Count; i++)
            {
                for (int j = 1; j < list_ect.Count; j++)
                {
                    if (i == j)
                    {
                        list_ect.RemoveAt(i);
                        continue;
                    }
                    if (list_ect[i].MaPhong.Equals(list_ect[j].MaPhong))
                    {
                        list_ect.RemoveAt(i);
                    }
                }
            }

            List <eThuePhong_Doan> lstp_d = new List <eThuePhong_Doan>();

            foreach (eChiTietThuePhong item in list_ect)
            {
                eThuePhong_Doan  etpd       = new eThuePhong_Doan();
                eHoaDonTienPhong hdtp       = new eHoaDonTienPhong();
                eHoaDonDichVu    hddv       = new eHoaDonDichVu();
                double           tienPhong  = Convert.ToDouble(hdtp.tinhTienPhong(item, lpbus.donGia(pbus.getLoaiPhong_ByID(item.MaPhong)), Convert.ToDateTime(item.GioVao + "   " + item.NgayVao.ToShortDateString()), Convert.ToDateTime(DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString())));
                double           tienPhuThu = 0;
                if (item.GhiChu.Equals(""))
                {
                    tienPhuThu += Convert.ToDouble(hdtp.tinhTienPhuThu(item, lpbus.donGia(pbus.getLoaiPhong_ByID(item.MaPhong))));
                }
                else
                {
                    tienPhuThu += Convert.ToDouble(hdtp.tinhTienPhuThu(item, lpbus.donGia(pbus.getLoaiPhong_ByID(pbus.maPhong_byTen(item.GhiChu.Substring(0, 8))))));
                }
                etpd.Tenphong  = pbus.getTenPhong_ByID(item.MaPhong);
                etpd.TienPhong = tienPhong + tienPhuThu;
                double tienDV = 0;
                foreach (eChiTetDichVu ctdv in ctdvbus.getctdv_MaThue_MaPhong(item.MaThue, item.MaPhong))
                {
                    tienDV += hddv.tinhDichVu(dvbus.getDonGia_byID(ctdv.MaDV), ctdv.SoLuong);
                }
                etpd.TienDV   = tienDV;
                etpd.TienKhac = item.TienKhac;
                etpd.GhiChu   = item.GhiChu;
                lstp_d.Add(etpd);
            }
            dgvDsThuePhong.DataSource = lstp_d.ToList();
            double tongTienPhong = 0;

            for (int i = 0; i < gridViewDsThuePhong.RowCount; i++)
            {
                tongTienPhong += Convert.ToDouble(gridViewDsThuePhong.GetRowCellValue(i, gridViewDsThuePhong.Columns[1]));
            }
            txtTongTienPhong.Text = string.Format("{0:#,##0}", tongTienPhong).ToString();
            txtThueVAT.Text       = string.Format("{0:#,##0}", tongTienPhong * 0.1).ToString();
            txtKhuyenMai.Text     = string.Format("{0:#,##0}", tongTienPhong * 0.2).ToString();
            txtTienThanhToan.Text = string.Format("{0:#,##0}", tongTienPhong + tongTienPhong * 0.1 - tongTienPhong * 0.2).ToString();
        }
        private void btnThanhToan_Click(object sender, EventArgs e)
        {
            ChiTietThuePhongBUS cttpbus    = new ChiTietThuePhongBUS();
            ThuePhongBUS        tpbus      = new ThuePhongBUS();
            DoanBUS             dbus       = new DoanBUS();
            PhongBUS            pbus       = new PhongBUS();
            HoaDonTienPhongBUS  hdtpbus    = new HoaDonTienPhongBUS();
            TimeSpan            gioHienTai = new TimeSpan(DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
            eHoaDonTienPhong    tt_ent     = new eHoaDonTienPhong();

            tt_ent.MaThue    = tpbus.getMaThue_ByMaDoan(dbus.getId_ByTenDoan(txtTenDoan.Text), 0);
            tt_ent.NgayLap   = DateTime.Now;
            tt_ent.GioLap    = gioHienTai;
            tt_ent.ThueVAT   = Convert.ToSingle(txtThueVAT.Text);
            tt_ent.KhuyenMai = Convert.ToSingle(txtKhuyenMai.Text);
            int a = hdtpbus.insertThanhToan(tt_ent);

            if (a == 1)
            {
                foreach (var item in cttpbus.getChiTietThuePhong_By_MaThue(tpbus.getMaThue_ByMaDoan(dbus.getId_ByTenDoan(txtTenDoan.Text), 0)))
                {
                    eChiTietThuePhong ectOld = new eChiTietThuePhong();
                    ectOld.MaThue    = tpbus.getMaThue_ByMaDoan(dbus.getId_ByTenDoan(txtTenDoan.Text), 0);
                    ectOld.MaPhong   = item.MaPhong;
                    ectOld.MaKhach   = item.MaKhach;
                    ectOld.NgayRa    = DateTime.Now.Date;
                    ectOld.GioRa     = gioHienTai;
                    ectOld.TrangThai = true;
                    cttpbus.updateChiTietThuePhong(ectOld);

                    ePhong newp = new ePhong();
                    newp.MaPhong     = item.MaPhong;
                    newp.TinhTrang   = false;
                    newp.SoNgHienTai = 0;
                    pbus.updateTinhTrangPhong(newp);
                }

                eThuePhong tp = new eThuePhong();
                tp.MaThue    = tpbus.getMaThue_ByMaDoan(dbus.getId_ByTenDoan(txtTenDoan.Text), 0);
                tp.TrangThai = true;
                tpbus.updateThuePhong(tp);

                MessageBox.Show("Thanh toán thành công");

                NhanVienBUS           nvbus     = new NhanVienBUS();
                LoaiPhongBUS          lpbus     = new LoaiPhongBUS();
                HoaDon                bc        = new HoaDon();
                List <eChiTietBaoCao> listphong = new List <eChiTietBaoCao>();
                foreach (var item in cttpbus.getChiTietThuePhong_By_MaThue_TrangThai(tp.MaThue, 1))
                {
                    eChiTietBaoCao ctbc = new eChiTietBaoCao();
                    ctbc.tenPhong     = pbus.getTenPhong_ByID(item.MaPhong);
                    ctbc.tenLoaiPhong = lpbus.getTen_Byma(pbus.getLoaiPhong_ByID(item.MaPhong));
                    ctbc.thoiGianNhan = item.GioVao + " " + item.NgayVao.Date.ToShortDateString();
                    ctbc.thoiGianTra  = item.GioRa + " " + item.NgayRa.Date.ToShortDateString();
                    eHoaDonTienPhong hdtp       = new eHoaDonTienPhong();
                    double           tienPhong  = Convert.ToDouble(hdtp.tinhTienPhong(item, lpbus.donGia(pbus.getLoaiPhong_ByID(item.MaPhong)), Convert.ToDateTime(item.GioVao + "   " + item.NgayVao.ToShortDateString()), Convert.ToDateTime(DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString())));
                    double           tienPhuThu = Convert.ToDouble(hdtp.tinhTienPhuThu(item, lpbus.donGia(pbus.getLoaiPhong_ByID(item.MaPhong))));
                    ctbc.tienPhong = tienPhong + tienPhuThu;
                    listphong.Add(ctbc);
                }

                for (int i = 0; i < listphong.Count; i++)
                {
                    for (int j = 1; j < listphong.Count; j++)
                    {
                        if (i == j)
                        {
                            continue;
                        }
                        if (listphong[i].tenPhong.Equals(listphong[j].tenPhong))
                        {
                            listphong.RemoveAt(i);
                        }
                    }
                }

                foreach (var item in tpbus.getMaThue(tp.MaThue))
                {
                    bc.tenNV        = nvbus.getenNV_ByID(maNVThanhToan);
                    bc.tenKH        = dbus.getTen_ById(item.MaDoan);
                    bc.soHD         = hdtpbus.gemaHD_BymaThue(tp.MaThue); //Cần xem xét lại
                    bc.thoiGianInHD = DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString();
                }
                this.Close();
                frmPrint frmp = new frmPrint();
                frmp.InHoaDonInTuReport(bc, listphong.ToList());
                frmp.ShowDialog();

                ChiTietDichVuBUS ctdvbus = new ChiTietDichVuBUS();
                HoaDonDichVuBUS  hddvbus = new HoaDonDichVuBUS();
                DichVuBUS        dvbus   = new DichVuBUS();
                KhachHangBUS     khbus   = new KhachHangBUS();
                if (ctdvbus.getctdv_byMaThue(tt_ent.MaThue) != null)
                {
                    foreach (var item in ctdvbus.getctdv_byMaThue(tt_ent.MaThue))
                    {
                        if (hddvbus.kiemTraTonTai(item.MaThue, item.MaPhong) == false)
                        {
                            eHoaDonDichVu hddv = new eHoaDonDichVu();
                            hddv.MaHDDV  = (DateTime.Now.Day).ToString() + (DateTime.Now.Month).ToString() + (DateTime.Now.Year).ToString() + item.MaThue + item.MaKhach + item.MaPhong;
                            hddv.MaThue  = item.MaThue;
                            hddv.MaKH    = item.MaKhach;
                            hddv.MaPhong = item.MaPhong;
                            hddv.NgayLap = DateTime.Now.Date;
                            hddv.GioLap  = gioHienTai;
                            hddvbus.insertThanhToanDV(hddv);
                            List <eCTDV> lsctdv = new List <eCTDV>();
                            foreach (eChiTetDichVu dv in ctdvbus.getctdv_MaThue_MaPhong(item.MaThue, item.MaPhong))
                            {
                                eCTDV ctdv = new eCTDV();
                                ctdv.TenDV   = dvbus.getTenDV_byID(dv.MaDV);
                                ctdv.SoLuong = dv.SoLuong;
                                ctdv.DonGia  = dvbus.getDonGia_byID(dv.MaDV);
                                lsctdv.Add(ctdv);
                            }

                            bc.tenNV        = nvbus.getenNV_ByID(maNVThanhToan);
                            bc.tenKH        = khbus.getenKH_ByID(item.MaKhach);
                            bc.soHD         = hddvbus.gemaHD_BymaThue_maPhong(item.MaThue, item.MaPhong);
                            bc.thoiGianInHD = DateTime.Now.ToLongTimeString() + "   " + DateTime.Now.ToShortDateString();
                            bc.tenPhong     = pbus.getTenPhong_ByID(item.MaPhong);

                            frmPrint frmInDV = new frmPrint();
                            frmInDV.InHoaDonInDichVuTuReport(bc, lsctdv.ToList());
                            frmInDV.ShowDialog();
                            this.Close();
                        }
                    }
                }
            }
        }