예제 #1
0
        public void GetUserInfo(int userid) // hiển thị thông tin tài khoản
        {
            Console.Clear();

            user.user_id = userid;
            try
            {
                user = userBL.GetUserInfo(userid);
            }
            catch (System.Exception)
            {
                Console.WriteLine("Mất kết nối dữ liệu!");
                Console.WriteLine("Ấn phím bất kì để quay trở lại Trang chủ.");
                Console.ReadKey();
                m.MainMenu();
            }

            Console.WriteLine("|=================================================================|");
            Console.WriteLine("|--------------------| THÔNG TIN TÀI KHOẢN |----------------------|");
            Console.WriteLine("|=================================================================|");
            Console.WriteLine($"- Tên đăng nhập    : {user.user_name}");
            Console.WriteLine($"- Mã tài khoản     : {user.user_id}");
            Console.WriteLine($"- Email            : {user.user_email}");
            Console.WriteLine($"- Số điện thoại    : {user.phone}");
            Console.WriteLine($"- Số dư tài khoản  : {FormatAndValid.FormatCurrency(user.user_balance)}");
            Console.WriteLine("|=================================================================|\n");
            Console.WriteLine("Bấm phím bất kì để quay lại!");
            Console.ReadKey();
            UserInfoMenu(user);
        }
예제 #2
0
        public void OrderDetail(User user)
        {
            int order_id;

            Console.Write("Nhập mã đơn hàng: ");
            while (true)
            {
                bool isINT = Int32.TryParse(Console.ReadLine(), out order_id);
                if (!isINT)
                {
                    Console.WriteLine("Nhập giá trị sai !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else if (orderBL.GetAllOrderByOrderID(order_id).Count == 0)
                {
                    Console.WriteLine("Mã đơn hàng không tồn tại !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else
                {
                    break;
                }
            }
            List <Item> Listitem = new List <Item> ();
            double      price    = 0;

            Console.Clear();
            foreach (var order in orderBL.GetAllOrderByOrderID(order_id))
            {
                Listitem.Add(itemBL.GetItemByID(order.OrderItem.item_id));
            }
            Console.WriteLine("|===============================================================================|");
            Console.WriteLine("- MÃ ĐƠN HÀNG [{0}]", order_id);
            Console.WriteLine("|===============================================================================|");
            Console.WriteLine("|{0,-15}|{1,-25}|{2,-25}\t\t|", "Mã sản phẩm", "Tên sản phẩm", "Giá sản phẩm");
            foreach (var item in Listitem)
            {
                string format = string.Format($"|{item.item_id,-15}|{item.item_name,-25}|{FormatAndValid.FormatCurrency(item.item_price),-25}\t\t|");
                Console.WriteLine("|-------------------------------------------------------------------------------|");
                Console.WriteLine(format);

                price = price + item.item_price;
            }
            Console.WriteLine("|-------------------------------------------------------------------------------|");
            Console.WriteLine(" Tổng giá tiền đơn hàng : {0}", FormatAndValid.FormatCurrency(price));
            Console.WriteLine("|===============================================================================|");
            Console.Write("Bấm phím bất kì để quay lại");
            Console.ReadKey();
            GetAllOrdersByUserID(user);
        }
예제 #3
0
        public void ShowCarts(User user)  // hiển thị giỏ sản phẩm trong giỏ hàng
        {
            Console.Clear();
            try {
                StreamReader r = new StreamReader("order" + user.user_id + ".json");
                r.Close();
            } catch (SystemException) {
                Console.WriteLine("|========================================================================|");
                Console.WriteLine("|-----------------------------| GIỎ HÀNG |-------------------------------|");
                Console.WriteLine("|========================================================================|");
                Console.WriteLine("|{0,-15}|{1,-30}|{2,-25}", "Mã sản phẩm", "Tên sản phẩm", "Giá sản phẩm");
                Console.WriteLine("|------------------------------------------------------------------------|\n");
                Console.WriteLine(" Không có sản phẩm trong giỏ hàng !\n");
                Console.WriteLine("|========================================================================|");
                Console.WriteLine("Ấn phím kì để quay trở lại");
                Console.ReadKey();
                ms.menuShop(user);
            }
            using (StreamReader r = new StreamReader("order" + user.user_id + ".json")) {
                double price     = 0;
                var    json      = r.ReadToEnd();
                var    ListOrder = JsonConvert.DeserializeObject <Order> (json);
                Console.WriteLine("|========================================================================|");
                Console.WriteLine("|-----------------------------| GIỎ HÀNG |-------------------------------|");
                Console.WriteLine("|========================================================================|");
                Console.WriteLine("|{0,-15}|{1,-30}|{2,-25}|", "Mã sản phẩm", "Tên sản phẩm", "Giá sản phẩm");
                Console.WriteLine("|------------------------------------------------------------------------|");
                // kiểm tra nếu item có trong listOrder thì hiển thị
                foreach (var item in ListOrder.ListItem)
                {
                    string format = string.Format($"|{item.item_id,-15}|{item.item_name,-30}|{FormatAndValid.FormatCurrency(item.item_price),-25}|");
                    Console.WriteLine(format);
                    Console.WriteLine("|------------------------------------------------------------------------|");
                    price += item.item_price;
                }
                Console.WriteLine("\t\t\tTổng cộng : " + FormatAndValid.FormatCurrency(price));
                Console.WriteLine("|========================================================================|");
                r.Close();
            }
            int choose;

            Console.WriteLine("\n1. Thanh toán     ");
            Console.WriteLine("2. Hủy đơn hàng     ");
            Console.WriteLine("3. Quay về trang chủ");
            Console.WriteLine("--------------------");
            Console.Write("Chọn: ");
            while (true)
            {
                bool isINT = Int32.TryParse(Console.ReadLine(), out choose);
                if (!isINT)
                {
                    Console.Write("Bạn đã nhập sai, hãy nhập lại: ");
                }
                else if (choose < 1 && choose > 3)
                {
                    Console.Write("Bạn đã nhập sai, hãy nhập lại: ");
                }
                else
                {
                    break;
                }
            }
            switch (choose)
            {
            case 1:
                p.Purchase(user);
                break;

            case 2:
                DeleteCart(user);
                break;

            case 3:
                ms.menuShop(user);
                break;
            }
        }
예제 #4
0
        public void ShowItems(User user)  // hiển thị danh sách trò chơi ở database bên sql
        {
            Console.Clear();
            try {
                foreach (var item in itemBL.GetAllItems())
                {
                    string format = string.Format($"{item.item_id,-10}|{item.item_name,-25}|{FormatAndValid.FormatCurrency(item.item_price),-10}");
                }
            } catch (System.Exception) {
                Console.WriteLine("Mất kết nối dữ liệu!\nBấm phím bất kì để quay lại trang chủ.");
                Console.ReadKey();
                m.MainMenu();
            }
            Console.Clear();
            Console.WriteLine("|==============================================================|");
            Console.WriteLine("|--------------------| DANH SÁCH TRÒ CHƠI |--------------------|");
            Console.WriteLine("|                ----------           ----------               |");
            Console.WriteLine("|{0,-15}|{1,-25}|{2,-20}|", "Mã trò chơi", "Tên trò chơi", "Giá trò chơi");
            // lấy tất cả item ở sql
            foreach (var item in itemBL.GetAllItems())
            {
                Console.WriteLine("|--------------------------------------------------------------|");
                string format = string.Format($"|{item.item_id,-15}|{item.item_name,-25}|{FormatAndValid.FormatCurrency(item.item_price),-20}|");
                Console.WriteLine(format);
            }
            Console.WriteLine("|--------------------------------------------------------------|\n");
            Console.WriteLine("1. Chọn sản phẩm     ");
            Console.WriteLine("2. Quay về Trang chủ ");
            Console.Write("Chọn: ");
            int chooseItem;

            while (true)
            {
                bool isINT = Int32.TryParse(Console.ReadLine(), out chooseItem);
                if (!isINT)
                {
                    Console.WriteLine("Nhập giá trị sai !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else if (chooseItem < 1 || chooseItem > 2)
                {
                    Console.WriteLine("Nhập giá trị sai !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else
                {
                    break;
                }
            }
            switch (chooseItem)
            {
            case 1:
                GetItemInfoByID(user);
                break;

            case 2:
                menuShop(user);
                break;
            }
        }
예제 #5
0
        public void GetItemInfoByID(User user)  // hiển thị chi tiết trò chơi
        {
            Console.WriteLine("-----------------");
            Console.Write("Nhập mã trò chơi: ");
            while (true)
            {
                bool isINT = Int32.TryParse(Console.ReadLine(), out itemid);
                try {
                    item = itemBL.GetItemByID(itemid);
                } catch (System.Exception) {
                    Console.WriteLine("Mất Kết nối!\nẤn phím bất kì để trở về trang chủ !");
                    Console.ReadKey();
                    m.MainMenu();
                }
                if (!isINT)
                {
                    Console.WriteLine("Nhập giá trị sai !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else if (itemBL.GetItemByID(itemid) == null)
                {
                    Console.WriteLine("Mã game sai hoặc không tồn tại !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else
                {
                    break;
                }
            }
            Console.Clear();
            Console.WriteLine("|===============================================================|");
            Console.WriteLine("|---------------------| THÔNG TIN TRÒ CHƠI |--------------------|");
            Console.WriteLine("|===============================================================|");
            Console.WriteLine($"- Mã trò chơi      : {item.item_id}");
            Console.WriteLine("----------------------------------------------------------------|");
            Console.WriteLine($"- Tên trò chơi     : {item.item_name}");
            Console.WriteLine("|---------------------------------------------------------------|");
            Console.WriteLine($"- Giá trò chơi     : {FormatAndValid.FormatCurrency(item.item_price)}");
            Console.WriteLine("|---------------------------------------------------------------|");
            Console.WriteLine($"- Nhà phát triển   : {item.item_developer}");
            Console.WriteLine("|---------------------------------------------------------------|");
            Console.WriteLine($"- Nhà phát hành    : {item.item_publisher}");
            Console.WriteLine("|---------------------------------------------------------------|");
            Console.WriteLine($"- Thể loại         : {item.item_tag}");
            Console.WriteLine("|---------------------------------------------------------------|");
            Console.WriteLine($"- Nền tảng         : {item.item_platform}");
            Console.WriteLine("|===============================================================|\n");
            Console.WriteLine($"- Mô tả trò chơi   : {item.item_description}");

            fbc.ShowFeedBacks(user);  // hiển thị phản hồi

            Console.WriteLine("\n1. Thêm vào giỏ hàng      ");
            Console.WriteLine("2. Đánh giá trò chơi      ");
            Console.WriteLine("3. Quay trở lại cửa hàng  ");
            Console.Write("Chọn: ");
            int chooseAction;

            while (true)
            {
                bool isINT = Int32.TryParse(Console.ReadLine(), out chooseAction);
                if (!isINT)
                {
                    Console.WriteLine("Nhập giá trị sai !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else if (chooseAction < 1 || chooseAction > 3)
                {
                    Console.WriteLine("Nhập giá trị sai !");
                    Console.Write("Mời bạn nhập lại: ");
                }
                else
                {
                    break;
                }
            }
            switch (chooseAction)
            {
            case 1:
                orderConsole.Order(user);
                break;

            case 2:
                fbc.CreateFeedBack(user);
                break;

            case 3:
                ShowItems(user);
                break;
            }
        }
예제 #6
0
        public void Login()  // hiển thị đăng nhập và check user password
        {
            string username = null;
            string password = null;

            while (true)
            {
                Console.Clear();
                Console.WriteLine("|==================================================|");
                Console.WriteLine("|------------------| ĐĂNG NHẬP |-------------------|");
                Console.WriteLine("|==================================================|\n");
                Console.Write("- Tài khoản : ");
                username = Console.ReadLine();
                Console.Write("- Mật khẩu  : ");
                password = FormatAndValid.Password();

                string choice;
                // kiểm tra kí tự name password
                if ((FormatAndValid.validate(username) == false) || (FormatAndValid.validate(password) == false))
                {
                    Console.WriteLine("Tên đăng nhập hoặc mật khẩu không được chứa kí tự đặc biệt!");
                    Console.WriteLine("Bạn có muốn thử lại không?(C/K): ");
                    choice = Console.ReadLine().ToUpper();

                    while (true)
                    {
                        if (choice != "C" && choice != "K")
                        {
                            Console.Write("Chỉ được nhập C hoặc K: ");
                            choice = Console.ReadLine().ToUpper();
                            continue;
                        }
                        break;
                    }

                    switch (choice)
                    {
                    case "c":
                        continue;

                    case "C":
                        continue;

                    case "K":
                        m.MainMenu();
                        break;

                    case "k":
                        m.MainMenu();
                        break;
                    }
                }
                // check kết nối user password vs user password sql
                try {
                    user = userBL.GetUser(username, password);
                } catch (System.Exception) {
                    Console.Write("Mất kết nối, bạn có muốn đăng nhập lại không?(C/K): ");
                    choice = Console.ReadLine().ToUpper();
                    while (true)
                    {
                        if (choice != "C" && choice != "K")
                        {
                            Console.Write("Chỉ được nhập C hoặc K: ");
                            choice = Console.ReadLine().ToUpper();
                            continue;
                        }
                        break;
                    }
                    switch (choice)
                    {
                    case "c":
                        continue;

                    case "C":
                        continue;

                    case "K":
                        m.MainMenu();
                        break;

                    case "k":
                        m.MainMenu();
                        break;
                    }
                }

                if (user == null)
                {
                    Console.Write("Tài khoản hoặc mật khẩu không chính xác!\nBạn có muốn thử lại không?(C/K): ");
                    choice = Console.ReadLine().ToUpper();
                    while (true)
                    {
                        if (choice != "C" && choice != "K")
                        {
                            Console.Write("Chỉ được nhập C hoặc K: ");
                            choice = Console.ReadLine().ToUpper();
                            continue;
                        }
                        break;
                    }
                    switch (choice)
                    {
                    case "c":
                        continue;

                    case "C":
                        continue;

                    case "K":
                        m.MainMenu();
                        break;

                    case "k":
                        m.MainMenu();
                        break;

                    default:
                        continue;
                    }
                }
                break;
            }
            // nhập đúng user thì chuyển sang trang shop
            if (user != null)
            {
                ms.menuShop(userBL.GetUserInfo(user.user_id));
            }
        }
예제 #7
0
        public void Purchase(User user)  // thanh toán sản phẩm
        {
            Order order = new Order();

            order.ListItem = new List <Item> ();
            Console.Write("Bạn có muốn thanh toán không ?(C/K): ");
            string choose1;

            while (true)
            {
                choose1 = Console.ReadLine().ToUpper();
                if (choose1 != "C" && choose1 != "K")
                {
                    Console.WriteLine("Bạn đã nhập sai, hãy nhập lại!   ");
                    Console.WriteLine("Bạn có muốn thanh toán không ?(C/K): ");
                    continue;
                }
                else
                {
                    break;
                }
            }
            switch (choose1)
            {
            case "C":
                break;

            case "K":
                orderConsole.ShowCarts(user);
                break;
            }
            Console.Clear();
            try {
                StreamReader r = new StreamReader("order" + user.user_id + ".json");
                r.Close();
            } catch (System.Exception) {
                Console.WriteLine("Mất kết nối dữ liệu!");
                Console.Write("Bấm phím bất kì để tiếp tục ");
                Console.ReadKey();
                m.MainMenu();
            }
            using (StreamReader r = new StreamReader("order" + user.user_id + ".json")) {
                double price = 0;
                var    json  = r.ReadToEnd();
                r.Close();
                var ListOrder = JsonConvert.DeserializeObject <Order> (json);
                Console.Clear();
                Console.WriteLine("|================================================|");
                Console.WriteLine("|---------------| CHI TIẾT ĐƠN HÀNG |------------|");
                Console.WriteLine("|================================================|");
                Console.WriteLine("|{0,-25}|{1,-20}  |", "Tên sản phẩm", "Giá sản phẩm");
                Console.WriteLine("|------------------------------------------------|");
                foreach (var orders in ListOrder.ListItem)
                {
                    string format = string.Format($"|{orders.item_name,-25}|{FormatAndValid.FormatCurrency(orders.item_price),-15}       |");
                    Console.WriteLine(format);
                    Console.WriteLine("|================================================|");
                    price += orders.item_price;    // tính tổng giá của tất cả sản phẩm có trong giỏ hàng
                    if (user.user_balance < price) // nếu tiền ko đủ thì nạp hoặc trở lại
                    {
                        Console.WriteLine("Tài khoản của quý khách không đủ để thực hiện giao dịch này !");
                        Console.Write("Bạn có muốn nạp thêm tiền vào tài khoản không?(C/K): ");
                        string choose;
                        while (true)
                        {
                            choose = Console.ReadLine().ToUpper();
                            if (choose != "C" && choose != "K")
                            {
                                Console.WriteLine("Bạn đã nhập sai, hãy nhập lại!");
                                Console.Write("Bạn có muốn nạp thêm tiền vào tài khoản không?(C/K)?: ");
                                continue;
                            }
                            else
                            {
                                break;
                            }
                        }
                        switch (choose)
                        {
                        case "C":
                            u.AddFund(user);
                            break;

                        case "K":
                            orderConsole.ShowCarts(user);
                            break;
                        }
                    }
                    else   // trừ tiền trong bảng order
                    {
                        user.user_balance = user.user_balance - price;
                    }

                    order.ListItem.Add(orders);  // thêm order vào list
                }
                order.user     = user;
                order.order_id = ListOrder.order_id;
            }
            if (orderBL.CreateOrder(order) == true)  // nếu mua hàng thành công thì xóa file chưa thì vẫn lưu trong file
            {
                Console.WriteLine("Mua hàng thành công!\nẤn phím bất kì để tiếp tục! ");
                File.Delete("order" + user.user_id + ".json");
                Console.ReadKey();
                ms.menuShop(user);
            }
            else
            {
                Console.WriteLine("Mua hàng Không thành công, đã có lỗi xảy ra \nẤn phím bất kì để quay về Trang chủ!");
                Console.ReadKey();
                ms.menuShop(user);
            }
        }
예제 #8
0
        public void AddFund(User user) // nạp tiền vào tài khoản
        {
            Console.Clear();
            double values;
            string password;

            Console.WriteLine("|========================================|");
            Console.WriteLine("|-------| NẠP TIỀN VÀO TÀI KHOẢN |-------|");
            Console.WriteLine("|========================================|\n");
            Console.Write("Nhập số tiền cần nạp: ");

            while (true)
            {
                bool isDouble = Double.TryParse(Console.ReadLine(), out values);
                if (!isDouble)
                {
                    Console.Write("Bạn đã nhập sai!\nHãy nhập lại: ");
                }
                else if (values > 9999999999 || values <= 0)
                {
                    Console.WriteLine("Số tiền vượt quá giới hạn (9.999.999.999 VND/lần) hoặc (số tiền <= 0 VND )!");
                    Console.Write("Hãy nhập lại: ");
                }
                else
                {
                    break;
                }
            }
            Console.Write("Nhập lại mật khẩu để xác nhận giao dịch: ");
            password = FormatAndValid.Password(); // check pass đúng thì thành công else thất bại

            if (userBL.GetUser(user.user_name, password) != null)
            {
                userBL.Addfund(user, values);
                Console.WriteLine("GIAO DỊCH THÀNH CÔNG !\nBấm phím bất kì để tiếp tục !");
                Console.ReadKey();
                GetUserInfo(user.user_id);
            }
            else
            {
                Console.WriteLine("GIAO DỊCH KHÔNG THÀNH CÔNG!\nHãy chắc chắn bạn đã nhập đúng mật khẩu !");
                Console.Write("Bạn có muốn thực hiện lại giao dịch không ?(C/K): ");
                string choose;
                while (true)
                {
                    choose = Console.ReadLine().ToUpper();
                    if (choose != "C" && choose != "K")
                    {
                        Console.WriteLine("Bạn đã nhập sai, hãy nhập lại!   ");
                        Console.Write("Bạn có muốn tiếp tục không(C/K)?: ");

                        continue;
                    }
                    else
                    {
                        break;
                    }
                }
                switch (choose)
                {
                case "C":
                    AddFund(user);
                    break;

                case "K":
                    UserInfoMenu(user);
                    break;
                }
            }
        }