Exemple #1
0
        private void btnLapHoaDon_Them_Click(object sender, EventArgs e)
        {
            String maPhieuThue = cbLapHoaDon_MaPhieuThue.Text;

            if (maPhieuThue != "")
            {
                dgv_LapHoaDon.DataSource = null;
                PhieuThueDTO pt = PhieuThueBUS.layPT(maPhieuThue);
                dspt.Add(pt);
                TimeSpan d = DateTime.Now - pt.NgayThue;
                thanhTien += pt.TienDV + pt.Phong.LoaiPhong.DonGia * d.Days;
                tbLapHoaDon_ThanhTien.Text = thanhTien.ToString("00.00");
                List <PhongDTO> dsp = new List <PhongDTO>();
                foreach (PhieuThueDTO pth in dspt)
                {
                    dsp.Add(pth.Phong);
                }
                dgv_LapHoaDon.DataSource = dspt;
                dgv_LapHoaDon.Columns.Remove("Phong");
                DataGridViewColumn column = new DataGridViewColumn();
                column.CellTemplate = new DataGridViewTextBoxCell();
                column.Name         = "Phong";
                column.ValueType    = dsp[0].TenPhong.GetType();
                dgv_LapHoaDon.Columns.Add(column);
                for (int i = 0; i < dsp.Count; ++i)
                {
                    dgv_LapHoaDon.Rows[i].Cells[dgv_LapHoaDon.Columns.Count - 1].Value = dsp[i].TenPhong;
                }
            }
            else
            {
                MessageBox.Show("Bạn chưa chọn mã phiếu thuê.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void updateData()
        {
            List <PhieuThueDTO> dspt = PhieuThueBUS.layDSPT();

            dgvDanhSachPhieuThue.DataSource = dspt;
            dgvDanhSachPhieuThue.Columns.Remove("Phong");

            List <PhongDTO> dsp = new List <PhongDTO>();

            foreach (PhieuThueDTO pt in dspt)
            {
                dsp.Add(pt.Phong);
            }
            DataGridViewColumn column = new DataGridViewColumn();

            column.CellTemplate = new DataGridViewTextBoxCell();
            column.Name         = "Phong";
            column.ValueType    = dsp[0].TenPhong.GetType();
            dgvDanhSachPhieuThue.Columns.Add(column);

            for (int i = 0; i < dsp.Count; ++i)
            {
                dgvDanhSachPhieuThue.Rows[i].Cells[dgvDanhSachPhieuThue.Columns.Count - 1].Value = dsp[i].TenPhong;
            }
        }
Exemple #3
0
        private void gcDanhSachKhachHang_DoubleClick(object sender, EventArgs e)
        {
            int    makh  = int.Parse(gvKhachHang.GetRowCellValue(gvKhachHang.FocusedRowHandle, gvKhachHang.Columns["MaKhachHang"]).ToString());
            string tenkh = gvKhachHang.GetRowCellValue(gvKhachHang.FocusedRowHandle, gvKhachHang.Columns["TenKhachHang"]).ToString();
            List <PhieuThuePhongDTO> lst = new List <PhieuThuePhongDTO>();

            lst = PhieuThueBUS.LayPhongTuongUng(makh);
            int?maphong = lst[0].MaPhong;

            MessageBox.Show("Khách hàng '" + tenkh + "' đang thuê phòng số " + maphong + "", "Thông tin", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
Exemple #4
0
        private void tabPage_LapHoaDon_Enter(object sender, EventArgs e)
        {
            tbLapHoaDon_NgayThanhToan.Text = DateTime.Now.Date.ToString();
            List <KhachHangDTO> dskh = KhachHangBUS.LayDSKhach();
            List <PhieuThueDTO> dspt = PhieuThueBUS.layDSPT();

            foreach (KhachHangDTO kh in dskh)
            {
                cbLapHoaDon_MaKH.Items.Add(kh.MaKH);
            }
            foreach (PhieuThueDTO pt in dspt)
            {
                cbLapHoaDon_MaPhieuThue.Items.Add(pt.MaPhieuThue);
            }
        }
Exemple #5
0
        private ChiTietPhieuThueDTO LayMaKeTiep()
        {
            ChiTietPhieuThueDTO      ct  = new ChiTietPhieuThueDTO();
            List <PhieuThuePhongDTO> lst = new List <PhieuThuePhongDTO>();

            try
            {
                lst                   = PhieuThueBUS.LayMaPTKeTiep();
                ct.MaPhieuThue        = lst[0].MaPhieuThue + 1;
                lst                   = PhieuThueBUS.LayMaCTPTKeTiep();
                ct.MaChiTietPhieuThue = lst[0].MaChiTietPhieuThue + 1;
            }
            catch
            {
                ct.MaPhieuThue        = 1;
                ct.MaChiTietPhieuThue = 1;
            }
            return(ct);
        }
Exemple #6
0
        private KhachHangDTO LayThongTinKhachHang(int i)
        {
            KhachHangDTO        kh  = new KhachHangDTO();
            List <KhachHangDTO> lst = new List <KhachHangDTO>();

            try
            {
                lst            = PhieuThueBUS.LayMaKHKeTiep();
                kh.MaKhachHang = lst[0].MaKhachHang + 1;
            }
            catch
            {
                kh.MaKhachHang = 1;
            }
            kh.TenKhachHang = dgvDanhSachPhieuThue.Rows[i].Cells["colTenKhachHang"].Value.ToString();
            kh.CMND         = dgvDanhSachPhieuThue.Rows[i].Cells["colCMND"].Value.ToString();
            kh.DiaChi       = dgvDanhSachPhieuThue.Rows[i].Cells["colDiaChi"].Value.ToString();
            kh.MaLoaiKhach  = dgvDanhSachPhieuThue.Rows[i].Cells["colLoaiKhach"].Value.ToString();
            return(kh);
        }
Exemple #7
0
        //
        //Màn hình lập hóa đơn
        //
        private void btnLapHoaDon_ThanhToan_Click(object sender, EventArgs e)
        {
            String maHoaDon    = tbLapHoaDon_MaHD.Text;
            String maKhachHang = cbLapHoaDon_MaKH.Text;

            if (maHoaDon != "" && dspt.Count != 0 && maKhachHang != "")
            {
                //dgv_LapHoaDon.Rows.Clear();
                foreach (PhieuThueDTO pt in dspt)
                {
                    PhieuThueBUS.CapNhat(pt.MaPhieuThue, "Yes");
                    PhongBUS.CapNhat(pt.Phong.MaPhong, pt.Phong.TenPhong, pt.Phong.LoaiPhong.MaLoaiPhong, "", "Trống", 0);
                    ChiTietHoaDonDTO ct = new ChiTietHoaDonDTO();
                    ct.Phieuthue  = pt;
                    ct.SoNgayThue = ((DateTime.Now - pt.NgayThue)).Days;
                    ct.TienThue   = ct.SoNgayThue * pt.Phong.LoaiPhong.DonGia;
                    ct.TongCong   = pt.TienDV + ct.TienThue;
                    dscthd.Add(ct);
                }
                HoaDonBUS.themHD(maHoaDon, maKhachHang, DateTime.Now, (int)thanhTien, dscthd);
                thanhTien = 0;
                while (dspt.Count != 0)
                {
                    dspt.Remove(dspt[dspt.Count - 1]);
                }
                while (dscthd.Count != 0)
                {
                    dscthd.Remove(dscthd[dscthd.Count - 1]);
                }
                MessageBox.Show("Thanh toán thành công.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                //while (dgv_LapHoaDon.Rows.Count != 0)
                //{
                //    dgv_LapHoaDon.Rows.Remove(dgv_LapHoaDon.Rows[dgv_LapHoaDon.Rows.Count - 1]);
                //}
            }
            else
            {
                MessageBox.Show("Bạn chưa nhập mã hóa đơn.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemple #8
0
        private void btnLuuPhieuThue_Click(object sender, EventArgs e)
        {
            PhieuThuePhongDTO   p  = LayThongTinPhong();
            ChiTietPhieuThueDTO ct = LayMaKeTiep();

            if (PhieuThueBUS.ThemPhieuThuePhong(ct, p))
            {
                for (int i = 0; i < dgvDanhSachPhieuThue.Rows.Count; i++)
                {
                    KhachHangDTO kh = LayThongTinKhachHang(i);
                    if (KhachHangBUS.ThemKhachHang(kh))
                    {
                        if (!PhieuThueBUS.ThemCTPhieuThuePhong(ct, kh))
                        {
                            MessageBox.Show("Không thêm được chi tiết phiếu thuê", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Không thêm được thông tin khách hàng" + kh.TenKhachHang + "", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    }
                }
                if (PhongBUS.CapNhatTinhTrangPhong(p))
                {
                    MessageBox.Show("Lập phiếu thuê thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    ((Form)this.TopLevelControl).Close();
                }
                else
                {
                    MessageBox.Show("Không cập nhật được tình trạng phòng", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                }
            }
            else
            {
                MessageBox.Show("Không thêm được phiếu thuê", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Stop);
            }
        }
        private void btn_Them_Click(object sender, EventArgs e)
        {
            DateTime now         = DateTime.Now;
            int      hour        = now.Hour;
            int      day         = now.Day;
            int      month       = now.Month;
            int      year        = now.Year;
            String   maPhieuThue = txt_MaPhong.Text + hour.ToString() + day.ToString() + month.ToString() + year.ToString() + txt_MaKhachHang.Text;

            txt_MaPhieuThue.Text = maPhieuThue;


            if (txt_MaKhachHang.Text == "")
            {
                MessageBox.Show("Bạn chưa chọn khách hàng.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                try
                {
                    bool kq = PhieuThueBUS.ThemPhieu(maPhieuThue, txt_MaPhong.Text, dtp_NgayBatDauThue.Value, "No", KhachHangBUS.LayKhach(txt_MaKhachHang.Text));
                    if (kq)
                    {
                        MessageBox.Show("Thêm phiếu thuê thành công.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("Thêm phiếu thuê thất bại.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    updateData();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }