⚠️ Phát hiện 0 chỗ nghi lỗi tách dấu/khoảng trắng tiếng Việt do AI sinh ra (đã tô vàng bên dưới) — vui lòng kiểm tra kỹ trước khi đăng.(chỉ nối lại khoảng trắng — KHÔNG tự thêm dấu thanh còn thiếu, vẫn cần soát lại thủ công)
🚫 Phát hiện 0 câu/đáp án NGHI BỊ AI DỊCH SANG TIẾNG VIỆT thay vì giữ nguyên ngôn ngữ gốc (đã tô đỏ bên dưới) — đây là lỗi AI không tuân thủ yêu cầu, không thể tự sửa được, cần sửa thủ công hoặc chạy lại AI cho các câu này.
📄 Bản gốc AI tạo
Bôi đen → nhập lệnh sửa
✏️ Bản sau khi sửa
Tick ✓ để chọn ghi đè
✏️
Nhấn nút "Sửa" ở cột trái, chọn lệnh → kết quả sửa sẽ hiện ở đây
🚀
Đang đăng lên Firestore...
Chuẩn bị dữ liệu...
0%
Khởi tạo...
🚀
Đang đăng lên Firestore...
Chuẩn bị dữ liệu...
0%
Khởi tạo...
U
UmiDoc
🔐 Khu vực Admin
Đăng nhập bằng tài khoản quản trị viên
⚠️Đăng nhập thất bại!
Email
Mật khẩu
U
Ayumi Admin
Quản trị hệ thống
📊 Dashboard
Realtime
📚
0
Tài liệu đang bán
🧾
0
Tổng đơn hàng
💰
0đ
Doanh thu ước tính
Từ đơn đã xác nhận
⏳
0
Đơn chờ xác nhận
Cần xử lý
📈
Doanh thu 7 ngày qua
🏆
Tài liệu bán chạy
🧾
Đơn hàng gần đây
Cập nhật realtime
👁️
0
Lượt truy cập website
👤
0
Người đã đăng ký
💳
0
Người đã mua gói/tài liệu
📦
0
Tổng lượt mua (gói + tài liệu)
🏆
Thống kê theo gói Pro (JLPT / Tokutei)
🧾
Khách hàng đã mua gần đây
➕
Đăng tài liệu mới
Điền đầy đủ thông tin
🎌🗾🇰🇷🇬🇧🇨🇳💼💻📖📝🏗️🎤📊
Đang chọn: Chưa chọn
Không có🔥 Hot✨ Mới💸 Sale⭐ Bán chạy
Bật — Khách xem 10%
Nhấn Enter để thêm. VD: JLPT N3, Từ vựng, Ngữ pháp
📁
Kéo thả file vào đây hoặc click để chọn
PDF, DOCX, PPTX, MP3, ZIP — Tối đa 200MB
⏳ Đang upload lên Firebase Storage...
🖼️
Ảnh bìa tài liệu
Upload ảnh bìa hiển thị trên trang chi tiết · Kích thước khuyến nghị: 800×500px (tỉ lệ 16:10) · JPG/PNG/WEBP · Tối đa 2MB
Upload ảnh slide hoặc video preview để khách xem thử miễn phí
🖼️ Chưa có nội dung xem thử. Bấm "+ Thêm ảnh/video" để upload.
Hỗ trợ: ảnh (JPG, PNG, WEBP) và video (MP4). Upload lên Firebase Storage tự động.
📝 Điền đầy đủ thông tin rồi bấm đăng
⏳ Đang xử lý...
Đang kiểm tra dữ liệu...
✅
Thành công!
📚
Quản lý tài liệu
0 tài liệu
#
Tài liệu
Danh mục
Giá
Trạng thái
Lượt mua
Thao tác
🧾
Quản lý đơn hàng
Cập nhật realtime
Mã đơn
Khách hàng
Tài liệu
Số tiền
Phương thức
Trạng thái
Thời gian
Thao tác
📞
Thông tin liên hệ
🏦
Tài khoản ngân hàng
💰
Cài đặt giá gói luyện thi
Thiết lập giá hiển thị trên trang luyện thi. Để trống giá gốc nếu không muốn hiện giá gốc (gạch ngang).
Gói luyện thi chung (JLPT · JFT · Tiếng Hàn · Tiếng Trung...)
📅 1 THÁNG
đ
đ
📦 6 THÁNG
đ
đ
⭐ Phổ biến nhất
♾️ TRỌN ĐỜI
đ
đ
Gói Tokutei Ginou (Tiếng Nhật · Kỹ năng đặc định)
📅 1 THÁNG (Tokutei)
đ
đ
📦 6 THÁNG (Tokutei)
đ
đ
👁️ Preview giá hiển thị
1 Tháng
10.000đ
6 Tháng
594.000đ
499.000đ
Tiết kiệm 50%
Trọn Đời ♾️
1.188.000đ
699.000đ
🔥 Tốt nhất
⚙️
Cài đặt hiển thị
Trang chủ
Banner Tokutei nổi bật
Hiện banner cam ở đầu trang chủ
Hiện số lượng đánh giá
Số ★ và lượt đánh giá trên card
Cho phép tìm kiếm
Thanh tìm kiếm ở hero
Thông báo
Thông báo đơn hàng mới
Hiện popup khi có đơn pending
🔒
Khoá tính năng
Trang chủ (Ayumi)
Nút "Cửa hàng"
Khi BẬT khoá: người dùng (không phải admin) bấm vào sẽ thấy "Tính năng đang hoàn thiện"
Nút "Bán tài liệu"
Khi BẬT khoá: người dùng (không phải admin) bấm vào sẽ thấy "Tính năng đang hoàn thiện"
Áp dụng ngay lập tức cho mọi người dùng trên trang chủ. Admin (tài khoản trong danh sách "admins") luôn bấm được, không bị khoá.
🗃️
Dữ liệu & Sao lưu
Dữ liệu lưu trong localStorage trình duyệt
👤
Danh sách người dùng (0)
Cuộc trò chuyện (0)
🎟️
Tạo mã giảm giá mới
⚠️ Lưu ý: mã được lưu trong hệ thống và có API kiểm tra sẵn (/api/validate-voucher), nhưng cần gắn thêm vào trang thanh toán để áp dụng giảm giá thực tế khi khách checkout.
📋
Danh sách mã giảm giá
🎯
0
Tổng số suất
🎁
0
Đã nhận ưu đãi
✅
0
Còn lại
📅
30
Số ngày miễn phí / lượt
⚙️
Cài đặt ưu đãi
Lưu trực tiếp vào Firestore (settings/first30) — áp dụng ngay cho lượt claim tiếp theo trên web, không cần sửa hay deploy lại code. Đổi số suất/số ngày không ảnh hưởng tới những lượt đã nhận trước đó.
📋
Danh sách đã nhận ưu đãi (0)
🏠
Nội dung Hero (banner đầu trang)
Lưu vào Firestore (settings/homepage). Cần trang chủ (index.html) đọc dữ liệu này khi tải trang để hiển thị — đã gắn sẵn.
⏳
Hàng đợi xử lý AI
Các đề đã gửi cho AI qua nút "Gửi thẳng file lên AI" — xử lý lần lượt từng đề, không cần đứng đợi
File / Thời gian
Trạng thái
Xem nhanh
Số câu
Hành động
Đang tải...
🚀
Duyệt & Đăng nhanh
Đăng thẳng đề này lên Firestore, không cần qua trang khác
🏷️ Ngành/loại đề: —
📊 Số câu: —
🚀
Duyệt & Đăng nhanh Flashcard
Đăng thẳng bộ này lên Firestore, không cần qua trang khác
📑 Danh mục: —
🗂️ Số thẻ: —
📝 Đăng đề luyện thi mới
Chọn loại đề → Điền thông tin → Thêm câu hỏi → Đăng lên Firestore
Đăng realtime lên Firestore
Đường dẫn:
📋 Thông tin đề thi
Tự đề xuất theo loại
🎨 Tự động theo loại đề thi
💰 Giá & Khuyến mãi
(để trống = miễn phí)
Giá gạch bỏ hiển thị cho user
Giá thực tế thanh toán qua PayOS
Bao nhiêu đề đầu không cần trả phí (0 = tất cả phải trả)
Hiển thị với học viên
Thanh toán PayOS
✅ Đề này miễn phí — Học viên làm bài không cần thanh toán
📥 Nhập câu hỏi
✨ Tạo câu hỏi bằng AI
GEMINI🔐 Key bảo mật qua Railway server
🎯 Ngữ cảnh AI:Chưa chọn loại đề thi
🎧Chế độ Nghe Hiểu — Gemini sẽ NGHE file audio để soạn transcript, câu hỏi và đáp án tự động
🎵
Click hoặc kéo thả file audio vào đây
MP3 · WAV · M4A · OGG · AAC · FLAC · WEBM
⚡ Gemini nghe audio → tự soạn câu hỏi nghe hiểu theo chuẩn JLPT
🎵audio.mp30 KB
📡 File sẵn sàng — Gemini sẽ nghe và soạn câu hỏi khi bạn bấm "Xử lý"
💡 Kết hợp: Tải audio + dán script (ở ô bên trên) → AI soạn câu hỏi chính xác hơn
🖼️ 📄 📊 🎵
Kéo thả file vào đây
Ảnh · PDF · Word (.docx) ✨ · Excel · Audio
💡 .docx tự extract: audio, ảnh câu hỏi và Q&A soạn sẵn
💡 Nếu nút ✨ Xử lý đọc sai format → dùng nút 🤖 Gửi thẳng để AI tự đọc file gốc
Hỗ trợ: CSV, Excel (.xlsx/.xls), Word (.docx), PDF
📎
0 câu hỏi
📄 Đoạn văn đọc hiểu
📌 Câu hỏi cho đoạn văn này:
🎧 Nội dung nghe hiểu
🎵
Kéo thả hoặc click để chọn file audio
MP3 · WAV · M4A · OGG · AAC · FLAC
🎵
⏳ Đang upload audio...
0:00 / 0:00
🔊100%
Upload file audio ở trên sẽ tự điền URL. Hoặc paste URL có sẵn rồi bấm Load.
📝 Script / Nội dung hội thoại (tuỳ chọn)
📌 Câu hỏi cho đoạn nghe này:
0 câu
📝 Full Test — Đề thi tổng hợp
Thêm câu hỏi cho từng kỹ năng / phần thi. Mỗi phần có thể import file riêng hoặc nhập thủ công.
📝 Điền đầy đủ thông tin và thêm ít nhất 1 câu hỏi
📝
Quản lý đề luyện thi
0 đề thi
Đã chọn 0 mục
Icon
Tiêu đề
Ngôn ngữ
Loại
Trình độ
Số câu
Trạng thái
Ngày đăng
Thao tác
⏳ Đang tải dữ liệu...
🃏
Đăng bộ flashcard mới
Miễn phí cho mọi người dùng
⏳Gửi nhiều file vào Hàng đợi AI
Chọn nhiều file cùng lúc (mỗi file 1 bộ) — AI xử lý TUẦN TỰ ở nền, không cần đứng đợi từng file. Vào tab "Hàng đợi AI" để xem kết quả và đăng khi xong. Nhớ chọn Danh mục (3 cấp) ở trên trước — mọi file gửi vào lô này sẽ dùng chung danh mục đó.
Hệ thống tự nhận diện cột nào là tiếng Việt (có dấu) và cột nào là tiếng nước ngoài trong mỗi dòng, rồi tự xếp đúng vào mặt trước/mặt sau theo quy tắc này — không phụ thuộc thứ tự cột gốc trong file/dòng dán vào. Áp dụng cho cả dán tay và nhập file.
📄 Bỏ qua
trang đầu (chỉ áp dụng khi nhập PDF — dùng để bỏ trang bìa/mục lục)
Mẹo: có thể copy trực tiếp 2-3 cột từ Excel/Google Sheets rồi dán thẳng vào ô trên (không cần gõ dấu |) — hệ thống tự nhận diện. "Nhập từ file" đọc theo toạ độ chữ trên trang (nhanh, hợp file bảng rõ ràng). "Đọc bằng AI" hiểu theo ngữ nghĩa nên chính xác hơn với PDF/Word trình bày lộn xộn, có trang bìa, ghi chú xen kẽ... nhưng xử lý chậm hơn vài giây.
(khuyến nghị 20–30 từ/bộ để người học dễ ghi nhớ, giống chia theo bài trong giáo trình)
🃏
Quản lý flashcard
0 bộ flashcard
Đã chọn 0 mục
Tiêu đề
Danh mục
Số thẻ
Trạng thái
Ngày đăng
Thao tác
⏳ Đang tải dữ liệu...
📋
Tiêu chuẩn duyệt tài liệu
Tham khảo nhanh khi kiểm duyệt — click để mở/đóng
▼
✅ Định dạng & dung lượng
Chỉ chấp nhận file PDF
Dung lượng từ 100KB đến 50MB
Tối thiểu 3 trang (ngoại ngữ / IT: 5 trang)
File mở được, không yêu cầu mật khẩu
⭐ Chất lượng nội dung
Nội dung đầy đủ, dùng được ngay
Tiêu đề khớp với nội dung bên trong
Đề thi / bài tập bắt buộc có đáp án
Chữ rõ, không vỡ font hay scan mờ
📝 Thông tin đầy đủ
Ghi rõ môn học, lớp / trình độ
Mô tả đủ để người mua hiểu sẽ nhận được gì
Giá đề xuất hợp lý với nội dung
Tài liệu lý thuyết ghi rõ chủ đề / phạm vi
❌ Không được chấp nhận
Còn logo / watermark của bên khác
Sao chép y nguyên từ sách, website khác
Đề thi chính thức IELTS, JLPT...
Slide gốc của giảng viên còn logo trường
Nội dung quảng cáo, brochure trá hình
📋
Duyệt tài liệu gia sư
Cập nhật realtime từ Firestore
0 tài liệu
⏳ Đang tải từ Firestore...
💰
0đ
Tổng đang chờ trả
👥
0
Gia sư có hoa hồng
🧾
0
Tổng lượt bán
⚠️
0
Cần xử lý thủ công
⚠️
Hoa hồng chưa tìm được người nhận
Cần admin gắn tài liệu với UID gia sư
💰
Bảng hoa hồng gia sư
Kỳ thanh toán: —
#
Gia sư
Tài khoản ngân hàng
Kỳ này (chưa trả)
Tổng tích lũy
Lượt bán
Trạng thái
Thao tác
⏳ Đang tải...
✏️ Chỉnh sửa nhanh
Không có🔥 Hot✨ Mới💸 Sale⭐ Bán chạy
🔀 Đổi danh mục hàng loạt
Áp dụng cho 0 bộ đã chọn
Danh mục cũ của các bộ được chọn sẽ bị GHI ĐÈ hoàn toàn bằng danh mục mới này. Các thông tin khác (tên, thẻ, mô tả...) giữ nguyên.
🔀 Đổi danh mục hàng loạt
Áp dụng cho 0 đề đã chọn
Đường dẫn mới:
Danh mục cũ của các đề được chọn sẽ bị GHI ĐÈ hoàn toàn bằng danh mục mới này. Các thông tin khác (câu hỏi, giá, trạng thái...) giữ nguyên.
🧾 Chi tiết đơn hàng
✅ Duyệt & Đăng tài liệu
📄 Tài liệu
—
—
Bạn có thể điều chỉnh giá so với đề xuất của gia sư
💵 Phân chia hoa hồng (mỗi lượt mua)
Giá bán (100%)
—
🏢 Nền tảng giữ lại (20%)
—
✅ Gia sư nhận (80%)
—
👤 Xác nhận thông tin gia sư
Họ tên—
Email—
Firebase UID—
Tài khoản ngân hàng—
Tỷ lệ hoa hồng đã cam kết80%
⚠️ Sau khi duyệt, tài liệu sẽ được tạo trong collection documents với đầy đủ thông tin submittedBy.uid — webhook PayOS sẽ tự động tính hoa hồng chính xác.
❌ Từ chối tài liệu
—
—
📧 Lý do này sẽ được lưu vào Firestore. Gia sư có thể xem trong bảng điều khiển của họ.
🌐 Quét & bổ sung bản dịch cho đề cũ
Công cụ này quét toàn bộ đề thi đã đăng trong Firestore, tìm các câu hỏi còn thiếu translation / choiceTranslations, sau đó gọi AI bổ sung và ghi lại — KHÔNG thay đổi câu hỏi/đáp án/điểm đúng sai.
⏳ Đang quét dữ liệu...
💸 Xác nhận đã chuyển khoản
—
—
🏧 Thông tin chuyển khoản
Ngân hàng / STK—
Kỳ thanh toán—
Số lượt bán trong kỳ—
💰 Số tiền cần chuyển—
⚠️ Chỉ xác nhận sau khi đã chuyển khoản thực tế. Thao tác này sẽ đánh dấu tất cả giao dịch trong kỳ là đã thanh toán và không thể hoàn tác.