Skip to content

n19dcat009/CNPM_Backend_HeThongQuanLyHocTapTichHopAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Admin APIs Documentation

Tôi đã triển khai thành công các API cho Admin Dashboard với các tính năng sau:

🎯 Các API đã hoàn thành

1. Students Management APIs

  • GET /admin/students - Danh sách sinh viên với phân trang và search/filter
  • GET /admin/students/{id} - Chi tiết sinh viên và khóa học đang học

2. Teachers Management APIs

  • GET /admin/teachers - Danh sách giáo viên với phân trang và search/filter

3. Courses Management APIs

  • GET /admin/courses - Danh sách khóa học với phân trang và search/filter

4. Dashboard Statistics APIs

  • GET /admin/dashboard/statistics - Thống kê tổng quan hệ thống

🏗️ Kiến trúc triển khai

Backend (.NET 8 + CQRS + Dapper)

  • Queries: Sử dụng CQRS pattern với IQuery và IQueryHandler
  • Database: Sử dụng Dapper với raw SQL để tối ưu performance
  • Authentication: Bearer token với role-based authorization (Administrator)
  • Error Handling: Sử dụng Result pattern để xử lý lỗi

Frontend (Next.js + TypeScript + Tailwind)

  • API Client: Centralized ApiClient với error handling
  • UI Components: Modern responsive design với Tailwind CSS
  • Error Handling: Fallback to mock data khi API không khả dụng
  • Loading States: Skeleton loading và error retry mechanisms

📊 Tính năng chính

Admin Dashboard

  • Tổng quan thống kê (sinh viên, giáo viên, khóa học)
  • Biểu đồ xu hướng đăng ký
  • Hoạt động gần đây
  • Quick actions navigation

Students Management

  • Danh sách sinh viên với search và filter
  • Thông tin chi tiết sinh viên
  • GPA tracking và course progress
  • Statistics cards (tổng số, active, GPA)

Teachers Management

  • Danh sách giáo viên với search và filter
  • Rating system và department breakdown
  • Course và student counts per teacher

Courses Management

  • Danh sách khóa học với search và filter
  • Progress tracking và enrollment status
  • Completion rates và rating system

🔧 Cách sử dụng

1. Backend Setup

# Start backend API
cd e-learning-system
dotnet run --project src/API/Elearning.Api/Elearning.API.csproj --urls http://0.0.0.0:5093

2. Frontend Setup

# Start frontend
cd e-learning-ui
npm run dev

3. Access Admin Dashboard

URL: http://localhost:3000/admin
Required: Administrator role authentication

🎨 UI Screenshots Features

Dashboard Overview

  • Statistics cards với trend indicators
  • Recent activities timeline
  • Quick action buttons cho navigation

Data Tables

  • Search và filter functionality
  • Pagination với page navigation
  • Responsive design cho mobile

Error Handling

  • Graceful fallback to mock data
  • Retry mechanisms
  • User-friendly error messages

🔒 Security Features

  • Role-based access control (Administrator only)
  • Bearer token authentication
  • Input validation và sanitization
  • CORS configuration cho production

📈 Performance Optimizations

  • Dapper cho fast database queries
  • Pagination để giảm data load
  • Efficient SQL queries với CTEs
  • Client-side caching strategies

Hệ thống admin đã sẵn sàng sử dụng với full functionality để quản lý sinh viên, giáo viên, khóa học và xem thống kê chi tiết!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages