1. API 명세서
https://caring-pin-8ac.notion.site/API-136dcca716cf808aa2fdee25878f0747
2. 테이블 명세서
1. 사용자 테이블 (p_users
) - 주소 사용(embedded)
필드 이름 | 데이터 타입 | 설명 | |
---|
user_id | varchar(10) | 사용자 ID, PK, 유효성 검증 | |
password | varchar(15) | 사용자 비밀번호, 유효성 검증 | |
email | varchar(100) | 사용자 이메일, Unique, 유효성 검증 | |
role | role_type | 사용자 역할 (CUSTOMER , OWNER , MANAGER , MASTER ) | |
| | | |
created_at | timestamp | 레코드 생성 시간 | |
created_by | varchar(100) | 레코드 생성자(username) | |
updated_at | timestamp | 레코드 수정 시간 | |
updated_by | varchar(100) | 레코드 수정자(username) | |
deleted_at | timestamp | 레코드 삭제 시간 | |
deleted_by | varchar(100) | 레코드 삭제자 (username) | |
deleted | bool | true: 삭제 | |
2. 음식점 (p_store
) - 주소 사용(embedded)
필드 이름 | 데이터 타입 | 설명 |
---|
store_id | uuid | 음식점 id, pk |
name | varchar(10) | 음식점 이름 |
category | uuid | 음식점 카테고리 |
phone_number | varchar(20) | 음식점 전화번호 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
3. 음식점 카테고리 (p_store_category
)
필드 이름 | 데이터 타입 | 설명 |
---|
store_category_id | uuid | 음식점 카테고리 id, pk |
category_name | varchar(10) | 카테고리명 (한식, 중식, 분식, 치킨, 피자) |
store_id | uuid | 음식점 id, fk |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
필드 이름 | 데이터 타입 | 설명 |
---|
menu_id | uuid | 음식점 메뉴 id, pk |
store_id | uuid | 음식점 id, fk |
category_id | uuid | 음식점 카테고리 id, fk |
name | varchar(200) | 메뉴 이름 |
description | varchar(200) | 메뉴 설명, AI API를 연동하여 작성 |
price | BIGINT | 메뉴 가격 |
is_available | Boolean | 판매 가능 여부 |
image | varchar(200) | 메뉴 이미지 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
hidden | bool | true: 숨김 |
5. 주문 (p_order
)
필드 이름 | 데이터 타입 | 설명 |
---|
order_id | uuid | 주문 id, pk |
store_id | uuid | 음식점 id, fk |
user_id | varchar(10) | 사용자 id, fk |
order_date | timestamp | 주문 날짜와 시간 |
order_status | | 주문 상태(대기중, 음식 준비중, 배달중, 배달 완료, 주문 취소) |
order_type | | 주문 유형(포장, 배달) |
special_requests | varchar(200) | 주문 요구사항 |
total_amount | BIGINT | 주문 총액 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
필드 이름 | 데이터 타입 | 설명 |
---|
order_menu_id | uuid | 주문_메뉴 id, pk |
order_id | uuid | 주문 id, fk |
menu_id | uuid | 음식점 메뉴 id, fk |
quantity | int | 주문한 메뉴의 수량 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
7. 결제 내역 (p_payments
)
필드 이름 | 데이터 타입 | 설명 |
---|
payments_id | uuid | 결제 id, pk |
order_id | uuid | 주문 id, fk |
amount | int | 결제 금액 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deletd | bool | true: 삭제 |
8. AI 요청 기록 (p_ai_requests
)
필드 이름 | 데이터 타입 | 설명 |
---|
ai_requests_id | uuid | 테이블 id, pk |
question | varchar(200) | ai 질문 내용 |
answer | varchar(200) | ai 답변 내용 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
9. 리뷰
필드 이름 | 데이터 타입 | 설명 |
---|
review_id | UUID | 테이블 id, pk |
comment | varchar(200) | 리뷰 코멘트 |
rating | int | 평점 |
order_id | UUID | 주문 id |
user_id | UUID | 사용자 id |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
10. Address (embeddable)
필드 이름 | 데이터 타입 | 설명 |
---|
address_id | uuid | 테이블 id, pk |
postcode | varchar(6) | 우편번호 |
address | varchar(200) | 집 주소 |
detail_address | varchar(200) | 상세주소 |
| | |
created_at | timestamp | 레코드 생성 시간 |
created_by | varchar(100) | 레코드 생성자(username) |
updated_at | timestamp | 레코드 수정 시간 |
updated_by | varchar(100) | 레코드 수정자(username) |
deleted_at | timestamp | 레코드 삭제 시간 |
deleted_by | varchar(100) | 레코드 삭제자 (username) |
deleted | bool | true: 삭제 |
3. ERD 명세서

4. 인프라 설계서
프로젝트 구조

CI/CD 구조
