public VacancyController(
     VacancyControllerService controllerSerivce,
     IDatabaseOrganizationService organizationService)
 {
     ControllerService   = controllerSerivce;
     OrganizationService = organizationService;
 }
Example #2
0
 public SearchFilter(
     SearchFilterOptions options,
     IDatabaseOrganizationService organizationService)
     : base(options)
 {
     Predicates = GetPredicates(organizationService);
 }
Example #3
0
        protected List <Func <VacancyModel, bool> > GetPredicates(
            IDatabaseOrganizationService organizationService)
        {
            var predicates = new List <Func <VacancyModel, bool> >();

            if (Options.SalaryOptions != null)
            {
                predicates.Add(new SalaryFilter(Options.SalaryOptions)
                               .GetPredicate());
            }

            if (Options.OrganizationOptions != null)
            {
                predicates.Add(new OrganizationFilter(Options.OrganizationOptions, organizationService)
                               .GetPredicate());
            }

            if (Options.KeyWordsOptions != null)
            {
                predicates.Add(new KeyWordsFilter(Options.KeyWordsOptions)
                               .GetPredicate());
            }

            return(predicates);
        }
 public SearchControllerService(
     IDatabaseVacancyService vacancyService,
     IDatabaseOrganizationService organizationService)
 {
     VacancyService      = vacancyService;
     OrganizationService = organizationService;
 }
 public OrganizationFilter(
     OrganizationFilterOptions options,
     IDatabaseOrganizationService organizationService)
     : base(options)
 {
     OrganizationService = organizationService;
     Id = GetId();
 }
 public VacancyController(
     IConfiguration configuration,
     VacancyControllerService vacancyService,
     IDatabaseOrganizationService organizationService)
     : base(configuration)
 {
     VacancyService      = vacancyService;
     OrganizationService = organizationService;
 }
Example #7
0
        public static string CreateIfAbsent(
            this IDatabaseOrganizationService organizationService,
            string organizationName)
        {
            var organizationId = organizationService.GetOrganizationIdByName(organizationName);

            if (organizationId == null)
            {
                organizationId = organizationService.Add(
                    new OrganizationModel
                {
                    Name = organizationName
                });
            }

            return(organizationId);
        }
 public static VacancyResponse ToResponse(
     this VacancyModel model,
     IDatabaseOrganizationService organizationService)
 => new VacancyResponse
 {
     Id           = model.Id,
     Title        = model.Title,
     Salary       = model.Salary,
     Description  = model.Description,
     Organization = ((model.Organization == null)
             ? organizationService.Get(model.OrganizationId)
             : model.Organization
                     ).ToResponse(),
     EmploymentType = model.EmploymentType?.ToList()?.ToStringName(),
     ContactPerson  = model.ContactPerson,
     ContactPhone   = model.ContactPhone,
     LastUpdated    = model.LastUpdated,
     CreatedAt      = model.CreatedAt
 };
Example #9
0
        public static VacancyModel ToModel(
            this VacancyCreateModel request,
            IDatabaseOrganizationService organizationService)
        {
            var result = new VacancyModel
            {
                Title          = request.Title,
                Salary         = request.Salary,
                Description    = request.Description,
                ContactPhone   = request.ContactPhone,
                ContactPerson  = request.ContactPerson,
                EmploymentType = request.EmploymentType
            };

            var organizationName = request.Organization;

            result.OrganizationId = organizationService.CreateIfAbsent(organizationName);

            return(result);
        }
Example #10
0
 public static string GetOrganizationIdByName(
     this IDatabaseOrganizationService organizationService,
     string organizationName)
 => organizationService.GetByName(organizationName)?.Id;