diff --git a/RMuseum/Services/Implementation/GanjoorService.cs b/RMuseum/Services/Implementation/GanjoorService.cs index 5692589b..8b9a2f42 100644 --- a/RMuseum/Services/Implementation/GanjoorService.cs +++ b/RMuseum/Services/Implementation/GanjoorService.cs @@ -993,8 +993,16 @@ namespace RMuseum.Services.Implementation return new RServiceResult(null, "data validation err"); } + var duplicated = await _context.GanjoorPoemMusicTracks.Where(m => m.PoemId == song.PoemId && m.TrackUrl == song.TrackUrl).FirstOrDefaultAsync(); + if(duplicated != null) + { + return new RServiceResult(null, "duplicated song url for this poem"); + } + + PoemMusicTrack track = new PoemMusicTrack(); + track.PoemId = song.PoemId; track.TrackType = song.TrackType; track.ArtistName = song.ArtistName; track.ArtistUrl = song.ArtistUrl;