using NetinaShop.Domain.Entities.Orders; namespace NetinaShop.Repository.Handlers.Orders; public class CreateBaseOrderCommandHandler : IRequestHandler { private readonly IRepositoryWrapper _repositoryWrapper; public CreateBaseOrderCommandHandler(IRepositoryWrapper repositoryWrapper) { _repositoryWrapper = repositoryWrapper; } public async Task Handle(CreateBaseOrderCommand request, CancellationToken cancellationToken) { if (request.UserId == default) throw new AppException("User id is null"); var order = Order.Create(request.UserId); _repositoryWrapper.SetRepository() .Add(order); await _repositoryWrapper.SaveChangesAsync(cancellationToken); return order; } }