Пример #1
0
        private void LoadMockJobs()
        {
            int maximumNumberOfJobs   = 20;
            int maximumNumberJobSkill = 10;

            foreach (var item in _jobRepository.GetAll())
            {
                _jobSkillRepository.DeletePhysicalByRelacionalKey(item.Id);
                _jobRepository.DeletePhysical(item.Id);
            }

            var skills   = _skillRepository.GetAll();
            var companys = _companyRepository.GetAll();

            for (int i = 0; i < maximumNumberOfJobs; i++)
            {
                Level level           = GenerateLevel();
                var   selectedCompany = companys[_random.Next(companys.Count)];
                var   newJob          = new Job()
                {
                    Name         = string.Format("Desenvolvedor {0}", GetLevelName(level)),
                    Description  = "Desenvolvimento de novas aplicação com foco no usuário.",
                    Level        = level,
                    Remuneration = RamdomValue(),
                    IdCompany    = (Int32)selectedCompany.Id,
                    Company      = selectedCompany,
                    Skills       = new List <JobSkill>()
                };

                var numberJobSkill = _random.Next(1, maximumNumberJobSkill);

                for (int j = 0; j < numberJobSkill; j++)
                {
                    var idSkill = skills[_random.Next(skills.Count)].Id;

                    if (newJob.Skills.Any(x => x.IdSkill == idSkill))
                    {
                        j--;
                    }
                    else
                    {
                        newJob.Skills.Add(new JobSkill()
                        {
                            IdSkill = idSkill,
                            Ranking = _random.Next(1, 5),
                            Weight  = 100 / numberJobSkill
                        });
                    }
                }

                _jobService.Insert(newJob);
            }
        }