public void Nhap(int x, int y, ConsoleColor background_color, ConsoleColor text_color) { do { Console.BackgroundColor = background_color; Console.ForegroundColor = text_color; IHDBanBLL hdban = new HDBanBLL(); INhanVienBLL nhanvien = new NhanVienBLL(); IKhachHangBLL khachhang = new KhachHangBLL(); IMayTinhBLL maytinh = new MayTinhBLL(); IHDNhapBLL hdnhap = new HDNhapBLL(); FormNhanVien fnv = new FormNhanVien(); FormKhachHang fkh = new FormKhachHang(); FormMayTinh fmt = new FormMayTinh(); NhanVienBLL nvBLL = new NhanVienBLL(); KhachHangBLL khBLL = new KhachHangBLL(); MayTinhBLL mtBLL = new MayTinhBLL(); FormHDNhap fhdn = new FormHDNhap(); ICTHDBanBLL cthdban = new CTHDBanBLL(); HDBanBLL hdbBLL = new HDBanBLL(); HDBan hdb = new HDBan(); CTHDBan cthdb = new CTHDBan(); HDBan hd; Console.Clear(); IO.Box(0, 0, 28, 114, ConsoleColor.Black, ConsoleColor.White); IO.BoxTitle(" NHẬP THÔNG TIN HÓA ĐƠN BÁN", x, y, 10, 112); IO.Writexy("Mã nhân viên:", x + 2, y + 3); IO.Writexy("Mã khách hàng:", x + 28, y + 3); IO.Writexy("Ngày bán:", x + 55, y + 3); IO.Writexy("Tổng tiền:", x + 83, y + 3); IO.Writexy("--------------------------------------------------------------------------------------------------------------", x + 1, y + 4); IO.Writexy("Mã máy tính:", x + 2, y + 5); IO.Writexy("Số lượng:", x + 28, y + 5); IO.Writexy("Đơn giá:", x + 55, y + 5); IO.Writexy("Thành tiền:", x + 83, y + 5); IO.Writexy("--------------------------------------------------------------------------------------------------------------", x + 1, y + 6); IO.Writexy("Nhập ! để thoát...", x + 4, y + 8); fnv.Hien(x, y + 10, nhanvien.LayDSNhanVien(), 5, 0); do { Console.SetCursorPosition(x + 16, y + 3); hdb.maNV = Console.ReadLine(); if (hdb.maNV == null) { IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Writexy("Nhập lại mã nhân viên...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); } else if (hdb.maNV == "!") { return; } else { if (nvBLL.KT_MaNhanVien(CongCu.ChuanHoaMa(hdb.maNV)) == false) { IO.Writexy("Không tồn tại mã nhân viên này...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 15, y + 3, 12, ConsoleColor.Black); } else { break; } } } while (hdb.maNV == null || nvBLL.KT_MaNhanVien(CongCu.ChuanHoaMa(hdb.maNV)) == false); IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); fkh.Hien(x + 16, y + 10, khachhang.LayDSKhachHang(), 5, 0); do { Console.SetCursorPosition(x + 43, y + 3); hdb.maKH = Console.ReadLine(); if (hdb.maKH == null) { IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Writexy("Nhập lại mã khách hàng...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); } else { if (khBLL.KT_MaKhachHang(CongCu.ChuanHoaMa(hdb.maKH)) == false) { IO.Writexy("Không tồn tại mã khách hàng này...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 42, y + 3, 12, ConsoleColor.Black); } else { break; } } } while (hdb.maKH == null || khBLL.KT_MaKhachHang(CongCu.ChuanHoaMa(hdb.maKH)) == false); IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); fhdn.Hien(x + 13, y + 10, hdnhap.LayDSHDNhap(), 5, 0); IO.Writexy("Nhập ngày bán định dạng 'dd/MM/yyyy'...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); do { Console.SetCursorPosition(x + 65, y + 3); hdb.ngayBan = Console.ReadLine(); if (hdb.ngayBan == null || CongCu.CheckDate(hdb.ngayBan) == false) { IO.Writexy("Nhập lại ngày bán...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 64, y + 3, 18, ConsoleColor.Black); } } while (hdb.ngayBan == null || CongCu.CheckDate(hdb.ngayBan) == false); hdban.ThemHDBan(hdb); while (true) { hd = hdbBLL.LayMaHDB(hdb.maNV, hdb.maKH, hdb.ngayBan); cthdb.maHDB = hd.maHDB; IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); fmt.Hien(x + 11, y + 10, maytinh.LayDSMayTinh(), 5, 0); do { IO.Clear(x + 14, y + 5, 13, ConsoleColor.Black); Console.SetCursorPosition(x + 15, y + 5); cthdb.maMT = Console.ReadLine(); if (cthdb.maMT == null) { IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Writexy("Nhập lại mã máy tính...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); } else { if (mtBLL.KT_MaMayTinh(CongCu.ChuanHoaMa(cthdb.maMT)) == false) { IO.Writexy("Không tồn tại mã máy tính này...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 14, y + 5, 13, ConsoleColor.Black); } else { break; } } } while (cthdb.maMT == null || mtBLL.KT_MaMayTinh(CongCu.ChuanHoaMa(cthdb.maMT)) == false); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); MayTinh mt = mtBLL.LayMayTinh(CongCu.ChuanHoaMa(cthdb.maMT)); do { IO.Clear(x + 37, y + 5, 14, ConsoleColor.Black); cthdb.soLuong = int.Parse(IO.ReadNumber(x + 38, y + 5)); if (cthdb.soLuong <= 0 || mt.sLCon <= 0 || cthdb.soLuong > mt.sLCon) { IO.Writexy("Nhập lại số lượng...", x + 4, y + 7, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 37, y + 5, 14, ConsoleColor.Black); } } while (cthdb.soLuong <= 0 || mt.sLCon <= 0 || cthdb.soLuong > mt.sLCon); IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Clear(x + 63, y + 5, 16, ConsoleColor.Black); cthdb.donGia = mt.giaBan; IO.Writexy(cthdb.donGia.ToString(), x + 64, y + 5); IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Clear(x + 94, y + 5, 16, ConsoleColor.Black); IO.Writexy(cthdb.thanhTien.ToString(), x + 95, y + 5); cthdban.ThemCTHDBan(cthdb); if (mtBLL.KT_MaMayTinh(cthdb.maMT) == true) { mtBLL.TruSoLuong(mt, cthdb.soLuong); } IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); Console.SetCursorPosition(x + 34, y + 7); IO.Writexy("Nhập tiếp? (C/K)...", x + 4, y + 7); ConsoleKeyInfo c = Console.ReadKey(); if (c.KeyChar != 'c') { break; } } IO.Clear(x + 93, y + 5, 16, ConsoleColor.Black); IO.Writexy(hdbBLL.TTien(cthdb.maHDB).ToString(), x + 94, y + 3); hdb.tongTien = hdbBLL.TTien(cthdb.maHDB); IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát...", x + 4, y + 7); Console.SetCursorPosition(x + 34, y + 7); ConsoleKeyInfo kt = Console.ReadKey(); if (kt.Key == ConsoleKey.Escape) { break; } else if (kt.Key == ConsoleKey.Enter) { IO.Clear(x + 3, y + 7, 60, ConsoleColor.Black); IO.Writexy("Hóa đơn bán đã được thêm...", x + 4, y + 7); hdban.XoaHDBan(cthdb.maHDB); hdban.ThemHDBan(hdb); Hien(x + 13, y + 10, hdban.LayDSHDBan(), 5, 1); } } while (true); }
public void Nhap(int x, int y, ConsoleColor background_color, ConsoleColor text_color) { do { Console.BackgroundColor = background_color; Console.ForegroundColor = text_color; IHDNhapBLL hdnhap = new HDNhapBLL(); INhanVienBLL nhanvien = new NhanVienBLL(); INCC_BLL nhacc = new NCC_BLL(); IMayTinhBLL maytinh = new MayTinhBLL(); FormNhanVien fnv = new FormNhanVien(); FormNCC fncc = new FormNCC(); FormMayTinh fmt = new FormMayTinh(); NhanVienBLL nvBLL = new NhanVienBLL(); NCC_BLL nccBLL = new NCC_BLL(); ICTHDNhapBLL cthdnhap = new CTHDNhapBLL(); HDNhapBLL hdnBLL = new HDNhapBLL(); MayTinhBLL mtBLL = new MayTinhBLL(); HDNhap hdn = new HDNhap(); CTHDNhap cthdn = new CTHDNhap(); HDNhap hd; Console.Clear(); IO.Box(0, 0, 28, 114, ConsoleColor.Black, ConsoleColor.White); IO.BoxTitle(" NHẬP THÔNG TIN HÓA ĐƠN NHẬP", x, y, 11, 112); IO.Writexy("Mã nhân viên:", x + 2, y + 3); IO.Writexy("Mã nhà CC:", x + 28, y + 3); IO.Writexy("Ngày nhập:", x + 55, y + 3); IO.Writexy("Tổng tiền:", x + 83, y + 3); IO.Writexy("--------------------------------------------------------------------------------------------------------------", x + 1, y + 4); IO.Writexy("Mã máy tính:", x + 2, y + 5); IO.Writexy("Tên máy tính:", x + 2, y + 6); IO.Writexy("Số lượng:", x + 28, y + 5); IO.Writexy("Đơn giá:", x + 55, y + 5); IO.Writexy("Thành tiền:", x + 83, y + 5); IO.Writexy("--------------------------------------------------------------------------------------------------------------", x + 1, y + 7); IO.Writexy("Nhập ! để thoát...", x + 4, y + 9); fnv.Hien(x, y + 11, nhanvien.LayDSNhanVien(), 5, 0); do { Console.SetCursorPosition(x + 16, y + 3); hdn.maNV = Console.ReadLine(); if (hdn.maNV == null) { IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Nhập lại mã nhân viên...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); } else if (hdn.maNV == "!") { return; } else { if (nvBLL.KT_MaNhanVien(CongCu.ChuanHoaMa(hdn.maNV)) == false) { IO.Writexy("Không tồn tại mã nhân viên này...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 15, y + 3, 12, ConsoleColor.Black); } else { break; } } } while (hdn.maNV == null || nvBLL.KT_MaNhanVien(CongCu.ChuanHoaMa(hdn.maNV)) == false); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Clear(x + 3, y + 9, 60, ConsoleColor.Black); fncc.Hien(x + 16, y + 11, nhacc.LayDSNCC(), 5, 0); do { Console.SetCursorPosition(x + 39, y + 3); hdn.maNCC = Console.ReadLine(); if (hdn.maNCC == null) { IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Nhập lại mã nhà cung cấp...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); } else { if (nccBLL.KT_MaNCC(CongCu.ChuanHoaMa(hdn.maNCC)) == false) { IO.Writexy("Không tồn tại mã nhà cung cấp này...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 38, y + 3, 16, ConsoleColor.Black); } else { break; } } } while (hdn.maNCC == null || nccBLL.KT_MaNCC(CongCu.ChuanHoaMa(hdn.maNCC)) == false); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Nhập ngày nhập định dạng 'dd/MM/yyyy'...", x + 4, y + 9, ConsoleColor.Black, ConsoleColor.White); do { Console.SetCursorPosition(x + 66, y + 3); hdn.ngayNhap = Console.ReadLine(); if (hdn.ngayNhap == null || CongCu.CheckDate(hdn.ngayNhap) == false) { IO.Writexy("Nhập lại ngày nhập...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 65, y + 3, 17, ConsoleColor.Black); } } while (hdn.ngayNhap == null || CongCu.CheckDate(hdn.ngayNhap) == false); hdnhap.ThemHDNhap(hdn); while (true) { hd = hdnBLL.LayMaHDN(hdn.maNV, hdn.maNCC, hdn.ngayNhap); cthdn.maHDN = hd.maHDN; IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); fmt.Hien(x + 11, y + 11, maytinh.LayDSMayTinh(), 5, 0); do { IO.Clear(x + 14, y + 5, 12, ConsoleColor.Black); Console.SetCursorPosition(x + 15, y + 5); cthdn.maMT = Console.ReadLine(); if (cthdn.maMT == null) { IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Nhập lại mã máy tính...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); } } while (cthdn.maMT == null); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); if (mtBLL.KT_MaMayTinh(CongCu.ChuanHoaMa(cthdn.maMT)) == true) { MayTinh Mt = mtBLL.LayMayTinh(CongCu.ChuanHoaMa(cthdn.maMT)); IO.Writexy(Mt.tenMT, x + 16, y + 6); cthdn.tenMT = Mt.tenMT; } else { do { IO.Clear(x + 14, y + 6, 90, ConsoleColor.Black); Console.SetCursorPosition(x + 16, y + 6); cthdn.tenMT = Console.ReadLine(); if (cthdn.tenMT == null) { IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Nhập lại tên máy tính...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); } } while (cthdn.tenMT == null); } IO.Clear(x + 3, y + 9, 60, ConsoleColor.Black); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); do { IO.Clear(x + 37, y + 5, 16, ConsoleColor.Black); cthdn.soLuong = int.Parse(IO.ReadNumber(x + 38, y + 5)); if (cthdn.soLuong <= 0) { IO.Writexy("Nhập lại số lượng...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 37, y + 5, 16, ConsoleColor.Black); } } while (cthdn.soLuong <= 0); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); HienCT_N(x, y + 11, cthdnhap.LayDS_CTHDNhap(), 5, 0); do { IO.Clear(x + 63, y + 5, 16, ConsoleColor.Black); cthdn.donGia = double.Parse(IO.ReadNumber(x + 64, y + 5)); if (cthdn.donGia <= 0) { IO.Writexy("Nhập lại đơn giá...", x + 4, y + 8, ConsoleColor.Black, ConsoleColor.White); IO.Clear(x + 63, y + 5, 16, ConsoleColor.Black); } } while (cthdn.donGia <= 0); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Clear(x + 94, y + 5, 16, ConsoleColor.Black); IO.Writexy(cthdn.thanhTien.ToString(), x + 95, y + 5); cthdnhap.ThemCTHDNhap(cthdn); MayTinh mt = mtBLL.LayMayTinh(CongCu.ChuanHoaMa(cthdn.maMT)); if (mtBLL.KT_MaMayTinh(cthdn.maMT) == true) { mtBLL.CongSoLuong(mt, cthdn.soLuong); } else { cthdn.soLuong = cthdn.soLuong; } IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); Console.SetCursorPosition(x + 34, y + 8); IO.Writexy("Nhập tiếp? (C/K)...", x + 4, y + 8); ConsoleKeyInfo c = Console.ReadKey(); if (c.KeyChar != 'c') { break; } } IO.Clear(x + 93, y + 5, 16, ConsoleColor.Black); IO.Writexy(hdnBLL.TTien(cthdn.maHDN).ToString(), x + 94, y + 3); hdn.tongTien = hdnBLL.TTien(cthdn.maHDN); IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát...", x + 4, y + 8); Console.SetCursorPosition(x + 34, y + 8); ConsoleKeyInfo kt = Console.ReadKey(); if (kt.Key == ConsoleKey.Escape) { break; } else if (kt.Key == ConsoleKey.Enter) { IO.Clear(x + 3, y + 8, 60, ConsoleColor.Black); IO.Writexy("Hóa đơn nhập đã được thêm...", x + 4, y + 8); hdnhap.XoaHDNhap(cthdn.maHDN); hdnhap.ThemHDNhap(hdn); Hien(x + 13, y + 11, hdnhap.LayDSHDNhap(), 5, 1); } } while (true); }