using F9WebAiTest.Application.Common.Exceptions; using F9WebAiTest.Domain.Interfaces.SYS.RBAC.Users; using MediatR; namespace F9WebAiTest.Application.CQRS.SYS.RBAC.Users.Commands; /// 命令定义 public record User_DelCommand(long Id) : IRequest; /// 命令处理器 public class DelUserCommandHandler( IUserWriteRepository userWriteRepository) : IRequestHandler { public async Task Handle(User_DelCommand command, CancellationToken cancellationToken) { if (command.Id <= 0) throw new F9OperationException("用户ID不能为空"); var result = await userWriteRepository.SoftDeleteAsync(command.Id); if (result == false) throw new F9OperationException("用户", "删除"); return result; } }