Add project files.
This commit is contained in:
		
							
								
								
									
										33
									
								
								Core.Cerberos.Adapters/Adapters/Base/BaseAdapterResponse.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								Core.Cerberos.Adapters/Adapters/Base/BaseAdapterResponse.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Linq; | ||||
| using System.Text; | ||||
| using System.Text.Json; | ||||
| using System.Threading.Tasks; | ||||
|  | ||||
| namespace Core.Cerberos.Adapters | ||||
| { | ||||
|     public class BaseAdapterResponse | ||||
|     { | ||||
|         public bool HasError { get; set; } = false; | ||||
|         public bool IsSuccess { get; private set; } = false; | ||||
|         public string Message { get; set; } | ||||
|  | ||||
|         public void SetResult(string message) | ||||
|         { | ||||
|             HasError = false; | ||||
|             IsSuccess = true; | ||||
|             Message = message; | ||||
|         } | ||||
|         public string SetErrorMessage(string message) | ||||
|         { | ||||
|             var _message = new | ||||
|             { | ||||
|                 Content = JsonSerializer.Serialize(message), | ||||
|                 HasError = true | ||||
|             }; | ||||
|  | ||||
|             return JsonSerializer.Serialize(_message); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										118
									
								
								Core.Cerberos.Adapters/Adapters/ModuleAdapter.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										118
									
								
								Core.Cerberos.Adapters/Adapters/ModuleAdapter.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,118 @@ | ||||
| // *********************************************************************** | ||||
| // <copyright file="ModuleAdapter.cs"> | ||||
| //     Heath | ||||
| // </copyright> | ||||
| // *********************************************************************** | ||||
|  | ||||
| using Core.Cerberos.Adapters.Common.Enums; | ||||
| using MongoDB.Bson; | ||||
| using MongoDB.Bson.Serialization.Attributes; | ||||
| using System.Text.Json.Serialization; | ||||
|  | ||||
| namespace Core.Cerberos.Adapters | ||||
| { | ||||
|     /// <summary> | ||||
|     /// Adapter for representing a module. | ||||
|     /// </summary> | ||||
|     public class ModuleAdapter | ||||
|     { | ||||
|         /// <summary> | ||||
|         /// Gets or sets the ID of the module. | ||||
|         /// </summary> | ||||
|         [BsonId] | ||||
|         [BsonElement("_id")] | ||||
|         [BsonRepresentation(BsonType.ObjectId)] | ||||
|         [JsonPropertyName("id")] | ||||
|         public string Id { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the name of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("name")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("name")] | ||||
|         public string Name { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the description of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("description")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("description")] | ||||
|         public string? Description { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the description of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("icon")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("icon")] | ||||
|         public string? Icon { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the description of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("route")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("route")] | ||||
|         public string Route { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the order of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("order")] | ||||
|         [BsonRepresentation(BsonType.Int32)] | ||||
|         [JsonPropertyName("order")] | ||||
|         public int? Order { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the application of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("application")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("application")] | ||||
|         [JsonConverter(typeof(JsonStringEnumConverter))] | ||||
|         public ApplicationsEnum? Application { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the module was created. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("createdAt")] | ||||
|         public DateTime CreatedAt { get; set; } = DateTime.UtcNow; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who created the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("createdBy")] | ||||
|         public string? CreatedBy { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the module was last updated. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("updatedAt")] | ||||
|         public DateTime? UpdatedAt { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who last updated the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("updatedBy")] | ||||
|         public string? UpdatedBy { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the status of the module. | ||||
|         /// </summary> | ||||
|         [BsonElement("status")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("status")] | ||||
|         [JsonConverter(typeof(JsonStringEnumConverter))] | ||||
|         public StatusEnum Status { get; set; } = StatusEnum.Active; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										95
									
								
								Core.Cerberos.Adapters/Adapters/PermissionAdapter.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								Core.Cerberos.Adapters/Adapters/PermissionAdapter.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,95 @@ | ||||
| // *********************************************************************** | ||||
| // <copyright file="PermissionAdapter.cs"> | ||||
| //     Heath | ||||
| // </copyright> | ||||
| // *********************************************************************** | ||||
|  | ||||
| using Core.Cerberos.Adapters.Common.Constants; | ||||
| using Core.Cerberos.Adapters.Common.Enums; | ||||
| using MongoDB.Bson; | ||||
| using MongoDB.Bson.Serialization.Attributes; | ||||
| using System.Text.Json.Serialization; | ||||
|  | ||||
| namespace Core.Cerberos.Adapters | ||||
| { | ||||
|     /// <summary> | ||||
|     /// Adapter for representing a permission. | ||||
|     /// </summary> | ||||
|     public class PermissionAdapter | ||||
|     { | ||||
|         /// <summary> | ||||
|         /// Gets or sets the ID of the entity. | ||||
|         /// </summary> | ||||
|         [BsonId] | ||||
|         [BsonElement("_id")] | ||||
|         [BsonRepresentation(BsonType.ObjectId)] | ||||
|         [JsonPropertyName("id")] | ||||
|         public string Id { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the name of the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("name")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("name")] | ||||
|         public string Name { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the description of the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("description")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("description")] | ||||
|         public string? Description { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the status of the entity object. | ||||
|         /// </summary> | ||||
|         [BsonElement("accessLevel")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("accessLevel")] | ||||
|         [JsonConverter(typeof(JsonStringEnumConverter))] | ||||
|         public AccessLevelEnum? AccessLevel { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the entity was created. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("createdAt")] | ||||
|         public DateTime CreatedAt { get; set; } = DateTime.UtcNow; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who created the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("createdBy")] | ||||
|         public string? CreatedBy { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the entity was last updated. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("updatedAt")] | ||||
|         public DateTime? UpdatedAt { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who last updated the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("updatedBy")] | ||||
|         public string? UpdatedBy { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the status of the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("status")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("status")] | ||||
|         [JsonConverter(typeof(JsonStringEnumConverter))] | ||||
|         public StatusEnum Status { get; set; } = StatusEnum.Active; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										107
									
								
								Core.Cerberos.Adapters/Adapters/RoleAdapter.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								Core.Cerberos.Adapters/Adapters/RoleAdapter.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,107 @@ | ||||
| // *********************************************************************** | ||||
| // <copyright file="RoleAdapter.cs"> | ||||
| //     Heath | ||||
| // </copyright> | ||||
| // *********************************************************************** | ||||
|  | ||||
| using Core.Cerberos.Adapters.Common.Enums; | ||||
| using MongoDB.Bson; | ||||
| using MongoDB.Bson.Serialization.Attributes; | ||||
| using System.Text.Json.Serialization; | ||||
|  | ||||
| namespace Core.Cerberos.Adapters | ||||
| { | ||||
|     /// <summary> | ||||
|     /// Adapter representing a role. | ||||
|     /// </summary> | ||||
|     public class RoleAdapter | ||||
|     { | ||||
|         /// <summary> | ||||
|         /// Gets or sets the unique identifier of the role. | ||||
|         /// </summary> | ||||
|         [BsonId] | ||||
|         [BsonElement("_id")] | ||||
|         [BsonRepresentation(BsonType.ObjectId)] | ||||
|         [JsonPropertyName("id")] | ||||
|         public string Id { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the name of the role. | ||||
|         /// </summary> | ||||
|         [BsonElement("name")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("name")] | ||||
|         public string Name { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the description of the role. | ||||
|         /// </summary> | ||||
|         [BsonElement("description")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("description")] | ||||
|         public string? Description { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the status of the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("applications")] | ||||
|         [JsonPropertyName("applications")] | ||||
|         [JsonConverter(typeof(EnumArrayJsonConverter<ApplicationsEnum>))] | ||||
|         public ApplicationsEnum[]? Applications { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the modules of the role. | ||||
|         /// </summary> | ||||
|         [BsonElement("modules")] | ||||
|         [JsonPropertyName("modules")] | ||||
|         public string[] Modules { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the permissions of the role. | ||||
|         /// </summary> | ||||
|         [BsonElement("permissions")] | ||||
|         [JsonPropertyName("permissions")] | ||||
|         public string[] Permissions { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the entity was created. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("createdAt")] | ||||
|         public DateTime CreatedAt { get; set; } = DateTime.UtcNow; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who created the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("createdBy")] | ||||
|         public string? CreatedBy { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the entity was last updated. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("updatedAt")] | ||||
|         public DateTime? UpdatedAt { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who last updated the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("updatedBy")] | ||||
|         public string? UpdatedBy { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the status of the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("status")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("status")] | ||||
|         [JsonConverter(typeof(JsonStringEnumConverter))] | ||||
|         public StatusEnum Status { get; set; } = StatusEnum.Active; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										18
									
								
								Core.Cerberos.Adapters/Adapters/TokenAdapter.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								Core.Cerberos.Adapters/Adapters/TokenAdapter.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| // *********************************************************************** | ||||
| // <copyright file="TokenAdapter.cs"> | ||||
| //     Heath | ||||
| // </copyright> | ||||
| // *********************************************************************** | ||||
|  | ||||
| namespace Core.Cerberos.Adapters | ||||
| { | ||||
|     public class TokenAdapter | ||||
|     { | ||||
|         public UserAdapter? User { get; set; } | ||||
|  | ||||
|         public RoleAdapter? Role { get; set; } | ||||
|  | ||||
|         public IEnumerable<PermissionAdapter>? Permissions { get; set; } | ||||
|         public IEnumerable<ModuleAdapter>? Modules { get; set; } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										171
									
								
								Core.Cerberos.Adapters/Adapters/UserAdapter.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										171
									
								
								Core.Cerberos.Adapters/Adapters/UserAdapter.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,171 @@ | ||||
| // *********************************************************************** | ||||
| // <copyright file="UserAdapter.cs"> | ||||
| //     Heath | ||||
| // </copyright> | ||||
| // *********************************************************************** | ||||
| using Core.Cerberos.Adapters.Common.Enums; | ||||
| using MongoDB.Bson; | ||||
| using MongoDB.Bson.Serialization.Attributes; | ||||
| using System.Text.Json.Serialization; | ||||
|  | ||||
| namespace Core.Cerberos.Adapters | ||||
| { | ||||
|     /// <summary> | ||||
|     /// Adapter representing a user. | ||||
|     /// </summary> | ||||
|     public class UserAdapter : BaseAdapterResponse | ||||
|     { | ||||
|         /// <summary> | ||||
|         /// Gets or sets the unique identifier of the user. | ||||
|         /// </summary> | ||||
|         [BsonId] | ||||
|         [BsonElement("_id")] | ||||
|         [BsonRepresentation(BsonType.ObjectId)] | ||||
|         [JsonPropertyName("id")] | ||||
|         public string Id { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the guid of the user. | ||||
|         /// </summary> | ||||
|         [BsonElement("guid")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("guid")] | ||||
|         public string? Guid { get; set; } | ||||
|  | ||||
|         /// <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 role ID of the user. | ||||
|         /// </summary> | ||||
|         [BsonElement("roleId")] | ||||
|         [BsonRepresentation(BsonType.ObjectId)] | ||||
|         [JsonPropertyName("roleId")] | ||||
|         public string RoleId { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the array of companies associated with the user. | ||||
|         /// </summary> | ||||
|         [BsonElement("companies")] | ||||
|         [JsonPropertyName("companies")] | ||||
|         public string[] Companies { get; set; } = null!; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the array of projects associated with the user. | ||||
|         /// </summary> | ||||
|         [BsonElement("projects")] | ||||
|         [JsonPropertyName("projects")] | ||||
|         public string[]? Projects { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the boolean of the consent form accepted by the user. | ||||
|         /// </summary> | ||||
|         [BsonElement("consentFormAccepted")] | ||||
|         [JsonPropertyName("consentFormAccepted")] | ||||
|         [BsonIgnoreIfNull] | ||||
|         public bool ConsentFormAccepted { get; set; } | ||||
|  | ||||
|         /// <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; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the entity was created. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("createdAt")] | ||||
|         public DateTime CreatedAt { get; set; } = DateTime.UtcNow; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who created the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("createdBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("createdBy")] | ||||
|         public string? CreatedBy { get; set; } | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the date and time when the entity was last updated. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedAt")] | ||||
|         [BsonRepresentation(BsonType.DateTime)] | ||||
|         [JsonPropertyName("updatedAt")] | ||||
|         public DateTime? UpdatedAt { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the user who last updated the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("updatedBy")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("updatedBy")] | ||||
|         public string? UpdatedBy { get; set; } = null; | ||||
|  | ||||
|         /// <summary> | ||||
|         /// Gets or sets the status of the entity. | ||||
|         /// </summary> | ||||
|         [BsonElement("status")] | ||||
|         [BsonRepresentation(BsonType.String)] | ||||
|         [JsonPropertyName("status")] | ||||
|         [JsonConverter(typeof(JsonStringEnumConverter))] | ||||
|         public StatusEnum Status { get; set; } = StatusEnum.Active; | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 Sergio Matias Urquin
					Sergio Matias Urquin