A console-based Online Complaint Management System developed using Core Java, Object-Oriented Programming (OOP), Collections Framework, and File Handling. This project allows users to register, submit complaints, track complaint status, and provide feedback, while administrators can manage and resolve complaints efficiently.
The Online Complaint Management System is designed to simplify complaint handling through a role-based console application. It demonstrates Java programming concepts and follows a modular project structure suitable for academic learning and GitHub portfolio projects.
- User Registration
- Secure Login
- Submit New Complaint
- Auto Complaint ID Generation
- View Complaint History
- Track Complaint Status
- Submit Feedback & Rating
- Logout
- Admin Login
- View All Complaints
- Search Complaint by ID
- Search Complaints by Category
- Search Complaints by Status
- Update Complaint Status
- Complaint Statistics Dashboard
- Logout
User Registration/Login
β
βΌ
Complaint Submission
β
βΌ
Complaint ID Generation
β
βΌ
Category & Priority Assignment
β
βΌ
Admin Review
β
βΌ
Status Update
β
βΌ
Resolution
β
βΌ
Feedback Submission
β
βΌ
Complaint Closure
- Core Java
- Object-Oriented Programming (OOP)
- Java Collections (ArrayList)
- File Handling (Serialization)
- Java Time API
- VS Code
- Git & GitHub
OnlineComplaintManagementSystem
β
βββ src
β βββ model
β β βββ User.java
β β βββ Admin.java
β β βββ Complaint.java
β β
β βββ service
β β βββ UserService.java
β β βββ ComplaintService.java
β β
β βββ storage
β β βββ FileManager.java
β β
β βββ utils
β β βββ IDGenerator.java
β β βββ Validator.java
β β
β βββ Main.java
β
βββ data
β βββ users.dat
β βββ complaints.dat
β
βββ screenshots
β
βββ README.md
βββ LICENSE
- Register
- Login
- Submit Complaint
- View Own Complaints
- Submit Feedback
- Logout
- Login
- View All Complaints
- Search Complaint
- Update Complaint Status
- Search by Category
- Search by Status
- View Statistics
- Logout
Submitted
β
βΌ
Under Review
β
βΌ
In Progress
β
βΌ
Resolved
β
βΌ
Closed
The project uses Java File Handling for persistent storage.
users.datβ Stores registered userscomplaints.datβ Stores complaint records
Data remains available even after restarting the application.
javac Main.javajava MainEmail : admin@gmail.com
Password : admin123
- Classes & Objects
- Encapsulation
- Inheritance
- Polymorphism
- Abstraction
- Collections Framework
- File Handling
- Exception Handling
- Modular Programming
- Java Swing GUI
- JavaFX Interface
- JDBC with MySQL Database
- Email Notifications
- Complaint Assignment to Staff
- PDF Report Generation
- Search Filters
- REST API Integration
- Spring Boot Version
- Web Application
Muskan
B.Tech (Computer Science & Engineering)
Through this project, I learned:
- Object-Oriented Programming
- Java Collections
- File Handling
- Modular Application Design
- Role-Based Authentication
- Complaint Workflow Design
- Console Application Development
- Git & GitHub Project Management
This project is licensed under the MIT License.








