diff --git a/postSong.json b/postSong.json new file mode 100644 index 0000000000000000000000000000000000000000..674b53a2396b50bdc26b22f14359cf5d6de9f87b --- /dev/null +++ b/postSong.json @@ -0,0 +1,22 @@ +{ + "wrapperType":"collection", + "collectionType":"Album", + "artistId":994656, + "collectionId":580708175, + "amgArtistId":4739, + "artistName":"DLed Zeppelin", + "collectionName":"Led Zeppelin IV (Remastered)", + "collectionCensoredName":"Led Zeppelin IV (Remastered)", + "artistViewUrl":"https://music.apple.com/us/artist/led-zeppelin/994656?uo=4", + "collectionViewUrl":"https://music.apple.com/us/album/led-zeppelin-iv-remastered/580708175?uo=4", + "artworkUrl60":"https://is1-ssl.mzstatic.com/image/thumb/Music115/v4/5c/15/9b/5c159b27-95ca-b9a7-84e3-28e795fffd39/dj.kvkrpptq.jpg/60x60bb.jpg", + "artworkUrl100":"https://is1-ssl.mzstatic.com/image/thumb/Music115/v4/5c/15/9b/5c159b27-95ca-b9a7-84e3-28e795fffd39/dj.kvkrpptq.jpg/100x100bb.jpg", + "collectionPrice":9.99, + "collectionExplicitness":"notExplicit", + "trackCount":8, + "copyright":"℗ 1971 Atlantic Recording Corporation, a Warner Music Group Company. Marketed by Rhino Entertainment Company, a Warner Music Group Company.", + "country":"USA", + "currency":"USD", + "releaseDate":"1971-11-08T08:00:00Z", + "primaryGenreName":"Rock" +} \ No newline at end of file diff --git a/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java b/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java index c36c38f0cc2a85e358997ae73f19684f8893099e..3fd798ab69c09ff353f3af839a8aa7d3d85cd355 100644 --- a/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java +++ b/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java @@ -1,16 +1,15 @@ package com.ajou.prcoding.myweb.Controller; import com.ajou.prcoding.myweb.Entity.FavoriteMusic; +import com.ajou.prcoding.myweb.dto.FavoriteMusicRequestDto; import com.ajou.prcoding.myweb.dto.MusicList; import com.ajou.prcoding.myweb.repository.FavoriteRepository; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import org.springframework.web.client.RestTemplate; +import javax.transaction.Transactional; import java.io.IOException; import java.util.List; @@ -59,6 +58,18 @@ public class MyWebController { System.out.println(e.toString()); return null; } + } + @PostMapping(value="/likes") + @Transactional + public int postLikes(@RequestBody FavoriteMusicRequestDto favorite) + { + FavoriteMusic music = albumsRepo.save(favorite.toEntity()); + if(music != null){ + return 1; + } + else{ + return 0; + } } } diff --git a/src/main/java/com/ajou/prcoding/myweb/dto/FavoriteMusicRequestDto.java b/src/main/java/com/ajou/prcoding/myweb/dto/FavoriteMusicRequestDto.java new file mode 100644 index 0000000000000000000000000000000000000000..37e7a2ad2b1a97eb24fe8535090921bd0be46dd7 --- /dev/null +++ b/src/main/java/com/ajou/prcoding/myweb/dto/FavoriteMusicRequestDto.java @@ -0,0 +1,33 @@ +package com.ajou.prcoding.myweb.dto; + +import com.ajou.prcoding.myweb.Entity.FavoriteMusic; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; + +@Getter +@Setter +@ToString + +public class FavoriteMusicRequestDto { + private String collectionId; + private String artistId; + private String artistName; + private String artistViewUrl; + private String collectionName; + private String collectionViewUrl; + + public FavoriteMusic toEntity(){ + FavoriteMusic music = new FavoriteMusic(); + + music.setCollectionId(this.collectionId); + music.setArtistId(this.artistId); + music.setArtistName(this.artistName); + music.setArtistViewUrl(this.artistViewUrl); + music.setCollectionName(this.collectionName); + music.setCollectionViewUrl(this.collectionViewUrl); + + + return music; + } +}