Ejemplo n.º 1
0
            public Task <ListJobs> Handle(Query request, CancellationToken cancellationToken)
            {
                var descriptor   = new SearchDescriptor <JobModel>().Take(10000);
                var queryBuilder = new QueryBuilder();


                queryBuilder.JobTitle(request.Request.JobTitle);
                queryBuilder.LocationName(request.Request.LocationName);
                queryBuilder.MinimumSalary(request.Request.MinimumSalary);
                queryBuilder.MaximumSalary(request.Request.MaximumSalary);
                queryBuilder.Date(request.Request.Date);
                queryBuilder.PartTime(request.Request.PartTime);
                queryBuilder.FullTime(request.Request.FullTime);
                queryBuilder.ContractType(request.Request.ContractType);
                queryBuilder.EmployerName(request.Request.EmployerName);

                var boolQuery = queryBuilder.Build();

                var queryResult = _config.ElClient().Search <JobModel>(descriptor.Query(q => boolQuery));
                var result      = queryResult.Documents.ToList();
                var counters    = _config.GetGeneral(result);

                return(Task.FromResult(new ListJobs
                {
                    Lists = result,
                    Count = result.Count(),
                    Counters = counters
                }));
            }
Ejemplo n.º 2
0
            public Task <JobModel> Handle(Query request, CancellationToken cancellationToken)
            {
                var descriptor   = new SearchDescriptor <JobModel>().Take(20);
                var queryBuilder = new QueryBuilder();

                queryBuilder.MatchId(request.Id);

                var boolQuery = queryBuilder.Build();

                var queryResult = _config.ElClient().Search <JobModel>(descriptor.Query(q => boolQuery));
                var result      = queryResult.Documents.Take(1).ToList();
                var job         = new JobModel();

                foreach (var x in result)
                {
                    job = x;
                }
                return(Task.FromResult(job));
            }