@RequestMapping(method = RequestMethod.GET, value = "/artist/{artistName}/albums") public String viewArtistAlbums( @PathVariable("artistName") String artistName, Model map, HttpSession session) { artistName = UtilImpl.rewriteParams(artistName); Integer artistID; Integer pageSize = 4; Integer albumNumberOfArtist; Integer albumPageNumberOfArtist; Artist artist = serviceFactory.getArtistService().getArtistByName(artistName); artistID = artist.getArtistid(); albumNumberOfArtist = serviceFactory.getAlbumService().getAlbumNumberOfArtist(artistID); List<Album> albums = serviceFactory.getAlbumService().getAlbumsByArtist(artist, 0, pageSize.intValue()); if ((albumNumberOfArtist % pageSize) == 0) { albumPageNumberOfArtist = (albumNumberOfArtist / pageSize); } else { albumPageNumberOfArtist = (albumNumberOfArtist / pageSize) + 1; } map.addAttribute("albums", albums); map.addAttribute("artistId", artistID); map.addAttribute("albumPageNumberOfArtist", albumPageNumberOfArtist); return "artist/artist_albums"; }
@RequestMapping( method = RequestMethod.GET, value = "/artistList/albums/{currentPage}/artistNO/{artistID}") public String viewArtistAlbumList( @PathVariable Integer currentPage, @PathVariable Integer artistID, Model map, HttpSession session) { Artist artist = new Artist(artistID); Integer firstIndex; Integer pageSize = 4; firstIndex = ((currentPage * pageSize) - pageSize); List<Album> albums = serviceFactory .getAlbumService() .getAlbumsByArtist(artist, firstIndex.intValue(), pageSize.intValue()); map.addAttribute("albums", albums); return "artist/list/artistAlbumList"; }
@RequestMapping(method = RequestMethod.GET, value = "/artist/{artistName}/general") public String viewArtistGeneral( @PathVariable("artistName") String artistName, Model map, HttpSession session) { artistName = UtilImpl.rewriteParams(artistName); Artist artist = serviceFactory.getArtistService().getArtistByName(artistName); List<UserActivity> activities = serviceFactory.getUserService().getArtistActivity(artist, 0, 10); List<Album> albums = serviceFactory.getAlbumService().getAlbumsByArtist(artist, 0, 4); List<ArtistFans> artistFans = serviceFactory.getArtistService().getArtistFans(artist, 0, 5); // List songs = serviceFactory.getListenHistoryService().getMostListenedSongsByArtist(artist, 0, // 10); List<SongStats> songs = serviceFactory.getSongService().getTopSongsByArtist(artist, 0, 10); List<ArtistSimiliar> similiars = serviceFactory.getArtistService().getSimiliarArtists(artist, 0, 5); serviceFactory.getArtistService().saveArtistBioAndPicture(artist); for (ArtistSimiliar similiar : similiars) { serviceFactory.getArtistService().saveArtistBioAndPicture(similiar.getSimiliarArtistid()); } // List<ArtistSimiliar> similiars = new ArrayList<ArtistSimiliar>(); ArtistStats stats = artist.getArtistStats(); map.addAttribute("artist", artist); map.addAttribute("activities", activities); map.addAttribute("albums", albums); String biography = artist.getBiography(); if (biography != null && artist.getBiography().length() > 800) { biography = biography.substring(0, 800); } String moreInfo = artist.getMoreInfo(); if (moreInfo != null && moreInfo.length() > 400) { moreInfo = moreInfo.substring(0, 400); } map.addAttribute("moreInfo", moreInfo); map.addAttribute("biography", biography); map.addAttribute("artistFans", artistFans); map.addAttribute("songs", songs); map.addAttribute("similiars", similiars); return "artist/artist_general"; }