Beispiel #1
0
        public List <CTHDBan> LayCTHDBan(CTHDBan cthdb)
        {
            List <CTHDBan> list = cthdbDAL.GetData();
            List <CTHDBan> kq   = new List <CTHDBan>();

            if (cthdb.maHDB == null)
            {
                kq = list;
            }
            if (cthdb.maHDB != null)
            {
                for (int i = 0; i < list.Count; ++i)
                {
                    if (list[i].maHDB == cthdb.maHDB)
                    {
                        kq.Add(new CTHDBan(list[i]));
                    }
                }
            }
            else
            {
                kq = null;
            }
            return(kq);
        }
Beispiel #2
0
        public void Insert(CTHDBan cthdb)
        {
            StreamWriter sw = File.AppendText(txtfile);

            sw.WriteLine(cthdb.maHDB + "\t" + cthdb.maMT + "\t" + cthdb.soLuong + "\t" + cthdb.donGia + "\t" + cthdb.thanhTien);
            sw.Close();
        }
Beispiel #3
0
 public void ThemCTHDBan(CTHDBan cthdb)
 {
     if (cthdb.maHDB != "" && cthdb.maMT != "")
     {
         cthdb.maHDB = CongCu.ChuanHoaMa(cthdb.maHDB);
         cthdb.maMT  = CongCu.ChuanHoaMa(cthdb.maMT);
         cthdbDAL.Insert(cthdb);
     }
     else
     {
         throw new Exception("Dữ liệu sai.");
     }
 }
Beispiel #4
0
        public List <CTHDBan> GetCTHDBanByHoaDonBan(string maHDBan)
        {
            List <CTHDBan> list = new List <CTHDBan>();

            string query = "SELECT MaCTHDBan, MaHDBan, TenSP, SoLuong FROM dbo.CTHDBan INNER JOIN dbo.SanPham ON CTHDBan.Ma = SanPham.MaSP WHERE MaHDBan = '" + maHDBan + "'";

            DataTable data = DataProvider.Instance.ExecuteQuery(query);

            foreach (DataRow item in data.Rows)
            {
                CTHDBan CTHDBan = new CTHDBan(item);
                list.Add(CTHDBan);
            }

            return(list);
        }
Beispiel #5
0
        public List <CTHDBan> GetListCTHDBan()
        {
            List <CTHDBan> list = new List <CTHDBan>();

            string query = "SELECT * FROM dbo.CTHDBan";

            DataTable data = DataProvider.Instance.ExecuteQuery(query);

            foreach (DataRow item in data.Rows)
            {
                CTHDBan CTHDBan = new CTHDBan(item);
                list.Add(CTHDBan);
            }

            return(list);
        }
Beispiel #6
0
        public long GetBanPT()
        {
            long result = 0;

            List <CTHDBan> list = new List <CTHDBan>();

            string query = "SELECT MaCTHDBan, SoLuong * DonGia as BanPT FROM dbo.CTHDBan JOIN dbo.PhuTung ON CTHDBan.Ma = PhuTung.Ma";

            DataTable data = DataProvider.Instance.ExecuteQuery(query);

            foreach (DataRow item in data.Rows)
            {
                CTHDBan CTHDBan = new CTHDBan(item, "pt");
                list.Add(CTHDBan);
            }

            foreach (CTHDBan item in list)
            {
                result += item.BanPT;
            }

            return(result);
        }
Beispiel #7
0
        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);
        }