Compare commits

...

3 Commits

Author SHA1 Message Date
손창현
76e77fe35a refactor: MovieTimeServiceImplTest - removed MovieTimeListDto 2022-07-18 17:13:12 +09:00
손창현
5afce2c730 refactor: removed MovieTimeListDTO 2022-07-18 16:56:02 +09:00
손창현
75661c1dcd refactor: removed MovieListDTO: 2022-07-18 16:54:20 +09:00
10 changed files with 29 additions and 68 deletions

View File

@@ -8,11 +8,12 @@ import com.ticketing.server.movie.application.response.MovieDeleteResponse;
import com.ticketing.server.movie.application.response.MovieListResponse;
import com.ticketing.server.movie.application.response.MovieInfoResponse;
import com.ticketing.server.movie.service.dto.DeletedMovieDTO;
import com.ticketing.server.movie.service.dto.MovieListDTO;
import com.ticketing.server.movie.service.dto.MovieDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieDTO;
import com.ticketing.server.movie.service.interfaces.MovieService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import javax.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -51,11 +52,11 @@ public class MovieController {
@GetMapping()
@ApiOperation(value = "영화 목록 조회")
public ResponseEntity<MovieListResponse> getMovies() {
MovieListDTO movieListDto = movieService.getMovies();
List<MovieDTO> movieDtos = movieService.getMovies();
return ResponseEntity.status(HttpStatus.OK)
.body(
movieListDto.toResponse()
new MovieListResponse(movieDtos)
);
}

View File

@@ -5,13 +5,14 @@ import static com.ticketing.server.user.domain.UserGrade.ROLES.STAFF;
import com.ticketing.server.movie.application.request.MovieTimeRegisterRequest;
import com.ticketing.server.movie.application.response.MovieTimeInfoResponse;
import com.ticketing.server.movie.application.response.MovieTimeListResponse;
import com.ticketing.server.movie.service.dto.MovieTimeListDTO;
import com.ticketing.server.movie.service.dto.MovieTimeDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieTimeDTO;
import com.ticketing.server.movie.service.interfaces.MovieTimeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import java.time.LocalDate;
import java.util.List;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
@@ -58,11 +59,11 @@ public class MovieTimeController {
public ResponseEntity<MovieTimeListResponse> getMovieTimes(
@ApiParam(value = "영화 ID", required = true) @RequestParam @NotNull Long movieId,
@ApiParam(value = "상영 날짜", required = true) @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate runningDate) {
MovieTimeListDTO movieTimeListDto = movieTimeService.getMovieTimes(movieId, runningDate);
List<MovieTimeDTO> movieTimeDtos = movieTimeService.getMovieTimes(movieId, runningDate);
return ResponseEntity.status(HttpStatus.OK)
.body(
movieTimeListDto.toResponse()
new MovieTimeListResponse(movieTimeDtos)
);
}

View File

@@ -5,7 +5,6 @@ import com.ticketing.server.movie.domain.Movie;
import com.ticketing.server.movie.domain.repository.MovieRepository;
import com.ticketing.server.movie.service.dto.DeletedMovieDTO;
import com.ticketing.server.movie.service.dto.MovieDTO;
import com.ticketing.server.movie.service.dto.MovieListDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieDTO;
import com.ticketing.server.movie.service.interfaces.MovieService;
import java.util.List;
@@ -39,14 +38,12 @@ public class MovieServiceImpl implements MovieService {
}
@Override
public MovieListDTO getMovies() {
public List<MovieDTO> getMovies() {
List<Movie> movies = movieRepository.findValidMovies();
List<MovieDTO> movieDtos = movies.stream()
return movies.stream()
.map(movie -> movie.toMovieDTO())
.collect(Collectors.toList());
return new MovieListDTO(movieDtos);
}
@Override

View File

@@ -8,9 +8,7 @@ import com.ticketing.server.movie.domain.repository.MovieRepository;
import com.ticketing.server.movie.domain.repository.MovieTimeRepository;
import com.ticketing.server.movie.domain.repository.TheaterRepository;
import com.ticketing.server.movie.service.dto.MovieTimeDTO;
import com.ticketing.server.movie.service.dto.MovieTimeListDTO;
import com.ticketing.server.movie.service.dto.MovieTimeRegisterDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieTimeDTO;
import com.ticketing.server.movie.service.interfaces.MovieTimeService;
import java.time.LocalDate;
@@ -56,7 +54,7 @@ public class MovieTimeServiceImpl implements MovieTimeService {
}
@Override
public MovieTimeListDTO getMovieTimes(Long movieId, LocalDate runningDate) {
public List<MovieTimeDTO> getMovieTimes(Long movieId, LocalDate runningDate) {
Movie movie = findMovieById(movieId);
LocalDateTime startOfDay = runningDate.atStartOfDay().plusHours(6);
@@ -64,11 +62,9 @@ public class MovieTimeServiceImpl implements MovieTimeService {
List<MovieTime> movieTimes = movieTimeRepository.findValidMovieTimes(movie, startOfDay, endOfDay);
List<MovieTimeDTO> movieTimeDtos = movieTimes.stream()
return movieTimes.stream()
.map(movieTime -> movieTime.toMovieTimeDTO())
.collect(Collectors.toList());
return new MovieTimeListDTO(movieTimeDtos);
}
@Override

View File

@@ -1,18 +0,0 @@
package com.ticketing.server.movie.service.dto;
import com.ticketing.server.movie.application.response.MovieListResponse;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public class MovieListDTO {
private final List<MovieDTO> movieDtos;
public MovieListResponse toResponse() {
return new MovieListResponse(movieDtos);
}
}

View File

@@ -1,18 +0,0 @@
package com.ticketing.server.movie.service.dto;
import com.ticketing.server.movie.application.response.MovieTimeListResponse;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public class MovieTimeListDTO {
private final List<MovieTimeDTO> movieTimeDtos;
public MovieTimeListResponse toResponse() {
return new MovieTimeListResponse(movieTimeDtos);
}
}

View File

@@ -1,14 +1,15 @@
package com.ticketing.server.movie.service.interfaces;
import com.ticketing.server.movie.service.dto.DeletedMovieDTO;
import com.ticketing.server.movie.service.dto.MovieListDTO;
import com.ticketing.server.movie.service.dto.MovieDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieDTO;
import java.util.List;
public interface MovieService {
RegisteredMovieDTO registerMovie(String title, Long runningTime);
MovieListDTO getMovies();
List<MovieDTO> getMovies();
DeletedMovieDTO deleteMovie(Long id);
}

View File

@@ -2,17 +2,18 @@ package com.ticketing.server.movie.service.interfaces;
import com.ticketing.server.movie.domain.Movie;
import com.ticketing.server.movie.domain.Theater;
import com.ticketing.server.movie.service.dto.MovieTimeListDTO;
import com.ticketing.server.movie.service.dto.MovieTimeDTO;
import com.ticketing.server.movie.service.dto.MovieTimeRegisterDTO;
import com.ticketing.server.movie.service.dto.RegisteredMovieTimeDTO;
import java.time.LocalDate;
import java.util.List;
import javax.validation.Valid;
public interface MovieTimeService {
RegisteredMovieTimeDTO registerMovieTime(@Valid MovieTimeRegisterDTO movieTimeRegisterDto);
MovieTimeListDTO getMovieTimes(Long movieId, LocalDate runningDate);
List<MovieTimeDTO> getMovieTimes(Long movieId, LocalDate runningDate);
Movie findMovieById(Long movieId);

View File

@@ -39,10 +39,10 @@ public class MovieServiceImplTest {
.thenReturn(Collections.emptyList());
// when
MovieListDTO movieListDto = movieService.getMovies();
List<MovieDTO> movieDtos = movieService.getMovies();
// then
assertTrue(movieListDto.getMovieDtos().isEmpty());
assertTrue(movieDtos.isEmpty());
}
@Test
@@ -55,11 +55,11 @@ public class MovieServiceImplTest {
when(movieRepository.findValidMovies())
.thenReturn(movies);
// when
MovieListDTO movieListDto = movieService.getMovies();
// when
List<MovieDTO> movieDtos = movieService.getMovies();
// then
assertTrue(!movieListDto.getMovieDtos().isEmpty());
// then
assertTrue(movieDtos.isEmpty());
}
}

View File

@@ -9,7 +9,7 @@ import com.ticketing.server.movie.domain.MovieTime;
import com.ticketing.server.movie.domain.Theater;
import com.ticketing.server.movie.domain.repository.MovieRepository;
import com.ticketing.server.movie.domain.repository.MovieTimeRepository;
import com.ticketing.server.movie.service.dto.MovieTimeListDTO;
import com.ticketing.server.movie.service.dto.MovieTimeDTO;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
@@ -51,10 +51,10 @@ public class MovieTimeServiceImplTest {
.thenReturn(Collections.emptyList());
// when
MovieTimeListDTO movieTimeListDto = movieTimeService.getMovieTimes(any(), LocalDate.now());
List<MovieTimeDTO> movieTimeDtos = movieTimeService.getMovieTimes(any(), LocalDate.now());
// then
assertTrue(movieTimeListDto.getMovieTimeDtos().isEmpty());
assertTrue(movieTimeDtos.isEmpty());
}
@Test
@@ -76,10 +76,10 @@ public class MovieTimeServiceImplTest {
.thenReturn(movieTimes);
// when
MovieTimeListDTO movieTimeListDto = movieTimeService.getMovieTimes(any(), LocalDate.of(2022, 07, 01));
List<MovieTimeDTO> movieTimeDtos = movieTimeService.getMovieTimes(any(), LocalDate.of(2022, 07, 01));
// then
assertTrue(!movieTimeListDto.getMovieTimeDtos().isEmpty());
assertTrue(!movieTimeDtos.isEmpty());
}
}