prgrms-be-devcourse / be-02-marbox Goto Github PK
View Code? Open in Web Editor NEW백엔드 마르코팀 CGV 클론
백엔드 마르코팀 CGV 클론
MovieConverter를 컨벤션에 맞춰서 수정한다
관리자의 영화관 이름 수정 기능 추가
영화관의 두 가지 필드 중 변경될 수 있을 만한 부분은 지점명이라고 생각하여 지점명만 변경할 수 있도록 제공.
예를 들어 CGV 용산아이파크몰점이 있다고 했을 때 언젠가 아이파크몰에서 현대아울렛으로 변경된다면 CGV 현대아울렛점으로 변경.
region의 경우 행정구역 변경이 일어나야 하는데 해당 변경 사항은 자주 일어나는 일이 아님.
@AfterEach
를 이용해 repository를 비워주는 작업을 제거했습니다.영화관(CGV 구로점, CGV 미아점) 추가
관리자는 영화관을 추가할 수 있다.
Restdocs 생성하기
각 API Restdocs 생성
build.gradle
에서 사용하는 checkstyle이 구버전이라 java 최신 문법을 분석하지 못함.영화관 전체 조회 기능 추가하기
관리자는 영화관 전체를 조회할 수 있다. - 페이징 X
지역별 영화관 조회
관리자와 고객은 모두 지역별로 영화관을 조회할 수 있어야 한다.
TheaterService 예외 케이스 코드 추가
TheaterController 작성하기
영화관 추가
영화관 전체 조회
영화관 지역별 조회
컨트롤러 작성
@RequestParam
)의 종류에 따라서 메소드를 여러 개 만드려고 했음getSchedulesByRequestParm
에서 3가지 종류의 쿼리 스트링을 다 받고 종류에 따라 서비스 메서드 호출ResponseFindMovieListAndDateList
반환ResponseFindMovieList
반환ResponseTimeList
반환ResponseFindSchedule
객체만 리턴해주기로 변경GET /schedules?theaterId=1 HTTP/1.1
Host: localhost:8080
HTTP/1.1 200 OK Content-Type: application/json X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block Cache-Control: no-cache, no-store, max-age=0, must-revalidate Pragma: no-cache Expires: 0 X-Frame-Options: DENY Content-Length: 420
{"movieList":[{"name":"영화1","limitAge":"CHILD","genre":"ACTION","runningTime":100,"posterImgLocation":"test/location"},{"name":"영화2","limitAge":"ADULT","genre":"ROMANCE","runningTime":120,"posterImgLocation":"test/location"},{"name":"영화3","limitAge":"CHILD","genre":"ANIMATION","runningTime":150,"posterImgLocation":"test/location"}],"theaterList":null,"dateList":["2022-06-30","2022-07-01"],"timeList":null}
Path | Type | Description |
---|---|---|
movieList[] | Array | 영화 리스트 |
movieList[].name | String | 영화 이름 |
movieList[].limitAge | String | 영화 관람 등급 |
movieList[].genre | String | 장르 |
movieList[].runningTime | Number | 상영시간 |
movieList[].posterImgLocation | String | 포스터 이미지 경로 |
dateList[] | Array | 상영 날짜 리스트 |
theaterList | Null | 영화관 리스트 |
timeList | Null | 상영 시간 리스트 |
�관리자의 영화관 삭제 기능 추가
영화관이 폐점되었을 경우 필요한 기능
테스트
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.