/
urmat
/
taskboardproject1
Обзор
Документация
Войти
/
urmat
/
taskboardproject1
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
UserService
src/UserService.Business/Application/Users/Commands/DeleteUser/DeleteUserRequestHandler.cs
48 строк
1 KB
urmatgit
+ user CRUD
07 апр 2025, 13:32
07 апр 2025, 13:32
7137e10
Код
Авторство
О чём код?
using FluentValidation; using Mapster; using MediatR; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using UserService.Business.Services.Auth; using UserService.DataAccess.Common; using UserService.DataAccess.Entities; using UserService.DataAccess.Persistence.Repositories; namespace UserService.Business.Application.Projects.Commands.DeleteProject { public class DeleteUserRequestHandler : IRequestHandler<DeleteUserRequest, Result<bool>> { private readonly IProjectRepository _projectRepository; public DeleteUserRequestHandler(IProjectRepository projectRepsitory) { _projectRepository = projectRepsitory; } public async Task<Result<bool>> Handle(DeleteUserRequest request, CancellationToken cancellationToken) { var projectExist = await _projectRepository.GetByIdAsync(request.id); if (projectExist == null) { return Result<bool>.Failure($"Project not found. ({request.id}) "); } await _projectRepository.DeleteAsync(projectExist); await _projectRepository.SaveChangesAsync(); return Result<bool>.Success(true); } } public class DeleteUserRequestValidator : AbstractValidator<DeleteUserRequest> { public DeleteUserRequestValidator() { RuleFor(x => x.id).NotEmpty(); } } }