Exemplo n.º 1
0
        public ActionResult Create(VacancyViewModel viewModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var vacancy = Mapper.Map <VacancyViewModel, Vacancy>(viewModel);

                    vacancy.Technologies = viewModel.TechnologiesIds != null?
                                           _technologyService.GetByIds(viewModel.TechnologiesIds) : new List <Technology>();

                    _vacancyService.Insert(vacancy);

                    viewModel.Locales.ToList().ForEach(l =>
                    {
                        _localizedEntityService.SaveLocalizedValue(vacancy, e => e.Title, l.Title, l.LanguageId);
                        _localizedEntityService.SaveLocalizedValue(vacancy, e => e.ShortDescription, l.ShortDescription, l.LanguageId);
                        _localizedEntityService.SaveLocalizedValue(vacancy, e => e.Bonuses, l.Bonuses, l.LanguageId);
                        _localizedEntityService.SaveLocalizedValue(vacancy, e => e.Requirments, l.Requirments, l.LanguageId);
                        _localizedEntityService.SaveLocalizedValue(vacancy, e => e.Responsibilities, l.Responsibilities, l.LanguageId);
                        _localizedEntityService.SaveLocalizedValue(vacancy, e => e.WeOffer, l.WeOffer, l.LanguageId);
                    });

                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError("", e.Message);
                viewModel.TechnologiesSelectList = Mapper.Map <List <Technology>, List <SelectListItem> >(_technologyService.GetAll());
            }


            return(View(viewModel));
        }