public void GopBan() { int IDHoaDon = DAO_Setting.KiemtraGiaDien(frmDangNhap.NguoiDung.Idchinhanh) == 0 ? DAO_BanHang.IDHoaDon(frmBanHang.IDBan) : DAO_BanHang.IDHoaDon(frmBanHang2.IDBan); int IDBan = DAO_Setting.KiemtraGiaDien(frmDangNhap.NguoiDung.Idchinhanh) == 0 ? frmBanHang.IDBan : frmBanHang2.IDBan; if (listChiTietHoaDonA1.Count > 0 && listChiTietHoaDonB1.Count > 0) { MessageBox.Show("Bạn chưa gộp bàn. Vui lòng kiểm tra lại?", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (listChiTietHoaDonB1.Count > 0) { int IDBanA = IDBan; int IDBanB = Int32.Parse(cmbBanB.EditValue.ToString()); int IDHoaDonB = DAO_BanHang.IDHoaDon(IDBanB); int IDHoaDonA = IDHoaDon; // A Chuyển sang B, xóa toàn bộ hóa đơn A, cập nhật hóa đơn B, đưa trạng thái bàn A về null, xóa chi tiết bàn B if (DAO_BAN.XoaBanVeMatDinh(IDBanA, frmDangNhap.NguoiDung.Idchinhanh) == true && DAO_ChuyenBan.XoaChiTietBanCu(IDHoaDonA, IDBanA) == true && DAO_GopBan.XoaHoaDonCu(IDHoaDonA, IDBanA) == true && DAO_ChuyenBan.XoaChiTietBanCu(IDHoaDonB, IDBanB) == true) { //Thêm lại chi tiết bàn B, foreach (ChiTietHoaDonB1 item in listChiTietHoaDonB1) { string MaHang = item.MaHangHoa; float TrongLuong = item.TrongLuong; int SL = item.SoLuong; float DonGia = item.DonGia; float ThanhTien = item.ThanhTien; int IDHangHoa = TrongLuong > 0 ? DAO_Setting.LayIDHangHoaTuChon(MaHang) : DAO_Setting.LayIDHangHoa(MaHang); int IDDonViTinh = TrongLuong > 0 ? DAO_Setting.LayIDDonViTinhTuChon(MaHang) : DAO_Setting.LayIDDonViTinh(MaHang); if (DAO_ChiTietHoaDon.KiemTraHangHoa(IDHoaDonB, IDHangHoa, IDBanB, TrongLuong, IDChiNhanh) == false) { DAO_GoiMon.ThemChiTietHoaDon(IDHoaDonB, IDHangHoa, SL, DonGia, ThanhTien, IDBanB, MaHang, IDDonViTinh, TrongLuong, frmDangNhap.NguoiDung.Idchinhanh); // thêm chi tiết hóa đơn mới } else { DAO_GoiMon.CapNhatChiTietHoaDon(IDHoaDonB, SL, ThanhTien, IDHangHoa, IDBanB, IDChiNhanh); } } if (MyGetDataGopBan != null) { MyGetDataGopBan(1, IDBanA, IDBanB, IDHoaDonB); this.Close(); } } } else if (listChiTietHoaDonA1.Count > 0) { // B Chuyển sang A, xóa toàn bộ hóa đơn B, cập nhật hóa đơn A int IDBanA = IDBan; int IDBanB = Int32.Parse(cmbBanB.EditValue.ToString()); int IDHoaDonB = DAO_BanHang.IDHoaDon(IDBanB); int IDHoaDonA = IDHoaDon; if (DAO_BAN.XoaBanVeMatDinh(IDBanB, frmDangNhap.NguoiDung.Idchinhanh) == true && DAO_ChuyenBan.XoaChiTietBanCu(IDBanB, IDBanB) && DAO_GopBan.XoaHoaDonCu(IDHoaDonB, IDBanB) && DAO_ChuyenBan.XoaChiTietBanCu(IDHoaDonA, IDBanA)) { foreach (ChiTietHoaDonA1 item in listChiTietHoaDonA1) { string MaHang = item.MaHangHoa; float TrongLuong = item.TrongLuong; int SL = item.SoLuong; float DonGia = item.DonGia; float ThanhTien = item.ThanhTien; int IDHangHoa = TrongLuong > 0 ? DAO_Setting.LayIDHangHoaTuChon(MaHang) : DAO_Setting.LayIDHangHoa(MaHang); int IDDonViTinh = TrongLuong > 0 ? DAO_Setting.LayIDDonViTinhTuChon(MaHang) : DAO_Setting.LayIDDonViTinh(MaHang); if (DAO_ChiTietHoaDon.KiemTraHangHoa(IDHoaDonA, IDHangHoa, IDBanA, TrongLuong, IDChiNhanh) == false) { DAO_GoiMon.ThemChiTietHoaDon(IDHoaDonA, IDHangHoa, SL, DonGia, ThanhTien, IDBanA, MaHang, IDDonViTinh, TrongLuong, frmDangNhap.NguoiDung.Idchinhanh); // thêm chi tiết hóa đơn mới } else { DAO_GoiMon.CapNhatChiTietHoaDon(IDHoaDonA, SL, ThanhTien, IDHangHoa, IDBanA, IDChiNhanh); } } if (MyGetDataGopBan != null) { MyGetDataGopBan(1, IDBanA, IDBanB, IDHoaDonA); this.Close(); } } } else { MessageBox.Show("Gộp bàn thất bại. Vui lòng kiểm tra lại?", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void ThanhToanBill() { // thanh toán... đưa dữ liệu lai from chính, laod lại món ăn, tiền giờ.OK if (MessageBox.Show("Thanh Toán", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK) { if (listChiTietMonAnThanhToan.Count > 0) { bool KT = true; int IDHoaDon = DAO_Setting.KiemtraGiaDien(frmDangNhap.NguoiDung.Idchinhanh) == 0 ? DAO_BanHang.IDHoaDon(frmBanHang.IDBan) : DAO_BanHang.IDHoaDon(frmBanHang2.IDBan); int IDBan = DAO_Setting.KiemtraGiaDien(frmDangNhap.NguoiDung.Idchinhanh) == 0 ? frmBanHang.IDBan : frmBanHang2.IDBan; int IDNhanVien = frmDangNhap.NguoiDung.Id; DateTime GioVao = DAO_ChiTietHoaDonChinh.LayGioVao(IDHoaDon); object ID = DAO_ChiTietHoaDonChinh.ThemMoiHoaDon(IDBan, IDNhanVien, GioVao, frmDangNhap.NguoiDung.Idchinhanh); if (listChiTietMonAnThanhToan.Count > 0 && KT == true && ID != null)// thanh toán món ăn { double TongTien = 0; foreach (ChiTietHoaDonB1 item in listChiTietMonAnThanhToan) { TongTien = TongTien + item.ThanhTien; double TrongLuong = item.TrongLuong; string MaHang = item.MaHangHoa; int SoLuong = item.SoLuong; int IDHangHoa = TrongLuong > 0 ? DAO_Setting.LayIDHangHoaTuChon(MaHang) : DAO_Setting.LayIDHangHoa(MaHang); double DonGia = item.DonGia; double ThanhTien = TrongLuong > 0 ? (SoLuong * (TrongLuong * DonGia)) : (SoLuong * DonGia); int IDDonViTinh = TrongLuong > 0 ? DAO_Setting.LayIDDonViTinhTuChon(MaHang) : DAO_Setting.LayIDDonViTinh(MaHang); //thêm vào chi tiết hóa đơn chính, cập nhật chi tiết hóa đơn củ, if Sl = nhau xóa hóa đơn củ // kiểm tra thêm chi tiết if (DAO_ChiTietHoaDonChinh.KiemTraHangHoa(Int32.Parse(ID.ToString()), IDHangHoa, IDBan, float.Parse(TrongLuong.ToString()), frmDangNhap.NguoiDung.Idchinhanh) == false) { DAO_ChiTietHoaDonChinh.ThemChiTietHoaDonChinh(Int32.Parse(ID.ToString()), IDHangHoa, SoLuong, DonGia, ThanhTien, IDBan, MaHang, IDDonViTinh, float.Parse(TrongLuong.ToString()), frmDangNhap.NguoiDung.Idchinhanh); } else { DAO_ChiTietHoaDonChinh.CapNhatChiTietHoaDon(Int32.Parse(ID.ToString()), SoLuong, ThanhTien, IDHangHoa, IDBan, frmDangNhap.NguoiDung.Idchinhanh); } //if (TrongLuong == 0) //{ // List<DTO_NguyenLieu> ListNguyenLieu = DAO_NguyenLieu.Instance.LoadNguyenLieu(IDHangHoa);// trừ nguyên liệu tồn kho // if (ListNguyenLieu.Count > 0) // { // foreach (DTO_NguyenLieu itemNL in ListNguyenLieu) // { // double SLTru = (itemNL.TrongLuong * SoLuong); // DAO_Setting.TruTonKho(itemNL.IDNguyenLieu, frmDangNhap.NguoiDung.Idchinhanh, SLTru); // // trừ tồn kho // } // } //} //else if (TrongLuong > 0) //{ // DAO_Setting.TruTonKho(IDHangHoa, frmDangNhap.NguoiDung.Idchinhanh, SoLuong * TrongLuong); //} } if (ID != null) { DAO_ChuyenBan.XoaChiTietBanCu(IDHoaDon, IDBan); foreach (ChiTietHoaDonA1 item in listChiTietMonAn) { string MaHang = item.MaHangHoa; int SoLuong = item.SoLuong; float DonGia = item.DonGia; float TrongLuong = item.TrongLuong; float ThanhTien = TrongLuong > 0 ? (SoLuong * (TrongLuong * DonGia)) : (SoLuong * DonGia); int IDHangHoa = TrongLuong > 0 ? DAO_Setting.LayIDHangHoaTuChon(MaHang) : DAO_Setting.LayIDHangHoa(MaHang); int IDDonViTinh = TrongLuong > 0 ? DAO_Setting.LayIDDonViTinhTuChon(MaHang) : DAO_Setting.LayIDDonViTinh(MaHang); DAO_GoiMon.ThemChiTietHoaDon(IDHoaDon, IDHangHoa, SoLuong, DonGia, ThanhTien, IDBan, MaHang, IDDonViTinh, TrongLuong, frmDangNhap.NguoiDung.Idchinhanh); } DAO_ChiTietHoaDonChinh.CapNhatTongTienHoaDonChinh(Int32.Parse(ID.ToString()), IDBan, TongTien, frmDangNhap.NguoiDung.Idchinhanh); } } if (KT == true && ID != null) { if (MyGetData != null) { MyGetData(1, IDHoaDon, IDBan); this.Close(); } if (MessageBox.Show("In hóa đơn", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK) { // in hóa đớn, cập nhật hóa đơn DAO_ConnectSQL connect = new DAO_ConnectSQL(); // Tên máy in string NamePrinter = DAO_Setting.LayTenMayInBill(frmDangNhap.NguoiDung.Idchinhanh); // Lấy máy in bill.. int IDBill = DAO_Setting.ReportBill(frmDangNhap.NguoiDung.Idchinhanh); if (IDBill == 58) { rpHoaDonBanHang_581 rp = new rpHoaDonBanHang_581(); SqlDataSource sqlDataSource = rp.DataSource as SqlDataSource; sqlDataSource.Connection.ConnectionString += connect.ConnectString(); rp.Parameters["ID"].Value = ID; rp.Parameters["ID"].Visible = false; rp.Parameters["IDChiNhanh"].Value = frmDangNhap.NguoiDung.Idchinhanh; rp.Parameters["IDChiNhanh"].Visible = false; //rp.ShowPreviewDialog(); rp.Print(NamePrinter); } else { rpHoaDonBanHang1 rp = new rpHoaDonBanHang1(); SqlDataSource sqlDataSource = rp.DataSource as SqlDataSource; sqlDataSource.Connection.ConnectionString += connect.ConnectString(); rp.Parameters["ID"].Value = ID; rp.Parameters["ID"].Visible = false; rp.Parameters["IDChiNhanh"].Value = frmDangNhap.NguoiDung.Idchinhanh; rp.Parameters["IDChiNhanh"].Visible = false; //rp.ShowPreviewDialog(); rp.Print(NamePrinter); } } } } else { MessageBox.Show("Lỗi thanh toán. Danh sách hóa đơn trống?", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
public void TachBan() { // lấy lại dữ liệu A và B, xóa chi tiết A, thêm lại A, Thêm B + Hóa Đơn Mới(if đã tồn tại thêm chèn vào) if (listChiTietHoaDonB1.Count > 0) { int IDBan = DAO_Setting.KiemtraGiaDien(frmDangNhap.NguoiDung.Idchinhanh) == 0 ? frmBanHang.IDBan : frmBanHang2.IDBan; int IDHoaDonA = DAO_Setting.KiemtraGiaDien(frmDangNhap.NguoiDung.Idchinhanh) == 0 ? DAO_BanHang.IDHoaDon(frmBanHang.IDBan) : DAO_BanHang.IDHoaDon(frmBanHang2.IDBan); int IDBanA = IDBan; int IDBanB = Int32.Parse(cmbBanB.EditValue.ToString()); int IDHoaDonB = DAO_BanHang.IDHoaDon(IDBanB);// nếu idhoadonb = 0 thì tạo IDHoaDonMoi if (IDHoaDonB == 0) { int IDNhanVien = frmDangNhap.NguoiDung.Id; object ID = DAO_GoiMon.ThemHoaDon(IDBanB, IDNhanVien, frmDangNhap.NguoiDung.Idchinhanh); if (ID != null) { IDHoaDonB = Int32.Parse(ID.ToString()); } } // Xóa A Lưu Lại A, XÓa B Lưu Lại B if (DAO_ChuyenBan.XoaChiTietBanCu(IDHoaDonA, IDBanA) == true && DAO_ChuyenBan.XoaChiTietBanCu(IDHoaDonB, IDBanB)) { foreach (ChiTietHoaDonA1 item in listChiTietHoaDonA1) { float TrongLuong = item.TrongLuong; string MaHang = item.MaHangHoa; int SoLuong = item.SoLuong; float DonGia = item.DonGia; float ThanhTien = TrongLuong > 0 ? (SoLuong * (TrongLuong * DonGia)) : (SoLuong * DonGia); int IDHangHoa = TrongLuong > 0 ? DAO_Setting.LayIDHangHoaTuChon(MaHang) : DAO_Setting.LayIDHangHoa(MaHang); int IDDonViTinh = TrongLuong > 0 ? DAO_Setting.LayIDDonViTinhTuChon(MaHang) : DAO_Setting.LayIDDonViTinh(MaHang); // xóa a. Lưu lại A. DAO_GoiMon.ThemChiTietHoaDon(IDHoaDonA, IDHangHoa, SoLuong, DonGia, ThanhTien, IDBanA, MaHang, IDDonViTinh, TrongLuong, frmDangNhap.NguoiDung.Idchinhanh); } foreach (ChiTietHoaDonB1 item in listChiTietHoaDonB1) { string MaHang = item.MaHangHoa; int SoLuong = item.SoLuong; float DonGia = item.DonGia; float TrongLuong = item.TrongLuong; float ThanhTien = TrongLuong > 0 ? (SoLuong * (TrongLuong * DonGia)) : (SoLuong * DonGia); int IDHangHoa = TrongLuong > 0 ? DAO_Setting.LayIDHangHoaTuChon(MaHang) : DAO_Setting.LayIDHangHoa(MaHang); int IDDonViTinh = TrongLuong > 0 ? DAO_Setting.LayIDDonViTinhTuChon(MaHang) : DAO_Setting.LayIDDonViTinh(MaHang); // xóa B. Lưu lại B. if (DAO_ChiTietHoaDon.KiemTraHangHoa(IDHoaDonB, IDHangHoa, IDBanB, TrongLuong, IDChiNhanh) == false) { DAO_GoiMon.ThemChiTietHoaDon(IDHoaDonB, IDHangHoa, SoLuong, DonGia, ThanhTien, IDBanB, MaHang, IDDonViTinh, TrongLuong, frmDangNhap.NguoiDung.Idchinhanh); } else { DAO_GoiMon.CapNhatChiTietHoaDon(IDHoaDonB, SoLuong, ThanhTien, IDHangHoa, IDBanB, IDChiNhanh); } DAO_BAN.DoiTrangThaiBanCoNguoi(IDBanB); } if (MyGetDataTachBan != null) { MyGetDataTachBan(1, IDHoaDonA, IDHoaDonB); this.Close(); } } } else { MessageBox.Show("Danh sách món ăn rỗng. Vui lòng kiểm tra lại?", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } }