101 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| // ***********************************************************************
 | |
| // <copyright file="UserAdapter.cs">
 | |
| //     AgileWebs
 | |
| // </copyright>
 | |
| // ***********************************************************************
 | |
| using Core.Blueprint.Mongo;
 | |
| using MongoDB.Bson;
 | |
| using MongoDB.Bson.Serialization.Attributes;
 | |
| using System.Text.Json.Serialization;
 | |
| 
 | |
| namespace Core.Thalos.BuildingBlocks
 | |
| {
 | |
|     /// <summary>
 | |
|     /// Adapter representing a user.
 | |
|     /// </summary>
 | |
|     [CollectionAttributeName("Users")]
 | |
|     public class UserAdapter : Document
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// Gets or sets the email address of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("email")]
 | |
|         [BsonRepresentation(BsonType.String)]
 | |
|         [JsonPropertyName("email")]
 | |
|         public string Email { get; set; } = null!;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the name of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("name")]
 | |
|         [BsonRepresentation(BsonType.String)]
 | |
|         [JsonPropertyName("name")]
 | |
|         public string Name { get; set; } = null!;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the middlename of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("middleName")]
 | |
|         [BsonRepresentation(BsonType.String)]
 | |
|         [JsonPropertyName("middleName")]
 | |
|         public string? MiddleName { get; set; }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the last name of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("lastName")]
 | |
|         [BsonRepresentation(BsonType.String)]
 | |
|         [JsonPropertyName("lastName")]
 | |
|         public string LastName { get; set; } = null!;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the name of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("displayName")]
 | |
|         [BsonRepresentation(BsonType.String)]
 | |
|         [JsonPropertyName("displayName")]
 | |
|         public string? DisplayName { get; set; }
 | |
| 
 | |
|         /// <summary>    
 | |
|         /// Gets or sets the Tenand ID of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("tenantId")]
 | |
|         [BsonRepresentation(BsonType.ObjectId)]
 | |
|         [JsonPropertyName("tenantId")]
 | |
|         public string TenantId { get; set; } = null!;
 | |
| 
 | |
|         /// <summary>    
 | |
|         /// Gets or sets the role ID of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("roleId")]
 | |
|         [BsonRepresentation(BsonType.ObjectId)]
 | |
|         [JsonPropertyName("roleId")]
 | |
|         public string RoleId { get; set; } = null!;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the timestamp of the last login of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("lastLogIn")]
 | |
|         [BsonRepresentation(BsonType.DateTime)]
 | |
|         [JsonPropertyName("lastLogIn")]
 | |
|         public DateTime? LastLogIn { get; set; }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the timestamp of the last logout of the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("lastLogOut")]
 | |
|         [BsonRepresentation(BsonType.DateTime)]
 | |
|         [JsonPropertyName("lastLogOut")]
 | |
|         public DateTime? LastLogOut { get; set; }
 | |
| 
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Gets or sets the token associated with the user.
 | |
|         /// </summary>
 | |
|         [BsonElement("token")]
 | |
|         [BsonRepresentation(BsonType.String)]
 | |
|         [JsonPropertyName("token")]
 | |
|         public string? Token { get; set; } = null;
 | |
|     }
 | |
| }
 |