Пример #1
0
        private void LoadJobInterview()
        {
            int numberJobInterviews = 10;

            var applicants = _userRepository.GetAll().Where(x => x.Type == UserType.Unemployed).ToList();
            var RHs        = _userRepository.GetAll().Where(x => x.Type == UserType.Employee && x.Category == UserCategory.HumanResources).ToList();
            var Technicals = _userRepository.GetAll().Where(x => x.Type == UserType.Employee && x.Category == UserCategory.Technical).ToList();
            var jobs       = _jobRepository.GetAll();

            for (int i = 0; i < numberJobInterviews; i++)
            {
                var job       = jobs[_random.Next(jobs.Count)];
                var applicant = applicants[_random.Next(applicants.Count)];

                _jobFeedBackRepository.Insert(new JobFeedBack()
                {
                    IdApplicant    = applicant.Id,
                    IdJob          = job.Id,
                    IdUserTecnical = Technicals.Where(x => x.IdCompany == job.IdCompany).First().Id,
                    Recruiter      = "",
                    Technical      = "",
                });

                _jobInterviewRepository.Insert(new JobInterview()
                {
                    IdJobFeedBack   = (int)_jobFeedBackRepository.GetAll().Last().Id,
                    IdJobApplicant  = (int)applicant.Id,
                    IdUserRecruiter = (int)RHs.Where(x => x.IdCompany == job.IdCompany).First().Id,
                    IdUserTechnical = (int)Technicals.Where(x => x.IdCompany == job.IdCompany).First().Id,
                    Date            = job.RegistryDate.Value.AddDays(_random.Next(7, 20))
                });

                foreach (var jobSkill in job.Skills)
                {
                    _jobFeedBackSkillRepository.Insert(new JobFeedBackSkill()
                    {
                        IdApplicant         = applicant.Id,
                        IdJobFeedBack       = (int)_jobFeedBackRepository.GetAll().Last().Id,
                        IdSkill             = jobSkill.Id,
                        SelfEvaluation      = _userSkillRepository.GetAll().Where(x => x.IdUser == applicant.Id && x.IdSkill == jobSkill.Id).First().Ranking,
                        TechnicalEvaluation = _random.Next(1, 5),
                        jobSkillRanking     = _jobSkillRepository.GetAll().Where(x => x.IdJob == job.Id && x.IdSkill == jobSkill.Id).First().Ranking,
                        Comment             = ""
                    });
                }
            }
        }