# πΏ Ticketing
μν μλ§€ μ¬μ΄νΈλ₯Ό λμ©λ νΈλν½μ λμν μ μλλ‘ μ€κ³.
## π νλ‘μ νΈ κΈ°κ°
### 22.04.13 ~
- κΈ°ν λ° μ€κ³ : 22.04.13 ~
- νλ‘μ νΈ κ΅¬ν :
## π― νλ‘μ νΈ μ£Όμ κ΄μ¬μ¬
- OOP(κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°)μ μ₯μ μ μ΅λν νμ©
- ν
μ€νΈ μ½λλ₯Ό ν΅ν λ―Ώμ μ μλ μ½λ μμ±
- λμ©λ νΈλν½μ κ³ λ €ν νμ₯ κ°λ₯ν μ€κ³ λ° μ±λ₯ νλ
- μ½λ리뷰λ₯Ό ν΅ν΄ μ½λ νμ§ ν₯μ
- μ½λ 컨벀μ
μ€μνμ¬ μ½λ ν΅μΌμ± μ μ§
## π κΈ°μ μ€ν
- Java 11
- Spring Boot 2.6.7 (λΉμ μ΅μ GA λ²μ )
- Gradle Kotlin DSL
- Spring Security
- Junit 5
- Hibernate / SpringJPA
- MySQL 8.0
- Redis
## Wiki
- [Git Branch μ λ΅](https://github.com/f-lab-edu/Ticketing/wiki#-git-branch-%EC%A0%84%EB%9E%B5)
- [Code Convention](https://github.com/f-lab-edu/Ticketing/wiki#-code-convention)
- [ν¨ν€μ§ ꡬ쑰](https://github.com/f-lab-edu/Ticketing/wiki#-%ED%8C%A8%ED%82%A4%EC%A7%80-%EA%B5%AC%EC%A1%B0)
- [Use Case](https://github.com/f-lab-edu/Ticketing/wiki/Use-Case)
- [Prototype](https://github.com/f-lab-edu/Ticketing/wiki/Prototype)
- [Issue Posting](https://github.com/f-lab-edu/Ticketing/wiki/Issue-Posting)
## π§© ERD
``` mermaid
erDiagram
MOVIE ||--o{ MOVIE_TIME : ""
MOVIE {
bigint id PK "μν ID"
varchar title "μνμ λͺ©"
int running_time "λ¬λνμ"
datetime deleted_at "μμ μΌμ"
datetime created_at "λ±λ‘μΌμ"
datetime updated_at "μμ μΌμ"
}
THEATER ||--o{ MOVIE_TIME : ""
THEATER ||--|{ SEAT : ""
THEATER {
bigint id PK "μμκ΄ ID"
int theater_number "μμκ΄ λ²νΈ"
int seat_count "μ’μμ"
datetime deleted_at "μμ μΌμ"
datetime created_at "λ±λ‘μΌμ"
datetime updated_at "μμ μΌμ"
}
SEAT ||--o{ TICKET : ""
SEAT {
bigint id PK "μ’μ ID"
bigint theater_id FK "μμκ΄ ID"
int column "μ΄"
int row "ν"
datetime deleted_at "μμ μΌμ"
datetime created_at "λ±λ‘μΌμ"
datetime updated_at "μμ μΌμ"
}
MOVIE_TIME ||--o{ TICKET : ""
MOVIE_TIME {
bigint id PK "μμμκ°ν ID"
bigint movie_id FK "μν ID"
bigint theater_id FK "μμκ΄ ID"
int round "νμ°¨"
time start_at "μμ μκ°"
time end_at "μ’
λ£ μκ°"
datetime deleted_at "μμ μΌμ"
datetime created_at "λ±λ‘μΌμ"
datetime updated_at "μμ μΌμ"
}
TICKET {
bigint id PK "ν°μΌ ID"
bigint seat_id FK "μ’μ ID"
bigint movie_time_id FK "μμμκ°ν ID"
bigint payment_id "κ²°μ ID"
varchar status "μν - νλ§€κ°λ₯/μμ½/"
int ticket_price "κ°κ²©"
datetime deleted_at "μμ μΌμ"
datetime created_at "λ±λ‘μΌμ"
datetime updated_at "μμ μΌμ"
}
TICKET }|--|| PAYMENT : ""
PAYMENT {
bigint id PK "κ²°μ ID"
bigint user_alternate_id "μ μ λ체ID"
varchar tid "μΉ΄μΉ΄μ€νμ΄ κ²°μ κ³ μ λ²νΈ"
varchar movie_title "μνμ λͺ©"
varchar type "κ²°μ νμ
- μ) λ€μ΄λ²νμ΄, μΉ΄μΉ΄μ€νμ΄"
varchar status "μν - μλ£/νλΆ"
varchar failed_message "μ€ν¨μ¬μ "
varchar payment_number "μλ§€λ²νΈ"
int total_price "κ²°μ κΈμ‘"
datetime deleted_at "μμ μΌμ"
datetime created_at "κ²°μ μΌμ"
datetime updated_at "μμ μΌμ"
}
USER ||--o{ PAYMENT : ""
USER {
bigint id "νμ"
bigint alternate_id "λ체ID"
varchar name "μ΄λ¦"
varchar email "μ΄λ©μΌ"
varchar password "λΉλ°λ²νΈ"
varchar grade "λ±κΈ - κ³ κ°/μμ§μ"
varchar phone "ν΄λν° λ²νΈ"
datetime deleted_at "νν΄μΌμ"
datetime created_at "κ°μ
μΌμ"
datetime updated_at "μμ μΌμ"
}
```