gender controller finished

This commit is contained in:
2024-10-05 09:12:28 +02:00
Unverified
parent b43b319855
commit 065c27642e
16 changed files with 389 additions and 1 deletions

View File

@@ -0,0 +1,22 @@
using Microsoft.AspNetCore.Mvc;
using WatchIt.Common.Query;
namespace WatchIt.Common.Model.Genders;
public class GenderQueryParameters : QueryParameters<GenderResponse>
{
#region PROPERTIES
[FromQuery(Name = "name")]
public string? Name { get; set; }
#endregion
#region PRIVATE METHODS
protected override bool IsMeetingConditions(GenderResponse item) => TestStringWithRegex(item.Name, Name);
#endregion
}

View File

@@ -0,0 +1,13 @@
namespace WatchIt.Common.Model.Genders;
public class GenderRequest : Gender
{
#region PUBLIC METHODS
public Database.Model.Common.Gender CreateGender() => new Database.Model.Common.Gender()
{
Name = Name
};
#endregion
}

View File

@@ -1,12 +1,20 @@
using System.Diagnostics.CodeAnalysis;
using System.Text.Json.Serialization;
using WatchIt.Common.Query;
namespace WatchIt.Common.Model.Genders;
public class GenderResponse : Gender
public class GenderResponse : Gender, IQueryOrderable<GenderResponse>
{
#region PROPERTIES
[JsonIgnore]
public static IDictionary<string, Func<GenderResponse, IComparable>> OrderableProperties { get; } = new Dictionary<string, Func<GenderResponse, IComparable>>
{
{ "name", item => item.Name }
};
[JsonPropertyName("id")]
public required short? Id { get; set; }