This project is a full-stack Ticket Tracking and Management System developed to manage request and issue reporting processes between personnel and technical units within an institution.
The application was developed during an internship period using ASP.NET Core MVC architecture.
The main purpose of the system is to:
- Enable users to submit support requests through a centralized platform
- Allow technical staff to manage and resolve these requests efficiently
- Provide administrators with full control, monitoring, and reporting capabilities
By doing so, the system replaces fragmented communication methods with a structured, traceable, and secure workflow.
- Backend: ASP.NET Core MVC
- Frontend: Razor Pages, Bootstrap 5
- Database: Microsoft SQL Server (MSSQL)
- Real-Time Communication: SignalR
- Authentication & Authorization: ASP.NET Core Identity
- Charts & Reporting: Chart.js
- Version Control: Git & GitHub
The system is built around three primary user roles:
- Can create tickets
- Can view ticket details
- Can send messages under tickets
- Can upload attachments
- Can view assigned tickets
- Can update ticket statuses
- Can communicate with users via messaging
- Can view all tickets
- Can assign tickets to technicians
- Can archive and restore tickets
- Can manage user roles
- Can access reporting dashboards
The overall workflow of the application is illustrated through the following diagrams:
The database structure and table relationships are shown in the following diagram:
- Real-time communication without page refresh
- Message bubbles aligned based on sender
- Group-based messaging per ticket
- Ticket-based attachment support
- Supports images, PDFs, and log files
- Secure server-side storage
- File size limitation applied
- Weekly and monthly ticket statistics
- Summary boxes for open, closed, and archived tickets
- Graphical visualizations using Chart.js
- Role-based authorization implemented
- Page-level and action-level access control
- Clear separation of Admin, Technician, and User permissions
- Clone the repository
- Create the database in MSSQL
- Update the connection string in
appsettings.json - Run Entity Framework migrations
- Start the application
As a result of this project:
- A modern and scalable ticket tracking system was developed
- Real-time messaging, file uploads, reporting, and email notifications were successfully integrated
- A secure, role-based workflow suitable for institutional use was established
















