개발 기간 : 2024.8.9 ~ 2024.9.10
- 마감할인 플랫폼 mayo(마감해요)의 사장님용 api 서버입니다.
- URL : https://mayomagam.shop
-
개발도구: Intellij IDEA - Ultimate
-
언어: Java 17
-
빌드도구: Gradle
-
개발
- Spring Framework: 6.1.0
- Spring Boot: 3.1.4
-
데이터베이스
- Firestore Database
-
Storage
- Firebase Storage
-
AWS
- EC2
-
기타
- FCM
- NGINX
- Caffeine (in-memory-cache)
-
인가
- Firebase Authentication으로 Interceptor를 통해 인가처리를 진행합니다.
- Firebase Authentication으로 Interceptor를 통해 인가처리를 진행합니다.
-
트랜잭션
- FirestoreTransactional 어노테이션으로 transaction AOP를 생성하여 처리합니다.
- FirestoreTransactional 어노테이션으로 transaction AOP를 생성하여 처리합니다.
-
게시판
- 약관 및 정책의 모든 글을 불러옵니다.
- 공지사항 게시판의 모든 글을 불러옵니다.
- boardId로 게시판의 상세 정보를 가져올 수 있습니다.
-
아이템
- 아이템의 상세 정보를 가져옵니다.
- jwt토큰으로 해당 가게의 아이템들을 모두 불러옵니다.
- 아이템 수정 정보를 받아 아이템을 수정합니다.
- 아이템을 삭제합니다.
- firebase storage에 사진을 저장합니다.
- 아이템의 재고를 변경합니다.
-
예약
- 예약 상세 정보를 가져옵니다.
- jwt토큰 값으로 해당 가게의 신규, 진행, 완료, 실패 예약들을 가져옵니다.
- reservationId로 예약 상태를 변경합니다.(진행, 완료, 실패)
-
가게
- 가게 정보를 가져옵니다.
- 가게 정보를 받아 업데이트합니다.
- 가게 상태를 오픈으로 변경합니다.
- 가게 상태를 마감으로 변경합니다.
-
알림
- 주문 수락 시 알림을 발송합니다.
- 주문 거절 시 알림을 발송합니다.
- 가게 오픈 시 알림을 발송합니다.
- 커스텀 메시징 발송할 수 있는 api를 제공합니다.
-
유저
- 회원가입 기능을 제공합니다. -> 이후 서비스 측에 인가가 필요합니다.