This is the desktop UI component of the IT Support Ticket System, built with Java Swing to provide a user-friendly interface for managing IT support tickets.
The IT Support UI is a Java Swing application that connects to the backend REST API to provide a desktop client for employees and IT support staff to manage support tickets. The UI is built with a modern approach to Java Swing development, utilizing MigLayout for responsive layouts.
IT-Support-UI-JavaSwing/
├── .idea/ # IntelliJ IDEA configuration files
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── org.ably/
│ │ │ ├── di/ # Dependency injection container
│ │ │ ├── guards/ # Navigation guards / permission checks
│ │ │ ├── interceptors/ # HTTP request interceptors
│ │ │ ├── models/ # Data models and DTOs
│ │ │ ├── pages/ # UI screens and dialogs
│ │ │ ├── router/ # Navigation handling
│ │ │ ├── services/ # API service clients
│ │ │ ├── utils/ # Utility classes
│ │ │ └── MainApp.java # Application entry point
│ │ └── resources/ # Resources (images, icons, etc.)
│ └── test/ # Unit tests
├── target/ # Build output
├── .gitignore
├── apiDoc.json # API documentation
└── pom.xml # Maven build file
- Modern UI: Clean, intuitive interface using Swing with MigLayout
- Role-based Interface: Different views for employees and IT support staff
- Ticket Management: Create, view, and track support tickets
- Real-time Updates: Periodic refreshing of ticket data
- Authentication: Secure login and session management
- Dark/Light Mode: Support for different visual themes
- Offline Capability: Basic functionality when network is unavailable
- Responsive Design: Adapts to different screen sizes
- Notifications: Alert system for ticket updates
- Java 17 or higher
- Maven 3.6 or higher
- IT Support Backend service running
- Download the latest release JAR file from the releases page
- Run the application:
java -jar IT-Support-UI.jar
-
Clone the repository:
git clone <repository-url> cd IT-Support-UI-JavaSwing
-
Configure backend API URL in
src/main/resources/application.properties -
Build the application:
mvn clean package
-
Run the application:
java -jar target/it-support-ui.jar
- Launch the application
- Enter your username and password
- Select your role (Employee or IT Support)
- Click "Login"
-
Creating a Ticket:
- Click "New Ticket" button
- Fill in the ticket details (title, description, priority, category)
- Submit the ticket
-
Viewing Tickets:
- All your tickets appear in the main dashboard
- Click on a ticket to view details and track progress
-
Adding Comments:
- Open a ticket
- Use the comment field at the bottom of the ticket detail view
- Click "Add Comment"
-
Managing Tickets:
- View all tickets in the system from the dashboard
- Filter tickets by status, priority, or category
- Search for specific tickets by ID or keywords
-
Updating Ticket Status:
- Open a ticket
- Use the status dropdown to change status
- Add a comment explaining the update
-
Viewing Audit Logs:
- Navigate to the Audit section
- Filter logs by ticket ID, user, or action type
- Create a new JPanel class in the pages package
- Register the page in the router
- Add navigation controls as needed
- Add the endpoint to the appropriate service in the services package
- Use the service in your page or component
- Handle API responses with appropriate UI updates
- Create a new class in the components package
- Implement the component using MigLayout for layout
- Use the component in your pages
Common issues:
- Connection Errors: Verify backend URL in application.properties
- Authentication Issues: Ensure correct credentials and backend availability
- UI Display Problems: Check Java version compatibility
- Performance Issues: Review network calls and UI update frequency
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request