곽진준이성현정선채유경 movie2017.cafe24.com Date : 2017. 7
01/ CGV Project: PlANNING 02/ CGV Project: FRONTEND 03/ CGV Project: DATA-BASE 04/ CGV Project: BACKEND 05/ CGV Project: TEST
CGV 를제작하는데, 걸리는기간 = 3 달 4 인팀으로제작하는데, 걸리는시간 = 270 시간 (1 人 ) 혼자제작하는데, 걸리는시간 = 1,080 시간 ( 하루평균 3 시간 ) No.1 Planning No.2 Front-end No.3 Data-base No.4 Back-end
CGV Project #meeting concept contents 6 weeks Planning #design/web_publishing HTML+CSS jquery Javascript Ajax 9 weeks Front-end #DB MySQL Query model table column 4 weeks Data-base #coding JSP Debugging hosting 4 weeks Back-end 4 5 6 7 8 month
movie2017.cafe24.com CGV Project_Planning Creativity 창의력 Analysis 분석 Purpose 영화예매사이트 CGV, 메가박스 Communication 의사소통 Point 역량분석을통한필수업무분배 예매, CRUD 등주요기능에대한이해력 일정관리
CGV Project_Planning Possibility 회원가입 / 수정 / 탈퇴정보등록 / 삭제로그인 / 아웃 영화리스트출력상세정보등록 / 수정 / 삭제 극장리스트출력상세정보등록 / 수정 / 삭제위치안내 / 지도 Impossibility 배너 SNB 영역 이벤트멤버십 / 제휴 / 할인진행 / 종료 스토어영화관람권 / 상품권스낵바 / 팝콘 고객센터 예매영화리스트출력좌석리스트출력
No.2 Movie CGV Project_Planning No.3 Theater
CGV Project_Planning 기획단계에서중점사항 Member 회원가입수정탈퇴 / 로그인 Movie 영화등록수정삭제 / 예매율평점 Theater 극장등록수정삭제 / 지도 Ticket 예매 step by step ( 영화극장날짜시간 )
CGV Project_Planning User 메인 1depth 영화 예매 극장 로그인 회원가입 MYCGV 2depth 영화리스트 예매페이지 극장리스트 로그인 가입페이지 회원정보 아이디찾기 비밀번호찾기 3depth 영화상세 좌석페이지 회원정보수정 4depth 결제 회원탈퇴
CGV Project_Planning 로그인 1depth 회원관리 영화관리 극장관리 2depth 회원리스트 영화리스트 극장리스트 3depth 상세정보영화추가상세정보극장추가상세정보
CGV Project_Planning Member Description 1 이름입력 2 아이디입력아이디는영문 ( 대소문자구분없음 ) 숫자로만구성되고 5~12 자까지허용. 1 2 이름이름을입력하세요아이디아이디를입력하세요 3 중복확인 사용가능한아이디입니다. 확인 3 중복되는아이디가있는지확인중복되는아이디가없는경우팝업 1. 중복되는아이디가있는경우팝업 2. 4 비밀번호입력비밀번호는영문 ( 대소문자구분없음 ) 숫자로만구성되고 5~12 자까지허용. 4 비밀번호비밀번호를 5~12 글자내로입력해주세요. ( 영문과숫자만가능 ) 5 4 번칸에입력한비밀번호값과일치하는지확인 5 6 7 비밀번호확인 비밀번호를확인합니다. 일치 / 불일치 휴대전화 휴대전화번호를입력해주세요 이메일 이메일주소를입력해주세요 사용불가능한아이디입니다. 다시입력해주세요. 확인 6 핸드폰번호입력 0**-****-**** 양식에맞는값만허용 7 이메일입력 8 카드종류먼저선택후카드번호입력 ****-****-****-**** 양식에맞는값만허용 8 카드정보선택 9 BC 카드국민카드삼성카드신한카드현대카드 카드번호를입력하세요. 회원가입 9 회원가입완료시알림팝업 1. 입력정보오류시알림팝업 2. 이미등록된회원인경우알림팝업 3. 가입완료되었습니다. 메인페이지로이동합니다. 회원가입실패. 입력정보를다시확인해주세요. 이미회원으로등록되어있습니다. 회원아이디 Hong123 로로그인하시거나아이디찾기를진행해주세요. 확인 확인 확인
CGV Project_Planning Member Description 1 회원정보수정페이지로이동 2 예매한내역의정보를보여줌 김회원 1 회원정보수정 3 예매변경버튼 > 팝업에서 네 선택시 > 예매페이지의 Step 1 으로이동 > 아니오선택시알림창닫음 4 취소여부를묻는알림창이뜸 5 예매한좌석을취소하고돈을환불한후마이페이지로이동 2 MY예매내역 총 2건 영화제목 : 프리즌예매번호 : 00000000 상영관 : 강남점 2관인원 : 2명날짜 : 2017.04.28 18:00시 3 4 예매변경예매취소 6 예매취소후알림창닫음 영화제목 : 샘플영화 1 예매번호 : 00000000 상영관 : 강남점 2 관인원 : 2 명날짜 : 2017.04.28 18:00 시 예매변경예매취소 예매페이지로이동합니다 정말취소하시겠습니까? 네 아니요 네 아니요
CGV Project_Planning Member Description 1 아이디입력 2 비밀번호입력 5 3 아이디와비밀번호가일치할경우 > 로그인상태로메인화면이동 아이디를입력해주세요. 4 회원가입클릭시페이지이동아이디찾기와비밀번호찾기는팝업 1 2 아이디를입력하세요 비밀번호를입력하세요 6 확인 5 아이디와비밀번호가일치하지않을경우알림창생성 아이디입력하지않고클릭시팝업 1. 비밀번호입력하지않고클릭시팝업 2 아이디나비밀번호둘중하나라도일치하지않는경우팝업 3 3 4 아이디찾기 / 비밀번호찾기 비밀번호를입력해주세요. 확인 6 팝업창닫기 아이디또는비밀번호가일치하지않습니다. 확인
CGV Project_Planning Movie Description 1 무비차트예매율이가장높은영화 3 개 무비차트 1 해당영화사진이나제목을클릭하면상세페이지로이동 2 예매버튼클릭시 ( 해당영화가선택된상태의 ) 예매페이지로이동 3 현재상영중인영화리스트 ( 최신순 ) 를보여주고사진을클릭하면상세페이지로이동 4 더많은영화리스트를밑에출력 ( 출력시아래로스크롤 ) 2 상영중작품 3 4
CGV Project_Planning Movie Description 1 클릭하면예매페이지로이동 영화상세 1
CGV Project_Planning Movie 1 2 이전계속 Description 1 더많은동영상이출력됨 2 동영상이리스트영역 3 개까지노출동영상영역또는제목클릭시재생창팝업 > 영상자동재생 3 0.5~5 개사이로별점기능별점은자동합산되어평균치로공개 4 댓글과함께평점등록. 댓글은 140 자까지작성가능 3 4 x
CGV Project_Planning Theater Description 1 2 1 지역선택 ( 마우스오버시지점리스트나타남 ) > 지점선택 ( 지점클릭해서선택 ) > 선택에따라아래사진 & 위치지도변경 2 극장이름및사진 3 극장위치지도 3 CGV 강남
CGV Project_Planning Ticket 1 2 4 Description 1 Step 1) 예매하고자하는영화선택 2 Step 2) 이전단계를거쳐야만활성화지역선택 1 차 시, 군, 구 2 차 동 3 Step 3) 이전단계를거쳐야만활성화예매날짜선택예매시점부터 3 주까지조회 / 예매가능 3 4 Step 4) 이전단계를거쳐야만활성화관람시간선택시죄석선택버튼활성화
CGV Project_Planning Ticket Description 1 예매할인원수선택 2 좌석선택내용초기화 2 3 상영시간변경하기이전단계페이지 Step 4 로이동 1 3 5 4 극장좌석이미지인원이 0 이상으로선택될때클릭하여좌석지정. 선택한인원수만큼반복 이미예매완료된좌석은선택불가. 4 5 좌석이미지확대확대후엔 작게보기 로변경
movie2017.cafe24.com CGV Project_Frontend Perfection 완벽함 Delicacy 섬세함 Purpose HTML/CSS 역량강화 역량별업무분장 Space sense 공간감각 Point 일정관리 Javascript, jquery 언어등의활용 Sublime 프로그램의활용
CGV Project_Frontend 프론트엔드에서중점사항 Member 회원가입수정탈퇴 / 로그인 Movie 영화등록수정삭제 / 예매율평점 Theater 극장등록수정삭제 / 지도 Ticket 예매 step by step ( 영화극장날짜시간 )
CGV Project_Frontend Member 중간생략 중간생략 중간생략
CGV Project_Frontend Member 중간생략 CSS 적용 중간생략 생략
CGV Project_Frontend Movie 중간생략 중간생략 handlebar 적용 중간생략
CGV Project_Frontend Movie 중간생략 중간생략 중간생략 동영상변경 jquery 중간생략
CGV Project_Frontend Theater 중간생략 중간생략 중간생략 도시변경 jquery
CGV Project_Frontend Ticket 클릭전 중간생략 중간생략 클릭후 중간생략 생략
CGV Project_Frontend Ticket 클릭전 중간생략 중간생략 클릭후 중간생략 생략
movie2017.cafe24.com CGV Project_Database Efficiency 효율성 Design 설계능력 Purpose Table 별외래키활용 짜임새있는 DB 구축 Trouble shooting 문제해결 Point MySQL 프로그램의활용
CGV Project_Database Database 단계에서중점사항 Member 회원가입수정탈퇴 / 로그인 Movie 영화등록수정삭제 / 예매율평점 Theater 극장등록수정삭제 / 지도 Ticket 예매 step by step ( 영화극장날짜시간 )
CGV Project_Database Member
CGV Project_Database Member Member의 column은총 10개 user_id, user_pw, name, email, tel, card_type, card_number, reg_date, edit_date movie_comment( 댓글 ) 와 ticket( 예매 ) 1:n 관계를가짐
CGV Project_Database Movie movie 의 column 은총 8 개 id, title, genre, director, actor, date, movie_info, term movie_comment( 댓글 ), movie_link( 영상링크 ), movie_time( 영화시간 ), movie_file( 영화파일 ) 과 1:n 관계를가짐
CGV Project_Database Theater theater 의 column 은총 7 개 id, name, area, addr1, addr2, tel, total_seat movie_time( 영화시간 ) 과 theater_file( 극장파일 ) 1:n 관계를가짐
CGV Project_Database Ticket ticket 의 column 은총 3 개 id, Member_id, seat_id member( 회원 ), seat( 좌석 ) 과 1:n 관계를가짐
CGV Project_Database Table(1) Table Name member Table Comment 회원 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 회원번호 INT(11) PK N AI 2 user_id 아이디 VARCHAR(50) N 3 user_pw 비밀번호 VARCHAR(255) N 4 name 이름 VARCHAR(10) N 5 email 이메일 VARCHAR(150) N 6 tel 전화번호 VARCHAR(13) N 7 card_type 카드종류 VARCHAR(200) N 8 card_number 카드번호 VARCHAR(20) N 9 reg_date 등록일자 DATETIME N 10 edit_date 수정일자 DATETIME N
CGV Project_Database Table(2) Table Name movie Table Comment 영화 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 영화번호 INT(11) PK N AI 2 title 영화제목 VARCHAR(50) N 3 genre 영화장르 VARCHAR(50) N 4 director 영화감독 VARCHAR(100) N 5 actor 배우 VARCHAR2(250) N 6 date 개봉일 DATE N 7 movie_info 영화내용 VARCHAR(500) N 8 term 상영기간 DATE N
CGV Project_Database Table(3) Table Name movie_comment Table Comment 영화댓글 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 댓글번호 INT(11) PK N AI 2 writer_name 작성자이름 VARCHAR(50) Y 3 writer_pw 작성자비밀번호 VARCHAR(255) Y 4 content 내용 TEXT Y 5 score 평점 INT(11) Y 6 reg_date 등록일자 DATETIME N 7 edit_date 수정일자 DATETIME N 8 ip_address 아이피주소 VARCHAR(15) Y 9 Movie_id 영화번호 INT(11) FK N 10 Member_id 회원번호 INT(11) FK Y Table Name movie_link Table Comment 영화링크 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 링크번호 INT(11) PK N AI 2 link 링크 VARCHAR(255) N 3 Movie_id 영화번호 INT(11) FK N
CGV Project_Database Table(4) Table Name movie_file Table Comment 영화파일 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 파일번호 INT(11) PK N AI 2 orgin_name 원본이름 VARCHAR(255) N 3 file_dir 파일경로 VARCHAR(255) N 4 file_name 파일이름 VARCHAR(255) N 5 content_type 파일타입 VARCHAR(255) N 6 file_size 파일크기 INT(11) N 7 reg_date 등록일자 DATETIME N 8 edit_date 수정일자 DATETIME N 9 Movie_id 영화번호 INT(11) FK N Table Name movie_time Table Comment 영화시간 No Column Name Column Comment Data Type PK/FK Null Notes 1 Id 영화시간번호 INT(11) PK N AI 2 time 영화시간 VARCHAR(255) N 3 date 영화날짜 DATE N 4 Movie_id 영화번호 INT(11) FK N 5 Theater_id 극장번호 INT(11) FK N
CGV Project_Database Table(5) Table Name theater Table Comment 극장 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 극장번호 INT(11) PK N AI 2 name 극장이름 VARCHAR(50) N 3 area 극장위치 VARCHAR(45) N 4 addr1 극장주소1 VARCHAR(50) N 5 addr2 극장주소2 VARCHAR(50) N 6 tel 극장연락처 VARCHAR(50) N 7 total_seat 총좌석 INT(11) N
CGV Project_Database Table(6) Table Name theater_file Table Comment 극장파일 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 파일번호 INT(11) PK N AI 2 orgin_name 원본이름 VARCHAR(255) N 3 file_dir 파일경로 VARCHAR(255) N 4 file_name 파일이름 VARCHAR(255) N 5 content_type 파일타입 VARCHAR(255) N 6 file_size 파일크기 INT(11) N 7 reg_date 등록일자 DATETIME N 8 edit_date 수정일자 DATETIME N 9 Theater_id 영화번호 INT(11) FK N
CGV Project_Database Table(7) Table Name ticket Table Comment 예매 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 예매번호 INT(11) PK N AI 2 Member_id 회원번호 INT(11) FK N 3 seat_id 좌석번호 INT(11) FK N Table Name seat Table Comment 좌석 No Column Name Column Comment Data Type PK/FK Null Notes 1 id 좌석번호 INT(11) PK N AI 2 name 좌석이름 VARCHAR(50) N 3 Movie_time_id 영화시간번호 INT(11) FK N
movie2017.cafe24.com CGV Project_Backend Management 관리능력 Understanding 이해력 Purpose 초기기획단계의목표달성 Frontend 과정과의호환 Implementation 구현능력 Point JSP 언어활용 MySQL Workbench, Apache Tomcat
CGV Project_Backend 백엔드에서중점사항 Member 회원가입수정탈퇴 / 로그인 Movie 영화등록수정삭제 / 예매율평점 Theater 극장등록수정삭제 / 지도 Ticket 예매 step by step ( 영화극장날짜시간 )
CGV Project_backend Member 생략 생략 생략 생략 생략 생략
CGV Project_backend Member 댓글을수정, 삭제하기위해자신의댓글인지아닌지검사를한후, 자신의댓글이아니면비밀번호를입력하게하고자신의댓글이면바로수정, 삭제가가능하게한다. 생략
CGV Project_backend Movie 무비리스트상단에평점이높은상위 3 개의영화를보여주기위해등록된별점을계산해서평균값이가장높은영화 3 개를검색한다. 생략 영화가 3 개이상일때더보기 (+) 버튼이활성화된다. 더보기 (+) 버튼클릭시등록된나머지영화들이보여진다. 생략
CGV Project_backend Movie 예매율을계산하기위해서는해당영화의극장날짜와극장아이디에대한정보가필요하다. 이를통해전체좌석수와예매된좌석수를구하고, (( 예매된좌석수 / 전체좌석수 )*100) 으로예매율을구한다. 생략 생략
CGV Project_backend Theater 지역선택시해당지역의 CGV 상영관정보를불러온다. 생략 생략 생략
CGV Project_backend Theater 상영관클릭시해당상영관의이미지와정보를불러온다. 불러온상영관의주소값을구글맵에서좌표로변환해 Ajax 로해당지도를출력한다. 생략
CGV Project_backend Ticket
CGV Project_backend Ticket 생략 예매시작시작동하는코드. movieservice 에서 selectmovielist2 를통해영화전부를가져온다. 영화를선택한값이있다면실행된다. 선택한영화의아이디를 movietime 에파라미터로보내서해당하는영화를상영하는극장만가져온다. moviefile 에도영화의아이디를보내포스터를출력한다. 생략 movielist 의크기가 0 보다클경우 movielist 전체를반복하면서하나씩출력한다. 생략 생략 a 태그에서자기자신에선택한영화의 ID 를파라미터로전송하여선택한내용이있고, 같다면 selected 가적용된 li class 를적용한다. 아닌경우 selected 가없는클래스를적용한다.
CGV Project_backend Ticket
CGV Project_backend Ticket movieid 가 0 보다크면 disabled 가없는클래스로적용, 아니면 disabled 가있는클래스로적용하여순차적진행을한다. 극장넣기는먼저선택한지역의이름이같고, 극장아이디가 0 이아닌경우 selected 가적용된클래스가작동된다. 생략 생략
CGV Project_backend Ticket 상영시간은고정값이며, 지금까지선택한값들과시간을 a 태그로보내출력한다. 선택된내용들의남은좌석수를출력해준다. 달력에서현재일기준으로등록된상영기간만큼출력하기위해남은일수를가져온다. 생략 생략 생략
CGV Project_backend Ticket DB 에서예매된좌석을가져와서해당값이랑같으면 disabled 클래스를적용하고, 아닌경우에는선택할수있게한다. 생략 생략
CGV Project_backend Ticket
CGV Project_backend Ticket 인원수만큼좌석을선택하면영화, 극장, 날짜, 시간까지선택했던값전부를 ticketpay.do 에전송하여예매가이뤄지게한다. 생략
CGV Project_backend Ticket
movie2017.cafe.com