public async Task <WoodyPlantListModel> Handle(GetWoodyPlantsByFilterRequest request, CancellationToken cancellationToken)
        {
            var versionDoc = await fVersionRepository.GetSingleAsync(cancellationToken);

            if (await IsFillCoordsFilterAsync(request.Filter, request.Sort, cancellationToken))
            {
                var all = await fWoodyPlantsRepository.GetWithCoordsAsync(cancellationToken);

                return(new WoodyPlantListModel
                {
                    TotalCount = all.Count,
                    WoodyPlants = all.ToPreview(),
                    DataVersion = versionDoc?.Version
                });
            }

            var plants = await fWoodyPlantsRepository.GetByFilterAsync(request.Filter, request.Sort, cancellationToken);

            return(new WoodyPlantListModel
            {
                TotalCount = await fWoodyPlantsRepository.CountByFilterAsync(request.Filter, cancellationToken),
                WoodyPlants = plants.ToPreview(),
                DataVersion = versionDoc?.Version
            });
        }
Пример #2
0
        public async Task <InfoModel> Handle(GetInfoRequest request, CancellationToken cancellationToken)
        {
            var document = await fVersionRepository.GetSingleAsync(cancellationToken);

            return(new InfoModel
            {
                Version = document?.Version
            });
        }