- Names *
- Email *
- Password *
- Role * (Manager or Mechanic)
- Number (automatically generated, non-editable)
- Date and time (automatically generated, editable)
- Car * (select from a list)
- Description of the problem * (5 to 300 characters)
- Brand *
- Color *
- Registration number
- Email and Password
- Add/Edit/Delete
- Only Managers have access
- Add/Edit/Delete
- When adding or editing, allow adding or selecting an existing car with its parameters
- A single text field to search among parameters of each query and the cars
- Results should contain "Request No", "Date and Time", "Vehicle Data", "User Data (no password)", "Description of the problem"
(Default to have manager with static login)
- Users: Access Allowed
- Orders: Access Allowed, See all report
- Report: Access Allowed
- Users: Access Denied
- Orders: Access Allowed, Only see their report
- Report: Access Allowed
- Demonstrate implementations, good practices, (architecture/design) patterns and writing coding style
For a visual walkthrough of functionalities the project, watch this YouTube Video.
Built with Domain Driven Design/Onion/Hexagonal Architecture
Clean Architecture Solution Template for ASP.NET Core 5.0.
Used template from ASP.NET Boilerplate
- ASP.NET Core 5.0 MVC
- Entity Framework Core 5.0
- Slim Controllers using MediatR Library
- Permissions Management based on Role Claims
- Toast Notification (includes support for AJAX Calls too)
- Serilog
- ASP.NET Core Identity
- AdminLTE Bootstrap Template (Clean & SuperFast UI/UX)
- AJAX for CRUD (Blazing Fast load times)
- jQuery Datatables
- Select2
- Image Optimization
- Includes Sample CRUD Controllers / Views
- Active Route Tag Helper for UI
- Complete Localization Support / Multilingual
- Clean Areas Implementation
- Dark Mode
- Default Users / Roles Seeding at Startup
- Supports Audit Logging / Activity Logging for Entity Framework Core
- Automapper
-
Download/Clone code from GitHub
-
Navigate in Visual Studio project AutoServiceManager.Web and set as Startup Project
-
Ensure connection string points to correct instance:
Update
appsettings.json
in AutoServiceManager.Web:"ConnectionStrings": { "ApplicationConnection": "Data Source=localhost;Initial Catalog=AutoServiceManager;Integrated Security=True;MultipleActiveResultSets=True", "IdentityConnection": "Data Source=localhost;Initial Catalog=AutoServiceManager;Integrated Security=True;MultipleActiveResultSets=True" }
-
Run 2 scripts in Package Manager Console in Visual Studio:
Update-Database -Context IdentityContext Update-Database -Context ApplicationDbContext
-
Rebuild Solution in Visual Studio
-
Run with IIS Express from Visual Studio