Welcome to the Ticket Management System development challenge. This challenge will evaluate your skills in developing RESTful APIs and desktop applications with .NET MAUI.
The challenge consists of two main parts:
- Backend API: Implementation and enhancement of endpoints to manage tickets
- MAUI Application: Development of an interface to list and filter tickets
In this part, you must implement a REST API endpoint for support ticket management. You have already been provided with part of the base code that you need to complete.
The base code is using EntityFramework and SqLite. Everything is already configure for you to be able to use it.
You must implement the following endpoint:
GET /api/tickets
This endpoint should return a paginated list of tickets, with the ability to filter by status and sort by creation date.
- Filtering by ticket status (In Progress, Open, Closed)
- Ascending or descending sorting by creation date
- Pagination of results
You must develop windows desktop application following the design provided in the diagram, which consumes the API endpoint implemented in part 1
The application must include:
-
Filter Panel:
- Status selector (In Progress, Open, Closed)
- Sort order selector (Asc, Desc)
- Button to apply filters
-
Ticket List:
- Display basic information for each ticket
- Integrate with the GET endpoint implemented in part 1
- Properly handle the display of results
-
Additional Features (optional):
- Implement pagination of results
You can ask any questions to the people accompanying you in the interview. Create Ticket code sample id provided on the UI side.
The repository already contains the base structure of both projects. You should work on these existing projects without modifying the main structure.
To get started:
- Clone the repository
- Review the base projects and additional documentation
- Implement the required features
Good luck!