Exemplo n.º 1
0
        public IActionResult Index(int artistId, int musicianId)
        {
            var artistInfoModel   = _artist.Get(artistId);
            var musicianListModel = _artistMusician.GetAllByArtist(artistId);
            var musicianModel     = _musician.Get(musicianId);

            var instrumentModel = _instrument.GetAll();
            var instruments     = instrumentModel.Select
                                      (g => new InstrumentListingModel
            {
                Id       = g.Id,
                Name     = g.Name,
                IsMarked = _musicianInstrument.IsMarked(musicianId, g.Id)
            }
                                      ).ToList();

            var artistInfo = new ArtistListingModel
            {
                Id           = artistId,
                ArtistName   = artistInfoModel.ArtistName,
                Bio          = artistInfoModel.Bio,
                YrFormed     = artistInfoModel.YrFormed,
                YrEnded      = artistInfoModel.YrEnded,
                isActive     = artistInfoModel.isActive,
                HomeCountry  = artistInfoModel.HomeCountry,
                HomeTown     = artistInfoModel.HomeTown,
                PrimaryImage = _image.GetPrimaryImageByEntity(2, artistInfoModel.Id, 2)
            };

            //existing musicians
            var musicians = musicianListModel.Select
                                (r => new MusicianListingModel
            {
                Id           = r.Musician.Id,
                Bio          = r.Musician.Bio,
                Birth        = r.Musician.Birth,
                Death        = r.Musician.Death,
                FirstName    = r.Musician.FirstName,
                LastName     = r.Musician.LastName,
                MusicianName = r.Musician.MusicianName,
                HomeCountry  = r.Musician.HomeCountry,
                HomeTown     = r.Musician.HomeTown,
                isActive     = r.Musician.isActive,
                PrimaryImage = _image.GetPrimaryImageByEntity(5, r.Musician.Id, 1)
            }
                                ).ToList();

            //new musician
            var musician = new MusicianListingModel
            {
                Id           = musicianId,
                MusicianName = musicianModel.MusicianName,
                LastName     = musicianModel.LastName,
                FirstName    = musicianModel.FirstName,
                Bio          = musicianModel.Bio,
                Birth        = musicianModel.Birth,
                Death        = musicianModel.Death,
                isActive     = musicianModel.isActive,
                HomeTown     = musicianModel.HomeTown,
                HomeCountry  = musicianModel.HomeCountry
            };

            var model = new MusicianPostIndexModel
            {
                Artist      = artistInfo,
                Musicians   = musicians,
                Musician    = musician,
                Instruments = instruments
            };

            return(View(model));
        }