public async void UnassignMusicianGenre(int musicianId, int genreId) { MusicianGenre musicianGenre = await FindByMusicianIdAndGenreId(musicianId, genreId); if (musicianGenre != null) { Remove(musicianGenre); } }
public async Task AssignMusicianGenre(int musicianId, int genreId) { MusicianGenre musicianGenre = await FindByMusicianIdAndGenreId(musicianId, genreId); if (musicianGenre == null) { musicianGenre = new MusicianGenre { MusicianId = musicianId, GenreId = genreId }; await AddAsync(musicianGenre); } }
//===================================================================== //Methods(). //===================================================================== public List <vmMusiciansGenresByInstrument> GetMusiciansGenresByInstrument(int Id) { AppUser AU = new AppUser(); Musician Mus = new Musician(); UserMusician UM = new UserMusician(); MusicianInstrument MI = new MusicianInstrument(); Instrument Inst = new Instrument(); MusicianGenre MG = new MusicianGenre(); Genre GG = new Genre(); List <MusicianGenre> MGs = new List <MusicianGenre>(); List <MusicianInstrument> MIs = new List <MusicianInstrument>(); List <vmMusiciansGenresByInstrument> vmMGIs = new List <vmMusiciansGenresByInstrument>(); if (Id != 0) { Inst = _repo.Query <Instrument>().Where(a => a.InstrumentId == Id).FirstOrDefault(); MIs = _repo.Query <MusicianInstrument>().Where(a => a.InstrumentId == Id).ToList(); foreach (MusicianInstrument mi in MIs) { Mus = _repo.Query <Musician>().Where(b => b.MusicianId == mi.MusicianId).FirstOrDefault(); UM = _repo.Query <UserMusician>().Where(c => c.MusicianId == Mus.MusicianId).FirstOrDefault(); AU = _repo.Query <AppUser>().Where(d => d.AppUserId == UM.AppUserId).FirstOrDefault(); MGs = _repo.Query <MusicianGenre>().Where(e => e.MusicianId == Mus.MusicianId).ToList(); List <vmGenre> vmGGs = new List <vmGenre>(); foreach (MusicianGenre MGTemp in MGs) { GG = _repo.Query <Genre>().Where(f => f.GenreId == MGTemp.GenreId).FirstOrDefault(); vmGenre vmGG = new vmGenre(); vmGG.GenreId = GG.GenreId; vmGG.GenreName = GG.GenreName; vmGGs.Add(vmGG); } ; vmMusiciansGenresByInstrument vmMGI = new vmMusiciansGenresByInstrument { InstrumentId = Id, InstrumentName = Inst.InstrumentName, AppUserId = AU.AppUserId, LastName = AU.LastName, FirstName = AU.FirstName, IsMusician = AU.IsMusician, MusicianId = Mus.MusicianId, StageName = Mus.StageName, vmGenres = vmGGs }; vmMGIs.Add(vmMGI); } } return(vmMGIs); }
public async Task <MusicianGenreResponse> UnassignMusicianGenreAsync(int musicianId, int genreId) { try { MusicianGenre musicianGenre = await _musicianGenreRepository.FindByMusicianIdAndGenreId(musicianId, genreId); _musicianGenreRepository.Remove(musicianGenre); await _unitOfWork.CompleteAsync(); return(new MusicianGenreResponse(musicianGenre)); } catch (Exception ex) { return(new MusicianGenreResponse($"An error ocurred while unassigning Genre to Musician: {ex.Message}")); } }
//==================================================================================== public vmMusicianProfile PostAddMusicianProfile(vmMusicianProfile vmMP) { AppUser AppUserToPost = new AppUser { AppUserId = vmMP.AppUserId, UserName = vmMP.UserName, PassWord = vmMP.PassWord, LastName = vmMP.LastName, FirstName = vmMP.FirstName, City = vmMP.City, State = vmMP.State, PostalCode = vmMP.PostalCode, Email = vmMP.PostalCode, ReceiveAdvertisements = vmMP.ReceiveAdvertisements, IsMusician = vmMP.IsMusician }; if (AppUserToPost.AppUserId == 0) { _repo.Add(AppUserToPost); } else { _repo.Update(AppUserToPost); } //======================================================================= AppUser tempAppUser = _repo.Query <AppUser>().Where(r => r.UserName == AppUserToPost.UserName && r.PassWord == AppUserToPost.PassWord && r.LastName == AppUserToPost.LastName && r.FirstName == AppUserToPost.FirstName && r.City == AppUserToPost.City && r.State == AppUserToPost.State ).FirstOrDefault(); //======================================================================= if (vmMP.AppUserId == 0) { vmMP.AppUserId = tempAppUser.AppUserId; } //======================================================================= Musician MusicianToPost = new Musician { MusicianId = vmMP.MusicianId, StageName = vmMP.StageName, CellPhone = vmMP.CellPhone, Biography = vmMP.Biography, Rate = vmMP.Rate, Rating = vmMP.Rating, IsMusicianForHire = vmMP.IsMusicianForHire }; //======================================================================= if (MusicianToPost.MusicianId == 0) { _repo.Add(MusicianToPost); } else { _repo.Update(MusicianToPost); } //================================================================================== Musician tempMusician = _repo.Query <Musician>().Where(s => s.StageName == MusicianToPost.StageName && s.CellPhone == MusicianToPost.CellPhone && s.Biography == MusicianToPost.Biography && s.Rate == MusicianToPost.Rate && s.Rating == MusicianToPost.Rating && s.IsMusicianForHire == MusicianToPost.IsMusicianForHire).FirstOrDefault(); //================================================================================================================ if (vmMP.MusicianId == 0) { vmMP.MusicianId = tempMusician.MusicianId; } //================================================================================= if (tempAppUser != null && tempMusician != null) { UserMusician umTest = _repo.Query <UserMusician>().Where(t => t.AppUserId == tempAppUser.AppUserId && t.MusicianId == tempMusician.MusicianId).FirstOrDefault(); if (umTest == null) { UserMusician newUm = new UserMusician { AppUser = tempAppUser, AppUserId = tempAppUser.AppUserId, Musician = tempMusician, MusicianId = tempMusician.MusicianId }; _repo.Add(newUm); } //============================================================================== if (vmMP.InstrumentsMusProfile != null) { foreach (vmInstrumentMusProfile i in vmMP.InstrumentsMusProfile) { Instrument newI = _repo.Query <Instrument>().Where(u => u.InstrumentId == i.InstrumentId).FirstOrDefault(); MusicianInstrument testMI = _repo.Query <MusicianInstrument>().Where(v => v.InstrumentId == newI.InstrumentId && v.MusicianId == tempMusician.MusicianId).FirstOrDefault(); if (testMI == null) { MusicianInstrument newMI = new MusicianInstrument { Instrument = newI, InstrumentId = newI.InstrumentId, Musician = tempMusician, MusicianId = tempMusician.MusicianId, IsPrimary = i.PrimaryInstrument }; _repo.Add(newMI); } else { testMI.IsPrimary = i.PrimaryInstrument; _repo.Update(testMI); } } } //============================================================================= if (vmMP.Genres != null) { foreach (vmGenre g in vmMP.Genres) { Genre newG = _repo.Query <Genre>().Where(w => w.GenreId == g.GenreId).FirstOrDefault(); MusicianGenre testMG = _repo.Query <MusicianGenre>().Where(x => x.GenreId == newG.GenreId && x.MusicianId == tempMusician.MusicianId).FirstOrDefault(); if (testMG == null) { MusicianGenre newMG = new MusicianGenre { Genre = newG, GenreId = newG.GenreId, Musician = tempMusician, MusicianId = tempMusician.MusicianId, IsPrimary = g.IsPrimary }; _repo.Add(newMG); } else { testMG.IsPrimary = g.IsPrimary; _repo.Update(testMG); } } } //============================================================================ if (vmMP.Languages != null) { foreach (vmSpokenLanguage s in vmMP.Languages) { SpokenLanguage newS = _repo.Query <SpokenLanguage>().Where(y => y.SpokenLanguageId == s.SpokenLanguageId).FirstOrDefault(); if (newS != null) { MusicianLanguage testML = _repo.Query <MusicianLanguage>().Where(z => z.SpokenLanguageId == newS.SpokenLanguageId && z.MusicianId == tempMusician.MusicianId).FirstOrDefault(); if (testML == null) { MusicianLanguage newML = new MusicianLanguage { SpokenLanguage = newS, SpokenLanguageId = newS.SpokenLanguageId, Musician = tempMusician, MusicianId = tempMusician.MusicianId, }; _repo.Add(newML); } } } } //============================================================================ if (vmMP.Photographs != null) { foreach (vmPhotograph p in vmMP.Photographs) { Photograph newP = _repo.Query <Photograph>().Where(w => w.PhotographId == p.PhotographId).FirstOrDefault(); MusicianPhotograph testMP = _repo.Query <MusicianPhotograph>().Where(z => z.PhotographId == newP.PhotographId && z.MusicianId == tempMusician.MusicianId).FirstOrDefault(); if (testMP == null) { MusicianPhotograph newMP = new MusicianPhotograph { Photograph = newP, PhotographId = newP.PhotographId, Musician = tempMusician, MusicianId = tempMusician.MusicianId }; _repo.Add(newMP); } } } //============================================================================ } ; return(vmMP); }
public void Remove(MusicianGenre musicianGenre) { _context.MusicianGenres.Remove(musicianGenre); }
public async Task AddAsync(MusicianGenre musicianGenre) { await _context.MusicianGenres.AddAsync(musicianGenre); }