Esempio n. 1
0
        public async Task <IActionResult> PersonGroupPersonsList([FromQuery] BaseResourceParameters resourceParameters)
        {
            var lastReturnedPersonId = string.Empty;

            if (HttpContext.Session.GetString("LastReturnedPersonId") is { } personId)
            {
                lastReturnedPersonId = personId;
            }

            if (HttpContext.Session.GetInt32("LastPersonsPageNumber") is { } lastPageNumber)
            {
                if (resourceParameters?.PageNumber <= lastPageNumber)
                {
                    lastReturnedPersonId = string.Empty;
                }
            }
            var persons = await _faceRecognitionService.GetPersonGroupPersonsList(Resources.FaceAPI_PersonGroupId,
                                                                                  resourceParameters?.PageSize ?? 6, lastReturnedPersonId);

            if (persons.Any())
            {
                HttpContext.Session.SetString("LastReturnedPersonId", persons.Last().PersonId.ToString());
                HttpContext.Session.SetInt32("LastPersonsPageNumber", resourceParameters?.PageNumber ?? 1);
            }
            return(Ok(persons));
        }
        //public static IQueryable<TEntity> GetMany<TEntity, TIdentifier>(this IDataService<TEntity, TIdentifier> dataService,
        //    BaseResourceParameters baseResourceParameters) where TEntity : class, IEntity =>
        //    dataService.GetMany().ApplyPaging(baseResourceParameters);

        public static IQueryable <TEntity> GetManyFilter <TEntity>(this IDataService <TEntity> dataService,
                                                                   BaseResourceParameters baseResourceParameters, FilterByIdsParameter filterByIdsParameter,
                                                                   FilterByStatusesParameter filterByStatusesParameter, string subscriberId, bool applyPaging = true) where TEntity : QuantumAlgorithm =>
        ((filterByIdsParameter?.GetIds()).Any() ? dataService.GetManyFilter(filterByIdsParameter.GetIds().ToArray()) : dataService.GetMany()).
        Where(entity => entity.SubscriberId == subscriberId).Where(entity => filterByStatusesParameter == null ||
                                                                   !filterByStatusesParameter.GetStatuses().Any() || filterByStatusesParameter.GetStatuses().Contains((int)entity.Status)).
        MaybeApplyPaging(baseResourceParameters, applyPaging);
Esempio n. 3
0
        protected DisplayDataForm()
        {
            InitializeComponent();
            _dataForDgrv = new BindingSource();
            SearchText   = string.Empty;

            //Main data grid view settings
            dgrvMain.SetDgrvDesignConfig();
            MainDgrv = dgrvMain;
            dgrvMain.AllowUserToDeleteRows = true;
            ResourceParameters             = new BaseResourceParameters();

            btnPrevPage.Enabled = false;

            //Tool tips
            toolTip.SetToolTip(btnPrevPage, "Previous page");
            toolTip.SetToolTip(btnNextPage, "Next page");

            if (!ConnectionCheck.CheckForInternetConnection())
            {
                pnlTop.Hide();
                dgrvMain.Hide();
                pnlNavButtons.Hide();
                _internetError = new PanelCheckInternetConnection(this);
                _internetError.Show();
                _internetError.BringToFront();
                Controls.Add(_internetError);
                _internetError.SetRetryConnectionEvent(RetryConnection);
            }
        }
        public BaseListViewModel()
        {
            ResourceParameters = new BaseResourceParameters
            {
                PageSize = ResourceKeys.RowCountZahteviZaPregled.AsResourceType <int>()
            };

            //Commands init
            NextPageCommand             = new Command(NextPage);
            PrevPageCommand             = new Command(PrevPage);
            InitCommand                 = new Command(async() => await Init());
            RefreshDataCommand          = new Command(async() => await LoadData());
            SearchCommand               = new Command(async() => await Search());
            CollectionItemTappedCommand = new Command(async() => await CollectionItem_Tapped());
            DataAvailable               = true;
        }
Esempio n. 5
0
        public IActionResult GetResources(BaseResourceParameters baseResourceParameters, FilterByIdsParameter filterByIdsParameter,
                                          FilterByStatusesParameter filterByStatusesParameter)
        {
            var subscriberId = User.Claims.First(claim => claim.Type == JwtClaimTypes.Subject).Value;

            IEnumerable <QuantumAlgorithmGetDto> discreteLogarithms =
                Map <IEnumerable <DiscreteLogarithmGetDto> >(_discreteLogarithmDataService.GetManyFilter(baseResourceParameters,
                                                                                                         filterByIdsParameter, filterByStatusesParameter, subscriberId, false));

            IEnumerable <QuantumAlgorithmGetDto> integerFactorizations =
                Map <IEnumerable <IntegerFactorizationGetDto> >(_integerFactorizationDataService.GetManyFilter(baseResourceParameters,
                                                                                                               filterByIdsParameter, filterByStatusesParameter, subscriberId, false));

            List <QuantumAlgorithmGetDto> solutions = discreteLogarithms.ToList();

            solutions.AddRange(integerFactorizations);
            return(Ok(solutions.OrderByDescending(solution => solution.StartTime).AsQueryable().ApplyPaging(baseResourceParameters)));
        }
Esempio n. 6
0
 public IActionResult GetResources(BaseResourceParameters baseResourceParameters, FilterByIdsParameter filterByIdsParameter,
                                   FilterByStatusesParameter filterByStatusesParameter) =>
 Ok(Map <IEnumerable <DiscreteLogarithmGetDto> >(ResourceDataService.GetManyFilter(baseResourceParameters, filterByIdsParameter,
                                                                                   filterByStatusesParameter, User.Claims.First(claim => claim.Type == JwtClaimTypes.Subject).Value)));
 public static IQueryable <TEntity> ApplyPaging <TEntity>(this IQueryable <TEntity> source, BaseResourceParameters baseResourceParameters) =>
 source.Skip(baseResourceParameters.PageSize * (baseResourceParameters.Page - 1)).Take(baseResourceParameters.PageSize);
 private static IQueryable <TEntity> MaybeApplyPaging <TEntity>(this IQueryable <TEntity> source, BaseResourceParameters baseResourceParameters,
                                                                bool applyPaging) => applyPaging?source.ApplyPaging(baseResourceParameters) : source;