public ActionResult CreateAppliance(CreateApplianceModel data) { //Adding new appliance JobAppliance newAppliance = new JobAppliance(); newAppliance.Name = data.ApplianceData.Name; newAppliance.Comment = data.ApplianceData.Comment; newAppliance.UserId = GetCurrentUser().UserId; if (!_appRepository.Create(newAppliance)) { return(RedirectToAction("/Error/Index")); } _appRepository.Save(); int newAppId = newAppliance.Id; //Adding abilities and ability set for new appliance foreach (Ability ability in data.ApplianceAbilities) { Ability newAbilities = new Ability(); newAbilities.SkillId = ability.SkillId; newAbilities.SkillLevelId = ability.SkillLevelId; if (!_abilRepository.Create(newAbilities)) { return(RedirectToAction("/Error/Index")); } _abilRepository.Save(); int newAbilId = newAbilities.Id; AbilitySet newAbilitySet = new AbilitySet(); newAbilitySet.ApplianceId = newAppliance.Id; newAbilitySet.AbilitiesId = newAbilities.Id; if (!_abilSetRepository.Create(newAbilitySet)) { return(RedirectToAction("/Error/Index")); } _abilSetRepository.Save(); } return(RedirectToAction("Index")); }
public ActionResult NewAppliance() { UserProfile currentUser = GetCurrentUser(); if (currentUser.RoleId != (int)UserRoleTypes.Applicant) { return(Redirect("/Home/Index")); } List <SelectListItem> skills = _skillsRepository.GetAll(). Select(r => new SelectListItem { Value = r.Id.ToString(), Text = r.SkillName }). ToList(); List <SelectListItem> skillLevels = _skillsRepository.GetSkillLevels(). Select(r => new SelectListItem { Value = r.Id.ToString(), Text = r.ValueName }). ToList(); List <SelectListItem> skillAttributes = _skillAttrsRepository.GetAll(). Select(r => new SelectListItem { Value = r.Id.ToString(), Text = r.Name }). ToList(); CreateApplianceModel dataModel = new CreateApplianceModel(); for (int i = 0; i < DEFAULT_APPLIANCE_ABILITIES; i++) { Ability ability = new Ability(); dataModel.ApplianceAbilities.Add(ability); } ViewBag.Skills = skills; ViewBag.SkillLevels = skillLevels; ViewBag.SkillAttributes = skillAttributes; return(View(dataModel)); }