Hệ thống quản lý và phân công công việc được phát triển dành riêng cho Khoa Công nghệ Thông tin, giúp quản lý công việc hiệu quả giữa Trưởng Khoa, Trưởng Bộ môn và Giảng viên. Dự án được xây dựng bằng Laravel Framework với mục tiêu cung cấp giao diện thân thiện và quy trình làm việc trực quan.
Để cài đặt và chạy dự án trên máy cục bộ, bạn cần đảm bảo các phần mềm sau đã được cài đặt:
- PHP: Phiên bản 8.1 hoặc cao hơn.
- Composer: Công cụ quản lý dependency PHP. Tải Composer.
- Node.js và npm: Môi trường chạy JavaScript và quản lý gói. Tải Node.js.
- Git: Hệ thống quản lý phiên bản. Tải Git.
- MySQL: Cơ sở dữ liệu, khuyến nghị sử dụng XAMPP (bao gồm Apache, MySQL, PHP). Tải XAMPP.
- Trình duyệt Web: Chrome, Firefox, hoặc Edge.
Vui lòng làm theo các bước sau để thiết lập dự án:
-
Clone Repository
Tải mã nguồn từ GitHub về máy:git clone https://github.com/KhoaNguyen210/task-management-system.git
-
Di chuyển vào thư mục dự án
cd task-management-system -
Cài đặt Dependencies PHP
Cài đặt các thư viện PHP cần thiết bằng Composer:composer install
-
Cài đặt Dependencies JavaScript
Cài đặt các gói JavaScript (bao gồm Vite) bằng npm:npm install
-
Tạo file cấu hình môi trường
Sao chép file.env.exampleđể tạo file.env:cp .env.example .env
Lưu ý: Trên Windows, sử dụng
copy .env.example .env. -
Tạo Khóa ứng dụng
Tạo khóa mã hóa duy nhất cho ứng dụng:php artisan key:generate
-
Cấu hình Kết nối Cơ sở dữ liệu
- Mở file
.envbằng trình soạn thảo văn bản. - Cập nhật các thông tin kết nối MySQL (
DB_CONNECTION,DB_HOST,DB_PORT,DB_DATABASE,DB_USERNAME,DB_PASSWORD). - Ví dụ cho XAMPP mặc định:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=task_management_db DB_USERNAME=root DB_PASSWORD=
- Ghi nhớ tên database (ví dụ:
task_management_db).
- Mở file
-
Tạo Cơ sở dữ liệu
- Truy cập công cụ quản lý MySQL (ví dụ: phpMyAdmin tại
http://localhost/phpmyadmin). - Tạo database mới khớp với tên
DB_DATABASEtrong file.env. - Chọn Collation:
utf8mb4_unicode_ci.
- Truy cập công cụ quản lý MySQL (ví dụ: phpMyAdmin tại
-
Chạy Migrations và Seeders
Tạo cấu trúc bảng và nạp dữ liệu mẫu (tài khoản, bộ môn):php artisan migrate:fresh --seed
-
Tạo Symbolic Link cho Storage
Tạo liên kết tượng trưng để truy cập file tải lên (ảnh, tệp đính kèm):php artisan storage:link
-
Biên dịch Tài nguyên Frontend
Biên dịch CSS và JavaScript bằng Vite:npm run build
Lưu ý: Chạy
npm run devnếu muốn server Vite tự động cập nhật khi chỉnh sửa frontend (giữ Terminal mở).
-
Khởi động Server Laravel
Chạy server phát triển:php artisan serve
-
Truy cập Ứng dụng
Mở trình duyệt và truy cậphttp://127.0.0.1:8000để vào trang đăng nhập.
Sử dụng các tài khoản sau để kiểm tra các vai trò (mật khẩu mặc định: password123):
-
Trưởng Khoa (Dean):
- Username:
phamvanhuy
- Username:
-
Trưởng Bộ môn:
- Username:
leanhcuong(BM Khoa học máy tính) - Username:
truongdinhtu(BM Mạng máy tính) - Username:
tranthanhphuoc(BM Hệ thống thông tin) - Username:
levanvang(BM Công nghệ phần mềm)
- Username:
-
Giảng viên:
- Username:
trinhhungcuong(BM Khoa học máy tính) - Username:
trantrungtin(BM Mạng máy tính) - Username:
huynhngoctu(BM Hệ thống thông tin) - Username:
vudinhhong(BM Công nghệ phần mềm) - Thêm các tài khoản khác trong
UserSeeder.php
- Username:
-
Mật khẩu:
password123
- Backend: PHP 8.1+, Laravel Framework 11.x
- Frontend: HTML, Tailwind CSS, JavaScript, Vite
- Database: MySQL
- Web Server (Development): Laravel Artisan Serve
- Version Control: Git
- Lê Minh Triết – 521H0173
- Nguyễn Ngô Đăng Khoa – 521H0084
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate:fresh --seed
php artisan storage:link
npm install
npm run build| Lệnh | Chức năng |
|---|---|
php artisan config:clear |
Xóa cache cấu hình .env và config/*.php |
php artisan cache:clear |
Xóa cache dữ liệu ứng dụng |
php artisan route:clear |
Xóa cache route đã biên dịch |
php artisan view:clear |
Xóa cache view Blade |
php artisan optimize:clear |
Xóa toàn bộ cache (config, route, view, events) |
Lưu ý: Chạy các lệnh trên khi thay đổi
.env, routes, hoặc views để tránh lỗi cache.
| Lệnh | Chức năng |
|---|---|
composer dump-autoload |
Tạo lại danh sách autoload khi thêm class mới |
| Lệnh | Chức năng |
|---|---|
npm install |
Cài đặt các package trong package.json |
npm run dev |
Biên dịch CSS/JS cho phát triển (real-time) |
npm run build |
Biên dịch CSS/JS tối ưu cho production |
php artisan optimize:clear
composer dump-autoloadphp artisan serve- Truy cập:
http://127.0.0.1:8000
- Nếu gặp lỗi liên quan đến cấu hình, hãy kiểm tra file
.envvà chạyphp artisan optimize:clear. - Để tối ưu hiệu suất, sử dụng
npm run buildthay vìnpm run devkhi triển khai production. - Liên hệ nhóm phát triển (Lê Minh Triết hoặc Nguyễn Ngô Đăng Khoa) nếu cần hỗ trợ thêm.