Esempio n. 1
0
        bool GopBan(string mahd1, string maban1, string mahd2, string maban2)
        {
            // lấy dánh sách chi tiết hóa đơn của hd1
            // thực hiện cập nhật cthd của hd1 sang hd2
            // nếu thức uống đã có trong cthd cua hd2 thì update lại sô lượng
            // nếu thức uống chưa có thì thêm mới cthd của hd2
            try
            {
                List <ChiTietHoaDonDTO> list = ChiTietHoaDonBUS.CTHD_List(mahd1);

                foreach (ChiTietHoaDonDTO item in list)
                {
                    DataTable dt = ChiTietHoaDonBUS.CTHD_KiemTraThucUongCoTrongCTHD(item.Tu_id, mahd2);
                    if (dt.Rows.Count > 0)
                    {
                        ChiTietHoaDonDTO cthd = new ChiTietHoaDonDTO();
                        cthd.Tu_id        = item.Tu_id;
                        cthd.Hd_ma        = mahd2;
                        cthd.Cthd_soluong = item.Cthd_soluong + int.Parse(dt.Rows[0]["cthd_soluong"].ToString());
                        ChiTietHoaDonBUS.CTHD_ThemXoaSuaHuyBan(cthd, 2);
                    }
                    else
                    {
                        ChiTietHoaDonDTO cthd = new ChiTietHoaDonDTO();
                        cthd.Tu_id        = item.Tu_id;
                        cthd.Hd_ma        = mahd2;
                        cthd.Cthd_soluong = item.Cthd_soluong;
                        ChiTietHoaDonBUS.CTHD_ThemXoaSuaHuyBan(cthd, 1);
                    }
                }
                return(true);
            }
            catch (Exception) { return(false); }
        }
Esempio n. 2
0
        private void btnthemthucuong_Click(object sender, EventArgs e)
        {
            if (txtTenThucChon.Text == "")
            {
                XtraMessageBox.Show("Chưa chọn thức uống", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            try
            {
                ChiTietHoaDonDTO cthd = new ChiTietHoaDonDTO();
                cthd.Tu_id        = MaThucUong;                             // lấy mã thức uống lưu vào CTHD
                cthd.Hd_ma        = txtmahd.Text;                           // lấy mã hóa đơn lưu vào CTHD
                cthd.Cthd_soluong = int.Parse(numsoluong.Value.ToString()); // lấy số lượng thức uống lưu vào CTHD
                                                                            // kiểm tra trạng thái của Bàn và mã Hóa Đơn
                                                                            // nếu Bàn trống thì thêm Hoa Don trước -> thêm CTHD
                                                                            // Bàn có khách thì chỉ thêm mới cthd -> kiểm tra thức uống thêm vào đã có trong CTHD hay chưa
                                                                            //-> nếu có thì cập nhật lại số lượng theo mã HD và mã Thức uống
                                                                            //-> nếu chưa thì thêm mới CTHD
                string trangthaiban = "";
                if (txttrangthaiban.Text == "Trống" || txttrangthaiban.Text == "Đặt trước")
                {
                    trangthaiban = "Trống";
                }
                else
                {
                    trangthaiban = "Có khách";
                }
                switch (trangthaiban)
                {
                case "Trống":
                    HoaDonDTO hd = new HoaDonDTO();
                    hd.Hd_id        = txtmahd.Text;
                    hd.Ban_id       = cbBan.SelectedValue.ToString();
                    hd.Hd_trangthai = 0;
                    DateTime dtt = DateTime.Now;
                    hd.Hd_ngaylap  = dtt.ToString();
                    hd.Hd_phuthu   = 0;
                    hd.Hd_giamgia  = 0;
                    hd.Hd_tongtien = 0;
                    hd.Nv_id       = MaNhanVien;
                    if (HoaDonBUS.HoaDon_ThemXoaSuaHuyBan(hd, 1))
                    {
                        if (ChiTietHoaDonBUS.CTHD_ThemXoaSuaHuyBan(cthd, 1))
                        {
                            if (BanBUS.Ban_CapNhatTrangThaiBan(cbBan.SelectedValue.ToString(), "Có khách"))
                            {
                                Tao_Ban(); txttrangthaiban.Text = "Có khách"; XetThuocTinhChoCacButton(true, true, true);
                            }
                            else
                            {
                                XtraMessageBox.Show("Lỗi nhật được trạng thái bàn", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                            }
                        }
                        else
                        {
                            XtraMessageBox.Show("Lỗi không thêm được Chi Tiết Hóa Đơn", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                    else
                    {
                        XtraMessageBox.Show("Lỗi không thêm Hóa Đơn", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    break;

                case "Có khách":
                    DataTable dt = ChiTietHoaDonBUS.CTHD_KiemTraThucUongCoTrongCTHD(int.Parse(MaThucUong.ToString()), txtmahd.Text);
                    if (dt.Rows.Count > 0)
                    {
                        cthd.Cthd_soluong = int.Parse(dt.Rows[0]["cthd_soluong"].ToString()) + int.Parse(numsoluong.Value.ToString());
                        if (!ChiTietHoaDonBUS.CTHD_ThemXoaSuaHuyBan(cthd, 2))
                        {
                            XtraMessageBox.Show("Lỗi không cập nhật được sô lượng Thức uống!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                    else
                    {
                        if (!ChiTietHoaDonBUS.CTHD_ThemXoaSuaHuyBan(cthd, 1))
                        {
                            XtraMessageBox.Show("Lỗi không thêm mới được Chi Tiết Hóa Đơn", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                    break;

                default:
                    break;
                }
                gridCTHD_Load(txtmahd.Text);
                txtthanhtien.Text = HoaDonBUS.DinhDangTienTienTe(double.Parse(gridViewCTHD.Columns["ThanhTien"].SummaryItem.SummaryValue.ToString()));
                txtThanhTien_txtTongCong_Load();
            }
            catch (Exception)
            {
                XtraMessageBox.Show("Lỗi");
            }
        }