Skip to content

Latest commit

 

History

History
31 lines (27 loc) · 3.11 KB

File metadata and controls

31 lines (27 loc) · 3.11 KB

Project Progress

Current Status:

The project now compiles cleanly. The Student Dashboard has been refactored to align with the styling and layout of the Admin Dashboard. Key integrations between the view, controller, and service layers have been established for the "View Courses" functionality.

Implemented Features:

  • Student Dashboard Redesign:
    • Uses GradientPanel as the main content pane for a consistent background.
    • Implemented a sidebar navigation structure with RoundedButtons for actions (View Courses, Check Grades, Library Access, Update Profile, Logout).
    • Utilizes CardLayout for the central content area, allowing switching between different views.
    • Applied consistent styling (colors, fonts, borders) to UI components based on AdminDashboard.java.
    • Existing profile information is displayed in a dedicated panel.
    • Placeholder panels for "Check Grades", "Library Access", and "Update Profile" are integrated into the CardLayout.
    • The "Logout" button is functional (closes the dashboard and attempts to open LoginSystem).
  • "View Courses" Functionality Integration:
    • StudentController.java has been created/updated to act as an intermediary between StudentDashboard and service layers.
    • CourseService.java has been modified to include getCoursesByStudentId(int studentId) method, fetching courses based on student enrollments via EnrollmentDao and CourseOfferingDao.
    • A nested StudentCoursesPanel class within StudentDashboard.java displays student courses in a styled JTable, populated by data fetched through StudentController.
    • The "VIEW COURSES" button in the sidebar triggers the display and refresh of the StudentCoursesPanel.
  • General Codebase Fixes:
    • Resolved all compilation errors related to model changes, DAO implementations, and service method signatures across various files (Semester.java, Roles.java, Enrollment.java, Borrowing.java, Fine.java, Reservation.java, Score.java, RolesDao.java, SemesterDao.java, RoleService.java, SemesterService.java, RolesFileDao.java, AdminService.java, LecturerPanel.java, CourseService.java, EnrollmentDao.java, CourseOfferingDao.java, StudentController.java).
    • Ensured Jackson dependencies are correctly included in pom.xml.

Known Issues:

  • Database Connection Error: The application currently fails to connect to the MySQL database due to an Access denied for user 'create'@'localhost' error. This prevents the GUI from fully rendering with dynamic data and is an environmental/configuration issue, not a code compilation error.

Next Steps for User:

  1. Resolve the MySQL database access issue. This typically involves:
    • Checking/granting appropriate user privileges for 'create'@'localhost' on the MySQL server.
    • Verifying the database connection details (username, password, database name) in src/main/java/com/sys/utilities/DatabaseConnection.java.
  2. Once the database issue is resolved, run the application using mvn clean compile exec:java to see the Student Dashboard fully functional.