Exemple #1
0
 // Kiểm tra đội bóng bắt lỗi
 // Thành công trả về 0.
 // Thất bại: 1. Thông tin chưa được điền đầy đủ
 //           2. Mã đội bóng đã tồn tại
 //           3. Tên đội bóng không được trùng với tên các đội bóng đã đăng ký
 //           4. Số lượng cầu thủ của đội bóng phải theo quy định của giải đấu
 //           5. Đội bóng phải có HLV
 //           6. Ngày thành lập đội bóng phải trước ngày đăng ký
 public static int KiemTraDoiBong(V_DOIBONG a_DoiBong)
 {
     if (KiemTraThongTinDayDu(a_DoiBong) == false)
     {
         return(1);
     }
     if (KiemTraDoiBongChuaTonTai(a_DoiBong.m_MaDoiBong) == false)
     {
         return(2);
     }
     if (KiemTraTenDoiBongTrung(a_DoiBong.m_TenDoiBong))
     {
         return(3);
     }
     if (KiemTraSLCT(a_DoiBong.m_DanhSachCauThu.Count) == false)
     {
         return(4);
     }
     if (KiemTraDaCoHLV(a_DoiBong.m_DanhSachHLV.Count) == false)
     {
         return(5);
     }
     if (KiemTraNgayThanhLap(a_DoiBong.m_NgayThanhLap) == false)
     {
         return(6);
     }
     return(0);
 }
Exemple #2
0
        public static void LuuDoiBong(V_DOIBONG a_DoiBong)
        {
            // Lưu vào database
            // Lưu đội bóng vào database
            DOIBONG newDoiBong = new DOIBONG
            {
                MADB          = a_DoiBong.m_MaDoiBong,
                TENDOIBONG    = a_DoiBong.m_TenDoiBong,
                SOLUONGCAUTHU = (byte)a_DoiBong.m_DanhSachCauThu.Count,
                TENSANNHA     = a_DoiBong.m_TenSanNha,
                TINHTHANH     = a_DoiBong.m_TinhThanh,
                NGAYTHANHLAP  = a_DoiBong.m_NgayThanhLap,
                SOBANTHANG    = 0,
                SOBANTHUA     = 0,
                TONGDIEM      = 0,
            };

            Database.DB_INSERTING.ThemDoiBong(newDoiBong);

            // Lưu cầu thủ vào database
            for (int i = 0; i < a_DoiBong.m_DanhSachCauThu.Count; i++)
            {
                V_CAUTHU vCauThu = a_DoiBong.m_DanhSachCauThu[i];
                Business.B_CAUTHU.ThemCauThu(vCauThu, newDoiBong.MADB);
            }

            // Lưu huấn luyện viên
            for (int i = 0; i < a_DoiBong.m_DanhSachHLV.Count; i++)
            {
                V_HUANLUYENVIEN vHLV = a_DoiBong.m_DanhSachHLV[i];
                Business.B_HUANLUYENVIEN.ThemHLV(vHLV, newDoiBong.MADB);
            }
        }
Exemple #3
0
 // Kiểm tra thông tin có đủ hay không?
 // Nếu đủ return true, ngược lại return false
 private static bool KiemTraThongTinDayDu(V_DOIBONG a_DoiBong)
 {
     if (string.IsNullOrEmpty(a_DoiBong.m_MaDoiBong) || string.IsNullOrEmpty(a_DoiBong.m_TenDoiBong) ||
         string.IsNullOrEmpty(a_DoiBong.m_TenSanNha))
     {
         return(false);
     }
     return(true);
 }
Exemple #4
0
        //lay danh sach doi bong
        public static List <V_DOIBONG> DanhSachDB()
        {
            List <V_DOIBONG> listDB   = new List <V_DOIBONG>();
            List <DOIBONG>   listDBDB = new List <DOIBONG>();

            listDBDB = Database.DB_QUERY.DanhSachDB();

            foreach (DOIBONG n in listDBDB)
            {
                V_DOIBONG doibong = new V_DOIBONG();
                doibong.m_MaDoiBong  = n.MADB;
                doibong.m_TenDoiBong = n.TENDOIBONG;
                doibong.m_TenSanNha  = n.TENSANNHA;
                listDB.Add(doibong);
            }
            return(listDB);
        }
Exemple #5
0
        // Hàm lấy danh sách các đội bóng
        public static List <V_DOIBONG> LayDanhSachDoiBong()
        {
            List <V_DOIBONG> listDoiBong   = new List <V_DOIBONG>();
            List <DOIBONG>   listDoiBongDB = Database.DB_QUERY.LayDanhSachDoiBong();
            int soDoiBong = listDoiBongDB.Count;                       // Số lượng đội bóng

            int[] DanhSachDiem = new int[soDoiBong];                   // Mảng lưu danh sách điểm của đội bóng
            for (int i = 0; i < soDoiBong; ++i)
            {
                listDoiBong.Add(new V_DOIBONG()
                {
                    m_MaDoiBong  = listDoiBongDB[i].MADB,
                    m_TenDoiBong = listDoiBongDB[i].TENDOIBONG,
                    m_SoBanThang = (int)listDoiBongDB[i].SOBANTHANG,
                    m_SoBanThua  = (int)listDoiBongDB[i].SOBANTHUA,
                    m_TongDiem   = (int)listDoiBongDB[i].TONGDIEM,
                    m_HieuSo     = (int)listDoiBongDB[i].SOBANTHANG - (int)listDoiBongDB[i].SOBANTHUA
                                   /*Lấy danh sách cầu thủ*/
                                   /*Lấy danh sách huấn luyện viên*/
                });
                DanhSachDiem[i] = (int)listDoiBongDB[i].TONGDIEM;
            }
            // Sắp xếp đội bóng giảm dần theo tổng điểm
            for (int i = 0; i < soDoiBong - 1; ++i)
            {
                for (int j = i + 1; j < soDoiBong; ++j)
                {
                    if (listDoiBong[j].m_TongDiem > listDoiBong[i].m_TongDiem)
                    {
                        V_DOIBONG temp = listDoiBong[i];
                        listDoiBong[i] = listDoiBong[j];
                        listDoiBong[j] = temp;
                    }
                }
            }
            // Sắp xếp đội bóng theo hiệu số
            for (int i = 0; i < soDoiBong - 1; ++i)
            {
                for (int j = i + 1; j < soDoiBong; ++j)
                {
                    if (listDoiBong[j].m_TongDiem == listDoiBong[i].m_TongDiem)
                    {
                        if (listDoiBong[j].m_HieuSo > listDoiBong[i].m_HieuSo)
                        {
                            V_DOIBONG temp = listDoiBong[i];
                            listDoiBong[i] = listDoiBong[j];
                            listDoiBong[j] = temp;
                        }
                    }
                }
            }
            // Gán thứ hạng cho các đội
            int index = 0;

            for (int i = 0; i < soDoiBong; ++i)
            {
                listDoiBong[index++].m_Hang = i + 1;
            }

            // Lấy số trận thắng, thua, hòa cho từng đội
            for (int i = 0; i < soDoiBong; ++i)
            {
                List <V_TRANDAU> listTranDau = B_TRANDAU.XemDanhSachTranDauTheoDoi(listDoiBong[i].m_MaDoiBong);
                int soTranDau   = listTranDau.Count;
                int soTranThang = 0;
                int soTranHoa   = 0;
                int soTranThua  = 0;
                for (int j = 0; j < soTranDau; ++j)
                {
                    if (listTranDau[j].m_MaDB1 == listDoiBong[i].m_MaDoiBong)             // là đội 1
                    {
                        if (listTranDau[j].m_SCORED1 < listTranDau[j].m_SCORED2)
                        {
                            soTranThua++;
                        }
                        else if (listTranDau[j].m_SCORED1 == listTranDau[j].m_SCORED2)
                        {
                            soTranHoa++;
                        }
                        else
                        {
                            soTranThang++;
                        }
                    }

                    if (listTranDau[j].m_MaDB2 == listDoiBong[i].m_MaDoiBong)              // là đội 2
                    {
                        if (listTranDau[j].m_SCORED1 < listTranDau[j].m_SCORED2)
                        {
                            soTranThang++;
                        }
                        else if (listTranDau[j].m_SCORED1 == listTranDau[j].m_SCORED2)
                        {
                            soTranHoa++;
                        }
                        else
                        {
                            soTranThua++;
                        }
                    }
                }
                listDoiBong[i].m_SoTranThang = soTranThang;
                listDoiBong[i].m_SoTranThua  = soTranThua;
                listDoiBong[i].m_SoTranHoa   = soTranHoa;
            }
            return(listDoiBong);
        }