private void HuyBoMuaHangVaCapNhatNguyenLieu(PhieuMuaNL phieuMua, List <string> listMaNguyenLieu, List <int> listSoLuong, int TongSoHocSinhAD) { //xóa phiếu mua vừa tạo PhieuMuaNLBLL.XoaPhieuMuaNL(phieuMua.MaPhieu); //thực hiện trừ số lượng nguyên liệu được dùng for (int i = 0; i < listMaNguyenLieu.Count; i++) { NguyenLieuBLL.CapNhatTonNguyenLieuTheoMa(listMaNguyenLieu[i], -TongSoHocSinhAD * listSoLuong[i]); } }
public static PhieuMuaNL TaoPhieuMuaMoi() { PhieuMuaNL phieuMuaNL = new PhieuMuaNL(); phieuMuaNL.MaPhieu = SinhMaTuDong(); phieuMuaNL.NgayMua = DateTime.Today; phieuMuaNL.TongTien = 0; phieuMuaNL.TrangThai = "Chưa nhập kho"; phieuMuaNL.NguoiLapPhieu = "Nông Thị Lệ"; ThemPhieuMuaNL(phieuMuaNL); return(phieuMuaNL); }
public static void CapNhatPhieuMuaNL(PhieuMuaNL phieuMuaNL) { DataAccessHelper db = new DataAccessHelper(); SqlCommand cmd = db.Command("CAP_NHAT_PHIEU_MUA_NL"); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@MaPhieu", phieuMuaNL.MaPhieu); cmd.Parameters.AddWithValue("@NgayMua", phieuMuaNL.NgayMua); cmd.Parameters.AddWithValue("@TongTien", phieuMuaNL.TongTien); cmd.Parameters.AddWithValue("@TrangThai", phieuMuaNL.TrangThai); SqlDataAdapter da = new SqlDataAdapter(cmd); db.dt = new DataTable(); da.Fill(db.dt); }
private bool KiemTraNguyenLieuTrongKho() { //làm mới danh sách thongTinSoLuongNguyenLieuCanDeApDung.Clear(); DataTable DanhSachMonAn = ChiTietThucDonBLL.LayDanhSachMaMonAnTheoThucDon(cboThucDon_Loc.Text.Trim()); //duyệt tất cả các món ăn trong thực đơn foreach (DataRow MonAn in DanhSachMonAn.Rows) { //lấy ra danh sách các nguyên liệu có trong món ăn đang duyệt DataTable danhSachNguyenLieu = ApDungThucDonBLL.LayDanhSachMaNguyenLieuVaSoLuongTrongMonAn(MonAn["MaMonAn"].ToString()); //duyệt danh sách nguyên liệu của món ăn foreach (DataRow nguyenLieu in danhSachNguyenLieu.Rows) { ThemNguyenLieuVaoDanhSach(nguyenLieu["MaNguyenLieu"].ToString(), nguyenLieu["SoLuong"].ToString()); } } //lấy ra danh sách nguyên liệu, sô lượng List <string> listMaNguyenLieu = new List <string>(thongTinSoLuongNguyenLieuCanDeApDung.Keys); List <int> listSoLuong = new List <int>(thongTinSoLuongNguyenLieuCanDeApDung.Values); //Thêm phiếu mua mới vào CSDL (giả sử cần phải mua thêm nguyên liệu) PhieuMuaNL phieuMua = new PhieuMuaNL(); phieuMua = PhieuMuaNLBLL.TaoPhieuMuaMoi(); //trường hợp mọi nguyên liệu đủ dùng if (SoSanhSoLuongTonVaSoLuongCanDung(listMaNguyenLieu, listSoLuong, TinhTongSoLuongHocSinhApDung(), phieuMua)) { HuyBoMuaHangVaCapNhatNguyenLieu(phieuMua, listMaNguyenLieu, listSoLuong, TinhTongSoLuongHocSinhApDung()); return(true); } ThongBaoXacNhanThemPhieuMua(phieuMua.MaPhieu); return(false); }
public static void CapNhatPhieuMuaNL(PhieuMuaNL phieuMuaNL) { PhieuMuaNLDAL.CapNhatPhieuMuaNL(phieuMuaNL); }
public static void ThemPhieuMuaNL(PhieuMuaNL phieuMuaNL) { PhieuMuaNLDAL.ThemPhieuMuaNL(phieuMuaNL); }
private bool SoSanhSoLuongTonVaSoLuongCanDung(List <string> listMaNguyenLieu, List <int> listSoLuong, int TongSoHocSinhAD, PhieuMuaNL phieuMua) { bool KiemTraSoLuongTonCoDuDung = true; //duyệt từng nguyên liệu để so sánh số lượng cần dùng và số lượng tồn trong kho for (int i = 0; i < listMaNguyenLieu.Count; i++) { int soLuongThieu = TongSoHocSinhAD * listSoLuong[i] - int.Parse(NguyenLieuBLL.LaySoLuongTonTheoMaNguyenLieu(listMaNguyenLieu[i])); //trường hợp thiếu nguyên liệu if (soLuongThieu > 0) { //Thêm chi tiết mua nguyên liệu bị thiếu ChiTietPhieuMuaNLBLL.ThemChiTietPhieuMuaNL(phieuMua.MaPhieu, listMaNguyenLieu[i], soLuongThieu, 0, 0); //xác nhận số lượng không đủ dùng KiemTraSoLuongTonCoDuDung = false; } } return(KiemTraSoLuongTonCoDuDung); }
//------------------------------event Click----------------------------------------------- private void btnTaoMoiPhieuMua_Click(object sender, EventArgs e) { PhieuMuaNL phieuMuaNL = PhieuMuaNLBLL.TaoPhieuMuaMoi(); getDataGridViewPhieuMua(); }