package Ġcom . r util ic us . ui set list . controller Ċ Ċ import Ġcom . r util ic us . ui set list . model . Song Ċ import Ġcom . r util ic us . ui set list . service . Movie Service Ċ import Ġcom . r util ic us . ui set list . service . Song Service Ċ import Ġorg . springframework . http . MediaType Ċ import Ġorg . springframework . stereotype . Controller Ċ import Ġorg . springframework . web . bind . annotation . GetMapping Ċ import Ġorg . springframework . web . bind . annotation . RequestMapping Ċ import Ġorg . springframework . web . bind . annotation . ResponseBody Ċ import Ġjava . sql . Date Ċ Ċ @ Controller Ċ @ RequestMapping (" api ") Ċ class ĠApi Controller ( val Ġmovie Service : ĠMovie Service , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsong Service : ĠSong Service ) Ġ{ ĊĠĠĠ Ġdata Ġclass ĠMovie ( val Ġmovie Id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdate : ĠDate ) ĊĠĠĠ Ġdata Ġclass ĠSong ( val Ġtime : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠendTime : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsong Name : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġartist : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmovie : ĠMovie ) ĊĊĠĠĠ Ġ@ GetMapping ("/ movie ", Ġproduces Ġ= Ġ[ MediaType . APPLICATION _ JSON _ VALUE ]) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġget Movie (): ĠList < Movie > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmovie Service . findAll (). map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMovie ( it . movie Id , Ġit . name , Ġit . date ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ GetMapping ("/ song ", Ġproduces Ġ= Ġ[ MediaType . APPLICATION _ JSON _ VALUE ]) ĊĠĠĠ Ġ@ ResponseBody ĊĠĠĠ Ġfun Ġget Song (): ĠList < Song > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsong Service . findAll (). map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSong ( it . time , Ġit . endTime , Ġit . song Name , Ġit . writer , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMovie ( it . movie . movie Id , Ġit . movie . name , Ġit . movie . date ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ