예제 #1
0
        public List<CTHoaDon> loadCTHoaDon_with_MaHoaDon(string mahoadon)
        {
            int param = 1;
            string[] names = new string[param];
            Object[] values = new Object[param];

            names[0] = "@maHoaDon";
            values[0] = mahoadon;

            DataTable dt = db.LoadData("CTHOADON_proc_load_with_MaHoaDon", names, values, param);

            List<CTHoaDon> list = new List<CTHoaDon>();
            foreach (DataRow row in dt.Rows)
            {
                CTHoaDon cthd = new CTHoaDon();
                MonAn ma = new MonAn();
                HoaDon hd = new HoaDon();

                ma.MaMonAn = row["MaMonAn"].ToString();
                ma.TenMonAn = row["TenMonAn"].ToString();
                ma.DonGia = decimal.Parse(row["DonGia"].ToString());
                cthd.MonAn = ma;
                cthd.MaCTHoaDon = row["MaCTHoaDon"].ToString();
                hd.MaHoaDon = row["MaHoaDon"].ToString();
                cthd.HoaDon = hd;
                cthd.SoLuong = int.Parse(row["SoLuong"].ToString());
                cthd.DaChuanBi = bool.Parse(row["DaChuanBi"].ToString());
                cthd.GhiChu = row["GhiChu"].ToString();
                list.Add(cthd);
            }
            return list;
        }
예제 #2
0
        private void btnDongY_Click(object sender, EventArgs e)
        {
            if (dipSoLuong.Text == "0")
            {
                MessageBox.Show("Nhập lại số lượng", " Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                dipSoLuong.Focus();
                return;
            }
            bool existed = false;
            CTHoaDon cthd = new CTHoaDon();

            //kiểm tra đã có chi tiết hóa đơn cùng món chưa
            foreach(var item in Global.KhuVucBan.currentListCTHD)
            {
                if(item.MonAn.MaMonAn == monan.MaMonAn)
                {
                    existed = true;
                    cthd.MaCTHoaDon = item.MaCTHoaDon;
                    cthd.SoLuong = item.SoLuong;
                    break;
                }
            }

            if(!existed)
            {
                //TODO Tạo mới 1 chi tiết hóa đơn
                
                cthd.MaCTHoaDon = DataBus.getInstance().getMaCTHoaDonMoi();
                cthd.HoaDon = Global.KhuVucBan.currentHD;
                cthd.MonAn = monan;
                cthd.SoLuong = (int)dipSoLuong.Value;
                cthd.GhiChu = txtGhiChu.Text;
                cthd.DaChuanBi = false;
                ctHoaDonBus.insertCTHoaDon(cthd);
            }
            else // cập nhật số lượng CTHoaDon
            {
                cthd.DaChuanBi = false;
                cthd.SoLuong += (int)dipSoLuong.Value;
                cthd.MonAn = monan;
                ctHoaDonBus.updateSoLuong(cthd);
                ctHoaDonBus.updateTrangThai(cthd);
            }
            Global.KhuVucBan.currentHD.TongTien += cthd.MonAn.DonGia * (int)dipSoLuong.Value;
            hoadonBUS.updateHoaDon(Global.KhuVucBan.currentHD);
            Global.KhuVucBan.currentListCTHD = ctHoaDonBus.loadCTHoaDon_with_MaHoaDon(Global.KhuVucBan.currentHD.MaHoaDon);

            Global.KhuVucBan.refreshDgvMonDaGoi(ctHoaDonBus.loadCTHoaDon_with_MaHoaDon(Global.KhuVucBan.currentHD.MaHoaDon), Global.KhuVucBan.currentHD.TongTien);
            this.Close();
        }
예제 #3
0
        public int updateTrangThai(CTHoaDon cthd)
        {
            int param = 2;
            string[] names = new string[param];
            Object[] values = new Object[param];

            names[0] = "@maCTHoaDon";
            names[1] = "@daChuanBi";

            values[0] = cthd.MaCTHoaDon;
            values[1] = cthd.DaChuanBi;

            return db.Update("CTHOADON_proc_update_TrangThai", names, values, param);
        }
예제 #4
0
        public int updateSoLuong(CTHoaDon cthd)
        {
            int param = 2;
            string[] names = new string[param];
            Object[] values = new Object[param];

            names[0] = "@maCTHoaDon";
            names[1] = "@soLuong";

            values[0] = cthd.MaCTHoaDon;
            values[1] = cthd.SoLuong;

            return db.Update("CTHOADON_proc_update_SoLuong", names, values, param);
        }
예제 #5
0
        public int insertCTHoaDon(CTHoaDon cthd)
        {
            int param = 6;
            string[] names = new string[param];
            Object[] values = new Object[param];

            names[0] = "@maCTHoaDon";
            names[1] = "@maHoaDon";
            names[2] = "@maMonAn";
            names[3] = "@soLuong";
            names[4] = "@ghiChu";
            names[5] = "@daChuanBi";

            values[0] = cthd.MaCTHoaDon;
            values[1] = cthd.HoaDon.MaHoaDon;
            values[2] = cthd.MonAn.MaMonAn;
            values[3] = cthd.SoLuong;
            values[4] = cthd.GhiChu;
            values[5] = cthd.DaChuanBi;

            return db.Update("CTHoaDon_proc_insert", names, values, param);
        }
예제 #6
0
 public int updateTrangThai(CTHoaDon cthd)
 {
     return ctHoaDonDAO.updateTrangThai(cthd);
 }
예제 #7
0
 public int updateSoLuong(CTHoaDon cthd)
 {
     return ctHoaDonDAO.updateSoLuong(cthd);
 }
예제 #8
0
 public int insertCTHoaDon(CTHoaDon cthd)
 {
     return ctHoaDonDAO.insertCTHoaDon(cthd);
 }
예제 #9
0
        private void btnChuanBi_Click(object sender, EventArgs e)
        {
            if (dgvMonDaGoi.SelectedRows.Count > 0)
            {
                foreach(DataGridViewRow row in dgvMonDaGoi.SelectedRows)
                {
                    CTHoaDon cthd = new CTHoaDon();
                    cthd.MaCTHoaDon = row.Cells[0].Value.ToString();
                    cthd.DaChuanBi = true;

                    ctHoaDonBus.updateTrangThai(cthd);
                }
            }

            refreshDgvMonDaGoi(ctHoaDonBus.loadCTHoaDon_with_MaHoaDon(currentHD.MaHoaDon), currentHD.TongTien);
        }