How nguyen06-cse/quan-li-dang-ky-hoc-phan works
QuanLyDKHP is a .NET/Avalonia desktop system for academic administration: staff manage student and course records, open semesters and class sections, process course registrations and tuition, then produce reports or exchange data through Excel/PDF. The sampled registration service validates requests, persists enrollment and recalculates tuition; the import implementation also saves imported records and recalculates tuition. The README documents the broader feature set and Clean Architecture layers. Some UI-to-service and unsampled subsystem wiring is not shown in the excerpts, so those connections are kept conservative.
Main entry points: AppDbContext.cs PostgreSQL context · DangKyHocPhanService.cs Registration rules · App.axaml.cs Desktop entry · Repositories Data repositories
Components 22
Desktop application
- Desktop entry
src/QuanLyDKHP.App/App.axaml.cs - Login view model
src/QuanLyDKHP.App/ViewModels/LoginViewModel.cs - Main window
src/QuanLyDKHP.App/ViewModels/MainWindowViewModel.cs
Academic records
- Student management
src/QuanLyDKHP.App/ViewModels/SinhVienViewModel.cs - Course management
src/QuanLyDKHP.App/ViewModels/MonHocViewModel.cs - Semester sections
src/QuanLyDKHP.App/ViewModels/HocKyLopHocPhanViewModel.cs - Student service
src/QuanLyDKHP.Services/SinhVienService.cs - Course service
src/QuanLyDKHP.Services/MonHocService.cs - Semester and section services
src/QuanLyDKHP.Services
Enrollment and fees
- Registration screen
src/QuanLyDKHP.App/ViewModels/DangKyHocPhanViewModel.cs - Registration rules
src/QuanLyDKHP.Services/DangKyHocPhanService.cs - Tuition calculation
src/QuanLyDKHP.Services/HocPhiService.cs - System configuration
src/QuanLyDKHP.Services/CauHinhService.cs
Reporting and exchange
- Excel import screen
src/QuanLyDKHP.App/ViewModels/ImportExcelViewModel.cs - Excel import
src/QuanLyDKHP.Infrastructure/Repositories/ImportExcelRepository.cs - Reports and statistics
src/QuanLyDKHP.Infrastructure/Repositories/BaoCaoRepository.cs - Excel and PDF export
src/QuanLyDKHP.Infrastructure/Export
Business and persistence
- Authentication
src/QuanLyDKHP.Services/AuthService.cs - Data repositories
src/QuanLyDKHP.Infrastructure/Repositories - PostgreSQL context
src/QuanLyDKHP.Infrastructure/Data/AppDbContext.cs
Other components
- Staff user
- PostgreSQL
Connections 14
- Staff user → Desktop entry: starts
- Desktop entry → Login view model: opens login
- Login view model → Authentication: authenticates
- Authentication → Data repositories: looks up user
- Data repositories → PostgreSQL context: queries
- Desktop entry → Main window: opens after login
- Registration rules → Data repositories: reads and writes
- Registration rules → System configuration: checks limits
- Registration rules → Tuition calculation: recalculates tuition
- Excel import → PostgreSQL context: saves imported records
- Excel import → Tuition calculation: recalculates tuition
- Reports and statistics → PostgreSQL context: queries records
- Excel and PDF export → Staff user: provides files
- PostgreSQL context → PostgreSQL: persists data