Giới thiệu chung: Dự án được phát triển bằng ngôn ngữ Java, framework Spring Boot, phù hợp cho các bạn sinh viên làm đồ án chuyên ngành hoặc những người muốn nghiên cứu về hệ thống đặt chỗ (Booking System).
Các tính năng chính:
Phía người dùng (Customer):
Tìm kiếm chuyến tàu (Một chiều/Khứ hồi).
Chọn toa tàu, chọn ghế trực quan (theo trạng thái ghế trống/đã đặt).
Đặt vé và quản lý thông tin hành khách.
Thanh toán trực tuyến tích hợp API VNPAY.
Tra cứu và hoàn vé (Refund request).
Phía quản trị (Admin):
Quản lý Ga tàu (Stations), Tuyến đường (Routes).
Quản lý Tàu (Trains), Toa (Carriages) và Loại ghế (Seat Types).
Thiết lập Chuyến tàu (Trips), lịch trình, giá vé.
Quản lý vé đã bán, quản lý yêu cầu hoàn tiền của khách.
Thống kê doanh thu qua ví Admin.
Công nghệ sử dụng:
Backend: Java Spring Boot, Spring Data JPA.
Database: MySQL.
Frontend: Thymeleaf, Bootstrap, HTML/CSS/JS.
Security: Filter-based Authentication (Phân quyền Admin/User).
Tích hợp: VNPAY API.
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
Yêu cầu hệ thống: Cài đặt Java JDK 17+, MySQL Server.
Cấu hình Database:
Tạo database tên train_ticket_office trong MySQL.
Mở file src/main/resources/application.properties để chỉnh sửa username/password MySQL của bạn.
Chạy dự án:
Mở project bằng IntelliJ IDEA hoặc Eclipse.
Chạy file TrainTicketOfficeApplication.java.
Dữ liệu mẫu: Hệ thống có tích hợp DataInitializer tự động tạo dữ liệu mẫu (Admin, User, Ga tàu, Tuyến đường) khi chạy lần đầu.
Tài khoản Admin:
[email protected] / pass: password123 (hoặc kiểm tra trong code config).