public EmployeeDeleteRequestValidator( IEmailIsTakenProvider emailIsTakenProvider) //IPersonalNumberIsTakenProvider personalNumberIsTakenProvider, //IEmployeePermissionAccessService employeePermissionAccessService, //IHttpContextAccessor contextAccessor) { //RuleFor(request => request.EmployeeId) // .MustAsync(async (id, cancelation) => await employeePermissionAccessService.CanDeleteEmployee(id, contextAccessor.HttpContext.User)); }
public CompanyRegisterRequestValidator( IEmailIsTakenProvider emailIsTakenProvider, ICompanyNameIsTakenProvider companyNameIsTakenProvider) { RuleFor(x => x.ValidationToken).NotEmpty(); RuleFor(request => request.ToSAccepted) .Must(toSAccepted => toSAccepted); RuleFor(request => request.CompanyName) .NotEmpty() .MustAsync(async(name, cancelation) => await companyNameIsTakenProvider.IsTaken(name) == false); RuleFor(x => x.FirstName).NotEmpty(); RuleFor(x => x.LastName).NotEmpty(); RuleFor(x => x.CompanyPhone).NotEmpty(); RuleFor(x => x.Email) .EmailAddress() .MustAsync(async(email, cancelation) => await emailIsTakenProvider.IsTaken(email) == false); RuleFor(x => x.Password).NotEmpty(); }
public EmployeeDTOValidator( IEmailIsTakenProvider emailIsTakenProvider, IHttpContextAccessor contextAccessor) { RuleFor(request => request.Id) .MustAsync(async(id, cancelation) => id.HasValue ? true //await employeePermissionAccessService.CanReadWriteEmployee(id.Value, contextAccessor.HttpContext.User) : true); RuleFor(request => request.DateOfBirth) .Must(date => !date.Equals(default(DateTime))); RuleFor(request => request.Email) .EmailAddress() .MustAsync(async(request, email, cancelation) => request.Id.HasValue ? !await emailIsTakenProvider.IsTaken(email, request.Id.Value) : !await emailIsTakenProvider.IsTaken(email) ); RuleFor(request => request.FirstName) .NotNull() .NotEmpty(); RuleFor(request => request.LastName) .NotNull() .NotEmpty(); }
public EmailTakenController(IEmailIsTakenProvider emailIsTakenProvider) { _emailIsTakenProvider = emailIsTakenProvider; }