public CreateAccountingDocumentCommandHandler(
     ILogger <CreateAccountingDocumentCommandHandler> logger,
     IUnitOfWork unitOfWork,
     IIdentityService identityService,
     IMapper mapper,
     IAuthorizationService authorizationService,
     IAccountingDocumentQueries accountingQueries,
     IMasterDataService masterDataService,
     ISystemDateTimeService systemDateTimeService,
     IProcessMessageService processMessageService,
     IAccountingDocumentRepository accountingDocumentRepository,
     IInvoicingRepository documentMatchingRepository,
     IForeignExchangeRateService foreignExchangeRateService)
 {
     _unitOfWork                   = unitOfWork;
     _logger                       = logger;
     _mapper                       = mapper;
     _identityService              = identityService ?? throw new ArgumentNullException(nameof(identityService));
     _authorizationService         = authorizationService ?? throw new ArgumentNullException(nameof(authorizationService));
     _systemDateTimeService        = systemDateTimeService ?? throw new ArgumentNullException(nameof(systemDateTimeService));
     _processMessageService        = processMessageService ?? throw new ArgumentNullException(nameof(processMessageService));
     _accountingQueries            = accountingQueries;
     _masterDataService            = masterDataService;
     _accountingDocumentRepository = accountingDocumentRepository;
     _invoicingRepository          = documentMatchingRepository;
     _foreignExchangeRateService   = foreignExchangeRateService;
 }
 public DroneDeliveriesController(
     IInvoicingRepository invoicingRepository,
     ILoggerFactory loggerFactory)
 {
     this.logger = loggerFactory.CreateLogger <DroneDeliveriesController>();
     this._invoicingRepository = invoicingRepository;
 }