Open legiaquan opened 3 weeks ago
Trường | Kiểu dữ liệu | Mô tả |
---|---|---|
id | INT | Khóa chính, định danh duy nhất cho mỗi người dùng |
name | VARCHAR(100) | Tên của người dùng |
VARCHAR(100) | Địa chỉ email của người dùng | |
role | VARCHAR(50) | Vai trò của người dùng (e.g., Nhân viên, Quản lý, Nhân sự) |
created_at | TIMESTAMP | Thời gian tạo bản ghi |
updated_at | TIMESTAMP | Thời gian cập nhật bản ghi |
Trường | Kiểu dữ liệu | Mô tả |
---|---|---|
id | INT | Khóa chính, định danh duy nhất cho mỗi bản ghi chấm công |
user_id | INT | Khóa ngoại tham chiếu đến Users.id |
check_in_time | TIMESTAMP | Thời gian check-in |
check_out_time | TIMESTAMP | Thời gian check-out |
date | DATE | Ngày chấm công |
Trường | Kiểu dữ liệu | Mô tả |
---|---|---|
id | INT | Khóa chính, định danh duy nhất cho mỗi yêu cầu nghỉ phép |
user_id | INT | Khóa ngoại tham chiếu đến Users.id |
leave_type | VARCHAR(50) | Loại nghỉ phép (e.g., Nghỉ ốm, Nghỉ phép) |
start_date | DATE | Ngày bắt đầu nghỉ phép |
end_date | DATE | Ngày kết thúc nghỉ phép |
reason | TEXT | Lý do nghỉ phép |
status | VARCHAR(20) | Trạng thái của yêu cầu nghỉ phép (e.g., Đang chờ, Đã duyệt, Bị từ chối) |
created_at | TIMESTAMP | Thời gian tạo bản ghi |
updated_at | TIMESTAMP | Thời gian cập nhật bản ghi |
Trường | Kiểu dữ liệu | Mô tả |
---|---|---|
id | INT | Khóa chính, định danh duy nhất cho mỗi yêu cầu làm thêm giờ |
user_id | INT | Khóa ngoại tham chiếu đến Users.id |
ot_date | DATE | Ngày làm thêm giờ |
hours | DECIMAL(5,2) | Số giờ làm thêm |
reason | TEXT | Lý do làm thêm giờ |
status | VARCHAR(20) | Trạng thái của yêu cầu làm thêm giờ (e.g., Đang chờ, Đã duyệt, Bị từ chối) |
created_at | TIMESTAMP | Thời gian tạo bản ghi |
updated_at | TIMESTAMP | Thời gian cập nhật bản ghi |
Trường | Kiểu dữ liệu | Mô tả |
---|---|---|
id | INT | Khóa chính, định danh duy nhất cho mỗi bản ghi phê duyệt |
request_type | VARCHAR(20) | Loại yêu cầu (e.g., Nghỉ phép, Làm thêm giờ) |
request_id | INT | Khóa ngoại tham chiếu đến LeaveRequests.id hoặc OvertimeRequests.id |
approved_by | INT | Khóa ngoại tham chiếu đến Users.id (người phê duyệt yêu cầu) |
approved_at | TIMESTAMP | Thời gian phê duyệt |
status | VARCHAR(20) | Trạng thái của phê duyệt (e.g., Đã duyệt, Bị từ chối) |
Trường | Kiểu dữ liệu | Mô tả |
---|---|---|
id | INT | Khóa chính, định danh duy nhất cho mỗi báo cáo nhân sự |
report_type | VARCHAR(50) | Loại báo cáo (e.g., Tổng hợp chấm công, Tổng hợp nghỉ phép) |
created_at | TIMESTAMP | Thời gian tạo bản ghi |
generated_by | INT | Khóa ngoại tham chiếu đến Users.id (người tạo báo cáo) |
1. Phân tích và vẽ các bảng quan hệ
Tạo các bảng chính cho hệ thống bao gồm Users, Attendance, LeaveRequests, OvertimeRequests, Approvals, và HRReports.
Dùng dbdiagram để thiết kế db và các quan hệ.
Ví dụ: Tạo bảng Users với các trường chính như
id
,name
,email
,role
,created_at
,updated_at
.2. Thiết lập quan hệ giữa các bảng
Định nghĩa quan hệ giữa các bảng để liên kết dữ liệu hiệu quả và chính xác.
Ví dụ: Thiết lập quan hệ giữa bảng Users và Attendance (
user_id
trong Attendance là khoá ngoại tham chiếuid
của Users).