Skip to content

hana78786/peanutbooks

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


땅콩북스 : 모두를 위한 E-book 플랫폼

✨ 프로젝트 소개

🧡💛 2022.10.07~ 2022.11.17 KH정보교육원 종로지원 할수있쪼 파이널프로젝트 💛🧡

🚩 목차

기획의도

  • 📚 인터넷 도서관
    •   가입만 하면 자유롭게 도서를 열람 할 수 있는 E-book도서관을 지향합니다.
        클릭만으로 원하는 책을 언제든지 간편하게 볼수있어,
        바쁜 현대인들이 출,퇴근할때 잠시 쉬고싶을때 가볍게 책을 볼수 있습니다
      
  • 작가가 되자
    • 작가가 되는건 어렵고 힘들게 느껴지나요?
      우리 땅콩북스에서는 누구나 작가가 될수 있습니다.
      가입하시고 자유롭게 글을 써보세요.
      회원들이 포인트를 지불하고 당신의 책을 구입합니다!    
      

역할분담

🐇 양우영 🐿 신은정 🐈 양유진 🦔 남하나
공지사항 게시판 채팅 상담 회원가입 도서관리 전반
1:1문의 게시판 결제 API 로그인 도서검색
관리자 도서관리 포인트 결제 개인회원 관리 내 서재
전체 회원관리 포인트 충전 알림기능 댓글 및 별점
작가료 정산 이벤트 및 미니게임

개발스택

주요언어

사용빈도

기술스택

개발환경

주요기능

특징

  • 📱 모든 페이지가 스마트폰 화면에 대응할수 있는 반응형사이트로 제작됨
  • 🎆 미니게임, 출석 등 사용자를 위한 이벤트 제공
  • 🧩 javascript와 css를 활용한 애니메이션을 적극사용한 페이지
  • 💰 구독제, 유료포인트제를 차용하여 결제를 통한 유료 컨텐츠 관람

도서관리

기능명 상세
도서등록 commons-fileupload를 사용하여 표지, 각 화의 표지를 업로드 할수있다. javascript로 유효성을 체크하여 2mb 이상의 파일은 업로드 할수 없으며 그림 파일 외에는 업로드 할수 없다. 또한 summer노트를 활용한 도서의 작성이 가능하여 해당 에디터안에 이미지를 업로드하여 삽화를 포함할수 있다.
도서열람 google번역기를 활용하여 외국어 도서를 번역할수 있으며, 유료화 여부를 체크하여 유료화 도서인경우 포인트로 결제하거나 구독권을 사용해 도서를 열람할수 있게한다. 카카오톡 api를 이용하여 javascript로 해당 도서의 표지와 주소를 공유할수 있고 트위터, 페이스북의 공유도 가능하도록 하였다.
도서 검색 도서제목, 해시태그, 작가 이름을 검색해서 원하는 도서를 찾을 수 있도록 oracle sql문을 작성하였다. 검색한 도서는 일반도서, 오리지널도서를 선택하여 각각 검색해 볼수 있으며 mybatis의 dynamic query을 사용해 원하는 방식으로 정렬할수 있다.
도서 정렬 mybatis의 dynamic query을 활용해 하나의 jsp파일로 모든 도서를 정렬하고 사용자가 정렬하고자 하는 카테고리와 정렬조건을 선택할수 있도록 하였다.
댓글 및 별점 ajax를 활용한 실시간 연동으로 별점을 남기면 별점을 준 총인원수와 별점의 평균이 반영된다, 마찬가지로 ajax를 활용하여 실시간 댓글작성 및 반영이 가능하고 한 댓글당 10개의 대댓글을 입력할수 있다.
내 서재 내 서재 버튼을 누르면 내 서재에 등록되어 유롭게 열람할 수 있으며 포인트로 구매한 도서를 별개의 목록으로 활용할수 있는 dynamic query를 활용하였다.

이벤트게임

기능명 상세
출석이벤트 oracle을 spl문을 활용하여 출석날짜를 체크해 매일 1번 총 5번의 출석체크를 하여 출석체크를 완료하면 포인트를 지급한다다.
미니게임 내 서재에 등록된 도서의 해시태그를 체크하여 캐릭터에게 초기 능력치를 부여하고 ajax를 활용한 실시간 연동을 활용하여 아이템을 이용해 캐릭터를 성장시키거나 스케쥴을 지정하여 캐릭터를 성장시켜 10개의 엔딩을 볼수있다.

회원관리

기능명 상세
일반회원가입 사용자는 별명, 아이디, 비밀번호, 이메일 정보를 입력해 회원가입을 할 수 있다. 모든 값은 입력과 동시에 데이터 유효성 검사 후 결과가 출력된다. 정보 입력을 마치면 이메일 인증을 할 수 있으며 이메일 인증을 하지 않으면 회원가입이 완료되지 않는다.
SNS회원가입 사용자는 네이버와 카카오 계정을 사용해 회원가입을 할 수 있다. 각 계정 인증(로그인) 후 별명, 아이디, 이메일을 입력해야 하고 별명과 이메일 값은 SNS 계정 인증 과정에서 선택으로 가져올 수 있다. 일반회원가입과 마찬가지로 모든 값을 알맞게 입력 후 이메일 인증을 거쳐 회원가입을 완료할 수 있다.
일반로그인 사용자는 가입한 아이디와 비밀번호를 사용해 회원으로 로그인할 수 있다. 로그인 버튼을 눌렀을 때 회원가입 과정에서 이메일 인증을 마치지 않은 사용자일 경우 이메일 인증 화면으로 이동한다. 해당 이메일 인증 화면에서는 로그인을 시도한 회원이 가입 시 입력한 이메일 값이 자동완성으로 들어간다. 해당 정보로 더 이상 회원가입을 원하지 않을 시 이메일 인증 화면 하단의 회원가입 취소 링크를 누르면 입력했던 회원 정보를 모두 삭제한 뒤 절차를 처음부터 다시 진행할 수 있다. 아이디와 비밀번호는 등록된 회원 정보가 일치하지 않으면 제출할 수 없고 아이디나 비밀번호가 기억나지 않는다면 이메일 인증을 거쳐 아이디 찾기와 비밀번호 재설정을 할 수 있다.
SNS로그인 사용자는 인증 및 등록된 SNS 계정을 사용해 로그인할 수 있다. 이메일 인증까지 마친 상태라면 해당 SNS 아이콘을 누르면 바로 로그인 처리 되어 홈페이지로 이동한다. 일반로그인 절차와 마찬가지로 이메일 인증을 마치지 않은 사용자라면 로그인 버튼을 누를 시 이메일 인증 화면으로 이동하며 이메일 인증을 모두 마쳐야 로그인 할 수 있다.
회원정보수정 로그인한 사용자는 자신이 등록한 정보를 조회 및 수정할 수 있다. 아이디와 이메일 값은 각각 기본키와 본인인증으로 사용되므로 수정할 수 없고 별명과 비밀번호 수정이 가능하다. 회원가입과 마찬가지로 값을 입력하면 데이터 유효성 검사 결과를 출력하고 조건에 맞지 않는 값은 제출할 수 없다.
회원탈퇴 로그인한 사용자는 자신의 등록 정보를 삭제하도록 탈퇴 신청을 할 수 있다. 탈퇴 시 이용내역(저장 및 등록 도서, 포인트, 이용권 등)을 확인할 수 있으며 유의사항 동의와 비밀번호 확인까지 마치면 탈퇴가 완료된다. 탈퇴가 완료되면 관리자가 확인 후 최종 삭제 처리를 한다.
전체알림 이벤트(출석체크) 알림은 접속 날짜에 출석체크를 하지 않은 회원에게 일괄 발송된다. 접속하지 않은 회원에게는 발송되지 않으며 출석체크를 5일차까지 모두 마친 회원에게도 발송되지 않는다. 알림 내용을 누르면 해당 이벤트 화면으로 이동한다. 회원 툴팁을 열면 알림 아이콘 위에 읽지 않은 알림 개수가 출력된다.
개별알림 개별 회원 알림은 해당 회원이 내 서재에 저장한 도서의 새로운 회차가 등록되면 발송된다. 해당 알림은 접속하지 않은 회원에게도 발송된다. 개별 알림은 전체 알림과 같은 화면에서 출력되며 알림 내용을 누르면 해당 도서 상세 화면으로 이동한다.
알림삭제 사용자는 알림 화면에서 알림 내용 오른쪽의 아이콘을 눌러 알림을 삭제할 수 있다. 삭제는 별도의 확인 없이 진행되어 아이콘 클릭과 동시에 내용이 화면에서 사라진다.

공지문의게시판

기능명 상세
공지사항 관리자가 공지사항을 작성한 후 홈페이지에 게재할지 게재하지 않도록 할지 선택할 수 있도록 버튼을 추가하여 게시물 리스트에서 바로 선택할 수 있다.
1:1문의 사용자는 문의사항을 입력하고 입력 후 수정, 삭제 할 수 있다. 그러나 관리자가 사용자의 문의글에 답변을 작성하면 사용자는 관리자가 답변을 작성한 게시글을 수정, 삭제할 수 없다.
1:1답변 사용자가 작성한 문의글은 답변대기 상태로 출력되고 관리자가 답변을 작성하면 답변완료로 변경된다.

관리자-회원관리

기능명 상세
회원조회 관리자는 사용자의 닉네임별로 아이디별로 검색할 수 있으며 검색한 검색어가 포함된 유사한 회원을 모두 검색할 수 있다. 전체 검색은 닉네임, 아이디 중에 포함된 모든 회원을 검색하도록 한다.
회원탈퇴 회원탈퇴는 사용자가 회원탈퇴를 하면 탈퇴한 사용자의 모든 정보는 로그인 포함 땅콩북스 홈페이지에서 사용할 수 없도록 하고 관리자가 최종 삭제하면 모든 정보는 삭제된다.
회원정보변경 회원정보변경 기능은 관리자가 사용자의 요청이 있거나 땅콩북스의 관리지침에 따른 수정을 해야할 사항이 있을 때 아이디, 닉네임 이외에 정보는 수정 가능하다.

관리자-도서심의

기능명 상세
심의도서 조회 사용자가 작성한 도서는 관리자가 승인해야지만 홈페이지에 게재할 수 있다. 전체도서는 승인된 도서와 보류도서 전체 개수와 전체리스트를 보여준다. 승인도서는 관리자가 승인 완료한 도서 개수와 승인리스트를 보여준다. 보류도서는 관리자가 도서 심의 후 승인규정에 미달할 경우 보류 상태로 두어 홈페이지에 게재할 수 없도록 한다. 재승인도서는 사용자가 승인된 도서를 재수정 했을 경우 재승인 심사를 받아야하는 도서리스트이다.
심의승인 관리자가 도서 내용을 확인 후 피넛북스의 심의사항에 부함된 도서물은 승인버튼을 눌러서 승인처리하면 홈페이지에 바로 게재된다. 심의에 부적합한 도서는 승인하지 않으면 보류 상태가 된다. 재승인 심사도 일반 승인심사와 동일하다.

회원상담결제

기능명 상세
채팅상담 - 관리자 관리자 로그인 하여 on/off 버튼으로 on 변경시에만 사용자가 채팅상담접수 가능하다. 변경시 ajxa으로 상담대기인원과 리스트가 실시간 출력되고 종료시는 off변경해야한다는 안내 표시가 된다. 리스트에서 고객ID와 문의 주제, 신청시간이 확인되고 상담시작 버튼을 클릭시 사용자와 상담할수 있는 팝업창 활성화 된다. 상담후 종료시상담결과를 입력해야 종료된다. 입력하지 않을 경우 입력후 종료해달라는 안내확인된다. 종료건 조회 가능하며 조회시 상당접수 off자동 변경되고 조회 리스트로 이동된다. 완료된 채팅 상담리스트로 전체 내역이 조회된다. 전체/ID/날짜별로 검색가능하도록 sql문을 작성했다./ 해당 내역의 모든 대화내용을 확인하려면 상세보기로 확인된다
채팅상담 - 사용자 로그인 후 툴팁에서 채팅상담을 클릭시 상담접수를 할 수 있는 채팅창 팝업된다. 관리자가 상담접수(on)로 변경시만 접수 가능하다. 문의주제를 기재하여 접수하면 성공 alert되고 바로 관리자 리스트에서 ajax으로 실시간 확인된다. 관리자응답시까지 시간소요 안내가 되고 상담이 시작되며 상담 내용은 data함수로 ajax전송으로 표기된다. 상담종료를 원할 경우 종료 하면 화면이 닫힌다.
api결제 사용자 - REST API 아임포트로 땅콩 포인트와 월 구독권을 구매할 수 있다. 구독권은 이미 사용중일 경우 체크불가하다. 선택 후 주문확정하면 주문번호를 ajax으로 등록하게 되고 주문내역확인 하여 확인 체크 이후에 결제 진행가능하다. 결제 진행시 결제 내역과 땅콩포인트와 구독권, 회원정보에 각각 반영된다. 구독권 구매시 해더의 툴팁외에 팝업으로 한번더 확인된다. 구독권 만료는 오라클의 스케줄러 기능을 이용하여 자동 변경할 수 있도록 되어있다. / 관리자- 결제내역을 별도 조회 가능하다. 전체 / 아이디/ 날짜로 조회 검색할수 있으며 날짜로 조회시 기간을 설정 할수 있도록 자바스크립트와 sql 진행 하였다.
포인트 지급 관리자는 땅콩포인트를 가감할수가 있다. 회원정보에서 사유 및 포인트를 가감 처리 할수 있으며 이벤트 등으로도 별도 지급이 가능하다.
포인트 충전 사용자는 땅콩 포인트를 충전하여 사용 할수 있다. 1땅콩당 100원으로 환산된다. 관리자는 땅콩 포인트 내역을 조회할수 있다. 전체/ID/날짜별로 검색 가능하다.
포인트 사용 도서 열람시 땅콩포인트를 소진하여 열람 할 수 있다. 작가는 적립된 포인트를 지급 요청할 수 있다. 1회당 0.1 땅콩으로 1000점 이상이 되었을 경우 지급 요청 가능하다. 관리자는 작가가 정산요청한 내역을 확인후 지급처리 진행을 한다. 작가가 정산요청시에는 본인이 작성한 도서리스트만 조회되고 도서 선택시 자동으로 해당도서의 시리즈만 ajax으로 실시간 검색할 수 있도록 하였다. 포인트 조회하여 정산할 포인트를 입력하면 자동으로 계산된다. 내역은 전체/ID/지급완료건으로 검색할 수 있다.

프로젝트살펴보기

메인페이지


로그인


회원가입


아이디/비밀번호찾기


피넛픽


일반도서


피넛오리지널


도서검색


도서열람


도서읽기


내서재


포인트내역


포인트충전




포인트교환


알림


정보관리


등록도서목록


도서등록


작가프로필등록


상담게시판


채팅상담




공지사항


관리자-채팅상담





관리자-메인


관리자-문의게시판


관리자-공지사항


관리자-도서승인


관리자-결제조회


관리자-땅콩확인


관리자-작가정산


관리자-전체회원관리


출석이벤트


미니게임


수상이력

🥇 학원 자체평가 1위

About

할수있쪼 - 파이널 프로젝트 E-Book 플랫폼

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 60.8%
  • JavaScript 29.4%
  • CSS 9.8%