카테고리 없음
심화 CH.4 재고관리 팀 프로젝트 SA
wonow_
2024. 9. 6. 11:58
https://www.notion.so/teamsparta/108ad820489a477f816c90d3b8d38a45?pvs=25
영역전개 (領域展開): 『무결성』 (無缺性) | Notion
Built with Notion, the all-in-one connected workspace with publishing capabilities.
teamsparta.notion.site
인프라 설계도
API 명세서
노션 링크 참고해주세요
ERD 명세서
테이블 명세서
주문(p_order)
필드 이름 설명 데이터 타입 도메인 필수여부 키
order_id | 주문 ID | VARCHAR | 27 | Y | PK |
seller_company_id | 주문 받은 업체 | VARCHAR | 27 | Y | FK |
buyer_company_id | 받는 업체 | VARCHAR | 27 | Y | FK |
is_delete | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
상품(p_product)
필드 이름 설명 데이터 타입 도메인 필수 여부 키
product_id | 상품 ID | VARCHAR | 27 | Y | PK |
company_id | 업체 ID | VARCHAR(27) | 27 | Y | FK |
product_name | 상품 이름 | VARCHAR | Y | ||
is_delete | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
상품 재고(p_product_stock)
필드 이름 설명 데이터 타입 도메인 필수 여부 키
product_stock_id | 상품 ID | VARCHAR | 27 | Y | PK |
product_id | 업체 ID | VARCHAR | 27 | Y | FK |
hub_id | 상품 이름 | VARCHAR | 27 | Y | FK |
stock | 상품 이름 | INT | Y | ||
is_delete | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
배송(p_delivery)
필드 이름 설명 데이터 타입 도메인 필수 여부 키
delivery_id | 상품 ID | VARCHAR | 27 | Y | PK |
delivery_man_id | 배송 담당자 ID | VARCHAR | 27 | N | FK |
status | 배송 현재 상태 | VARCHAR | 27 | Y | |
start_hub_id | 출발 허브 ID | VARCHAR | 27 | Y | |
end_hub_id | 목적지 허브 ID | VARCHAR | 27 | Y | |
address | 배송지 주소 | VARCHAR | 255 | Y | |
receiver | 수령인 | BIGINT | Y | ||
receiver_slack_id | 수령인 슬랙 ID | VARCHAR | Y | ||
is_deleted | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
배송 경로 기록(p_delivery_history)
필드 이름 설명 데이터 타입 도메인 필수여부 키
delivery_history_id | 배송 경로 기록 ID | VARCHAR | 27 | Y | PK |
hub_route_id | 허브 이동 관리 ID | VARCHAR | 27 | Y | FK |
delivery_id | 배송 ID | VARCHAR | 27 | Y | FK |
status | 현재 상태 | VARCHAR | WAITING, HUB_SHIPPING, | ||
HUB_ARRIVED, | |||||
SHIPPING, | |||||
DELIVRED, | Y | ||||
sequence | 순서(시퀀스) | INTEGER | Y | ||
start_hub_id | 출발 허브 ID | VARCHAR | 27 | Y | |
target_hub_id | 도착 허브 ID | VARCHAR | 27 | Y | |
ex_distance | 예상 거리 | INTEGER | Y | ||
ex_duration | 예상 시간 | INTEGER | Y | ||
distance | 실제 거리 | INTEGER | N | ||
duration | 실제 시간 | INTEGER | N | ||
is_delete | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | 100 | Y | |
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | 100 | Y | |
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | 100 | N |
주문 상품 (p_order_product)
필드 이름 설명 데이터 타입 도메인 필수 여부 키
order_product_id | 주문 상품 ID | VARCHAR | 27 | Y | PK |
order_id | 주문 ID | VARCHAR | 27 | Y | FK |
product_id | 상품 ID | VARCHAR | 27 | Y | FK |
count | 수량 | INTEGER | Y | ||
is_deleted | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
업체(p_company)
필드 이름 설명 데이터 타입 도메인 필수여부 키
company_id | 업체 ID | VARCHAR | 27 | Y | PK |
hub_id | 허브 ID | VARCHAR | 27 | Y | FK |
user_id | 유저 ID | BIGINT | Y | FK | |
name | 업체 이름 | VARCHAR | 100 | Y | |
address | 업체 주소 | VARCHAR | 255 | Y | |
type | 업체 타입 | VARCHAR | 생산업체, 수령업체 | ||
is_delete | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
허브(p_hub)
필드 이름 설명 데이터 타입 도메인 필수여부 키
hub_id | 허브 ID | VARCHAR | 27 | Y | PK |
user_id | 유저 ID | BIGINT | Y | FK | |
name | 허브 이름 | VARCHAR | 100 | Y | |
address | 업체 주소 | VARCHAR | 255 | Y | |
latitude | 위도 | DOUBLE | Y | ||
longitude | 경도 | DOUBLE | Y | ||
latitude | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
허브 이동정보 관리(p__hub__route)
필드 이름 설명 데이터 타입 도메인 필수 여부 키
hub_route_id | 허브 이동정보 관리 아이디 | VARCHAR | 27 | Y | PK |
start_hub_id | 시작 허브 ID | VARCHAR | 27 | Y | FK |
target_hub_id | 도착 허브 ID | VARCHAR | 27 | Y | FK |
duration | 소요시간 | INTEGER | Y | ||
is_delete | 삭제 여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 | BIGINT | N |
업체 배송 담당 여부(p_hub_delivery_man)
필드 이름 설명 데이터 타입 도메인 필수여부 키
hub_delivery_man_id | 업체 배송 담당 여부키 | VARCHAR | 27 | Y | PK |
hub_id | 허브 키 | VARCHAR | 27 | Y | FK |
deliveryman_id | 배송 담당자 키 | VARCHAR | 27 | Y | FK |
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 (user_id) | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 (user_id) | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 (user_id) | BIGINT | N |
배송 담당자(p_delivery_man)
필드 이름 설명 데이터 타입 도메인 필수여부 키
deliveryman_id | 배송 담당자 키 | VARCHAR | 27 | Y | PK |
user_id | 유저 키 | BIGINT | Y | FK | |
is_delete | 삭제여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 (user_id) | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 (user_id) | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 (user_id) | BIGINT | N |
유저(p_user)
필드 이름 설명 데이터 타입 도메인 필수여부 키
user_id | 유저 키 | BIGINT | Y | PK | |
username | 유저이름 | VARCHAR | 30 | Y | |
password | 비밀번호 | VARCHAR | Y | ||
role | 유저 역할 | VARCHAR | ROLE_MASTER, | ||
ROLE_HUB_MANAGER, ROLE_HUB_COMPANY, | |||||
ROLE_HUB_DELIVERY_MAN, ROLE_COMPANY_DELIVERY_MAN | Y | ||||
phone_number | 휴대전화 | VARCHAR | Y | ||
slack_id | 슬랙아이디 | VARCHAR | Y | ||
is_delete | 삭제여부 | BOOLEAN | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 (user_id) | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 (user_id) | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 (user_id) | BIGINT | N |
AI연동기록(p_ai)
필드 이름 설명 데이터 타입 도메인 필수여부 키
ai_id | AI 키 | VARCHAR | 27 | Y | PK |
ai_prompt | 프롬프트 키 | VARCHAR | 27 | Y | FK |
question | 질문 | TEXT | Y | ||
answer | 대답 | TEXT | Y | ||
user_id | 받은 배송기사 아이디 | BigInt | N | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 (user_id) | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 (user_id) | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 (user_id) | BIGINT | N |
AI 프롬프트(P_ai_prompt)
필드 이름 설명 데이터 타입 도메인 필수여부 키
ai_prompt | 프롬프트 키 | VARCHAR | 27 | Y | PK |
name | 프롬프트 명 | VARCHAR | Y | ||
prompt | 프롬프트내용 | TEXT | Y | ||
created_at | 레코드 생성 시간 | TIMESTAMP | Y | ||
created_by | 레코드 생성자 (user_id) | BIGINT | Y | ||
updated_at | 레코드 수정 시간 | TIMESTAMP | Y | ||
updated_by | 레코드 수정자 (user_id) | BIGINT | Y | ||
deleted_at | 레코드 삭제 시간 | TIMESTAMP | N | ||
deleted_by | 레코드 삭제자 (user_id) | BIGINT | N |