/be01-2nd-3Team-BookRealm

3팀 - 이영진, 김단아, 최원규, 안우용

Primary LanguageJava




📚 프로젝트 소개

  • 우리의 프로젝트는 도서를 손쉽게 찾아 구매하고 관리할 수 있는 온라인 서점 플랫폼입니다. 다양한 기능과 편의성을 제공하여 사용자가 즐겁고 효율적으로 도서를 검색하고 구매할 수 있도록 합니다.
  • 편리하고 안전한 쇼핑을 통해 도서 소장과 읽기를 더욱 즐겁게 만들어줍니다.


😀 팀원 및 역할

👸이영진 - 프로젝트 총괄책임, Spring Security 적용, 로그인/회원가입 구현, 마이페이지 구현, 주문 서비스 구현
👧김단아 - UI총괄책임, 도서 서비스 구현, 장바구니 서비스 구현
👶안우용 - 문서총괄책임, 리뷰 서비스 구현, 장바구니 서비스 구현, 주문 서비스 구현
👳‍♂️최원규 - GitHub 총괄책임, 관리자 서비스 구현, 네이버 도서검색 API 적용



📜 기술 스택

IDE
intellij STS
BACKEND
Java Spring SpringBoot SpringSecurity apachmaven lombok mariaDB RESSTAPI Swagger
FRONTEND
HTML5 CSS3 JavaScript Bootstrap thymeleaf
버전 관리
Git GitHub
협업
Notion Slack


🛠 프로젝트 주요 기능

  1. 도서 구매:
    • 원하는 도서를 선택하고 간편한 구매 프로세스를 통해 손쉽게 구매할 수 있습니다.
  2. 도서 검색:
    • 제목과 작가를 기준으로 도서를 검색할 수 있습니다.
  3. 장바구니:
    • 원하는 도서를 장바구니에 저장하여 나중에 손쉽게 찾아볼 수 있습니다.
  4. 리뷰 작성 및 평점 부여:
    • 구매한 도서에 대한 리뷰를 작성하고 별점을 부여하여 다른 사용자들과 의견을 공유할 수 있습니다.
  5. 도서 상세 정보 확인:
    • 도서의 상세 정보를 자세히 확인할 수 있으며, 가격, 수량, 별점, 리뷰 등을 통해 구매 결정을 내릴 수 있습니다.
  6. 관리자의 도서 및 회원 관리:
    • 도서를 추가, 삭제, 수정하여 소장한 도서를 효과적으로 관리할 수 있습니다.
    • 회원의 정보를 수정하고 배송상태를 관리할 수 있습니다.
  7. 회원 정보 관리:
    • 개인 정보를 손쉽게 관리하고 구매 이력, 리뷰 내역을 확인하여 더 나은 서비스를 경험할 수 있습니다.


📅 WBS

image (5)


🖥 화면설계도

image (6)


📝 프로젝트 요구사항 분석서

요구사항 분석서

  회원은 도서를 구매할 수 있다.
  회원과 비회원은 (제목,작가, 베스트셀러 여부, 카테고리)를 기준으로 검색을 할 수 있다.
  회원은 회원가입을 통해 가입한다.
  회원은 장바구니에 도서를 저장할 수 있다.
  회원은 도서를 마이리스트에 저장할 수 있다.
  회원과 비회원은 장바구니에 있거나 검색한 도서를 구매할 수 있다.
  회원은 구매한 도서의 리뷰를 작성하고 별점을 줄 수 있다.
  회원은 구매한 도서를 교환, 환불 신청할 수 있다.
  회원과 비회원은 도서의 상세 정보를 확인할 수 있다.
  	-  제목, 작가, 카테고리, 가격, 수량
  	- 별점, 리뷰 
  
  
  관리자가 도서를 추가,삭제,수정, 조회할 수 있다.
  관리자는 구매완료된 도서를 조회할 수 있다.
  관리자는 회원 정보를 관리할 수 있다.




⚙ DB설계

이미지


📂 프로젝트 구조

+---main
|   +---java
|   |   \---com
|   |       \---bookrealm
|   |           |   BookrealmApplication.java
|   |           |   
|   |           +---config
|   |           |       SecurityConfig.java
|   |           |       SwaggerConfig.java
|   |           |       
|   |           +---controller
|   |           |       AdminController.java
|   |           |       AdminRestController.java
|   |           |       BookController.java
|   |           |       CartController.java
|   |           |       JoinController.java
|   |           |       LoginController.java
|   |           |       OrderController.java
|   |           |       UserController.java
|   |           |       
|   |           +---exception
|   |           |       AppException.java
|   |           |       ErrorCode.java
|   |           |       ExceptionManager.java
|   |           |       
|   |           +---model
|   |           |   |   Address.java
|   |           |   |   Book.java
|   |           |   |   Cart.java
|   |           |   |   Favorite.java
|   |           |   |   Member.java
|   |           |   |   Order.java
|   |           |   |   OrderList.java
|   |           |   |   Payment.java
|   |           |   |   Review.java
|   |           |   |   Role.java
|   |           |   |   Status.java
|   |           |   |   SuType.java
|   |           |   |   
|   |           |   \---dto
|   |           |           JoinDto.java
|   |           |           LoginDto.java
|   |           |           OrderDto.java
|   |           |           ReviewDto.java
|   |           |           
|   |           +---naver
|   |           |   |   NaverBookClient.java
|   |           |   |   
|   |           |   \---dto
|   |           |           SearchBookReq.java
|   |           |           SearchBookRes.java
|   |           |           
|   |           +---repository
|   |           |       BookRepository.java
|   |           |       CartRepository.java
|   |           |       FavoriteRepository.java
|   |           |       MemberRepository.java
|   |           |       OrderListRepository.java
|   |           |       OrderRepository.java
|   |           |       ReviewRepository.java
|   |           |       
|   |           \---service
|   |                   AdminService.java
|   |                   AdminServiceImpl.java
|   |                   BookService.java
|   |                   CartService.java
|   |                   MemberDetailsService.java
|   |                   MemberService.java
|   |                   OrderService.java
|   |                   ReviewService.java
|   |                   
|   \---resources
|       |   application-private.yml
|       |   application.properties
|       |   application.yml
|       |   
|       +---static
|       |       bootstrap.min.css
|       |       bootstrap.min.js
|       |       myscript.js
|       |       style.css
|       |       
|       \---templates
|           |   add-review-form.html
|           |   addressMod.html
|           |   book-cart.html
|           |   book-detail.html
|           |   book-search.html
|           |   form_errors.html
|           |   index.html
|           |   login_form.html
|           |   myOrders-detail.html
|           |   myOrders.html
|           |   myPage.html
|           |   myReviews.html
|           |   navbar.html
|           |   order.html
|           |   orderOne.html
|           |   order_complete.html
|           |   phoneMod.html
|           |   review-list.html
|           |   signup_form.html
|           |   
|           \---admin
|               |   home.html
|               |   navbar-admin.html
|               |   
|               +---book
|               |       edit.html
|               |       manage.html
|               |       search.html
|               |       search_result_save.html
|               |       
|               \---user
|                       manage.html
|                       orderlist.html
|                       users.html
|                       
\---test
    \---java
        \---com
            \---bookrealm
                |   BookrealmApplicationTests.java
                |   
                +---naver
                |       NaverBookClientTest.java
                |       
                \---service
                        AdminServiceImplTest.java
                        BookServiceTest.java
                        CartServiceTest.java
                        OrderServiceTest.java
                        ReviewServiceTest.java
                        




📐 서비스 아키텍처

image (7)




BookRealm.mp4




🔥 아쉬운점

image (9)




💭 회고

image (10)