public Performance(int id, DateTime start, Artist artist, Venue venue) { Id = id; Start = start; Artist = artist; Venue = venue; }
public ArtistViewModel(Artist artist, IManager manager) { this.artist = artist; this.manager = manager; category = new CategoryViewModel(artist.Category, manager); categories = new List<CategoryViewModel>(); this.SaveCommand = new RelayCommand(o => UpdateArtist()); this.RemoveCommand = new RelayCommand(o => DeleteArtist()); ConfigureValidation(); }
private void CreateTestData() { var loc = new Location(LOCATION_ID, LOCATION); var locationDao = new LocationDao(database); locationDao.Insert(loc); var venue = new Venue(VENUE_ID, VENUE_LABEL, VENUE_SPECTATORS, loc, 0, 0); var venueDao = new VenueDao(database); venueDao.Insert(venue); var category = new Category(CATEGORY_ID, CATEGORY_LABEL); var categoryDao = new CategoryDao(database); categoryDao.Insert(category); var artist = new Artist(ARTIST_ID, ARTIST_NAME, ARTIST_COUNTRY, ARTIST_MAIL, "", "", "", "", category, false); var artistDao = new ArtistDao(database); artistDao.Insert(artist); items = new List<Performance>(); items.Add(new Performance(1, PERFORMANCE1_START, artist, venue)); items.Add(new Performance(2, PERFORMANCE2_START, artist, venue)); items.Add(new Performance(3, PERFORMANCE3_START, artist, venue)); items.Add(new Performance(4, PERFORMANCE4_START, artist, venue)); }
/// <summary> /// Gets the performance by artist. /// </summary> /// <param name="artist">The artist.</param> /// <returns></returns> public IList<Performance> GetPerformanceByArtist(Artist artist) { return performanceDao.FindByArtistId(artist.Id); }
public List<Performance> GetPerformanceByArtist(Artist artist) { return new List<Performance>(viewBL.GetPerformanceByArtist(artist)); }
public void NotifyArtist(Artist artist) { var performances = performanceDao.FindByArtistId(artist.Id); var sb = new StringBuilder(); sb.AppendLine("Here is your festival schedule: "); foreach(var p in performances) { sb.AppendLine(p.Start.ToString("yyyy.MM.dd HH:mm") + " - " + p.Venue.Location.Id + p.Venue.Id + " " + p.Venue.Label); } SendEmail(artist.Email, "Personal festival schedule", sb.ToString()); }
public void UpdateArtist(Artist artist) { if (artist == null) throw new ArgumentNullException("Invalid artist!"); if (artistDao.FindById(artist.Id) != null) { if (!artistDao.Update(artist)) throw new ArgumentException("Cannot update artist"); } else { CreateArtist(artist); } }
public void RemoveArtist(Artist artist) { if (artist == null) throw new ArgumentException("Invalid Artist!"); artistDao.Delete(artist.Id); performanceDao.DeleteByArtist(artist.Id); }
public void CreateArtist(Artist artist) { if (!artistDao.Insert(artist)) throw new ArgumentException("No valid artist"); }
private IList<Artist> DataReaderToList(IDataReader reader) { if (reader == null) return null; var artists = new List<Artist>(); while (reader.Read()) { var artist = new Artist((int)reader["idArtist"], (string)reader["name"], (string)reader["country"], (string)reader["email"], (reader["description"] == DBNull.Value) ? string.Empty : (string)reader["description"], (reader["homepage"] == DBNull.Value) ? string.Empty : (string)reader["homepage"], (reader["picture"] == DBNull.Value) ? string.Empty : (string)reader["picture"], (reader["video"] == DBNull.Value) ? string.Empty : (string)reader["video"], new Category((string)reader["idCategory"], (string)reader["label"]), (bool)reader["deleted"]); if (!artist.IsDeleted) artists.Add(artist); } return artists; }
public bool Update(Artist o) { if (o == null || o.Name == null || o.Country == null || o.Email == null) return false; var command = _database.CreateCommand(SQL_UPDATE); _database.DefineParameter(command, "@id", DbType.Int32, o.Id); _database.DefineParameter(command, "@name", DbType.String, o.Name); _database.DefineParameter(command, "@country", DbType.String, o.Country); _database.DefineParameter(command, "@email", DbType.String, o.Email); _database.DefineParameter(command, "@description", DbType.String, o.Description); _database.DefineParameter(command, "@homepage", DbType.String, o.Homepage); _database.DefineParameter(command, "@picture", DbType.String, o.PictureUrl); _database.DefineParameter(command, "@video", DbType.String, o.VideoUrl); _database.DefineParameter(command, "@categoryId", DbType.String, o.Category.Id); _database.DefineParameter(command, "@delete", DbType.Boolean, o.IsDeleted); return _database.ExecuteNonQuery(command) == 1; }
public bool Insert(Artist o) { if (o == null || o.Name == null || o.Country == null || o.Email == null) return false; var command = _database.CreateCommand(SQL_INSERT); _database.DefineParameter(command, "@name", DbType.String, o.Name); _database.DefineParameter(command, "@country", DbType.String, o.Country); _database.DefineParameter(command, "@email", DbType.String, o.Email); _database.DefineParameter(command, "@description", DbType.String, o.Description); _database.DefineParameter(command, "@homepage", DbType.String, o.Homepage); _database.DefineParameter(command, "@picture", DbType.String, o.PictureUrl); _database.DefineParameter(command, "@video", DbType.String, o.VideoUrl); _database.DefineParameter(command, "@category", DbType.String, o.Category.Id); _database.DefineParameter(command, "@delete", DbType.Boolean, o.IsDeleted); var id = _database.ExecuteScalar(command); o.Id = Convert.ToInt32(id.ToString()); return id != null; }
public Artist FindById(int id) { var command = _database.CreateCommand(SQL_FIND_BY_ID); _database.DefineParameter(command, "@id", DbType.Int32, id); using (var reader = _database.ExecuteReader(command)) { if (reader.Read()) { var artist = new Artist((int)reader["idArtist"], (string)reader["name"], (string)reader["country"], (string)reader["email"], (reader["description"] == DBNull.Value) ? string.Empty : (string)reader["description"], (reader["homepage"] == DBNull.Value) ? string.Empty : (string)reader["homepage"], (reader["picture"] == DBNull.Value) ? string.Empty : (string)reader["picture"], (reader["video"] == DBNull.Value) ? string.Empty : (string)reader["video"], new Category((string)reader["idCategory"], (string)reader["label"]), (bool)reader["deleted"]); if (!artist.IsDeleted) return artist; } } return null; }