role type endpoints rename

This commit is contained in:
2024-10-06 16:41:06 +02:00
Unverified
parent 6cae764d1d
commit 41b15abef1
11 changed files with 93 additions and 93 deletions

View File

@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
namespace WatchIt.Common.Model.Roles;
public class Role
public class RoleType
{
#region PROPERTIES

View File

@@ -3,7 +3,7 @@ using WatchIt.Common.Query;
namespace WatchIt.Common.Model.Roles;
public class RoleQueryParameters : QueryParameters<RoleResponse>
public class RoleTypeQueryParameters : QueryParameters<RoleTypeResponse>
{
#region PROPERTIES
@@ -16,7 +16,7 @@ public class RoleQueryParameters : QueryParameters<RoleResponse>
#region PRIVATE METHODS
protected override bool IsMeetingConditions(RoleResponse item) => TestStringWithRegex(item.Name, Name);
protected override bool IsMeetingConditions(RoleTypeResponse item) => TestStringWithRegex(item.Name, Name);
#endregion
}

View File

@@ -1,6 +1,6 @@
namespace WatchIt.Common.Model.Roles;
public class RoleRequest : Role
public class RoleTypeRequest : RoleType
{
#region PUBLIC METHODS

View File

@@ -4,12 +4,12 @@ using WatchIt.Common.Query;
namespace WatchIt.Common.Model.Roles;
public class RoleResponse : Role, IQueryOrderable<RoleResponse>
public class RoleTypeResponse : RoleType, IQueryOrderable<RoleTypeResponse>
{
#region PROPERTIES
[JsonIgnore]
public static IDictionary<string, Func<RoleResponse, IComparable>> OrderableProperties { get; } = new Dictionary<string, Func<RoleResponse, IComparable>>
public static IDictionary<string, Func<RoleTypeResponse, IComparable>> OrderableProperties { get; } = new Dictionary<string, Func<RoleTypeResponse, IComparable>>
{
{ "name", item => item.Name }
};
@@ -25,17 +25,17 @@ public class RoleResponse : Role, IQueryOrderable<RoleResponse>
#region CONSTRUCTORS
[JsonConstructor]
public RoleResponse() { }
public RoleTypeResponse() { }
[SetsRequiredMembers]
public RoleResponse(Database.Model.Person.PersonCreatorRoleType creatorRoleType)
public RoleTypeResponse(Database.Model.Person.PersonCreatorRoleType creatorRoleType)
{
Id = creatorRoleType.Id;
Name = creatorRoleType.Name;
}
[SetsRequiredMembers]
public RoleResponse(Database.Model.Person.PersonActorRoleType actorRoleType)
public RoleTypeResponse(Database.Model.Person.PersonActorRoleType actorRoleType)
{
Id = actorRoleType.Id;
Name = actorRoleType.Name;

View File

@@ -34,61 +34,61 @@ public class RolesController : ControllerBase
#region Actor
[HttpGet("actor")]
[HttpGet("actor/type")]
[AllowAnonymous]
[ProducesResponseType(typeof(IEnumerable<RoleResponse>), StatusCodes.Status200OK)]
public async Task<ActionResult> GetAllActorRoles(RoleQueryParameters query) => await _rolesControllerService.GetAllActorRoles(query);
[ProducesResponseType(typeof(IEnumerable<RoleTypeResponse>), StatusCodes.Status200OK)]
public async Task<ActionResult> GetAllActorRoleTypes(RoleTypeQueryParameters query) => await _rolesControllerService.GetAllActorRoleTypes(query);
[HttpGet("actor/{id}")]
[HttpGet("actor/type/{id}")]
[AllowAnonymous]
[ProducesResponseType(typeof(RoleResponse), StatusCodes.Status200OK)]
[ProducesResponseType(typeof(RoleTypeResponse), StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status404NotFound)]
public async Task<ActionResult> GetActorRole([FromRoute]short id) => await _rolesControllerService.GetActorRole(id);
public async Task<ActionResult> GetActorRoleType([FromRoute]short id) => await _rolesControllerService.GetActorRoleType(id);
[HttpPost("actor")]
[HttpPost("actor/type")]
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
[ProducesResponseType(typeof(RoleResponse), StatusCodes.Status201Created)]
[ProducesResponseType(typeof(RoleTypeResponse), StatusCodes.Status201Created)]
[ProducesResponseType(typeof(ValidationProblemDetails), StatusCodes.Status400BadRequest)]
[ProducesResponseType(typeof(void), StatusCodes.Status401Unauthorized)]
[ProducesResponseType(typeof(void), StatusCodes.Status403Forbidden)]
public async Task<ActionResult> PostActorRoles([FromBody]RoleRequest body) => await _rolesControllerService.PostActorRole(body);
public async Task<ActionResult> PostActorRoleType([FromBody]RoleTypeRequest body) => await _rolesControllerService.PostActorRoleType(body);
[HttpDelete("actor/{id}")]
[HttpDelete("actor/type/{id}")]
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
[ProducesResponseType(StatusCodes.Status204NoContent)]
[ProducesResponseType(typeof(void), StatusCodes.Status401Unauthorized)]
[ProducesResponseType(typeof(void), StatusCodes.Status403Forbidden)]
public async Task<ActionResult> DeleteActorRoles([FromRoute]short id) => await _rolesControllerService.DeleteActorRole(id);
public async Task<ActionResult> DeleteActorRoleType([FromRoute]short id) => await _rolesControllerService.DeleteActorRoleType(id);
#endregion
#region Creator
[HttpGet("creator")]
[HttpGet("creator/type")]
[AllowAnonymous]
[ProducesResponseType(typeof(IEnumerable<RoleResponse>), StatusCodes.Status200OK)]
public async Task<ActionResult> GetAllCreatorRoles(RoleQueryParameters query) => await _rolesControllerService.GetAllCreatorRoles(query);
[ProducesResponseType(typeof(IEnumerable<RoleTypeResponse>), StatusCodes.Status200OK)]
public async Task<ActionResult> GetAllCreatorRoleTypes(RoleTypeQueryParameters query) => await _rolesControllerService.GetAllCreatorRoleTypes(query);
[HttpGet("creator/{id}")]
[HttpGet("creator/type/{id}")]
[AllowAnonymous]
[ProducesResponseType(typeof(RoleResponse), StatusCodes.Status200OK)]
[ProducesResponseType(typeof(RoleTypeResponse), StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status404NotFound)]
public async Task<ActionResult> GetCreatorRole([FromRoute]short id) => await _rolesControllerService.GetCreatorRole(id);
public async Task<ActionResult> GetCreatorRoleType([FromRoute]short id) => await _rolesControllerService.GetCreatorRoleType(id);
[HttpPost("creator")]
[HttpPost("creator/type")]
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
[ProducesResponseType(typeof(RoleResponse), StatusCodes.Status201Created)]
[ProducesResponseType(typeof(RoleTypeResponse), StatusCodes.Status201Created)]
[ProducesResponseType(typeof(ValidationProblemDetails), StatusCodes.Status400BadRequest)]
[ProducesResponseType(typeof(void), StatusCodes.Status401Unauthorized)]
[ProducesResponseType(typeof(void), StatusCodes.Status403Forbidden)]
public async Task<ActionResult> PostCreatorRoles([FromBody]RoleRequest body) => await _rolesControllerService.PostCreatorRole(body);
public async Task<ActionResult> PostCreatorRoleType([FromBody]RoleTypeRequest body) => await _rolesControllerService.PostCreatorRoleType(body);
[HttpDelete("creator/{id}")]
[HttpDelete("creator/type/{id}")]
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
[ProducesResponseType(StatusCodes.Status204NoContent)]
[ProducesResponseType(typeof(void), StatusCodes.Status401Unauthorized)]
[ProducesResponseType(typeof(void), StatusCodes.Status403Forbidden)]
public async Task<ActionResult> DeleteCreatorRoles([FromRoute]short id) => await _rolesControllerService.DeleteCreatorRole(id);
public async Task<ActionResult> DeleteCreatorRoleType([FromRoute]short id) => await _rolesControllerService.DeleteCreatorRoleType(id);
#endregion

View File

@@ -5,13 +5,13 @@ namespace WatchIt.WebAPI.Services.Controllers.Roles;
public interface IRolesControllerService
{
Task<RequestResult> GetAllActorRoles(RoleQueryParameters query);
Task<RequestResult> GetActorRole(short id);
Task<RequestResult> PostActorRole(RoleRequest data);
Task<RequestResult> DeleteActorRole(short id);
Task<RequestResult> GetAllActorRoleTypes(RoleTypeQueryParameters query);
Task<RequestResult> GetActorRoleType(short id);
Task<RequestResult> PostActorRoleType(RoleTypeRequest data);
Task<RequestResult> DeleteActorRoleType(short id);
Task<RequestResult> GetAllCreatorRoles(RoleQueryParameters query);
Task<RequestResult> GetCreatorRole(short id);
Task<RequestResult> PostCreatorRole(RoleRequest data);
Task<RequestResult> DeleteCreatorRole(short id);
Task<RequestResult> GetAllCreatorRoleTypes(RoleTypeQueryParameters query);
Task<RequestResult> GetCreatorRoleType(short id);
Task<RequestResult> PostCreatorRoleType(RoleTypeRequest data);
Task<RequestResult> DeleteCreatorRoleType(short id);
}

View File

@@ -34,15 +34,15 @@ public class RolesControllerService : IRolesControllerService
#region Actor
public async Task<RequestResult> GetAllActorRoles(RoleQueryParameters query)
public async Task<RequestResult> GetAllActorRoleTypes(RoleTypeQueryParameters query)
{
IEnumerable<PersonActorRoleType> rawData = await _database.PersonActorRoleTypes.ToListAsync();
IEnumerable<RoleResponse> data = rawData.Select(x => new RoleResponse(x));
IEnumerable<RoleTypeResponse> data = rawData.Select(x => new RoleTypeResponse(x));
data = query.PrepareData(data);
return RequestResult.Ok(data);
}
public async Task<RequestResult> GetActorRole(short id)
public async Task<RequestResult> GetActorRoleType(short id)
{
PersonActorRoleType? item = await _database.PersonActorRoleTypes.FirstOrDefaultAsync(x => x.Id == id);
if (item is null)
@@ -50,11 +50,11 @@ public class RolesControllerService : IRolesControllerService
return RequestResult.NotFound();
}
RoleResponse data = new RoleResponse(item);
RoleTypeResponse data = new RoleTypeResponse(item);
return RequestResult.Ok(data);
}
public async Task<RequestResult> PostActorRole(RoleRequest data)
public async Task<RequestResult> PostActorRoleType(RoleTypeRequest data)
{
UserValidator validator = _userService.GetValidator().MustBeAdmin();
if (!validator.IsValid)
@@ -66,10 +66,10 @@ public class RolesControllerService : IRolesControllerService
await _database.PersonActorRoleTypes.AddAsync(item);
await _database.SaveChangesAsync();
return RequestResult.Created($"roles/actor/{item.Id}", new RoleResponse(item));
return RequestResult.Created($"roles/actor/{item.Id}", new RoleTypeResponse(item));
}
public async Task<RequestResult> DeleteActorRole(short id)
public async Task<RequestResult> DeleteActorRoleType(short id)
{
UserValidator validator = _userService.GetValidator().MustBeAdmin();
if (!validator.IsValid)
@@ -96,15 +96,15 @@ public class RolesControllerService : IRolesControllerService
#region Creator
public async Task<RequestResult> GetAllCreatorRoles(RoleQueryParameters query)
public async Task<RequestResult> GetAllCreatorRoleTypes(RoleTypeQueryParameters query)
{
IEnumerable<PersonCreatorRoleType> rawData = await _database.PersonCreatorRoleTypes.ToListAsync();
IEnumerable<RoleResponse> data = rawData.Select(x => new RoleResponse(x));
IEnumerable<RoleTypeResponse> data = rawData.Select(x => new RoleTypeResponse(x));
data = query.PrepareData(data);
return RequestResult.Ok(data);
}
public async Task<RequestResult> GetCreatorRole(short id)
public async Task<RequestResult> GetCreatorRoleType(short id)
{
PersonCreatorRoleType? item = await _database.PersonCreatorRoleTypes.FirstOrDefaultAsync(x => x.Id == id);
if (item is null)
@@ -112,11 +112,11 @@ public class RolesControllerService : IRolesControllerService
return RequestResult.NotFound();
}
RoleResponse data = new RoleResponse(item);
RoleTypeResponse data = new RoleTypeResponse(item);
return RequestResult.Ok(data);
}
public async Task<RequestResult> PostCreatorRole(RoleRequest data)
public async Task<RequestResult> PostCreatorRoleType(RoleTypeRequest data)
{
UserValidator validator = _userService.GetValidator().MustBeAdmin();
if (!validator.IsValid)
@@ -128,10 +128,10 @@ public class RolesControllerService : IRolesControllerService
await _database.PersonCreatorRoleTypes.AddAsync(item);
await _database.SaveChangesAsync();
return RequestResult.Created($"roles/creator/{item.Id}", new RoleResponse(item));
return RequestResult.Created($"roles/creator/{item.Id}", new RoleTypeResponse(item));
}
public async Task<RequestResult> DeleteCreatorRole(short id)
public async Task<RequestResult> DeleteCreatorRoleType(short id)
{
UserValidator validator = _userService.GetValidator().MustBeAdmin();
if (!validator.IsValid)

View File

@@ -3,12 +3,12 @@ namespace WatchIt.Website.Services.Utility.Configuration.Model;
public class Roles
{
public string Base { get; set; }
public string GetAllActorRoles { get; set; }
public string GetActorRole { get; set; }
public string PostActorRole { get; set; }
public string DeleteActorRole { get; set; }
public string GetAllCreatorRoles { get; set; }
public string GetCreatorRole { get; set; }
public string PostCreatorRole { get; set; }
public string DeleteCreatorRole { get; set; }
public string GetAllActorRoleTypes { get; set; }
public string GetActorRoleType { get; set; }
public string PostActorRoleType { get; set; }
public string DeleteActorRoleType { get; set; }
public string GetAllCreatorRoleTypes { get; set; }
public string GetCreatorRoleType { get; set; }
public string PostCreatorRoleType { get; set; }
public string DeleteCreatorRoleType { get; set; }
}

View File

@@ -4,12 +4,12 @@ namespace WatchIt.Website.Services.WebAPI.Roles;
public interface IRolesWebAPIService
{
Task GetAllActorRoles(RoleQueryParameters? query = null, Action<IEnumerable<RoleResponse>>? successAction = null);
Task GetActorRole(long id, Action<RoleResponse>? successAction = null, Action? notFoundAction = null);
Task PostActorRole(RoleRequest data, Action<RoleResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task DeleteActorRole(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task GetAllCreatorRoles(RoleQueryParameters? query = null, Action<IEnumerable<RoleResponse>>? successAction = null);
Task GetCreatorRole(long id, Action<RoleResponse>? successAction = null, Action? notFoundAction = null);
Task PostCreatorRole(RoleRequest data, Action<RoleResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task DeleteCreatorRole(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task GetAllActorRoleTypes(RoleTypeQueryParameters? query = null, Action<IEnumerable<RoleTypeResponse>>? successAction = null);
Task GetActorRoleType(long id, Action<RoleTypeResponse>? successAction = null, Action? notFoundAction = null);
Task PostActorRoleType(RoleTypeRequest data, Action<RoleTypeResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task DeleteActorRoleType(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task GetAllCreatorRoleTypes(RoleTypeQueryParameters? query = null, Action<IEnumerable<RoleTypeResponse>>? successAction = null);
Task GetCreatorRoleType(long id, Action<RoleTypeResponse>? successAction = null, Action? notFoundAction = null);
Task PostCreatorRoleType(RoleTypeRequest data, Action<RoleTypeResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
Task DeleteCreatorRoleType(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null);
}

View File

@@ -30,9 +30,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
#region Actor
public async Task GetAllActorRoles(RoleQueryParameters? query = null, Action<IEnumerable<RoleResponse>>? successAction = null)
public async Task GetAllActorRoleTypes(RoleTypeQueryParameters? query = null, Action<IEnumerable<RoleTypeResponse>>? successAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.GetAllActorRoles);
string url = GetUrl(EndpointsConfiguration.Roles.GetAllActorRoleTypes);
HttpRequest request = new HttpRequest(HttpMethodType.Get, url);
request.Query = query;
@@ -42,9 +42,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
.ExecuteAction();
}
public async Task GetActorRole(long id, Action<RoleResponse>? successAction = null, Action? notFoundAction = null)
public async Task GetActorRoleType(long id, Action<RoleTypeResponse>? successAction = null, Action? notFoundAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.GetActorRole, id);
string url = GetUrl(EndpointsConfiguration.Roles.GetActorRoleType, id);
HttpRequest request = new HttpRequest(HttpMethodType.Get, url);
@@ -54,9 +54,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
.ExecuteAction();
}
public async Task PostActorRole(RoleRequest data, Action<RoleResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
public async Task PostActorRoleType(RoleTypeRequest data, Action<RoleTypeResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.PostActorRole);
string url = GetUrl(EndpointsConfiguration.Roles.PostActorRoleType);
HttpRequest request = new HttpRequest(HttpMethodType.Post, url);
request.Body = data;
@@ -69,9 +69,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
.ExecuteAction();
}
public async Task DeleteActorRole(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
public async Task DeleteActorRoleType(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.DeleteActorRole, id);
string url = GetUrl(EndpointsConfiguration.Roles.DeleteActorRoleType, id);
HttpRequest request = new HttpRequest(HttpMethodType.Delete, url);
@@ -86,9 +86,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
#region Creator
public async Task GetAllCreatorRoles(RoleQueryParameters? query = null, Action<IEnumerable<RoleResponse>>? successAction = null)
public async Task GetAllCreatorRoleTypes(RoleTypeQueryParameters? query = null, Action<IEnumerable<RoleTypeResponse>>? successAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.GetAllCreatorRoles);
string url = GetUrl(EndpointsConfiguration.Roles.GetAllCreatorRoleTypes);
HttpRequest request = new HttpRequest(HttpMethodType.Get, url);
request.Query = query;
@@ -98,9 +98,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
.ExecuteAction();
}
public async Task GetCreatorRole(long id, Action<RoleResponse>? successAction = null, Action? notFoundAction = null)
public async Task GetCreatorRoleType(long id, Action<RoleTypeResponse>? successAction = null, Action? notFoundAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.GetCreatorRole, id);
string url = GetUrl(EndpointsConfiguration.Roles.GetCreatorRoleType, id);
HttpRequest request = new HttpRequest(HttpMethodType.Get, url);
@@ -110,9 +110,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
.ExecuteAction();
}
public async Task PostCreatorRole(RoleRequest data, Action<RoleResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
public async Task PostCreatorRoleType(RoleTypeRequest data, Action<RoleTypeResponse>? successAction = null, Action<IDictionary<string, string[]>>? badRequestAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.PostCreatorRole);
string url = GetUrl(EndpointsConfiguration.Roles.PostCreatorRoleType);
HttpRequest request = new HttpRequest(HttpMethodType.Post, url);
request.Body = data;
@@ -125,9 +125,9 @@ public class RolesWebAPIService : BaseWebAPIService, IRolesWebAPIService
.ExecuteAction();
}
public async Task DeleteCreatorRole(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
public async Task DeleteCreatorRoleType(long id, Action? successAction = null, Action? unauthorizedAction = null, Action? forbiddenAction = null)
{
string url = GetUrl(EndpointsConfiguration.Roles.DeleteCreatorRole, id);
string url = GetUrl(EndpointsConfiguration.Roles.DeleteCreatorRoleType, id);
HttpRequest request = new HttpRequest(HttpMethodType.Delete, url);

View File

@@ -92,14 +92,14 @@
},
"Roles": {
"Base": "/roles",
"GetAllActorRoles": "/actor",
"GetActorRole": "/actor/{0}",
"PostActorRole": "/actor",
"DeleteActorRole": "/actor/{0}",
"GetAllCreatorRoles": "/creator",
"GetCreatorRole": "/creator/{0}",
"PostCreatorRole": "/creator",
"DeleteCreatorRole": "/creator/{0}"
"GetAllActorRoleTypes": "/actor/type",
"GetActorRoleType": "/actor/type/{0}",
"PostActorRoleType": "/actor/type",
"DeleteActorRoleType": "/actor/type/{0}",
"GetAllCreatorRoleTypes": "/creator/type",
"GetCreatorRoleType": "/creator/type/{0}",
"PostCreatorRoleType": "/creator/type",
"DeleteCreatorRoleType": "/creator/type/{0}"
}
}
}