public async Task Handle(V1.ClearanceCreated @event, CancellationToken cancellationToken)
            {
                var clearanceDto = new ClearanceDto
                {
                    Id           = @event.ClearanceId.ToString(),
                    StartDate    = @event.StartDate,
                    EndDate      = @event.EndDate,
                    UserAccounts = @event.UserAccounts.Select(x => new ClearanceDto.UserAccountDto
                    {
                        AccountId    = x.Key,
                        UserId       = x.Value,
                        Amount       = null,
                        CurrencyCode = null
                    }).ToList()
                };

                await clearanceDtoRepository.Create(clearanceDto);
            }
        public async Task Update(ClearanceDto clearanceDto)
        {
            var filter = Builders <ClearanceDto> .Filter.Eq(x => x.Id, clearanceDto.Id);

            await clearances.ReplaceOneAsync(filter, clearanceDto);
        }
 public async Task Create(ClearanceDto clearanceDto)
 {
     clearances.InsertOne(clearanceDto);
     await Task.CompletedTask;
 }