/// <summary>
 /// this is the default constructor for the department service class and used for repository and serivces dependency Injection
 /// </summary>
 /// <param name="departmentRepository">department repository object</param>
 /// <param name="departmentDesignationRepository">department designation repository object for dependency injection</param>
 public ProjectRequirementsService(IProjectRequirementsRepository projectRequirementsRepository, IMapper mapper, IEmployeeService employeeService, IProjectRepository projectRepository)
 {
     _projectRequirementsRepository = projectRequirementsRepository;
     _mapper            = mapper;
     _employeeService   = employeeService;
     _projectRepository = projectRepository;
 }
        /// <summary>
        /// this is the default constructor for the Skill service
        /// </summary>
        /// <param name="projectManagementRepository">projectManagementRepository interface object for dependency injection</param>
        /// <param name="employeeRepository">employeeRepository interface object for dependency injection</param>
        /// <param name="projectRepository">employeeRepository interface object for dependency injection</param>
        /// <param name="reportingManagerService">reportingManagerService interface object for dependency injection</param>


        public ProjectManagementService(IProjectManagementRepository projectManagementRepository, IEmployeeRepository employeeRepository, IProjectRepository projectRepository, IMapper mapper,
                                        IDepartmentDesignationService departmentDesignationService, IEmployeeService employeeService, IProjectRequirementsRepository projectRequirementsRepository, IReportingManagerService reportingManagerService)
        {
            _projectManagementRepository = projectManagementRepository;
            _employeeRepository          = employeeRepository;
            _projectRepository           = projectRepository;
            _mapper = mapper;
            _departmentDesignationService = departmentDesignationService;
            _employeeService = employeeService;
            _projectRequirementsRepository = projectRequirementsRepository;
            _reportingManagerService       = reportingManagerService;
        }
        /// <summary>
        /// this is the default constructor for the Employee service class
        /// </summary>
        /// <param name="unityContainer">object of unity container interface for dependency injection </param>
        public EmployeeService(IEmployeeRepository employeeRepository, IDepartmentDesignationRepository departmentDesignationRepository,
                               IEmployeeSkillsRepository employeeSkillRepository, ISkillRepository skillRepository /*IAWSServices aWSServices*/, IProjectManagementRepository projectManagementRepository, IProjectRequirementsRepository projectRequirementsRepository,
                               IProjectRepository projectRepository, IConfiguration configuration, IMapper mapper, IReportingManagerRepository reportingManagerRepository, IElasticSearchService elasticSearchService)

        {
            _employeeRepository = employeeRepository;
            _departmentDesignationRepository = departmentDesignationRepository;
            _employeeSkillRepository         = employeeSkillRepository;
            _skillRepository               = skillRepository;
            _projectManagementRepository   = projectManagementRepository;
            _projectRequirementsRepository = projectRequirementsRepository;
            _projectRepository             = projectRepository;
            _configuration = configuration;
            _mapper        = mapper;
            _reportingManagerRepository = reportingManagerRepository;
            _elasticSearchService       = elasticSearchService;
            totalRecords      = 0;
            returnedRecords   = 0;
            currentPageNumber = 0;
        }