| | 1 | | namespace Domain.Core.ValueObject; |
| | 2 | | public record PerfilUsuario |
| | 3 | | { |
| 3 | 4 | | public static implicit operator Perfil(PerfilUsuario pu) => (Perfil)pu.Id; |
| 0 | 5 | | public static implicit operator PerfilUsuario(int perfilType) => new PerfilUsuario((Perfil)perfilType); |
| 255 | 6 | | public static bool operator ==(PerfilUsuario perfilUsuario, Perfil perfilType) => perfilUsuario?.Id == (int)perfilTy |
| 4 | 7 | | public static bool operator !=(PerfilUsuario perfilUsuario, Perfil perfilType) => !(perfilUsuario?.Id == (int)perfil |
| | 8 | |
|
| | 9 | | public enum Perfil : int |
| | 10 | | { |
| | 11 | | Admin = 1, |
| | 12 | | User = 2 |
| | 13 | | } |
| | 14 | |
|
| 1924 | 15 | | public int Id { get; set; } |
| 2181 | 16 | | public string Name { get; set; } = string.Empty; |
| | 17 | |
|
| 51 | 18 | | public PerfilUsuario() { } |
| | 19 | |
|
| 1082 | 20 | | public PerfilUsuario(Perfil itipoPerfil) |
| 1082 | 21 | | { |
| 1082 | 22 | | Id = (int)itipoPerfil; |
| 1082 | 23 | | Name = GetPerfilUsuarioName(itipoPerfil); |
| 1082 | 24 | | } |
| | 25 | |
|
| | 26 | | private static string GetPerfilUsuarioName(Perfil perfilUsuario = Perfil.User) |
| 1082 | 27 | | { |
| 1082 | 28 | | if (Perfil.Admin == perfilUsuario) |
| 554 | 29 | | return "Administrador"; |
| 528 | 30 | | else if (Perfil.User == perfilUsuario || perfilUsuario == 0) |
| 528 | 31 | | return "Usuario"; |
| | 32 | |
|
| 0 | 33 | | throw new ArgumentException("Perfil de usuário inexistente!"); |
| 1082 | 34 | | } |
| | 35 | | } |