//[ValidateAntiForgeryToken] public ActionResult DeleteConfirmed(int id) { CompanySkill companySkill = db.CompanySkills.Find(id); db.CompanySkills.Remove(companySkill); db.SaveChanges(); return(RedirectToAction("Index")); }
//[ValidateAntiForgeryToken] public ActionResult Edit([Bind(Include = "Id,CompanyId,SkillId")] CompanySkill companySkill) { if (ModelState.IsValid) { db.Entry(companySkill).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.CompanyId = new SelectList(db.Companies.Take(100), "Id", "Name", companySkill.CompanyId); ViewBag.SkillId = new SelectList(db.Skills, "Id", "Name", companySkill.SkillId); return(View(companySkill)); }
// GET: CompanySkills/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CompanySkill companySkill = db.CompanySkills.Find(id); if (companySkill == null) { return(HttpNotFound()); } return(View(companySkill)); }
// GET: CompanySkills/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CompanySkill companySkill = db.CompanySkills.Find(id); if (companySkill == null) { return(HttpNotFound()); } ViewBag.CompanyId = new SelectList(db.Companies.Take(100), "Id", "Name", companySkill.CompanyId); ViewBag.SkillId = new SelectList(db.Skills, "Id", "Name", companySkill.SkillId); return(View(companySkill)); }
public async Task <IHttpActionResult> UpdateMyCompanyProfile(CompanyProfileDTO companyProfileDTO) { string userName = User.Identity.Name; User authenticatedUser = db.Users.Where(_user => _user.UserName == userName).SingleOrDefault(); if (authenticatedUser == null) { throw new HttpResponseException(HttpStatusCode.Unauthorized); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } User user = db.Users.Find(companyProfileDTO.OwnerID); if (user == null) { throw new HttpResponseException(HttpStatusCode.NotFound); } if (authenticatedUser != user) { throw new HttpResponseException(HttpStatusCode.Unauthorized); } if (companyProfileDTO.URI != null) { Regex regex = new Regex("[^a-zA-Z0-9_-]"); companyProfileDTO.URI = companyProfileDTO.URI.Replace(" ", "-"); companyProfileDTO.URI = regex.Replace(companyProfileDTO.URI, "").ToLower(); if (companyProfileDTO.URI.Length == 0) { companyProfileDTO.URI = null; } else if (db.Companies.Where(company => company.URI == companyProfileDTO.URI && company.ID != companyProfileDTO.ID).SingleOrDefault() != null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } } else if (companyProfileDTO.ID == 0 && companyProfileDTO.URI == null) { Regex regex = new Regex("[^a-zA-Z0-9_-]"); companyProfileDTO.URI = companyProfileDTO.DisplayName.Replace(" ", "-"); companyProfileDTO.URI = regex.Replace(companyProfileDTO.URI, "").ToLower(); } user.Company = Mapper.Map(companyProfileDTO, user.Company); db.Entry(user).State = EntityState.Modified; await db.SaveChangesAsync(); if (companyProfileDTO.Countries != null) { if (db.CompanyCountries.Any(cc => cc.CompanyId == user.Company.ID)) { db.CompanyCountries.RemoveRange(db.CompanyCountries.Where(cc => cc.CompanyId == user.Company.ID)); await db.SaveChangesAsync(); } List <CompanyCountry> countries = new List <CompanyCountry>(); foreach (string country in companyProfileDTO.Countries) { var countryModel = db.Countries.SingleOrDefault(c => c.Name == country); if (countryModel != null) { CompanyCountry companyCountry = new CompanyCountry(); companyCountry.CompanyId = user.Company.ID; companyCountry.CountryId = countryModel.Id; countries.Add(companyCountry); } } db.CompanyCountries.AddRange(countries); await db.SaveChangesAsync(); } if (!db.Sectors.Any(s => s.SectorName == companyProfileDTO.Sector)) { Sector sector = new Sector(); sector.Active = true; sector.CreateDate = DateTime.Now; sector.SectorName = companyProfileDTO.Sector; db.Sectors.Add(sector); await db.SaveChangesAsync(); } bool existingSkills = db.CompanySkills.Any(cs => cs.CompanyId == user.Company.ID); if (existingSkills) { //remove it List <CompanySkill> companySkills = db.CompanySkills.Where(cs => cs.CompanyId == user.Company.ID).ToList(); db.CompanySkills.RemoveRange(companySkills); db.SaveChanges(); } if (companyProfileDTO.Skills != null && companyProfileDTO.Skills.Count() > 0 && user.Company.ID > 0) { bool hasSkill = false; foreach (string skill in companyProfileDTO.Skills) { CompanySkill existing = db.CompanySkills.SingleOrDefault(cs => cs.SkillName == skill && cs.CompanyId == user.Company.ID); if (existing == null) { if (!db.Skills.Any(s => s.SkillName == skill)) { Skill skillMaster = new Skill(); skillMaster.SkillName = skill; skillMaster.Active = true; skillMaster.CreateDate = DateTime.Now; db.Skills.Add(skillMaster); db.SaveChanges(); } CompanySkill newSkill = new CompanySkill(); newSkill.CompanyId = user.Company.ID; newSkill.SkillName = skill; db.CompanySkills.Add(newSkill); hasSkill = true; } } if (hasSkill) { await db.SaveChangesAsync(); } } if (!user.OnboardingSkipped) { List <CompanyMember> companyMembers = await db.CompanyMembers.Where(c1 => c1.UserID == user.Id).ToListAsync(); if (companyMembers != null && companyMembers.Count > 0) { CompanyMember cm = companyMembers.FirstOrDefault(); if (cm != null) { db.CompanyMembers.Remove(cm); await db.SaveChangesAsync(); } } } return(Ok(Mapper.Map <Company, CompanyProfileDTO>(user.Company))); }
public void Add(CompanySkill companySkill) { _context.CompanySkills.Add(companySkill); _context.SaveChanges(); }