////////获取当前赛事的球队信息 /* * 查询数据库中的球队的基本信息,并且返回到一个线性表中 */ public static List<Schedule> getScheduleInfo(SeasonOfMatch season) { //声明实例 List<Schedule> list = new List<Schedule>(); //执行查询数据库操作 DBUtility dbutility = new DBUtility(); string SQL = "select seasonId,matchId,turn,gameDate,homeTeamName,guestTeamName from schedule where seasonId= " + season.getNumOfSeason(); try { dbutility.openConnection(); MySqlDataReader rd = dbutility.ExecuteQuery(SQL); while (rd.Read()) { Schedule s = new Schedule(); s.setSeasonId(Convert.ToInt32(rd[0])); s.setMatchId(Convert.ToInt32(rd[1])); s.setTurn(Convert.ToInt32(rd[2])); s.setGameDate(Convert.ToString(rd[3])); s.setHomeTeam(Convert.ToString(rd[4])); s.setGuestTeam(Convert.ToString(rd[5])); list.Add(s); } } catch (MySqlException ex) { Console.WriteLine(ex.ToString()); } finally { dbutility.Close(); } return list; }
//选择比赛球队 private void button_choose_Click(object sender, EventArgs e) { Schedule gs = new Schedule(); gs.setHomeTeam(textBox_homeTeam.Text); gs.setGuestTeam(textBox_guestTeam.Text); gs.setGameDate(label_gameDate.Text); SystemParam.getAddNewGameForm().LoadScheduleInfo(gs); SystemParam.getAddNewGameForm().setGameInfo(); this.Dispose(); }
//保存提交的数据到数据库并清空该表 private void button_saveSchedule_Click(object sender, EventArgs e) { DialogResult RSS = MessageBox.Show(this, "确定要保存表单赛程吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); switch (RSS) { case DialogResult.Yes: { int rowNum = this.dataGridView1.Rows.Count-1; //得到总列数,其中要除去新行 int cellNum = this.dataGridView1.Columns.Count;//得到总列数 int flag = 0;//验证表格是否有空值 List<Schedule> scheduleList = new List<Schedule>(); for (int i = 0; i < rowNum; i++) { for (int j = 0; j < cellNum; j++) { if (this.dataGridView1.Rows[i].Cells[j].Value==null) flag = 1; } } if (flag == 1) MessageBox.Show("当前表格有未填写的空格,请确认!"); else { for(int k=0;k<rowNum;k++ ){ Schedule s = new Schedule(); //实例化一条赛程记录,存放到list中 s.setMatchId(SystemParam.getMatch().getID()); s.setSeasonId(SystemParam.getCurrentSelectedSeason().getId()); for (int l = 0; l < cellNum;l++ ) { switch (l) { case 0: s.setTurn(Convert.ToInt32(this.dataGridView1.Rows[k].Cells[l].Value.ToString())); break; case 1: s.setGameDate(this.dataGridView1.Rows[k].Cells[l].Value.ToString()); break; case 2: s.setHomeTeam(this.dataGridView1.Rows[k].Cells[l].Value.ToString()) ; break; case 3: s.setGuestTeam(this.dataGridView1.Rows[k].Cells[l].Value.ToString()); break; default: break; } } scheduleList.Add(s); } ScheduleDAO.addSchedule(scheduleList); MessageBox.Show("插入数据成功!"); //清楚已经提交的数据 this.dataGridView1.Rows.Clear(); }//else表格不为空的 } break; case DialogResult.No: break; } }
private void button_saveSchedule_Click(object sender, EventArgs e) { DialogResult RSS = MessageBox.Show(this, "确定要保存表单赛程吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); switch (RSS) { case DialogResult.Yes: { int rowNum = this.dataGridView_ExcelImport.Rows.Count - 1; //得到总列数,其中要除去新行 int cellNum = this.dataGridView_ExcelImport.Columns.Count;//得到总列数 int flag = 0;//验证表格是否有空值 int isTheTeam = 0;//验证表格中特定的两列是否是存在的球队,默认0是 int isHomeEqualsGuest = 0; //验证表格中是否存在主队和客队一样的球队,默认0不等 List<Schedule> scheduleList = new List<Schedule>(); for (int i = 0; i < rowNum; i++) { for (int j = 0; j < cellNum; j++) { if (this.dataGridView_ExcelImport.Rows[i].Cells[j].Value == null) flag = 1; } if(this.dataGridView_ExcelImport.Rows[i].Cells[2].Value.ToString()==this.dataGridView_ExcelImport.Rows[i].Cells[3].Value.ToString()){ isHomeEqualsGuest=1; } if (checkIsTheTeam(this.dataGridView_ExcelImport.Rows[i].Cells[2].Value.ToString())||checkIsTheTeam(this.dataGridView_ExcelImport.Rows[i].Cells[3].Value.ToString())) { isTheTeam = 1; } } if (flag == 1) MessageBox.Show("当前表格有未填写的空格,请确认!"); else { if (isTheTeam == 1) { MessageBox.Show("表格中球队存在不是该赛事的球队,请确认!"); } else { if (isHomeEqualsGuest == 1) { MessageBox.Show("表格中球队存在主客队为同一球队,请确认!"); } else { for (int k = 0; k < rowNum; k++) { Schedule s = new Schedule(); //实例化一条赛程记录,存放到list中 s.setMatchId(8); s.setSeasonId(1); for (int l = 0; l < cellNum; l++) { switch (l) { case 0: s.setTurn(Convert.ToInt32(this.dataGridView_ExcelImport.Rows[k].Cells[l].Value.ToString())); break; case 1: s.setGameDate(this.dataGridView_ExcelImport.Rows[k].Cells[l].Value.ToString()); break; case 2: s.setHomeTeam(this.dataGridView_ExcelImport.Rows[k].Cells[l].Value.ToString()); break; case 3: s.setGuestTeam(this.dataGridView_ExcelImport.Rows[k].Cells[l].Value.ToString()); break; default: break; } } scheduleList.Add(s); } ScheduleDAO.addSchedule(scheduleList); MessageBox.Show("插入数据成功!"); //清除已经提交的数据,如果设定的是数据源则源设置为空,不是用clear()方法清除 if (this.dataGridView_ExcelImport.DataSource != null) { this.dataGridView_ExcelImport.DataSource = null; this.textBox_fileName.Text = ""; } else { this.dataGridView_ExcelImport.Rows.Clear(); this.textBox_fileName.Text = ""; } } //表格中球队存在主客队为同一球队 }//球队存在不是该赛事的球队 }//else表格不为空的 } break; case DialogResult.No: break; } }