Skip to content

dst2701/btl_web_github

Repository files navigation

Sneaker Hub (BTL Web Nhóm 12)

Sneaker Hub là nền tảng thương mại điện tử chuyên cung cấp giày thể thao, thiết kế với phong cách Dark Mode hiện đại. Dự án được triển khai theo mô hình MVC chặt chẽ.

1. Công nghệ và Framework

  • Ngôn ngữ: Java 17
  • Framework Chính: Spring Boot 3.x, Spring Data JPA, Hibernate, Spring Security.
  • Frontend: Thymeleaf, HTML5, CSS3 nguyên bản (Hạn chế tối đa JavaScript ngoài các tương tác thiết yếu).
  • Cơ sở dữ liệu: MySQL 8.x
  • Khác: OpenHTMLToPDF (Xuất hóa đơn PDF), Bean Validation.

2. Cấu trúc Dự án (MVC)

  • controller/: Tiếp nhận Request, điều hướng luồng xử lý phân tách rõ ràng giữa Khách hàng (Customer) và Quản trị viên (Admin).
  • service/: Chứa Business Logic (xử lý giỏ hàng DB, tính toán tổng tiền, xử lý upload/URL ảnh, tự động tạo biến thể sản phẩm).
  • repository/: Giao tiếp với MySQL thông qua Spring Data JPA.
  • entity/: Mapping trực tiếp với Database (User, Product, Order, ProductImage, ProductVariant, v.v.).
  • dto/: Đối tượng chuyển giao dữ liệu (Data Transfer Object) cho Form nhập liệu.
  • config/: Cấu hình Security phân quyền, Routing.

3. Chức năng Chính

Customer (Khách mua hàng)

  • Xem thông tin sản phẩm và theo dõi hình ảnh (Thumbnail trượt).
  • Chọn biến thể (Màu sắc, kích cỡ).
  • Giỏ hàng lưu trữ DB, tự động cập nhật tổng tiền bằng Checkbox.
  • Thanh toán, quản lý đơn hàng hóa đơn và Xuất hóa đơn PDF.
  • Quản lý và cập nhật thông tin Profile.

Admin (Quản trị viên)

  • Dashboard: Thống kê lượng sản phẩm, đơn hàng, khách hàng.
  • Quản lý Sản phẩm (CRUD):
    • Tạo mới với Upload trực tiếp ảnh máy chủ hoặc dùng Link (URL).
    • Gen tự động Biến thể (SKU, Size, Color, Stock) với 1 cú click.
  • Quick Add: Thêm cực nhanh Danh mục, Size, Màu sắc thông qua Modal.
  • Cập nhật linh hoạt Trạng thái giao hàng của Đơn hàng (Pending, Shipped, etc.).
  • Quản lý thông tin tài khoản Admin.

4. Hướng dẫn Chạy Dự án

  1. Database: Tạo DB btlweb1 và import script shoes_shop_mysql_ltw.sql. (Nhớ cập nhật thông tin Root Password MySQL của máy bạn trong file src/main/resources/application.properties).
  2. Khởi chạy: Mở project trong IntelliJ IDEA, chạy trực tiếp hoặc dùng lệnh lệnh Terminal ./mvnw spring-boot:run.
  3. Truy cập: http://localhost:8080
    • TK Customer: staff / 123456
    • TK Admin: admin / admin123

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors