알림 요구사항
필요한 API
- 알림 목록 api
- 안읽은 리뷰 개수
- 알림 클릭시 읽음 처리 api
TYPE: order
| 알림 받는 사람 |
상황 |
| 판매자 |
소비자 결제 후, 주문 요청 알림 |
| 판매자 |
소비자가 결제 취소한 경우 |
- 사장님이 수락/거절 하기 전의 경우 |
| 소비자 | 소비자 음식 수령 알림 |
| 소비자 | 판매자 주문 수락 알림 |
| 소비자 | 판매자 주문 거절 알림 |
| 소비자 | 주문한 음식 준비 완료 알림 |
| 소비자 | 사장님이 주문 취소한 경우
- 사장님이 수락/거절한 후 준비 완료전에 취소할 경우(소비자가 전화로 취소 해달라고 하는 경우 등등) |
- 필요한 데이터
- orderInfoId ⇒ typeid
- 주문 상태
- PAID - 결제 완료
- FINISHED - 수령 완료
- IN_PROGRESS - 진행 중
- DENIED - 거절됨
- PREPARED - 준비 완료
- 주문번호
- 가게명
- 해당 알림 발생일자
- 총 결제 금액
- 메뉴OO 외 O개
- 알림 메시지
- payload.data.title : (수령 완료 / 진행 중 / 거절됨/ 준비 완료) 알림
- payload.data.body : {가게명}: 메뉴OO 외 O개
export interface NotificationItem {
orderNumber?: number;
storeName?: string;
orderTime?: number;
orderStatus?: number;
payment?: number;
menus?: string;
}
export interface NotificationInfo {
id: number;
type?: string;
typeId?: number;
content?: NotificationItem[];
isRead?: boolean;
page: number;
hasNext?: boolean;
}
TYPE: favorite
- 찜한 가게 판매 등록 알림
- 알림 메시지
- payload.data.title : {찜한 가게명} 음식 나눔
- payload.data.body : 음식 나눔이 시작됐어요.
- 데이터
- id : 소비자 알림 고유번호
- type : favorite
- typeId: storeId
- content → 리스트
- {찜한 가게명}의 음식 나눔이 시작됐어요.
- 가게명
- 알림 시간
- isRead: true/false
- Consumer: 알림 받는 소비자
- 프론트로 주는 응답값
- id : 소비자 알림 고유번호
- type : favorite
- typeId: storeId
- content→ 리스트
- {찜한 가게명}의 음식 나눔이 시작됐어요.
- 가게명
- 알림시간
- isRead: true/false