Squash and merge of version-0.1 Co-authored-by: James Wampler <james@wamp.dev> Co-committed-by: James Wampler <james@wamp.dev>
18 lines
594 B
C#
Executable File
18 lines
594 B
C#
Executable File
using FluentValidation;
|
|
using MicCheck.Api.Common.Security.Authorization;
|
|
|
|
namespace MicCheck.Api.Projects;
|
|
|
|
public record SetUserPermissionsRequest(int UserId, bool IsAdmin, List<string> Permissions);
|
|
|
|
public class SetUserPermissionsRequestValidator : AbstractValidator<SetUserPermissionsRequest>
|
|
{
|
|
public SetUserPermissionsRequestValidator()
|
|
{
|
|
RuleFor(x => x.UserId).GreaterThan(0);
|
|
RuleForEach(x => x.Permissions)
|
|
.Must(p => Enum.TryParse<ProjectPermission>(p, true, out _))
|
|
.WithMessage("Invalid permission value.");
|
|
}
|
|
}
|