public void Nhap() { do { HoaDonBan hoadb = new HoaDonBan(); IFHoaDonBanBLL hdb = new HoaDonBanBLL(); HoaDonBanBLL hdbbll = new HoaDonBanBLL(); IFNhanVienBLL inv = new NhanVienBLL(); NhanVienBLL nvbll = new NhanVienBLL(); FormNhanVien fnv = new FormNhanVien(); FormHangHoa fhh = new FormHangHoa(); IFHangHoaBLL ihh = new HangHoaBLL(); HangHoaBLL hhbll = new HangHoaBLL(); HoaDonBan HDB; CTHoaDonBan cthdb = new CTHoaDonBan(); IFCTHoaDonBanBLL icthdn = new CTHoaDonBanBLL(); FormHoaDonNhap fhdn = new FormHoaDonNhap(); IFCTHoaDonNhapBLL ictn = new CTHoaDonNhapBLL(); Console.Clear(); IO.BoxTitle(" NHẬP THÔNG TIN HÓA ĐƠN BÁN", 1, 1, 14, 100); IO.Writexy("Mã nhân viên bán:", 5, 4); IO.Writexy("Ngày bán:", 40, 4); IO.Writexy("------------Nhập chi tiết hóa đơn bán----------------", 2, 5); IO.Writexy("Mã hàng:", 5, 6); IO.Writexy("Số lượng: ", 30, 6); IO.Writexy("Đơn vị tính:", 50, 6); IO.Writexy("Giá bán:", 70, 6); IO.Writexy("Thành tiền:", 5, 7); IO.Writexy("-----------------Tổng thanh toán----------------------", 2, 9); IO.Writexy("Tổng hóa đơn:", 5, 10); IO.Writexy("--------------------------------------------------------------------------------------------------", 2, 11); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 12); fnv.Hien(1, 16, inv.XemDSNhanVien(), 5, 0); do { hoadb.manvban = int.Parse(IO.ReadNumber(24, 4)); if (hoadb.manvban < 0) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 12); } else { if (nvbll.KiemTra(hoadb.manvban) == false) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Không tồn tại mã nhân viên này!", 5, 12); } else { break; } } } while (hoadb.manvban < 0 || nvbll.KiemTra(hoadb.manvban) == false); IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 12); do { hoadb.ngayban = IO.ReadString(50, 4); if (hoadb.ngayban == null) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 12); } } while (hoadb.ngayban == null); IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 12); hdb.ThemHoaDonBan(hoadb); while (true) { HDB = hdbbll.ReturnKey(hoadb.manvban, hoadb.ngayban); cthdb.mahdb = HDB.mahdb; IO.Clear(5, 16, 99, ConsoleColor.Black); fhh.Hien(1, 16, ihh.XemDSHangHoa(), 5, 0); do { IO.Clear(13, 6, 5, ConsoleColor.Black); cthdb.mahang = int.Parse(IO.ReadNumber(14, 6)); if (cthdb.mahang < 0) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 12); } else { if (hhbll.KiemTra(cthdb.mahang) == false) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Không tồn tại mã hàng này!", 5, 12); } else { break; } } } while (cthdb.mahang < 0 || hhbll.KiemTra(cthdb.mahang) == false); IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 12); do { IO.Clear(39, 6, 5, ConsoleColor.Black); cthdb.soluong = int.Parse(IO.ReadNumber(40, 6)); if (cthdb.soluong < 0) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 12); } } while (cthdb.soluong < 0); IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 12); IO.Clear(5, 16, 99, ConsoleColor.Black); fhdn.HienCT(1, 16, ictn.XemDSCTHoaDonNhap(), 5, 0); do { IO.Clear(62, 6, 5, ConsoleColor.Black); cthdb.donvi = IO.ReadString(63, 6); if (cthdb.donvi == null) { IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 12); } } while (cthdb.donvi == null); IO.Clear(5, 12, 80, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 12); HangHoa ghh = hhbll.ReturnGiaBan(cthdb.mahang); IO.Writexy(ghh.giaban.ToString(), 79, 6); cthdb.giaban = ghh.giaban; IO.Writexy(cthdb.thanhtien.ToString(), 17, 7); icthdn.ThemCTHoaDonBan(cthdb); HangHoa hh = ihh.LayHangHoa(cthdb.mahang); if (hhbll.KiemTra(cthdb.mahang) == true) { hhbll.TruSL(hh, cthdb.soluong); } else { cthdb.soluong = cthdb.soluong; } IO.Writexy("Nhấn B/b để nhập tiếp. Nhấn phím bất kỳ để dừng nhập!", 5, 8); ConsoleKeyInfo b = Console.ReadKey(); if (b.KeyChar != 'b') { break; } } IO.Writexy(hdbbll.TinhTong(cthdb.mahdb).ToString(), 19, 10); hoadb.tongtien = hdbbll.TinhTong(cthdb.mahdb); Console.SetCursorPosition(55, 12); ConsoleKeyInfo kt = Console.ReadKey(); if (kt.Key == ConsoleKey.Escape) { HienChucNang(); } else if (kt.Key == ConsoleKey.X) { Hien(1, 16, hdb.XemDSHoaDonBan(), 5, 1); } else if (kt.Key == ConsoleKey.Enter) { hdb.XoaHoaDonBan(cthdb.mahdb); hdb.ThemHoaDonBan(hoadb); Hien(1, 16, hdb.XemDSHoaDonBan(), 5, 0); } } while (true); }
public void Nhap()//Tạo giao diện Nhap. { do { IFHangHoaBLL hanghoa = new HangHoaBLL(); HangHoa hh = new HangHoa(); HangHoaBLL hhbll = new HangHoaBLL(); NhaCCBLL ccbl = new NhaCCBLL(); FormHoaDonNhap fhdn = new FormHoaDonNhap(); IFCTHoaDonNhapBLL ctn = new CTHoaDonNhapBLL(); IFHoaDonNhapBLL hdn = new HoaDonNhapBLL(); CTHoaDonNhapBLL cthdnbll = new CTHoaDonNhapBLL(); Console.Clear(); IO.BoxTitle(" NHẬP THÔNG TIN HÀNG HÓA", 1, 1, 10, 100); IO.Writexy("Mã HH:", 3, 4); IO.Writexy("Tên hàng:", 55, 4); IO.Writexy("Mã NCC:", 5, 5); IO.Writexy("Đợt:", 5, 6); IO.Writexy("NSX:", 15, 6); IO.Writexy("HSD:", 40, 6); IO.Writexy("Số lượng nhập:", 5, 7); IO.Writexy("Số lượng còn:", 30, 7); IO.Writexy("Giá nhập:", 50, 7); IO.Writexy("Giá bán:", 70, 7); IO.Writexy("--------------------------------------------------------------------------------------------------", 2, 8); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 9); fhdn.HienCT(1, 13, ctn.XemDSCTHoaDonNhap(), 5, 0); do { hh.mahh = int.Parse(IO.ReadNumber(10, 4)); if (hh.mahh < 0) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 9); } else { if (hhbll.KiemTra(hh.mahh) == true) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Mã hàng này đã tồn tại!", 5, 9); } else { break; } } } while (hh.mahh < 0 || hhbll.KiemTra(hh.mahh) == true); IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 9); do { hh.tenhang = IO.ReadString(65, 4); if (hh.tenhang == null) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 9); } } while (hh.tenhang == null); IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 9); IO.Clear(1, 13, 60, ConsoleColor.Black); fhdn.Hien(1, 13, hdn.XemDSHoaDonNhap(), 5, 0); do { hh.mancc = int.Parse(IO.ReadNumber(20, 5)); if (hh.mancc <= 0) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 9); } else { if (ccbl.KiemTra(hh.mancc) == false) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Không tồn tại mã nhà cung cấp này!", 5, 9); } else { break; } } } while (hh.mancc <= 0 || ccbl.KiemTra(hh.mancc) == false); IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 9); IO.Clear(1, 13, 60, ConsoleColor.Black); fhdn.HienCT(1, 13, ctn.XemDSCTHoaDonNhap(), 5, 0); do { hh.đot = int.Parse(IO.ReadNumber(11, 6)); if (hh.đot <= 0) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 9); } else { if (hhbll.KiemTraDotHH(hh.đot, hh.tenhang) == true) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Đợt nhập này đã tồn tại!", 5, 9); } else { break; } } } while (hh.đot <= 0 || hhbll.KiemTraDotHH(hh.đot, hh.tenhang) == true); IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 9); CTHoaDonNhap ctdn = cthdnbll.ReturnDotNhap(hh.tenhang, hh.đot); IO.Writexy(ctdn.NSX.ToString(), 20, 6); hh.NSX = ctdn.NSX; IO.Writexy(ctdn.HSD.ToString(), 45, 6); hh.HSD = ctdn.HSD; IO.Writexy(ctdn.soluong.ToString(), 20, 7); hh.slnhapve = ctdn.soluong; IO.Writexy(ctdn.soluong.ToString(), 44, 7); hh.slhienco = ctdn.soluong; IO.Writexy(ctdn.gianhap.ToString(), 60, 7); hh.gianhap = ctdn.gianhap; do { hh.giaban = double.Parse(IO.ReadNumber(79, 7)); if (hh.giaban <= 0) { IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Nhập sai. Xin vui lòng nhập lại!", 5, 9); } } while (hh.giaban < 0); IO.Clear(5, 9, 60, ConsoleColor.Black); IO.Writexy("Enter để nhập, Esc để thoát, X để xem chi tiết...", 5, 9); Console.SetCursorPosition(54, 9); ConsoleKeyInfo kt = Console.ReadKey(); if (kt.Key == ConsoleKey.Escape) { HienChucNang();//Quay về màn hình chính. } else if (kt.Key == ConsoleKey.X) { Hien(1, 13, hanghoa.XemDSHangHoa(), 5, 1);//Hiện danh sách. } else if (kt.Key == ConsoleKey.Enter) { hanghoa.ThemHangHoa(hh);// Sau khi nhập xong chuyển đối tượng hh sang hanghoa của tầng business. IO.Clear(1, 13, 60, ConsoleColor.Black); Hien(1, 17, hanghoa.XemDSHangHoa(), 5, 0); } } while (true); }