Trạng thái tính năng và ưu tiên xử lý
Bảng theo dõi tiến độ dự án E-Learning Viện Tôn Giáo. Trạng thái đã được rà soát lại theo mã nguồn, route, migration, build frontend và test suite hiện tại; các mục còn vướng được tách rõ để ưu tiên xử lý trước khi lên production.
Lịch sử cập nhật
Những thay đổi giao diện, backend và luồng học quan trọng gần đây.
Xử lý regression ưu tiên và chạy migration còn pending
Đã cập nhật test theo chuẩn media /media/public, dùng fixture ảnh thật cho WebP upload test để không phụ thuộc GD, giữ thông báo đăng nhập admin dạng chung, chạy xong 2 migration icon gói thành viên và đưa php artisan test về 171/171 pass.
Rà soát tổng tiến độ và tách danh sách tồn đọng ưu tiên
Đã đối chiếu trạng thái với route hiện tại, migrate:status, npm run build và php artisan test. Build frontend pass; route đang có 144 endpoint; local còn 2 migration icon gói thành viên pending; test suite còn 7 lỗi trên 171 test, ưu tiên xử lý URL media, thông báo đăng nhập admin và chuyển đổi WebP bằng FFmpeg trong test/upload.
Ghi nhận các module đầu tháng 7 vào bảng tiến độ
Đã cập nhật tiến độ cho tracking PDF theo dải trang, reset mật khẩu học viên qua kênh chọn trước, quản trị Smax, avatar/cài đặt học viên, thư viện video/HLS, media public/protected và checklist deploy VPS an toàn.
Hien ro tracking phut xem video trong trang hoc
Da bo sung cum hien thi rieng cho so phut da xem, vi tri dang xem do va tong thoi luong video; dong thoi chan viec thong bao tracking bi bo dem chung ghi de va bo auto-complete sai doi voi bai hoc video.
Khoa bai hoc tuan tu va tracking video xem do
Da bo sung gate state theo thu tu bai hoc bat buoc de hoc vien khong the nhay coc bai; dong thoi luu watched_seconds, video_position_seconds, video_duration_seconds va last_watched_at de tiep tuc dung diem dang xem do va chi danh dau hoan thanh khi da xem du nguong yeu cau.
Chuan hoa khung video va nho bai dang hoc gan nhat
Da dua player video trang hoc vien ve khung 16:9 on dinh hon, dong thoi bo sung tracking last_lesson_id tren enrollment de khi hoc vien quay lai khoa hoc he thong uu tien mo dung bai hoc/video dang xem do.
Toi uu service trang hoc va JSON auto progress
Da tach luong du lieu trang vao hoc sang LearnerCoursePageService de controller gon hon, dung chung gate state va placement assessment; complete lesson nay tra JSON cho auto-progress de cap nhat tien do tai cho thay vi reload trang.
Mo rong danh sach bai hoc va them nut noi mobile
Da tang be rong cot noi dung bai hoc tren trang vao hoc, lam card bai hoc de doc va bam ro hon tren desktop; tren mobile da an muc luc dai va thay bang mot nut noi mo nhanh 3 muc Tong quan, Bai hoc hien tai va Bai hoc tiep theo.
Dong bo header toan bo luong khach va hoc vien
Da chuan hoa header cho trang chu, khoa hoc, chi tiet khoa hoc, dang nhap, dang ky va cac man hinh hoc vien; them icon dieu huong de de nhin hon, bo sung menu mobile dong bo va doi ban do online ve muc do hoc tap trung binh thay vi chi tiet tung khoa.
Dong bo bo header ngang cho khu hoc vien
Da bo sidebar tren dashboard hoc vien va trang chung chi, dua dieu huong len header ngang do dong bo voi trang vao hoc va giu cac loi tat nhu Khu hoc vien, Chung chi cua toi, Vao hoc, Dang xuat tren cung mot thanh dieu huong.
Rut menu doc khoi trang vao hoc
Da bo menu doc khu hoc vien trong trang vao hoc, chi giu lai cot noi dung lien quan den bai hoc va them header menu ngang ben tren de dong bo voi cac trang con lai.
Dong bo menu mobile khu hoc vien va card hoa dashboard
Da them popup Menu responsive cho dashboard hoc vien, trang vao hoc va trang chung chi; dong thoi toi uu ban do online de doc tot hon tren mobile va dua cac bo mon dang hoc ve dang card de theo doi tien do ro hon.
Hoan thien header do va menu mobile toan dien
Da bo sticky cho header public, tra lai nen do nhu giao dien ban dau va gom toan bo menu, tim kiem va control hoc vien vao popup Menu tren mobile de dong bo giua trang chu, khoa hoc, chi tiet, dang nhap, dang ky va vao hoc.
Thu gon menu mobile thanh popup
Da doi menu header mobile cua cac trang public thanh nut Menu; khi bam se mo popup modal chua cac nut dieu huong, giu search va cac control khac gon hon tren man hinh nho.
Dong bo header responsive cho cac trang public
Da tach header public thanh component dung chung va ap dung cho trang chu, danh muc khoa hoc, chi tiet khoa hoc, dang nhap va dang ky; bo shell sidebar trai cu o cac trang public va kiem tra desktop/mobile khong tran ngang.
Tinh gon menu header trang chu
Da doi menu trang chu ve 4 muc co dau va co icon: Trang chu, Khoa hoc, Dang nhap, Dang ky; khi hoc vien da login thi cac nut dieu khien chuyen xuong dong rieng ben duoi.
Doi trang chu sang header ngang
Da bo sidebar trai tren trang chu, them header ngang co logo, menu, khung search, dang nhap va dang ky; da kiem tra desktop/mobile khong tran ngang.
Gom icon dang nhap guest vao cung header mobile
Da dua 2 nut guest tren public shell vao chung hang voi khu dieu khien header tren mobile, giu dang icon gon o ben phai va khong con tach rieng thanh mot lop noi.
Thu gon nut dang nhap va tao tai khoan tren mobile
Da doi cum nut guest trong public shell thanh 2 icon o goc tren ben phai tren mobile, giu label day du tren desktop va chuan hoa text tieng Viet co dau cho Dang nhap va Tao tai khoan.
Toi uu responsive trang chi tiet khoa hoc
Da chinh course detail tren mobile: bo ep sidebar rong, thu gon header, dua CTA chinh vao hero, them thanh CTA gia/mua co dinh tren bottom nav va kiem tra khong con tran ngang.
Them ban do online hoc bai dashboard hoc vien
Da them heatmap 14 ngay vao dashboard hoc vien, moi hang la khoa dang hoc va mau dam nhat the hien nhieu hoat dong hoan thanh bai hoc hoac nop bai tap/kiem tra hon.
Responsive sidebar public va trang chu
Da thu gon sidebar public tren mobile, them bottom navigation kieu app cho trang chu va cac trang ngoai dung public shell, giu sidebar trai day du tren desktop.
Them bottom navigation kieu app cho mobile
Da them thanh dieu huong co dinh phia duoi man hinh tren mobile cho khu hoc vien, trang dang hoc, chung chi va danh muc khoa hoc.
Giam chieu cao mobile header trang hoc
Da dua nut dang xuat len cung hang profile tren mobile, bien muc luc bai hoc thanh khoi dong/mo tu thu gon tren man hinh nho va do lai de noi dung bai hoc xuat hien som hon.
Toi uu responsive mobile khu hoc vien
Da tinh lai sidebar, menu ngang, card, video, PDF, quiz va muc luc bai hoc de dashboard, chung chi va trang hoc bai dung tot hon tren mobile.
Dong bo sidebar hoc vien va ten dang nhap
Da tao partial sidebar hoc vien dung chung cho dashboard, chung chi va trang hoc bai; khi da dang nhap, ten hoc vien luon hien trong menu trai.
Lam ro dieu huong va loai muc tren trang hoc
Da them nut Quay lai vao topbar trang hoc va gan badge rieng cho Bai hoc, Bai tap, Bai kiem tra trong muc luc cung nhu khu hien thi assessment.
Toi uu trang hoc bai full width
Da rut trang hoc tung bai ve trai nghiem tap trung hon: topbar mong, muc luc bai hoc ben trai dang dieu huong, viewer full width uu tien video/PDF/noi dung va giam cac khoi dashboard gay phan tan.
Khep kin luong hoc vien da so huu khoa hoc
Da them trang Chung chi cua toi trong khu hoc vien, hien trang thai chung chi tren dashboard va trang hoc, dong thoi noi web quiz submission vao CertificateService de cap chung chi sau khi hoan tat dieu kien.
Chuan hoa shell sidebar trai va full width
Da tao config/ui_shell.php lam nguon quan ly trung tam cho menu sidebar trai va kich thuoc shell, dong bo admin/public ve chung quy tac full width, va noi layout Blade + app.css vao bien CSS dung chung de chinh mot cho ap dung toan web.
Tinh lai header va thumbnail trang danh muc khoa hoc
Da rut gon header shell cua trang /khoa-hoc ve chi con o tim kiem va cum dang nhap dang ky, dong thoi bo tri lai khung thumbnail de anh khoa hoc object-contain gon trong frame noi, tranh bi lech hoac sat vien.
Them quan ly danh muc admin va lam gon catalog public
Da them module /admin/categories de tao sua xoa danh muc khoa hoc, seed danh muc mac dinh vao database, noi cac form khoa hoc vao nguon danh muc nay; dong thoi bo nut yeu thich o course detail, doi card /khoa-hoc ve anh cover full frame va dua ten danh muc xuong duoi anh cho gon gang.
Tinh gon man hinh quan ly danh muc khoa hoc
Da rut /admin/categories ve bo cuc admin gon hon: panel them danh muc rieng, bang danh muc hien co co sua/xoa truc tiep tung dong, bo cac khoi tong quan va progress khong can thiet.
Dong bo sidebar course detail voi homepage
Da doi sidebar trai cua trang chi tiet khoa hoc ve style homepage: nen do gradient, logo vang/trang, menu active nen trang, hover trang mo va hien lai card gioi thieu cuoi sidebar.
Mo rong course detail full width
Da bo gioi han max-width 1440px cua trang chi tiet khoa hoc, giu sidebar 260px va cho main content gian full width voi padding ngang responsive de tan dung man hinh rong.
Ap dung spec sale page cho course detail
Da chinh trang chi tiet khoa hoc theo file layout: shell toi gian nen giay, sidebar trang 260px, header search 72px, hero card 2 cot, anh preview lon hon, box gia sticky 360px co checklist va tabs gach duoi.
Chinh course detail thanh bo cuc 3 cot
Da can lai phan dau trang chi tiet khoa hoc theo 3 cot: thong tin khoa hoc ben trai, anh preview lon hon o giua va card gia ben phai; dong thoi giam rong sidebar de anh khoa hoc co them dien tich.
Chuyen course detail ve hero toi gian
Da doi hero trang chi tiet khoa hoc ve phong cach toi gian: nen trang, bo nen vang/SVG trang tri, anh preview thanh card chu nhat gon ben phai, stats thanh dong thong tin mong va CTA it hieu ung hon.
Gom gon hero stats course detail
Da thu gon anh minh hoa, dua danh gia va cac thong so trong hero vao dang chip/card compact, giam kich thuoc CTA va nut play de phan dau trang gon gang hon.
Luoc bot noi dung trung lap course detail
Da an khoi loi ich trung gian bi lap voi overview, them icon cho tab noi dung va metadata sidebar de trang chi tiet khoa hoc gon hon, sinh dong hon.
Can lai course detail theo bo cuc mau
Da tinh gon hero trang chi tiet khoa hoc theo mau tham khao: banner trai/phai ro rang, anh preview bam ben phai, CTA trong hero tro ve gia khoa hoc, sidebar gia tach card va them card thong tin khoa hoc dang metadata.
Doi course detail preview theo mau landing course
Da them hero moi cho trang chi tiet khoa hoc chua mua theo mau tham khao: thong tin khoa hoc ben trai, anh preview noi bat ben phai, nut xem gioi thieu ro hon va khoi loi ich/tab gioi thieu de doc hon.
Doi course detail sang visual hero ngang
Da tao layout course detail khac cuon hut hon: anh preview nam ngang full width tren dau khoi noi dung, khung thong tin khoa hoc dat ben duoi anh, giu sidebar mua khoa hoc ben phai va sap xep noi dung de doc de hon.
Sap xep lai logic course detail chinh phu
Da dieu chinh course detail preview theo thu tu anh noi bat, khung thong tin khoa hoc ro rang, sau do den mo ta; tang anh preview len 250px, boc thong tin hero vao card rieng va dua mo ta len truoc khoi Ban se hoc duoc gi.
Tiet che course detail preview theo phong cach toi gian
Da rut gon hero course detail chua mua: giam anh preview tu 300px xuong 220px, bo benefit cards va cac box phu trong hero, giam shadow/bo goc, tiet che purchase panel va tranh lap lai danh sach quyen loi.
Tai tao course detail theo pattern e-learning
Da bo cuc lai course detail preview theo huong course landing page pho bien: sticky section nav, khoi Ban se hoc duoc gi noi bat, mo ta doc sau, giao trinh preview ro trang thai khoa/mo va enrollment card ben phai.
Chuan hoa course detail preview chua mua
Da chuan hoa trang chi tiet khoa hoc khi chua mua: anh preview dung nen blur va object-contain de giu chi tiet, meta hoc vien/bai hoc/chuong dung icon dong bo catalog, benefit tieng Viet co dau va panel gia/CTA noi bat hon.
Toi uu card catalog khoa hoc 3 cot
Da doi grid /khoa-hoc sang 1 cot tren man hinh hep, toi da 3 cot tren man hinh rong; anh bia dung nen blur va anh chinh object-contain de giu chi tiet, thay CTA thanh Xem noi dung chi tiet va chuan hoa icon hoc vien, bai hoc, chuong.
Chuan hoa anh dai dien va so luong khoa hoc catalog
Da tao anh mac dinh public/images/course-default-thumbnail.png cho khoa hoc chua co thumbnail, dua fallback vao Course::thumbnailUrl(), chuan hoa card anh theo ty le 16:9 va doi catalog /khoa-hoc sang 10 khoa moi trang de hop grid 5 cot.
Lam moi phan duoi catalog khoa hoc theo mau card grid
Da thiet ke lai phan Danh muc noi bat, header Tat ca khoa hoc, grid card 5 cot va banner dang ky hoc vien cuoi danh sach theo mau tham khao, dong thoi viet lai view UTF-8 sach hon.
Toi uu catalog voi hero image va filter compact
Da tao anh nen rieng cho hero Kham pha tri thuc, dua vao public/images/course-catalog-hero.png, nen thanh Tim dung khoa hoc thanh mot hang gon va co dinh kich thuoc anh dai dien khoa hoc de grid khong bi vo bo cuc.
Doi layout danh muc khoa hoc theo mau marketplace moi
Da thiet ke lai trang /khoa-hoc theo mau tham khao: hero ngang gon, thanh tim kiem va bo loc mot hang, chip danh muc noi bat, grid card khoa hoc gon voi anh dai dien, gia, danh gia va CTA ro rang.
Bo cuc lai catalog khoa hoc theo flow marketplace pho bien
Da doi trang /khoa-hoc sang bo cuc pho bien hon theo huong cac nen tang e-learning lon: hero compact, sidebar bo loc ben trai, topbar ket qua ro rang, the khoa hoc day du tin hieu va cac khoi FAQ/goi y de nguoi hoc de duyet hon.
Bo cuc lai trang course detail cho che do chua mua
Da tai cau truc trang chi tiet khoa hoc public theo huong marketplace gon hon: hero chot gia tri, cot mua khoa hoc sticky, khoi tong quan rich content, curriculum preview, FAQ va popup video xem truoc de hop voi flow guest truoc khi mua.
Nang cap course detail va editor mo ta khoa hoc
Da mac dinh hien thi danh gia 5 sao, lam moi nut video xem truoc, nhan manh khoi gia tien bang nen noi bat; dong thoi nang cap trang tao/sua khoa hoc voi bo cuc bien tap thong minh va editor rich text ho tro toolbar hien dai, chen anh URL, link, can le va xem ma HTML.
Tach course detail thanh che do chua mua va da mua
Da doi trang chi tiet khoa hoc public sang preview sales mode khi chua mua, an noi dung bai hoc day du va doi CTA sang Dang nhap de mua/Mua khoa hoc; khi da co quyen hoc, CTA chinh chuyen thanh Vao hoc va mo lai learning mode.
Gan category that cho catalog public va homepage
Da them category vao du lieu khoa hoc, bo loc danh muc cho /khoa-hoc, badge category tren card va chi tiet khoa hoc, dong thoi noi cac CTA va o danh muc nhanh tren trang chu sang route catalog moi.
Lam moi public flow cho khoa hoc va auth
Da them trang danh sach khoa hoc public, doi homepage ve route catalog moi, chuyen chi tiet khoa hoc va man hinh dang nhap/dang ky sang Tailwind/Vite cung visual shell do-sang va chi hien personalization nhe cho hoc vien da dang nhap.
Refresh trang chu theo concept learner shell
Da thay giao dien welcome bang bo cuc app-shell Tailwind voi sidebar do, hero tong mau vang am, danh muc nhanh, khoa hoc noi bat 4 the va right-rail public-safe theo concept tham khao.
Mo rong homepage full width va tach guest/member UI
Da day layout trang chu ra full width hon, an cac khoi ho so - tien do - thong bao - lich hoc khi chua dang nhap, va chi mo lai nhung thanh phan nay cho hoc vien da dang nhap.
Lam moi trang chu bang Tailwind va dat nen learner UI
Da chuyen homepage ve he Tailwind/Vite, tao bo class marketing dung chung va chot huong build tiep cho login, dashboard hoc vien va trang chi tiet khoa hoc theo cung visual language.
Chuyen admin sang Tailwind UI
Da nap asset Vite vao layout admin, dua bo CSS admin ve resources/css/app.css va chuyen he thong giao dien admin sang Tailwind de dong bo, de mo rong va hien dai hon.
Tách dashboard tổng quan với các trang vận hành riêng
Đã rút dashboard admin về màn hình Tổng quan chỉ hiển thị KPI, cảnh báo và lối tắt; đồng thời tách Phát hành thẻ học, Gói thành viên và Cấp quyền học viên thành các trang riêng để dùng cho MVP dễ theo dõi hơn.
Chuẩn hóa Backend/Frontend Bài tập & Kiểm tra
Đã tách AssessmentManagementService dùng chung cho web/API, thêm API overview, cockpit quản trị theo KPI, checklist ưu tiên, bản đồ sư phạm và test regression cho tạo/hiển thị/overview assessment.
Chuẩn hóa dashboard admin cho MVP
Đã sắp xếp lại dashboard admin thành màn hình vận hành MVP với KPI, cảnh báo cần xử lý, dữ liệu demo, thao tác cấp quyền/thẻ học/gói thành viên và báo cáo nhanh.
Tách khu quản trị assessment riêng trong admin
Đã tạo khu admin riêng cho Bài tập & Kiểm tra theo từng khóa học, đồng thời giữ trang cấu trúc khóa học chỉ tập trung vào chương và bài học.
Chuẩn hóa tiếng Việt trang trạng thái
Đã viết lại dữ liệu trạng thái dự án bằng UTF-8 sạch để loại bỏ lỗi ký tự tiếng Việt bị mã hóa sai.
Chuẩn hóa API assessment và demo data
Đã bổ sung assessments vào course detail API với placement, flags, latest attempt và passed state; demo seed có bài tập sau bài học, kiểm tra cuối học phần và kiểm tra cuối khóa.
Chuẩn bị nền cho bài kiểm tra cuối khóa
Đã thêm cờ counts_for_certificate để phân biệt bài kiểm tra cuối khóa; luồng chứng chỉ riêng sẽ triển khai sau.
Hiển thị assessment theo vị trí trong luồng học viên
Đã tách assessment sau bài học, cuối học phần và cuối khóa trong learner course page; viewer chỉ hiện assessment phù hợp với bài đang xem.
Thêm placement linh hoạt cho assessment
Đã bổ sung lesson_id cho quizzes và cập nhật admin/API để assessment có thể gắn ở cấp khóa học, sau học phần hoặc sau bài học.
Lập tracking chuyển hướng assessment
Đã chia nhỏ kế hoạch Bài tập & Kiểm tra thành các phase: ngôn ngữ/loại đánh giá, gắn linh hoạt, luồng học viên, chứng nhận sau khóa học, API-first và demo data.
Mở rộng backend dashboard admin
Đã tách logic tổng hợp dashboard thành AdminDashboardService dùng chung cho web và API.
Bổ sung bộ dữ liệu demo để test nhanh
Đã mở rộng DatabaseSeeder với nhiều tài khoản học viên, trạng thái ghi danh, tiến độ bài học, quiz attempt và chứng nhận mẫu.
Làm rõ dữ liệu demo trong dashboard admin
Đã bổ sung khu Dữ liệu demo ngay trên trang admin, hiện tài khoản test, thống kê demo và nút seed lại.
Chuẩn hóa thẻ học
Đã đưa thẻ học về dạng mỗi mã chỉ áp dụng cho đúng một khóa học và quyền học có hiệu lực 30 ngày sau khi kích hoạt.
Hoàn thiện quản trị media bài học
Đã bổ sung bài học dạng văn bản, PDF, video và hỗ trợ YouTube/Vimeo/link video trực tiếp/video local.
Danh sách hạng mục
Bảng tổng hợp các khu vực đang xong, đang làm và chờ xử lý tiếp.
| Tính năng | Mô tả | Trạng thái | Ưu tiên | Phụ trách | Ghi chú |
|---|---|---|---|---|---|
| Chuyển hướng Bài tập & Kiểm tra | Tách bài học và phần đánh giá thành hai module riêng, cho phép gắn linh hoạt vào khóa học, chương hoặc bài học. | Đang xử lý | Ưu tiên cao | Product/Backend | Đã chuẩn hóa loại đánh giá, placement, UI học viên, chứng nhận hoàn thành khóa học, API course detail và dữ liệu demo cho mobile/web. |
| API xác thực học viên | Đăng ký, đăng nhập, lấy thông tin tài khoản bằng Laravel Sanctum. | Đã hoàn thành | Ưu tiên cao | Backend | Đã có các endpoint /api/v1/auth/* và test luồng mã giới thiệu. |
| Mã giới thiệu khi đăng ký | Học viên cần mã giới thiệu hợp lệ trước khi tạo tài khoản. | Đã hoàn thành | Ưu tiên cao | Backend | Đã kiểm thử bằng AuthReferralTest và ReferralCodeCheckTest. |
| Cấu trúc khóa học | Quản lý khóa học, chương, bài học, tài liệu và trạng thái xuất bản. | Đã hoàn thành | Ưu tiên cao | Backend | Đã có model, migration, API khóa học và trang quản trị cấu trúc. |
| Thẻ học và ghi danh | Tạo thẻ hàng loạt, đổi mã thẻ và mở đúng một khóa học cố định cho mỗi mã. | Đã hoàn thành | Ưu tiên cao | Backend | Đã có test cho thẻ đơn một khóa, chống dùng lại mã và quyền học kéo dài 30 ngày sau khi kích hoạt. |
| Theo dõi tiến độ học | Đánh dấu hoàn thành bài học và tính phần trăm tiến độ theo khóa. | Đã hoàn thành | Ưu tiên vừa | Backend | Đã có ProgressService, API tiến độ, tự ghi nhận tiến độ trong portal học viên, tracking video theo thời lượng và tracking PDF theo dải trang/phút đọc. |
| Bài tập & Kiểm tra | Quản lý bài tập trắc nghiệm, bài kiểm tra cuối học phần và bài kiểm tra cuối khóa. | Đang xử lý | Ưu tiên cao | Backend/Frontend | Đã chuẩn hóa backend service dùng chung web/API, thêm endpoint overview, cockpit quản trị, checklist sẵn sàng, bản đồ sư phạm và chỉ số theo dõi assessment. |
| Cấp chứng nhận | Cấp chứng nhận khi học viên hoàn thành khóa học. | Đã hoàn thành | Ưu tiên vừa | Backend | CertificateService hiện ưu tiên chứng nhận hoàn thành khóa học; luồng chứng chỉ riêng sẽ triển khai sau. |
| Dashboard admin API | Thống kê tiến độ, thẻ học, quyền học sắp hết hạn và hoạt động gần đây cho quản trị. | Đã hoàn thành | Ưu tiên vừa | Backend | Đã có /api/v1/admin/stats/dashboard dùng chung service tổng hợp với web admin. |
| Trang trạng thái dự án | Theo dõi tính năng hoàn thành, đang xử lý, chờ xử lý và mức ưu tiên. | Đã hoàn thành | Ưu tiên cao | AI | Trang đọc dữ liệu từ config/project_status.php và đã được chuẩn hóa lại UTF-8. |
| Giao diện quản trị web | Màn hình quản lý khóa học, học viên, thẻ học, Bài tập & Kiểm tra và thống kê. | Đang xử lý | Ưu tiên cao | Frontend | Đã chuyển dashboard về mẫu tổng quan gọn cho MVP, tách thao tác vận hành ra trang riêng, có báo cáo admin, quản lý Smax, quản lý banner, nhóm/gói thành viên, thư viện video và khu Bài tập & Kiểm tra. Cần xử lý các regression test media/login trước khi chốt production. |
| Giao diện học viên web/app | Dashboard học tập, danh sách khóa, bài học, bài tập, bài kiểm tra và chứng nhận. | Đang xử lý | Ưu tiên cao | Frontend | Đã có đăng nhập/đăng ký học viên, quên mật khẩu có chọn kênh nhận mã, dashboard khóa đã ghi danh, cài đặt hồ sơ/avatar, responsive mobile, trang học full-width, tracking video/PDF, assessment đúng vị trí, trang thành tích và chứng nhận hoàn thành khóa học. |
| Thanh toán hoặc phân phối thẻ học | Quy trình bán, phát hành hoặc nhập thẻ học ngoài hệ thống. | Chờ xử lý | Ưu tiên vừa | Product | Cần chốt nghiệp vụ trước khi triển khai sâu. |
| Upload video và tài liệu | Quản lý file bài học, phân quyền xem và lưu trữ media. | Đã hoàn thành | Ưu tiên vừa | Backend | Đã hỗ trợ PDF, YouTube, Vimeo, link video trực tiếp, upload video local, thư viện video và route media public/protected. Phần ổn định URL media/WebP được theo dõi ở mục regression riêng. |
| Tích hợp Smax và khôi phục mật khẩu học viên | Cấu hình đối tác Smax, kiểm tra kết nối, gửi mã khôi phục mật khẩu qua email hoặc Zalo/Smax và hỗ trợ admin đặt lại mật khẩu học viên. | Đang xử lý | Ưu tiên cao | Backend/Product | Route quản trị Smax, model cấu hình, mã reset và luồng quên mật khẩu đã có test riêng; cần kiểm thử với thông tin Smax production thật trước khi bật cho học viên đại trà. |
| Video HLS và xử lý media nặng | Chuyển video upload sang HLS, theo dõi trạng thái chuyển đổi và phục vụ nội dung media ổn định cho lớp đông học viên. | Đang xử lý | Ưu tiên cao | Backend/Infra | Đã có VideoConversion, job ConvertVideoToHls, VideoHlsService và route thư viện video. Cần chốt queue worker/FFmpeg production, xử lý fallback lỗi chuyển đổi ảnh/video và kiểm lại upload bằng file thật. |
| Ổn định regression test và URL media | Đưa test suite về trạng thái xanh, đồng bộ kỳ vọng URL media mới và bảo vệ các luồng upload ảnh/thumbnail. | Đã hoàn thành | Ưu tiên cao | Backend/QA | Đã đồng bộ test theo chuẩn URL /media/public, giữ thông báo đăng nhập admin dạng chung an toàn hơn, thay upload fake bằng fixture ảnh thật không phụ thuộc GD và đưa php artisan test về 171/171 pass. |
| Sẵn sàng production/VPS | Chuẩn hóa môi trường production, migration, cache, queue, object storage/CDN, backup và smoke test trên domain thật. | Đang xử lý | Ưu tiên cao | Infra/AI | Đã có checklist production/staging, script đóng gói và tài liệu deploy an toàn; local đã chạy xong migration icon gói thành viên. Chưa đạt go-live sạch vì vẫn cần kiểm tra môi trường thật: APP_DEBUG=false, DB production, queue worker, FFmpeg, storage/CDN và smoke test domain. |
| Thông báo cho học viên | Nhắc học, thông báo khóa mới, hạn thẻ và kết quả bài kiểm tra. | Chờ xử lý | Ưu tiên thấp | Product | Chưa triển khai. |
Chuyển hướng Bài tập & Kiểm tra
Tách bài học và phần đánh giá thành hai module riêng, cho phép gắn linh hoạt vào khóa học, chương hoặc bài học.
Đã chuẩn hóa loại đánh giá, placement, UI học viên, chứng nhận hoàn thành khóa học, API course detail và dữ liệu demo cho mobile/web.
API xác thực học viên
Đăng ký, đăng nhập, lấy thông tin tài khoản bằng Laravel Sanctum.
Đã có các endpoint /api/v1/auth/* và test luồng mã giới thiệu.
Mã giới thiệu khi đăng ký
Học viên cần mã giới thiệu hợp lệ trước khi tạo tài khoản.
Đã kiểm thử bằng AuthReferralTest và ReferralCodeCheckTest.
Cấu trúc khóa học
Quản lý khóa học, chương, bài học, tài liệu và trạng thái xuất bản.
Đã có model, migration, API khóa học và trang quản trị cấu trúc.
Thẻ học và ghi danh
Tạo thẻ hàng loạt, đổi mã thẻ và mở đúng một khóa học cố định cho mỗi mã.
Đã có test cho thẻ đơn một khóa, chống dùng lại mã và quyền học kéo dài 30 ngày sau khi kích hoạt.
Theo dõi tiến độ học
Đánh dấu hoàn thành bài học và tính phần trăm tiến độ theo khóa.
Đã có ProgressService, API tiến độ, tự ghi nhận tiến độ trong portal học viên, tracking video theo thời lượng và tracking PDF theo dải trang/phút đọc.
Bài tập & Kiểm tra
Quản lý bài tập trắc nghiệm, bài kiểm tra cuối học phần và bài kiểm tra cuối khóa.
Đã chuẩn hóa backend service dùng chung web/API, thêm endpoint overview, cockpit quản trị, checklist sẵn sàng, bản đồ sư phạm và chỉ số theo dõi assessment.
Cấp chứng nhận
Cấp chứng nhận khi học viên hoàn thành khóa học.
CertificateService hiện ưu tiên chứng nhận hoàn thành khóa học; luồng chứng chỉ riêng sẽ triển khai sau.
Dashboard admin API
Thống kê tiến độ, thẻ học, quyền học sắp hết hạn và hoạt động gần đây cho quản trị.
Đã có /api/v1/admin/stats/dashboard dùng chung service tổng hợp với web admin.
Trang trạng thái dự án
Theo dõi tính năng hoàn thành, đang xử lý, chờ xử lý và mức ưu tiên.
Trang đọc dữ liệu từ config/project_status.php và đã được chuẩn hóa lại UTF-8.
Giao diện quản trị web
Màn hình quản lý khóa học, học viên, thẻ học, Bài tập & Kiểm tra và thống kê.
Đã chuyển dashboard về mẫu tổng quan gọn cho MVP, tách thao tác vận hành ra trang riêng, có báo cáo admin, quản lý Smax, quản lý banner, nhóm/gói thành viên, thư viện video và khu Bài tập & Kiểm tra. Cần xử lý các regression test media/login trước khi chốt production.
Giao diện học viên web/app
Dashboard học tập, danh sách khóa, bài học, bài tập, bài kiểm tra và chứng nhận.
Đã có đăng nhập/đăng ký học viên, quên mật khẩu có chọn kênh nhận mã, dashboard khóa đã ghi danh, cài đặt hồ sơ/avatar, responsive mobile, trang học full-width, tracking video/PDF, assessment đúng vị trí, trang thành tích và chứng nhận hoàn thành khóa học.
Thanh toán hoặc phân phối thẻ học
Quy trình bán, phát hành hoặc nhập thẻ học ngoài hệ thống.
Cần chốt nghiệp vụ trước khi triển khai sâu.
Upload video và tài liệu
Quản lý file bài học, phân quyền xem và lưu trữ media.
Đã hỗ trợ PDF, YouTube, Vimeo, link video trực tiếp, upload video local, thư viện video và route media public/protected. Phần ổn định URL media/WebP được theo dõi ở mục regression riêng.
Tích hợp Smax và khôi phục mật khẩu học viên
Cấu hình đối tác Smax, kiểm tra kết nối, gửi mã khôi phục mật khẩu qua email hoặc Zalo/Smax và hỗ trợ admin đặt lại mật khẩu học viên.
Route quản trị Smax, model cấu hình, mã reset và luồng quên mật khẩu đã có test riêng; cần kiểm thử với thông tin Smax production thật trước khi bật cho học viên đại trà.
Video HLS và xử lý media nặng
Chuyển video upload sang HLS, theo dõi trạng thái chuyển đổi và phục vụ nội dung media ổn định cho lớp đông học viên.
Đã có VideoConversion, job ConvertVideoToHls, VideoHlsService và route thư viện video. Cần chốt queue worker/FFmpeg production, xử lý fallback lỗi chuyển đổi ảnh/video và kiểm lại upload bằng file thật.
Ổn định regression test và URL media
Đưa test suite về trạng thái xanh, đồng bộ kỳ vọng URL media mới và bảo vệ các luồng upload ảnh/thumbnail.
Đã đồng bộ test theo chuẩn URL /media/public, giữ thông báo đăng nhập admin dạng chung an toàn hơn, thay upload fake bằng fixture ảnh thật không phụ thuộc GD và đưa php artisan test về 171/171 pass.
Sẵn sàng production/VPS
Chuẩn hóa môi trường production, migration, cache, queue, object storage/CDN, backup và smoke test trên domain thật.
Đã có checklist production/staging, script đóng gói và tài liệu deploy an toàn; local đã chạy xong migration icon gói thành viên. Chưa đạt go-live sạch vì vẫn cần kiểm tra môi trường thật: APP_DEBUG=false, DB production, queue worker, FFmpeg, storage/CDN và smoke test domain.
Thông báo cho học viên
Nhắc học, thông báo khóa mới, hạn thẻ và kết quả bài kiểm tra.
Chưa triển khai.