Decouple UserType, add Role entity and management

Removed all UserType logic and references, replacing them with a new Role model and management system. Introduced RoleManager service, repository, and API endpoint for role CRUD operations. Updated user flows and JWT claims to use RoleCode. Removed admin-only user CRUD endpoints. Updated DI, documentation, and error handling for consistency. Appsettings and DTOs now reflect the new role-based approach.
This commit is contained in:
Dhananjaya99
2026-10-19 12:57:07 +05:30
parent fbd079d337
commit 15832d1ae3
19 changed files with 393 additions and 297 deletions
@@ -160,7 +160,7 @@ public class AltOptionManagerService
//exisiting one
var user = await _userRepository.GetUserByIdentifierAndType(identifier, null);
var user = await _userRepository.GetUserByIdentifierAndType(identifier);
if (user == null)
throw new KeyNotFoundException("No user found with the provided identifier.");
@@ -293,7 +293,7 @@ public class AltOptionManagerService
User? user = null;
if (!string.IsNullOrWhiteSpace(identifier))
{
user = await _userRepository.GetUserByIdentifierAndType(identifier, null);
user = await _userRepository.GetUserByIdentifierAndType(identifier);
}
if (user is null && userId.HasValue)
@@ -377,7 +377,7 @@ public class AltOptionManagerService
user.EmailVerified,
user.MobileNumberVerified,
user.IsMfaEnabled,
UserTypeId = user.UserTypeId
RoleId = user.RoleCode
}
}
};