Skip to content

prgrms-be-devcourse/NBE8-10-1-Team04

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

☕백(Back) 다방

작은 로컬 카페 '백(Back) 다방' 의 온라인 주문, 배송 관리 온라인 웹 사이트


✍️ 프로젝트 개요

‘백(Back) 다방’은 스프링 부트 기반의 원두 패키지 주문 웹사이트입니다. 고객들은 온라인 웹 사이트를 통해 커피 원두 패키지를 주문할 수 있으며, 매일 전날 오후 2시부터 당일 오후 2시까지의 주소가 동일한 주문을 모아서 당일 배송합니다. 주문·배송 처리, 관리자 상품 추가 및 조회, 이메일을 통한 주문 내역 확인 등의 CRUD를 구현했습니다.


💁‍♂️ 팀원 소개 및 역할

팀원 역할 담당 업무

김연수
팀장 Backend: 상품 추가 기능 구현
Frontend: 상품 주문 페이지 구현, UI 전반 통합

김현수
팀원 Backend: 주문 생성·삭제, 단건/다건 조회, 배송 상태 변경 기능 구현
Frontend: 관리자 주문 관리 페이지 연동 및 구현

유재원
팀원 Backend: 상품 조회·수정·삭제 기능 구현
Frontend: 주문 조회 기능 프론트엔드 연동

장인호
팀원 Backend: 주문 전체 조회, 이메일 기반 다건 조회, 주문 수정 기능 구현
Security: Spring Security 적용
Frontend: 관리자 상품 목록·추가·수정·삭제 기능 구현, 상품 이미지 처리, 관리자 페이지 접근 제어

🖼️ 주요 기능 및 시연

🌟 사용자

  • 사용자는 메인 페이지에서 판매 중인 상품 목록을 조회할 수 있습니다.
  • 사용자는 메인 페이지에서 이메일을 통해 상품을 주문할 수 있습니다.
  • 사용자는 내 주문 조회에서 이메일을 입력 후 주문 내역을 확인하고 수정하거나 취소할 수 있습니다.

🌟 관리자

  • 관리자는 인증을 거쳐 관리자 페이지에 접근할 수 있습니다
  • 관리자는 상품관리 페이지에서 판매 중인 상품 목록을 수정, 삭제, 추가할 수 있습니다.
  • 관리자는 주문관리 페이지에서 전체 주문 목록을 확인하고 배송 상태를 변경할 수 있습니다.

🛒 1. 상품 주문 (메인 페이지)

  • 메인 페이지에서 상품을 선택하여 주문 생성
  • 상품 미선택 시 결제 버튼 비활성화
  • 이메일·우편번호 미입력 시 알림을 통해 입력 유도

Image


📧 2. 내 주문 조회 및 수정

  • 주문 시 입력한 이메일 주소로 주문 내역 조회
  • 주문 상태가 주문 확인, 배송 준비 중 일 경우 주문 수정 가능
  • 주문 상세 페이지에서 상품 수량 및 배송지 정보 수정

Image


🔐 3. 관리자 페이지 접근 제어

  • 상품관리 / 주문관리 탭은 로그인 없이 접근 불가
  • 관리자 로그인 후 정상 접근 가능
  • Spring Security 기반 인증 및 세션 유지

Image


📦 4. 상품 관리 (관리자)

  • 새로운 상품 등록
  • 기존 상품 가격 수정
  • 상품 삭제
  • 필수 입력값 누락 시 경고 메시지 출력

Image


🚚 5. 주문 관리 & 배송 상태 변경 (관리자)

  • 주문 상태: 주문 확인 → 배송 준비 중 → 배송 중 → 배송 완료
  • 관리자가 배송 상태 변경 가능
  • 배송 상태가 배송 중 또는 배송 완료일 경우 사용자는 주문 수정/취소 불가

Image

🔧 Teck Stack

Backend

Java Spring Boot Spring Security Gradle

Database

MySQL H2

Frontend

TypeScript Next.js Tailwind CSS

🖇️ ERD

ERD

⚙️ 시스템 아키텍처

시스템 아키텍처

📃 커밋 컨벤션 & 협업 규칙

GitHub Flow

  • main
    • 실제 서비스에 배포되는 안정화 브랜치
    • 브랜치 보호 규칙 적용 (PR + 리뷰 후 머지)
  • develop
    • 새로운 기능 개발이 통합되는 기준 브랜치
    • 브랜치 보호 규칙 적용 (PR + 리뷰 후 머지)
  • feat/
    • 개별 기능 개발용 브랜치
    • 이슈 단위로 생성하여 작업
    • 작업 완료 후 PR을 통해 develop에 머지

팀 운영 규칙

🔹 PR 하나 = 이슈 하나

🔹 PR 너무 크면 쪼개기

🔹 머지 후 브랜치 삭제

⚙️ 네이밍 & 작성 규칙

  1. 이슈

    • 제목 규칙 : [타입] 작업내용
    • 예시 : [feat] 로그인 기능 추가
    • 본문은 템플릿에 맞춰서 작성
  2. PR

    • 제목 규칙 : [타입] 작업내용
    • 예시 : [feat] 로그인 기능 추가
    • 본문은 템플릿에 맞춰서 작성
  3. 브랜치

    • 생성 기준 : develop 브랜치에서 생성
    • 명명 규칙 : 타입/이슈내용
    • 예시: feat/로그인 기능 추가
    • main 브랜치는 브랜치 보호 규칙이 적용되어, 반드시 PR을 통해 최소 2명의 팀원 리뷰 승인 후에만 머지할 수 있다.
    • develop 브랜치는 브랜치 보호 규칙이 적용되어, 반드시 PR을 통해 최소 1명의 팀원 리뷰 승인 후에만 머지할 수 있다.
  4. Commit Message 규칙

    타입 의미
    feat 새로운 기능 추가
    fix 버그 수정
    docs 문서 수정 (README, 주석 등)
    style 코드 스타일 변경 (포맷팅, 세미콜론 등. 기능 변화 없음)
    refactor 코드 리팩토링 (동작 변화 없음)
    test 테스트 코드 추가/수정
    chore 빌드, 패키지 매니저, 설정 파일 등 유지보수 작업(환경 설정)
    remove 파일, 폴더 삭제
    rename 파일, 폴더명 수정
    • [타입] 작업내용 #이슈번호
    • 예시 : [feat] 로그인 기능 추가 #1

About

프로그래머스 데브코스 8기 10회차 4팀 1차 프로젝트입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages