| Key | Value | Constraints | Description | | --- | --- | --- | --- | | user_id | LONG | PK, AUTO_INCREMENT | 사용자 ID | | username | VARCHAR(255) | NOT NULL | 사용자 이름 | | email | VARCHER(255) | NOT NULL, UNIQUE | 사용자 이메일 | | password | VARCHER(255) | NOT NULL | 패스워드 | | role | VARCHER(255) | NOT NULL | 권한(마스터, 허브 관리자, 배송 담당자 본인, 허브 소속 업체) | | is_delete | BOOLEAN | DEFAULT false | 논리적 삭제 플래그 | | created_at | TIMESTAMP | NULL | 레코드 생성 시간 | | create_by | VARCHAR(100) | NULL | 레코드 생성자 (username) | | updated_at | TIMESTAMP | NULL | 레코드 수정 시간 | | updated_by | VARCHAR(100) | NULL | 레코드 수정자 (username) | | deleted_at | TIMESTAMP | NULL | 레코드 삭제 시간 | | deleted_by | VARCHAR(100) | NULL | 삭제자 |
| Key | Value | Constraints | Description |
|---|---|---|---|
| delivery_manager_id | UUID | PK | 배송 담당자 ID |
| user_id | BIGINT | FK | 유저 ID |
| hub_id | UUID | FK | 허브 ID |
| manager_type | VARCHAR(50) | NOT NULL | 배송 담당자 타입(허브이동, 업체배송) |
| slack_id | VARCHAR(100) | NOT NULL | 슬랙 ID |
| is_delete | BOOLEAN | 기본값 false | 삭제여부 |
| created_at | TIMESTAMP | NULL | 레코드 생성 시간 |
| created_by | VARCHAR(100) | NULL | 레코드 생성자(username) |
| updated_at | TIMESTAMP | NULL | 레코드 수정 시간 |
| updated_by | VARCHAR(100) | NULL | 레코드 수정자(username) |
| deleted_at | TIMESTAMP | NULL | 레코드 삭제 시간 |
| deleted_by | VARCHAR(100) | NULL | 레코드 삭제자(username) |
| Key | Value | Constraints | Description | | --- | --- | --- | --- | | hub_id | UUID | PK | 허브 고유 식별자 | | user_id | BIGINT | FK | 허브 관리자 ID | | name | VARCHER(255) | NOT NULL, UNIQUE | 허브 이름 | | address | VARCHER(255) | NOT NULL, UNIQUE | 허브 주소 | | latitude | VARCHER(255) | NOT NULL | 위도 | | longitude | VARCHER(255) | NOT NULL | 경도 | | is_delete | BOOLEAN | DEFAULT false | 논리적 삭제 플래그 | | created_at | TIMESTAMP | NULL | 레코드 생성 시간 | | create_by | VARCHAR(100) | NULL | 레코드 생성자 (username) | | updated_at | TIMESTAMP | NULL | 레코드 수정 시간 | | updated_by | VARCHAR(100) | NULL | 레코드 수정자 (username) | | deleted_at | TIMESTAMP | NULL | 레코드 삭제 시간 | | deleted_by | VARCHAR(100) | NULL | 삭제자 |
| Key | Value | Constraints | Description |
|---|---|---|---|
| hub_route_id | UUID | PK | 허브 이동 정보 ID |
| departure_hub_id | UUID | NOT NULL | 출발지 허브 ID |
| arrival_hub_id | UUID | NOT NULL | 도착지 허브 ID |
| duration | TIMESTAMP | NOT NULL | 소요 시간 |
| route_info | TEXT | NOT NULL | 이동 경로 |
| is_delete | BOOLEAN | 기본값 false | 삭제여부 |
| created_at | TIMESTAMP | NULL | 레코드 생성 시간 |
| created_by | VARCHAR(100) | NULL | 레코드 생성자(username) |
| updated_at | TIMESTAMP | NULL | 레코드 수정 시간 |
| updated_by | VARCHAR(100) | NULL | 레코드 수정자(username) |
| deleted_at | TIMESTAMP | NULL | 레코드 삭제 시간 |
| deleted_by | VARCHAR(100) | NULL | 레코드 삭제자(username) |
| Key | Value | Constraints | Description |
|---|---|---|---|
| order_id | UUID | PK | 주문 ID |
| receiver_id | UUID | FK | 수령 업체 ID |
| supplier_id | UUID | NOT NULL | 공급 업체 ID |
| delivery_id | UUID | NOT NULL | 배달 ID |
| total_price | DECIMAL(10,2) | NOT NULL | 총 금액 |
| is_delete | BOOLEAN | 기본값 false | 삭제여부 |
| created_at | TIMESTAMP | NULL | 레코드 생성 시간 |
| created_by | VARCHAR(100) | NULL | 레코드 생성자(username) |
| updated_at | TIMESTAMP | NULL | 레코드 수정 시간 |
| updated_by | VARCHAR(100) | NULL | 레코드 수정자(username) |
| deleted_at | TIMESTAMP | NULL | 레코드 삭제 시간 |
| deleted_by | VARCHAR(100) | NULL | 레코드 삭제자(username) |
| --- | --- | --- | --- |
| --- | --- | --- | --- |
| --- | --- | --- | --- |