public async Task <IActionResult> AddSkillToEmployee(Guid id, [FromBody] SkillDto skillDto) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var addedSkillID = await _employeesService.AddSkillToEmployeeAsync(id, skillDto); skillDto.ID = addedSkillID; var routevalues = new { controller = "Employees", employeeID = id, skillID = addedSkillID }; CreatedAtRouteResult result = CreatedAtRoute("GetEmployeeSkill", routevalues, skillDto); return(result); }
private async Task AddSkillToEmployee(Guid skillID) { var selectedSkill = _skillCache.FirstOrDefault(s => s.ID == skillID) ?? throw new InvalidOperationException($"Skill {skillID} Does not exist"); try { await _employeesService.AddSkillToEmployeeAsync(_currentEmployeeID, selectedSkill); EmployeeSkills.Add(selectedSkill); } catch (Exception ex) { Debug.WriteLine(ex.Message); await _userDialogs.AlertAsync(ex.Message, "Error"); } }