public static void ThemCTHDDV(List <CHITIETHOADON> dsCTHDDV, String sohd, String madv, int soluongdv)
        {
            CHITIETHOADON ct = new CHITIETHOADON(sohd, madv, soluongdv);

            dsCTHDDV.Add(ct);
        }
        protected void btn_datHang_Click(object sender, EventArgs e)
        {
            if (Session["User"] == null)
            {
                Response.Redirect("~/Login/login.aspx");
            }
            else
            {
                HOADON  hd      = new HOADON();
                DONHANG donHang = new DONHANG();
                int     maKH    = Convert.ToInt32(Session["User"]);;
                hd.MaKH = maKH;

                if (hdDao.Add(hd) == 1)
                {
                    double tongtien = 0;
                    if (CartItemGridView.Rows.Count > 0)
                    {
                        foreach (GridViewRow row in CartItemGridView.Rows)
                        {
                            CHITIETHOADON ct = new CHITIETHOADON();
                            SANPHAM       sp = new SANPHAM();

                            ct.MaHD = hd.MaHD;
                            ct.MaSP = Convert.ToInt32(row.Cells[0].Text);
                            TextBox sl = (TextBox)row.FindControl("txt_SoLuong");
                            ct.SoLuong = Convert.ToInt32(sl.Text);
                            Label  giastr = (Label)row.FindControl("txt_gia");
                            double gia    = Convert.ToDouble(giastr.Text);
                            ct.ThanhTien = Convert.ToDouble(ct.SoLuong * gia);
                            chiTietHoaDonDao.Add(ct);
                            tongtien += ct.ThanhTien.GetValueOrDefault();

                            // Cập Nhật Lại Số Lượng Sản Phẩm
                            sp.MaSP = Convert.ToInt32(row.Cells[0].Text); // Gán giá trị cho MaSP

                            // SoLuong = số Lượng Hiện Tại - Số Lượng Bán
                            sp.SoLuong = sanPham.GetDVByMa(Convert.ToInt32(row.Cells[0].Text)).SoLuong - Convert.ToInt32(sl.Text);
                            sanPham.UpdateSoLuong(sp);
                        }
                    }
                    hd.TongTien = tongtien;
                    hdDao.Update(hd);
                    //Thêm Hóa Đơn
                    hdDao.Update(hd);

                    // Thêm đơn hàng
                    donHang.MaHD      = hd.MaHD;
                    donHang.MaKH      = maKH;
                    donHang.TrangThai = "Chưa Xác Nhận";
                    donHang.NgayDat   = DateTime.Now;
                    _donHangDao.Add(donHang);

                    Session.Remove("cart");


                    Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Alert", "alert('Đặt Hàng thành công')", true);
                }
                else
                {
                    Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Alert", "alert('Đặt Hàng không thành công')", true);
                }
            }

            Page.Response.Redirect(Page.Request.Url.ToString(), true);
        }
示例#3
0
        public static void ThemCTHD(List <CHITIETHOADON> dsCTHD, String mahd, String masp, int soluong)
        {
            CHITIETHOADON cthd = new CHITIETHOADON(mahd, masp, soluong);

            dsCTHD.Add(cthd);
        }
示例#4
0
 public bool Them(CHITIETHOADON cthd)
 {
     return(objdal.Insert(cthd));
 }
示例#5
0
        private void btnTraMon_Click(object sender, EventArgs e)
        {
            if (IDBanAn == 0)
            {
                MessageBox.Show("Chưa có bàn ăn nào được chọn",
                                "Thông báo",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                return;
            }

            /// Kiểm tra xem bàn ăn là bàn đã có khách hay chưa có khách
            BANAN banan = db.BANANs.Where(p => p.ID == IDBanAn).FirstOrDefault();

            if (banan.HOADONID == null)
            {
                MessageBox.Show("Bàn ăn không có khách",
                                "Thông báo",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                return;
            }

            /// Kiểm tra món ăn đang lựa chọn
            HOADON hd = db.HOADONs.Where(p => p.ID == banan.HOADONID).FirstOrDefault();

            int idChiTiet;

            try
            {
                idChiTiet = (int)dgvHoaDon.GetFocusedRowCellValue("ID");
            }
            catch
            {
                MessageBox.Show("Chưa có mặt hàng nào được chọn", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            CHITIETHOADON chitiet = db.CHITIETHOADONs.Where(p => p.ID == idChiTiet).FirstOrDefault();

            int SoLuong       = (int)chitiet.SOLUONG;
            int SoLuongTraMon = (int)txtTMSoLuong.Value;

            if (SoLuongTraMon > SoLuong)
            {
                MessageBox.Show("Số lượng trả món phải nhỏ hơn số lượng đã gọi",
                                "Thông báo",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Information);
                return;
            }

            chitiet.SOLUONG -= SoLuongTraMon;


            try
            {
                hd.TONGTIEN -= SoLuongTraMon * chitiet.DONGIA;

                KHO kho = db.KHOes.Where(p => p.MATHANGID == chitiet.MATHANGID).FirstOrDefault();
                kho.SOLUONG += SoLuongTraMon;

                if (chitiet.SOLUONG == 0)
                {
                    db.CHITIETHOADONs.Remove(chitiet);
                }

                db.SaveChanges();

                int cnt = db.CHITIETHOADONs.Where(p => p.HOADONID == hd.ID).ToList().Count;
                if (cnt == 0)
                {
                    db.HOADONs.Remove(hd);
                    db.SaveChanges();
                    banan.HOADONID  = null;
                    banan.TRANGTHAI = 0;

                    db.SaveChanges();
                    UpdateDsBanAn();
                }

                MessageBox.Show("Trả món thành công",
                                "Thông báo",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Information);
            }
            catch
            {
                MessageBox.Show("Trả món thất bại",
                                "Thông báo",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
            }
            finally
            {
                UpdateDetail(IDBanAn);
            }
        }
示例#6
0
        private void btnGoiMon_Click(object sender, EventArgs e)
        {
            try
            {
                /// Kiểm tra bàn ăn xem đã được chọn chưa
                if (IDBanAn == 0)
                {
                    MessageBox.Show("Chưa có bàn ăn nào được chọn",
                                    "Thông báo",
                                    MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);
                    return;
                }

                int     idMatHang = (int)cbxGMMatHang.EditValue;
                MATHANG mathang   = db.MATHANGs.Where(p => p.ID == idMatHang).FirstOrDefault();
                int     SoLuongGM = (int)txtGMSoLuong.Value;
                int     SoLuong   = (int)db.KHOes.Where(p => p.MATHANGID == idMatHang).FirstOrDefault().SOLUONG;

                // Kiểm tra kho
                if (SoLuong < SoLuongGM)
                {
                    MessageBox.Show("Không đủ hàng (" + SoLuong + ")",
                                    "Thông báo",
                                    MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);
                    return;
                }

                /// Trừ số lượng trong kho
                KHO kho = db.KHOes.Where(p => p.MATHANGID == idMatHang).FirstOrDefault();
                kho.SOLUONG -= SoLuongGM;

                if (banan.HOADONID == null)
                {
                    // nếu bàn ăn này chưa chứa hóa đơn nào
                    HOADON hd = new HOADON();
                    hd.NGAYNHAP   = DateTime.Now;
                    hd.TONGTIEN   = 0;
                    hd.NHANVIENID = Helper.nhanvien.ID;
                    hd.MAHOADON   = "";
                    hd.KHUYENMAI  = 0;
                    db.HOADONs.Add(hd);
                    db.SaveChanges();

                    hd.MAHOADON     = "HD" + hd.ID;
                    banan.TRANGTHAI = 1;
                    banan.HOADONID  = hd.ID;
                    db.SaveChanges();

                    CHITIETHOADON chitiet = new CHITIETHOADON();
                    chitiet.HOADONID  = hd.ID;
                    chitiet.SOLUONG   = SoLuongGM;
                    chitiet.MATHANGID = mathang.ID;
                    chitiet.DONGIA    = mathang.GIABAN;
                    chitiet.THANHTIEN = chitiet.DONGIA * chitiet.SOLUONG;
                    db.CHITIETHOADONs.Add(chitiet);
                    hd.TONGTIEN = chitiet.THANHTIEN;
                    db.SaveChanges();
                }
                else
                {
                    // nếu bàn ăn này đã chứa hóa đơn
                    HOADON hd = db.HOADONs.Where(p => p.ID == banan.HOADONID).FirstOrDefault();

                    var           listChiTiet = db.CHITIETHOADONs.Where(p => p.HOADONID == hd.ID).ToList();
                    CHITIETHOADON chitiet;
                    chitiet = listChiTiet.Where(p => p.MATHANGID == mathang.ID).FirstOrDefault();

                    if (chitiet == null)
                    {
                        /// Nếu sản phẩm này chưa từng được thêm vào hóa đơn
                        chitiet           = new CHITIETHOADON();
                        chitiet.HOADONID  = hd.ID;
                        chitiet.SOLUONG   = SoLuongGM;
                        chitiet.MATHANGID = mathang.ID;
                        chitiet.DONGIA    = mathang.GIABAN;
                        chitiet.THANHTIEN = chitiet.DONGIA * chitiet.SOLUONG;
                        db.CHITIETHOADONs.Add(chitiet);

                        hd.TONGTIEN += chitiet.THANHTIEN;

                        db.SaveChanges();
                    }
                    else
                    {
                        /// Nếu sản phẩm này đã từng được thêm thì tăng số lượng
                        chitiet.SOLUONG  += SoLuongGM;
                        chitiet.THANHTIEN = SoLuongGM * chitiet.DONGIA;
                        hd.TONGTIEN      += chitiet.THANHTIEN;
                        db.SaveChanges();
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                UpdateDsBanAn();
                UpdateDetail(IDBanAn);
            }
        }