-
최근 치솟는 농산물 가격에 소비자들이 부담을 느끼고 있으니 '공동구매 + 못난이 농산물 구매' 두 가지 장치로 가격 절감을 하자는 아이디어로 이어졌습니다. 판매자는 못났다는 이유로 폐기되는 못난이 농산물로 수익을 창출할 수 있고 구매자는 비싼 농산물 가격 대신 공동구매를 통해 좀 더 싼 가격으로 농산물을 구매할 수 있습니다.
-
판매자는 원하는 공동구매 조건을 정해 인원을 모집할 수 있고, 구매자는 공동구매에 자유롭게 참여할 수 있습니다.
-
이스트소프트의 앨런 AI 기능을 사용해 메인 페이지에서 농산물 관련 최신 뉴스를 확인할 수 있습니다.
-
관리자 계정 admin/admin
-
판매자 계정 seller/seller , seller100/seller100 , seller200/seller200 , hello/hello ...
| Java | Spring | Spring Boot | MySQL | AWS |
|---|---|---|---|---|
| Html | CSS | JavaScript | Figma |
|---|---|---|---|
| Github | Discord | Notion |
|---|---|---|
- 회원 가입
- 아이디, 비밀번호, 닉네임, 주소, 판매자 혹은 구매자 선택.
- 로그인
- 로그 아웃
- 회원 탈퇴
- 회원 등급
- SELLER, BUYER, ADMIN, GUEST
- GUEST : 처음 회원가입시 GUEST부여한 후 2차 회원가입 진행
- ADMIN : /admin-report 페이지에서 신고된 상품이나 리뷰를 관리함.
- ADMIN : /admin 페이지에서 회원 등급 변경 가능
- 회원 정보
- 회원 정보 수정
- 이메일 인증 (이메일로 결제, 환불 알림)
- 작성 권한(SELLER, ADMIN)
- 작성 한 판매 게시글은 본인만 수정, 삭제 가능함
- 판매 내역
- 판매내역 페이지에서 판매 상품 등록 버튼을 통해 접근할 수 있음. 상품에 대한 정보를 입력하여 판매글의 속성을 정함. 상품에 대한 설명과 상품 사진을 업로드할 수 있음.
- 세부 판매 내역
- 판매내역 페이지에서 관리하러 가기 버튼을 통해 접근할 수 있음.
- 구매자의 닉네임 구매 가격, 결제 상태, 환불 여부, 주문일, 주소 등을 확인할 수 있음.
- 리뷰와 문의사항을 한번에 확인.
- 상품 상세 페이지
- 메인 페이지에서 상품 이미지를 클릭하여 상품 상세 페이지로 이동(혹은 판매자는 판매내역 페이지에서 글 보러가기 버튼으로 이동).
- 상품의 정보 확인, 상품의 리뷰 확인, 공동구매 참여, 상품 문의, 상품 신고 등을 수행할 수 있음.
- 상품 상세의 공동구매 참여버튼 혹은 찜 목록의 결제하기 버튼을 통해 공동구매를 시작할 수 있음.
- 구매할 상품의 수량, 구매자 주소, 연락처를 입력하고 주문하기 버튼을 누름
- 주문서의 내용대로 카카오페이로 결제가 진행됨. (상품 재고 감소)
- 공동구매 프로세스가 실행됨.
- 이미 공동구매 최소 단위를 넘겨서 주문했다면 공동구매 상태 = COMPLETED (공동구매 완료 처리(배송 진행))
- 아직 공동구매 최소 단위를 넘기지 못했다면 공동구매 상태 = IN_PROGRESS 가 되고 모집중인 공동구매로 처리됨
- 이때 환불 버튼을 눌러 환불 진행 가능 (상품 재고 증가)
- IN_PROGRESS 로 공동구매가 진행 중에 상품의 마감 기한이 도래하면 공동구매 상태 = CANCELLED 로 변경되고 공동구매가 취소됨.
- 환불 처리 (상품 재고 증가)
- 아직 공동구매 최소 단위를 넘기지 못했다면 공동구매 상태 = IN_PROGRESS 가 되고 모집중인 공동구매로 처리됨
- 이미 공동구매 최소 단위를 넘겨서 주문했다면 공동구매 상태 = COMPLETED (공동구매 완료 처리(배송 진행))
- 구매할 상품의 수량, 구매자 주소, 연락처를 입력하고 주문하기 버튼을 누름
- 구매내역 페이지의 후기 남기기 버튼을 통해 리뷰 작성
- 상품의 별점을 선택하고 상품 사진과 함께 리뷰 내용을 등록
- 상품 게시글에서 등록된 리뷰 조회
- 상품 게시글에서 사용자들이 남긴 별점의 합산 평균을 제공
- 상품 상세 페이지의 상품 신고 버튼을 통해 상품 신고서 작성
- 관리자는 /admin-report 페이지에서 신고된 상품에 대한 관리
- 잘못된 신고 처리. (신고 삭제)
- 신고 승인.
- 신고 승인된 상품은 조회 불가
- 상품 상세 페이지의 문의하기 버튼을 통해 상품 QnA 작성
- BUYER, SELLER, ADMIN 모두 상품 문의를 작성함.
- 상품의 주인(SELLER)만 문의에 대한 답글을 작성.
- 이미 답글을 단 문의는 답글과 함께 노출
- 답글을 달지 않은 문의는 답변하기 버튼(주인)에게만 노출되며 클릭하면 답변 칸 노출
- 이스트소프트의 AI 앨런을 통해 메인 페이지의 농산물 관련 뉴스 5개 출력
- 1시간에 1번씩 앨런 API에 농산물 뉴스를 요청하고 DB에 보관. (스케쥴링)
- 생성된지 2시간이 지난 뉴스들은 DB에서 자동 삭제. (스케쥴링)
- 회원 정보 페이지의 이메일 인증 버튼을 통해 이메일 인증.
- 인증된 회원은 상품 결제 이후 공동구매 상태가 IN_PROGRESS 일때 환불 버튼을 눌러 환불처리시 이메일로 내용을 확인받을 수 있음.
- 로깅과 성능 측정을 자동화
- 각 유저의 행동을 DB에 담음.
- 어떤 유저가 어떤 행동을 하다가 어떤 병목에 걸렸는지.
- 어떤 예외가 발생했는지 확인할 수 있음.
- 100여종류의 테스트코드를 작성하여 코드 안정성 향상에 노력.
| 로그인 페이지 | 소셜 로그인 페이지 |
|---|---|
![]() |
![]() |
| 회원가입(1차) 페이지 | 회원가입(2차) 페이지(집접 회원가입 및 소셜 첫 로그인시) |
|---|---|
![]() |
![]() |
| 소셜 로그아웃 페이지 |
|---|
![]() |
| 메인 페이지 | 공동 구매 페이지 |
|---|---|
![]() |
![]() |
| 주문서 작성 페이지 | 주문 완료 페이지 |
|---|---|
![]() |
![]() |
| 주문서 조회 페이지 | 주문서 수정 페이지 |
|---|---|
![]() |
![]() |
| 찜 목록 페이지 | 주문 내역 페이지 |
|---|---|
![]() |
![]() |
| 리뷰 페이지 | 신고 페이지 |
|---|---|
![]() |
![]() |
| 내 정보 페이지 | 회원 정보 수정 페이지 |
|---|---|
![]() |
![]() |
| 이메일 인증 페이지 |
|---|
![]() |
| 판매 리스트 페이지 | 상세 판매 내역 페이지 |
|---|---|
![]() |
![]() |
| 판매글 작성 페이지 | 판매글 수정 페이지 |
|---|---|
![]() |
![]() |
| 관리자 회원 관리 페이지 | 관리자 신고 관리 페이지 |
|---|---|
![]() |
![]() |
링크 : https://www.erdcloud.com/d/Ry8D7FKy5oLp4nBSd



































