public async Task <GetJudgesInListQueryResponse> Handle
            (GetJudgesInListQuery request, CancellationToken cancellationToken)
        {
            ExecutionStatus <IReadOnlyList <Judge> > databaseoperation =
                null;

            if (request.queryWitchDataBase == QueryWitchDataBase.WithEventSourcing)
            {
                databaseoperation = await _zEsjudgeRepository.GetAllAsync();
            }
            else
            {
                databaseoperation = await _judgeRepository.GetAllAsync();
            }

            if (!databaseoperation.Success)
            {
                return(new GetJudgesInListQueryResponse
                           (databaseoperation.RemoveGeneric()));
            }

            var ordered = databaseoperation.Value.OrderBy(a => a.Name.Last);
            var maped   = _mapper.Map <List <JudgesInListViewModel> >(ordered);

            return(new GetJudgesInListQueryResponse(maped));
        }
        public async Task <GetCategoryQueryResponse> Handle(GetCategoryQuery request,
                                                            CancellationToken cancellationToken)
        {
            ExecutionStatus <Category> databaseOperation = null;

            if (request.CategoryUniqueId != null)
            {
                if (request.queryWitchDataBase == QueryWitchDataBase.WithEventSourcing)
                {
                    databaseOperation = await _zEscategoryRepository.GetByIdAsync(request.CategoryUniqueId);
                }
                else
                {
                    databaseOperation = await _categoryRepository.GetByIdAsync(request.CategoryUniqueId);
                }
            }
            else
            if (request.queryWitchDataBase == QueryWitchDataBase.WithEventSourcing)
            {
                databaseOperation = await _zEscategoryRepository.GetByIdAsync(request.CategoryId);
            }
            else
            {
                databaseOperation = await _categoryRepository.GetByIdAsync(request.CategoryId);
            }

            if (!databaseOperation.Success)
            {
                return(new GetCategoryQueryResponse(databaseOperation.RemoveGeneric()));
            }

            var categorydto = _mapper.Map <CategoryDto>(databaseOperation.Value);

            return(new GetCategoryQueryResponse(categorydto));
        }
        public async Task <GetAllCallForSpeechesQueryHandlerResponse> Handle(GetAllCallForSpeechesQuery request, CancellationToken cancellationToken)
        {
            ExecutionStatus <IReadOnlyList <CallForSpeech> > databaseresult = null;

            if (request.queryWitchDataBase == QueryWitchDataBase.WithEventSourcing)
            {
                databaseresult = await _zEscallRepository.GetCollectionAsync(request.Filter);
            }
            else
            {
                databaseresult = await _callRepository.GetCollectionAsync(request.Filter);
            }

            if (databaseresult.Success)
            {
                var allordered = databaseresult.Value.OrderBy(x => x.Id);
                var allmaped   = _mapper.Map <List <CallForSpeechInListViewModel> >(databaseresult.Value);
                return(new GetAllCallForSpeechesQueryHandlerResponse(allmaped));
            }

            return(new GetAllCallForSpeechesQueryHandlerResponse(databaseresult.RemoveGeneric()));
        }
        public async Task <GetCallForSpeechQueryHandlerResponse> Handle(GetCallForSpeechQuery request, CancellationToken cancellationToken)
        {
            ExecutionStatus <CallForSpeech> databaseOperationCfs = null;


            if (request.CallForSpeechUniqueId != null)
            {
                if (request.queryWitchDataBase == QueryWitchDataBase.WithEventSourcing)
                {
                    databaseOperationCfs = await _zEscallRepository.GetByIdAsync(request.CallForSpeechUniqueId);
                }
                else
                {
                    databaseOperationCfs = await _callRepository.GetByIdAsync(request.CallForSpeechUniqueId);
                }
            }
            else
            if (request.queryWitchDataBase == QueryWitchDataBase.WithEventSourcing)
            {
                databaseOperationCfs = await _zEscallRepository.GetByIdAsync(request.CallForSpeechId);
            }
            else
            {
                databaseOperationCfs = await _callRepository.GetByIdAsync(request.CallForSpeechId);
            }



            if (!databaseOperationCfs.Success)
            {
                return(new GetCallForSpeechQueryHandlerResponse(databaseOperationCfs
                                                                .RemoveGeneric()));
            }

            var cfsMaped = _mapper.Map <CallForSpeechViewModel>(databaseOperationCfs.Value);

            return(new GetCallForSpeechQueryHandlerResponse(cfsMaped));
        }