//xoa
 public bool delGIAIDAU(DTO_GIAIDAU g)
 {
     try
     {
         connect.Open();
         string     sql = string.Format("DELETE FROM GIAIDAU WHERE MaGiai='{0}'", g.MaGiai);
         SqlCommand cmd = new SqlCommand(sql, connect);
         //kiem tra
         if (cmd.ExecuteNonQuery() > 0)
         {
             return(true);
         }
     }
     catch (Exception e) { }
     finally
     {
         connect.Close();
     }
     return(false);
 }
 //them
 public bool addGIAIDAU(DTO_GIAIDAU g)
 {
     try
     {
         connect.Open();
         string start = string.Format("{0:yyyy/MM/dd}", g.NgayBatDau);
         string end   = string.Format("{0:yyyy/MM/dd}", g.NgayKetThuc);
         string sql   = "";
         sql += "INSERT INTO GIAIDAU(MaGiai,TenGiai,NgayBatDau,NgayKetThuc,SoDoi,SoThanhVien,DiemThang,DiemHoa,DiemThua,SoLuot,Loai) ";
         sql += "VALUES (@MA,@TEN,@DS,@DE,@SD,@STV,@DTG,@DH,@DTH,@LUOT,@LOAI)";
         SqlCommand cmd = new SqlCommand(sql, connect);
         cmd.CommandType = CommandType.Text;
         cmd.Parameters.Add(new SqlParameter("@MA", g.MaGiai));
         cmd.Parameters.Add(new SqlParameter("@TEN", g.TenGiai));
         cmd.Parameters.Add(new SqlParameter("@DS", start));
         cmd.Parameters.Add(new SqlParameter("@DE", end));
         //Add param with confused beween two type
         cmd.Parameters.Add(new SqlParameter("@SD", (object)g.SoDoi ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@STV", (object)g.SoThanhVien ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@DTG", (object)g.DiemThang ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@DH", (object)g.DiemHoa ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@DTH", (object)g.DiemThua ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@LUOT", (object)g.SoLuot ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@LOAI", (object)g.Loai ?? DBNull.Value));
         //kiem tra
         if (cmd.ExecuteNonQuery() > 0)
         {
             return(true);
         }
     }
     catch (Exception e) { }
     finally
     {
         //close connect
         connect.Close();
     }
     return(false);
 }
 //sua
 public bool upGIAIDAU(DTO_GIAIDAU g)
 {
     try
     {
         connect.Open();
         string start = string.Format("{0:yyyy/MM/dd}", g.NgayBatDau);
         string end   = string.Format("{0:yyyy/MM/dd}", g.NgayKetThuc);
         string sql   = "UPDATE GIAIDAU SET TenGiai=@TE, NgayBatDau=@DS, NgayKetThuc=@DE, SoDoi=@SD, SoThanhVien=@STV, ";
         sql += "DiemThang=@DTG, DiemHoa=@DH, DiemThua=@DTH, SoLuot=@LUOT, Loai=@LOAI WHERE MaGiai=@MA";
         SqlCommand cmd = new SqlCommand(sql, connect);
         cmd.CommandType = CommandType.Text;
         cmd.Parameters.Add(new SqlParameter("@MA", g.MaGiai));
         cmd.Parameters.Add(new SqlParameter("@TEN", g.TenGiai));
         cmd.Parameters.Add(new SqlParameter("@DS", start));
         cmd.Parameters.Add(new SqlParameter("@DE", end));
         //Add param with null-coalescing operator
         cmd.Parameters.Add(new SqlParameter("@SD", (object)g.SoDoi ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@STV", (object)g.SoThanhVien ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@DTG", (object)g.DiemThang ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@DH", (object)g.DiemHoa ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@DTH", (object)g.DiemThua ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@LUOT", (object)g.SoLuot ?? DBNull.Value));
         cmd.Parameters.Add(new SqlParameter("@LOAI", (object)g.Loai ?? DBNull.Value));
         //kiem tra
         if (cmd.ExecuteNonQuery() > 0)
         {
             return(true);
         }
     }
     catch (Exception e) { }
     finally
     {
         connect.Close();
     }
     return(false);
 }
        private void btnCreate_Click(object sender, EventArgs e)
        {
            DTO_VONG dtov = new DTO_VONG();

            if (string.IsNullOrEmpty(txtTenGiai.Text) || txtTenGiai.TextLength < 6 || txtTenGiai.TextLength >= 50)
            {
                MessageBox.Show("Bạn không nhập vào tên giải! Hoặc tên giải nhập sai, tên giải cần lớn hơn 5 kí tự và bé hơn 50 kí tự!", "Thử lại!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                string mag = giai.nextMa("MG");
                int?   sodoi, stv, dtg, dh, dth, luot, loai;
                if (radLoai.Checked == true)
                {
                    loai  = 1;
                    sodoi = (int)numSoDoi.Value;
                    if (!giai.checkSoDoi1(sodoi) || sodoi > 64)
                    {
                        MessageBox.Show("Số đội phải từ 2-64 người!", "Thử lại!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        numSoDoi.Focus();
                    }
                    stv = (int)cboSoThanhVien.SelectedValue;
                    dtg = null; dh = null; dth = null; luot = null;
                    //do it
                    DTO_GIAIDAU dto = new DTO_GIAIDAU(mag, txtTenGiai.Text, dateBegin.Value, dateEnd.Value, sodoi, stv, dtg, dh, dth, luot, loai);
                    if (giai.addGIAIDAU(dto))
                    {
                        MessageBox.Show("Đã hoàn tất tạo giải đấu, vui lòng cập nhật giải đấu bằng cách nhấp vào nút 'Thêm đại diện' ở bên dưới", "Chúc mừng!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        if (sodoi % 2 == 0)
                        {
                            v.addVongChan((int)sodoi, mag);
                        }
                        else
                        {
                            v.addVongLe((int)sodoi, mag);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Tạo giải thất bại, vui lòng thử lại!", "Rất tiếc!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
                else if (radTron.Checked == true)
                {
                    loai  = 2;
                    sodoi = (int)numSoDoi.Value;
                    if (!giai.checkSoDoi2(sodoi))
                    {
                        MessageBox.Show("Số đội phải từ 2-30 người!", "Thử lại!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        numSoDoi.Focus();
                    }
                    stv = (int)cboSoThanhVien.SelectedValue;
                    dtg = int.Parse(txtThang.Text);
                    dh  = int.Parse(txtHoa.Text);
                    dth = int.Parse(txtThua.Text);
                    if (btn1.BackColor == Color.GreenYellow)
                    {
                        luot = 1;
                    }
                    else
                    {
                        luot = 2;
                    }
                    //do it
                    DTO_GIAIDAU dto = new DTO_GIAIDAU(mag, txtTenGiai.Text, dateBegin.Value, dateEnd.Value, sodoi, stv, dtg, dh, dth, luot, loai);
                    if (giai.addGIAIDAU(dto))
                    {
                        MessageBox.Show("Đã hoàn tất tạo giải đấu, vui lòng cập nhật giải đấu bằng cách nhấp vào nút 'Thêm đại diện' ở bên dưới", "Chúc mừng!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        v.addVongTron((int)sodoi, mag, (int)luot);
                    }
                    else
                    {
                        MessageBox.Show("Tạo giải thất bại, vui lòng thử lại!", "Rất tiếc!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
                else
                {
                    MessageBox.Show("Mời check vào Phân loại!", "Thử lại!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    sodoi = null; stv = null; dtg = null; dh = null; dth = null; luot = null; loai = null;
                }
            }
        }
 public bool delGIAIDAU(DTO_GIAIDAU g)
 {
     return(dalGIAIDAU.delGIAIDAU(g));
 }
 public bool upGIAIDAU(DTO_GIAIDAU g)
 {
     return(dalGIAIDAU.upGIAIDAU(g));
 }
 public bool addGIAIDAU(DTO_GIAIDAU g)
 {
     return(dalGIAIDAU.addGIAIDAU(g));
 }