private void btnSave_Click(object sender, EventArgs e) { var seanceList = new List <Seance>(); foreach (DataGridViewRow r in dgSeances.Rows) { var idValue = r.Cells[cId.Name].Value; if (idValue != null && !string.IsNullOrEmpty(idValue.ToString())) { var id = int.Parse(idValue.ToString()); var seance = seances.GetSeance(id); if (seance == null) { seance = new Seance(); } seance.ID = id; seance.Room = rooms.GetRoomByName(r.Cells[cRoom.Name].Value.ToString()); seance.Film = films.GetFilmByName(r.Cells[cFilm.Name].Value.ToString()); seance.Price = int.Parse(r.Cells[cPrice.Name].Value.ToString()); seance.Time = r.Cells[cTime.Name].Value.ToString(); seance.Date = DateTime.Parse(r.Cells[cDate.Name].Value.ToString()); if (seance.Room != null && seance.Film != null) { seance.BusySeats = new bool[seance.Room.RowCnt, seance.Room.ColCnt]; seanceList.Add(seance); } } } seances.SetSeances(seanceList); seances.Save(); }
protected Seance CreateSeance(string line, Films films, Rooms rooms) { var split = line.Split(new[] { '\t' }, StringSplitOptions.RemoveEmptyEntries); if (split.Length > 5) { var seance = new Seance(); seance.ID = int.Parse(split[0]); var room = rooms.GetRoom(int.Parse(split[1])); var film = films.GetFilm(int.Parse(split[2])); seance.Room = room; seance.Film = film; seance.Price = int.Parse(split[3]); seance.Time = split[4]; seance.Date = DateTime.Parse(split[5]); seance.BusySeats = new bool[seance.Room.RowCnt, seance.Room.ColCnt]; if (split.Length > 6) { InitBusySeats(seance, split[6]); } return(seance); } return(null); }
protected void InitBusySeats(Seance seance, string busySeatsStr) { var split = busySeatsStr.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); foreach (var s in split) { var seatSplit = s.Split(new[] { ':' }, StringSplitOptions.RemoveEmptyEntries); if (seatSplit.Length == 2) { var row = int.Parse(seatSplit[0]) - 1; var col = int.Parse(seatSplit[1]) - 1; if ((row >= 0 && row < seance.Room.RowCnt) && (col >= 0 && col < seance.Room.ColCnt)) { seance.BusySeats[row, col] = true; } } } }
public void Init(Seance seance, Rooms rooms, Films films) { this.seance = seance; this.rooms = rooms; this.films = films; tbDate.Value = seance.Date; tbPrice.Text = seance.Price.ToString(); tbTime.Text = seance.Time; cbRooms.DataSource = rooms.GetList(); cbFilms.DataSource = films.GetFilms(); if (seance.Room != null) { cbRooms.SelectedItem = seance.Room; } if (seance.Film != null) { cbFilms.SelectedItem = seance.Film; } }
private string CreateBusySeatsStr(Seance seance) { var busySeatsStr = string.Empty; for (var r = 0; r < seance.Room.RowCnt; r++) { for (var c = 0; c < seance.Room.ColCnt; c++) { if (seance.BusySeats[r, c] == true) { if (!string.IsNullOrEmpty(busySeatsStr)) { busySeatsStr += ","; } busySeatsStr += string.Format("{0}:{1}", r + 1, c + 1); } } } return(busySeatsStr); }
private void btnAdd_Click(object sender, EventArgs e) { var id = 1; if (dgSeances.Rows.Count > 0) { var r = dgSeances.Rows[dgSeances.Rows.Count - 1]; var idValue = r.Cells[cId.Name].Value; id = int.Parse(idValue.ToString()) + 1; } var seance = new Seance(); seance.ID = id; seance.Date = DateTime.Now; var seanceForm = new ChangeSeanceForm(); seanceForm.Init(seance, rooms, films); if (seanceForm.ShowDialog() == DialogResult.OK) { AddSeanceToGrid(seance); } }
private void DisplaySeance(Seance seance) { currentSeance = seance; var room = seance.Room; if (btnArray != null) { foreach (Button btn in btnArray) { panelRoom.Controls.Remove(btn); } } btnArray = new Button[room.RowCnt, room.ColCnt]; panelRoom.Visible = false; for (int row = 0; row < room.RowCnt; row++) { for (int col = 0; col < room.ColCnt; col++) { DisplaySeat(row, col, room.Seats[row, col]); } } panelRoom.Visible = true; }
private void AddSeanceToGrid(Seance seance) { var rowId = dgSeances.Rows.Add(seance.ID, seance.Room.Name, seance.Film.Name, seance.Price, seance.Time, seance.Date.ToString("dd-MM-yyyy")); dgSeances.Rows[rowId].Tag = seance; }