Tác giả: Dương Nguyễn Phú Cường
Email: nentangtoituonglai@gmail.com
Phiên bản: 1.1
Với mục đích cung cấp các Kiến thức Nền tảng về Lập trình Web, Di động, thiết kế cơ sở dữ liệu... Giúp các bạn Học sinh, Sinh viên có các kiến thức Nền tảng để có thể áp dụng khi làm các Đồ án/Luận văn, các dự án Outsource/Outside/Freelancer, và ra trường có thể apply vào các công ty làm việc được ngay.
Mình dựa trên các kinh nghiệm từ khi thực hiện các dự án Phần mềm, đúc kết được thành một bản mô tả Database tuy căn bản nhưng cũng có thể đáp ứng được các nhu cầu cần có về một trang web Thương mại điện tử có Quản lý Kho hàng với số lượng Tồn kho theo thời gian thực, có thể áp dụng vào các dự án Thương mại (production) thực tế được.
Sau khi có các Kiến thức Nền tảng, các bạn có thể vững vàng đi tiếp con đường của mình, chúc Thành công 🧡💛💚💙💜
Database được thiết kế để có thể thực hiện các chức năng:
Bảng chứa dữ liệu về Quyền | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
name | VARCHAR(500) | ✔ | Tên Quyền | ||||||||
display_name | VARCHAR(500) | NULL | Tên Quyền thân thiện (dễ hiểu cho người dùng) | ||||||||
guard_name | VARCHAR(500) | ✔ | Tên guard bảo vệ | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu xác định Vai trò nào <-> Có những Quyền nào? | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
role_id | BIGINT(20) | ✔ | ✔ | ✔ | (FK) Vai trò nào? | ||||||
permission_id | BIGINT(20) | ✔ | ✔ | ✔ | (FK) Quyền nào? |
Bảng chứa dữ liệu về Vai trò | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
name | VARCHAR(500) | ✔ | Tên Vai trò | ||||||||
display_name | VARCHAR(500) | NULL | Tên Vai trò thân thiện (dễ hiểu với người dùng) | ||||||||
guard_name | VARCHAR(500) | ✔ | Tên guard bảo vệ | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu xác định Người dùng nào <-> Có những Quyền nào? | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
user_id | BIGINT(20) | ✔ | ✔ | ✔ | (FK) Người dùng nào? | ||||||
permission_id | BIGINT(20) | ✔ | ✔ | ✔ | (FK) Quyền nào? |
Bảng chứa dữ liệu xác định Người dùng nào <-> Có những Vai trò nào? | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
user_id | BIGINT(20) | ✔ | ✔ | ✔ | (FK) Người dùng nào? | ||||||
role_id | BIGINT(20) | ✔ | ✔ | ✔ | (FK) Vai trò nào? |
Bảng chứa dữ liệu về Người dùng trong Hệ thống | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
username | VARCHAR(191) | ✔ | Tên đăng nhập | ||||||||
password | VARCHAR(500) | ✔ | Mật khẩu (mặc định: user@123) | ||||||||
last_name | VARCHAR(255) | ✔ | Họ và tên lót | ||||||||
first_name | VARCHAR(255) | ✔ | Tên | ||||||||
gender | TINYINT(3) | ✔ | ✔ | 0 | Giới tính: #0: Nam; #1: Nữ | ||||||
VARCHAR(191) | ✔ | ||||||||||
birthday | DATETIME | NULL | Ngày sinh | ||||||||
avatar | VARCHAR(500) | NULL | Hình đại diện | ||||||||
code | VARCHAR(255) | NULL | Mã CMND / CCCD | ||||||||
job_title | VARCHAR(255) | NULL | Chức danh | ||||||||
department | VARCHAR(255) | NULL | Phòng | ||||||||
manager_id | BIGINT(20) | ✔ | NULL | Người phụ trách Quản lý | |||||||
phone | VARCHAR(25) | NULL | Số điện thoại | ||||||||
address1 | VARCHAR(500) | NULL | Địa chỉ 1 | ||||||||
address2 | VARCHAR(500) | NULL | Địa chỉ 2 | ||||||||
city | VARCHAR(255) | NULL | Thành phố | ||||||||
state | VARCHAR(255) | NULL | Bang | ||||||||
postal_code | VARCHAR(15) | NULL | Mã bưu chính | ||||||||
country | VARCHAR(255) | NULL | Quốc gia | ||||||||
remember_token | VARCHAR(255) | NULL | Token ghi nhớ Đăng nhập | ||||||||
active_code | VARCHAR(255) | NULL | Mã kích hoạt | ||||||||
status | TINYINT(4) | NULL | Trạng thái: #0: chưa kích hoạt; #1: đã kích hoạt | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Chuyên mục (dùng để phân loại/phân nhóm Sản phẩm) | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
category_code | VARCHAR(50) | ✔ | Mã chuyên mục | ||||||||
category_name | VARCHAR(500) | ✔ | Tên chuyên mục | ||||||||
description | TEXT | NULL | Diễn giải | ||||||||
image | TEXT | NULL | Ảnh đại diện | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Table lưu thông tin Khách hàng nào được áp dụng Voucher nào? Có thể lập danh sách Khách hàng bằng cách: - Tạo chức năng tự động tạo Voucher cho Khách hàng thân thiết (mua nhiều hàng hóa trong năm, ...) khi đến sinh nhật của họ. - Người thân của Giám đốc ;) |
|||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
customer_id | BIGINT(20) | ✔ | ✔ | ✔ | Khách hàng nào? | ||||||
voucher_id | BIGINT(20) | ✔ | ✔ | ✔ | Voucher nào áp dụng? | ||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về Khách hàng | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | ||||||
username | VARCHAR(191) | ✔ | Tên đăng nhập | ||||||||
password | VARCHAR(500) | ✔ | Mật khẩu (mặc định: customer@123) | ||||||||
last_name | VARCHAR(255) | ✔ | Họ và tên lót | ||||||||
first_name | VARCHAR(255) | ✔ | Tên | ||||||||
gender | TINYINT(4) | ✔ | 0 | Giới tính: #0: Nam; #1: Nữ | |||||||
VARCHAR(191) | ✔ | ||||||||||
birthday | DATETIME | NULL | Ngày sinh | ||||||||
avatar | VARCHAR(500) | NULL | Ảnh đại diện | ||||||||
code | VARCHAR(255) | ✔ | Mã CMND / CCCD | ||||||||
company | VARCHAR(255) | NULL | Công ty | ||||||||
phone | VARCHAR(25) | NULL | Số điện thoại | ||||||||
billing_address | VARCHAR(500) | NULL | Địa chỉ Thanh toán | ||||||||
shipping_address | VARCHAR(500) | NULL | Địa chỉ Giao hàng | ||||||||
city | VARCHAR(255) | NULL | Thành phố | ||||||||
state | VARCHAR(255) | NULL | Bang | ||||||||
postal_code | VARCHAR(15) | NULL | Mã bưu chính | ||||||||
country | VARCHAR(255) | NULL | Quốc gia | ||||||||
remember_token | VARCHAR(255) | NULL | Token ghi nhớ đăng nhập | ||||||||
activate_code | VARCHAR(255) | NULL | Mã kích hoạt | ||||||||
status | TINYINT(4) | NULL | Trạng thái: #0: chưa kích hoạt; #1: đã kích hoạt | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Sản phẩm được xuất trong Phiếu Xuất | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
export_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc phiếu Xuất nào? | ||||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Sản phẩm nào xuất đi? | ||||||
quantity | DECIMAL(18,4) | ✔ | 0.0000 | Số lượng xuất | |||||||
unit_price | DECIMAL(19,4) | ✔ | 0.0000 | Đơn giá xuất | |||||||
import_detail_id | BIGINT(20) | ✔ | ✔ | ✔ | Xuất từ chi tiết nhập kho nào? |
Bảng chứa dữ liệu về các Phiếu Xuất | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
store_id | BIGINT(20) | ✔ | ✔ | ✔ | Xuất từ kho hàng nào? | ||||||
employee_id | BIGINT(20) | ✔ | ✔ | ✔ | Nhân viên nào lập phiếu xuất? | ||||||
export_date | DATETIME | ✔ | Ngày Xuất kho | ||||||||
description | TEXT | NULL | Diễn giải | ||||||||
order_id | BIGINT(20) | ✔ | ✔ | ✔ | Xuất cho đơn hàng nào? | ||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Sản phẩm được nhập trong Phiếu Nhập | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
import_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc phiếu Nhập nào? | ||||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Sản phẩm nào nhập vào? | ||||||
quantity | DECIMAL(18,4) | ✔ | 0.0000 | Số lượng nhập | |||||||
unit_price | DECIMAL(19,4) | ✔ | 0.0000 | Đơn giá nhập |
Bảng chứa dữ liệu về các Phiếu Nhập | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
store_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc kho hàng nào? | ||||||
employee_id | BIGINT(20) | ✔ | ✔ | ✔ | Nhân viên nào lập phiếu nhập? | ||||||
import_date | DATETIME | ✔ | Ngày Nhập kho | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Sản phẩm đã mua trong Đơn hàng | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
order_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc đơn hàng nào? | ||||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Sản phẩm nào? | ||||||
quantity | DECIMAL(18,4) | ✔ | 0.0000 | Số lượng sản phẩm trong đơn hàng | |||||||
unit_price | DECIMAL(19,4) | ✔ | 0.0000 | Giá bán của Sản phẩm trong Đơn hàng | |||||||
discount_percentage | FLOAT | ✔ | 0 | Giảm giá theo % từng Sản phẩm trong Đơn hàng | |||||||
discount_amout | DOUBLE | ✔ | 0 | Giảm giá theo Số tiền cụ thể cho từng Sản phẩm trong Đơn hàng | |||||||
order_detail_status | VARCHAR(50) | NULL | Trạng thái của từng Sản phẩm trong Đơn hàng | ||||||||
date_allocated | DATETIME | NULL | Ngày Sản phẩm này đã chuyển đến tay Khách hàng |
Bảng chứa dữ liệu về các Đơn hàng | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
employee_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc nhân viên nào xử lý? | ||||||
customer_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc khách hàng nào? | ||||||
order_date | DATETIME | ✔ | Ngày tạo Đơn hàng | ||||||||
shipped_date | DATETIME | NULL | Ngày giao hàng | ||||||||
ship_name | VARCHAR(50) | ✔ | Họ tên Người giao hàng | ||||||||
ship_address1 | VARCHAR(500) | ✔ | Giao hàng đến Địa chỉ 1 | ||||||||
ship_address2 | VARCHAR(500) | NULL | Giao hàng đến Địa chỉ 2 | ||||||||
ship_city | VARCHAR(255) | ✔ | Giao hàng đến Thành phố | ||||||||
ship_state | VARCHAR(255) | NULL | Giao hàng đến Bang | ||||||||
ship_postal_code | VARCHAR(50) | NULL | Giao hàng đến Mã bưu chính | ||||||||
ship_country | VARCHAR(255) | ✔ | Giao hàng đến Quốc gia | ||||||||
shipping_fee | DECIMAL(19,4) | ✔ | 0.0000 | Phí giao hàng | |||||||
payment_type_id | BIGINT(20) | ✔ | ✔ | ✔ | 0 | Phương thức Thanh toán nào? | |||||
paid_date | DATETIME | NULL | Ngày thanh toán | ||||||||
order_status | VARCHAR(50) | ✔ | Trạng thái: #New: mới tạo Đơn hàng -> #On Hold: đang xử lý -> #Shipped: đã giao hàng -> #Complete: đã hoàn tất đơn hàng (khách đã thanh toán và nhận hàng xong) | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Phương thức Thanh toán | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
payment_code | VARCHAR(50) | ✔ | Mã hình thức thanh toán | ||||||||
payment_name | VARCHAR(500) | ✔ | Tên hình thức thanh toán | ||||||||
description | TEXT | NULL | Diễn giải | ||||||||
image | TEXT | NULL | Ảnh đại diện | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Chuyên mục (dùng để phân loại/phân nhóm các Bài viết/Trang) | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
post_category_code | VARCHAR(50) | ✔ | Mã chuyên mục | ||||||||
post_category_name | VARCHAR(500) | ✔ | Tên chuyên mục | ||||||||
description | MEDIUMTEXT | NULL | Diễn giải | ||||||||
image | MEDIUMTEXT | NULL | Ảnh đại diện | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Bài viết PR trên trang web | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
post_slug | TEXT | ✔ | '' | Đường dẫn của bài viết | |||||||
post_title | TEXT | ✔ | '' | Tiêu đề bài viết | |||||||
post_content | MEDIUMTEXT | NULL | Nội dung bài viết | ||||||||
post_excerpt | MEDIUMTEXT | NULL | Diễn giải về Cấu hình | ||||||||
post_type | VARCHAR(500) | ✔ | 'post' | Loại bài viết: #1: bài viết, #2: trang cố định | |||||||
post_status | VARCHAR(500) | ✔ | 'draft' | Trạng thái bài viết: #draft: viết nháp; #publish: đăng lên trang web; ... | |||||||
post_image | MEDIUMTEXT | NULL | Ảnh đại diện bài viết | ||||||||
user_id | BIGINT(20) | ✔ | ✔ | ✔ | |||||||
post_category_id | BIGINT(20) | ✔ | ✔ | NULL | Thuộc chuyên mục nào? | ||||||
created_at | TIMESTAMP | ✔ | CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP() | Ngày tạo mới | |||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Table chứa thông tin các sản phẩm đang được khuyến mãi trong khoảng thời gian (từ ngày - đến
ngày hết hạn). Thường dùng cho các chức năng: - Hiển thị danh sách Sản phẩm với Giá tiền cũ và Giá tiền mới. - Hiển thị danh sách Sản phẩm với % được giảm giá... |
|||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc sản phẩm nào? | ||||||
discount_name | VARCHAR(500) | ✔ | Tên Sự kiện Giảm giá | ||||||||
discount_amount | DOUBLE | ✔ | 0 | % giảm giá hoặc số tiền giảm giá cụ thể | |||||||
is_fixed | BIT(1) | ✔ | b'0' | #True(1): giảm giá theo số tiền cụ thể; #False(0) giảm giá theo % | |||||||
start_date | TIMESTAMP | ✔ | '0000-00-00 00:00:00' | Ngày bắt đầu Giảm giá | |||||||
end_date | TIMESTAMP | ✔ | '0000-00-00 00:00:00' | Ngày kết thúc Giảm giá |
Bảng chứa dữ liệu về các Hình ảnh liên quan của Sản phẩm (1 Sản phẩm nên chụp nhiều góc cạnh để Khách hàng có cái nhìn khách quan) | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Thuộc sản phẩm nào? | ||||||
image | VARCHAR(500) | ✔ | Ảnh sản phẩm |
Bảng chứa dữ liệu các Đánh giá về Sản phẩm | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Sản phẩm nào được Đánh giá? | ||||||
customer_id | BIGINT(20) | ✔ | ✔ | ✔ | 0 | Khách hàng nào đánh giá? | |||||
rating | FLOAT | ✔ | Số điểm đánh giá: từ 0 -> 5 sao | ||||||||
comment | TEXT | ✔ | Nội dung Đánh giá | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Table lưu thông tin Sản phẩm nào được áp dụng Voucher nào? | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
product_id | BIGINT(20) | ✔ | ✔ | ✔ | Sản phẩm nào? | ||||||
voucher_id | BIGINT(20) | ✔ | ✔ | ✔ | Voucher nào áp dụng? | ||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Sản phẩm | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
product_code | VARCHAR(25) | ✔ | Mã sản phẩm | ||||||||
product_name | VARCHAR(50) | ✔ | Tên sản phẩm | ||||||||
image | TEXT | NULL | Ảnh đại diện | ||||||||
short_description | VARCHAR(250) | NULL | Mô tả ngắn | ||||||||
description | TEXT | NULL | Mô tả | ||||||||
standard_cost | DECIMAL(19,4) | ✔ | 0.0000 | Giá nhập | |||||||
list_price | DECIMAL(19,4) | ✔ | 0.0000 | Giá niêm yết (giá bán) | |||||||
quantity_per_unit | VARCHAR(50) | NULL | Số lượng hiện có của mỗi Sản phẩm (số lượng thực có trong kho) | ||||||||
discontinued | TINYINT(4) | ✔ | 0 | Xác định Sản phẩm này là Ngưng bán? | |||||||
is_featured | BIT(1) | ✔ | b'0' | Có phải là Sản phẩm nổi bật không? | |||||||
is_new | BIT(1) | ✔ | b'0' | Có phải là Sản phẩm mới nhập về không? | |||||||
category_id | BIGINT(20) | ✔ | ✔ | NULL | Thuộc chuyên mục nào? | ||||||
supplier_id | BIGINT(20) | ✔ | ✔ | NULL | Thuộc nhà cung cấp nào? | ||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Cấu hình sử dụng trong Hệ thống | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
group | VARCHAR(500) | ✔ | Phân nhóm Cấu hình | ||||||||
key | VARCHAR(500) | ✔ | ✔ | Mã Cấu hình | |||||||
value | TEXT | ✔ | Giá trị Cấu hình | ||||||||
description | TEXT | Diễn giải về Cấu hình | |||||||||
created_at | TIMESTAMP | Ngày tạo mới | |||||||||
updated_at | TIMESTAMP | Ngày cập nhật |
Bảng chứa dữ liệu về Kho hàng | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
store_code | VARCHAR(50) | ✔ | Mã kho | ||||||||
store_name | VARCHAR(500) | ✔ | Tên kho | ||||||||
description | TEXT | NULL | Diễn giải | ||||||||
image | TEXT | NULL | Ảnh đại diện | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Bảng chứa dữ liệu về các Nhà cung cấp | |||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
supplier_code | VARCHAR(50) | ✔ | Mã nhà cung cấp | ||||||||
supplier_name | VARCHAR(500) | ✔ | Tên nhà cung cấp | ||||||||
description | TEXT | NULL | Diễn giải | ||||||||
image | TEXT | NULL | Ảnh đại diện | ||||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật |
Table lưu thông tin Danh sách các phiếu Khuyến mãi, Giảm giá. Thông thường: 1. Voucher (phiếu khuyến mãi): giảm theo số tiền cụ thể 2. Coupon (phiếu giảm giá %): thường giảm theo % giá trị đơn hàng |
|||||||||||
Column name | DataType | PK | FK | NN | UQ | BIN | UN | ZF | AI | Default | Comment |
---|---|---|---|---|---|---|---|---|---|---|---|
id | BIGINT(20) | ✔ | ✔ | ✔ | ✔ | Khóa chính | |||||
voucher_code | VARCHAR(500) | ✔ | Mã voucher | ||||||||
voucher_name | VARCHAR(500) | ✔ | Tên voucher | ||||||||
description | TEXT | NULL | Mô tả voucher | ||||||||
uses | INT(10) | ✔ | ✔ | 0 | Số lượng voucher đã sử dụng | ||||||
max_uses | INT(10) | ✔ | ✔ | 0 | Số lượng tối đa voucher có thể sử dụng. Nếu =0 là không xác định | ||||||
max_uses_user | INT(10) | ✔ | ✔ | 0 | Người dùng có thể sử dụng voucher này bao nhiêu lần? Nếu =0 là không xác định | ||||||
type | TINYINT(3) | ✔ | ✔ | 1 | Loại voucher: #1: voucher, #2: coupon | ||||||
discount_amount | DOUBLE | ✔ | ✔ | 0 | % giảm giá hoặc số tiền giảm giá cụ thể | ||||||
is_fixed | BIT(1) | ✔ | b'1' | #True(1): giảm giá theo số tiền cụ thể; #False(0): giảm giá theo % | |||||||
start_date | TIMESTAMP | ✔ | '0000-00-00 00:00:00' | Ngày bắt đầu voucher | |||||||
end_date | TIMESTAMP | ✔ | '0000-00-00 00:00:00' | Ngày kết thúc voucher | |||||||
created_at | TIMESTAMP | NULL | Ngày tạo mới | ||||||||
updated_at | TIMESTAMP | NULL | Ngày cập nhật | ||||||||
deleted_at | TIMESTAMP | NULL | Ngày xóa |