public async Task <ServiceWrapper <GetCharacterDTO> > AddSkill(AddSkillDTO skill) { ServiceWrapper <GetCharacterDTO> response = new ServiceWrapper <GetCharacterDTO>(); try{ Character character = await _context.Characters.Include(w => w.Weapon) .Include(c => c.CharacterSkills).ThenInclude(cs => cs.Skill) .FirstOrDefaultAsync(c => c.Id == skill.CharacterId && c.User.id == GetUserId()); if (character == null) { response.DidSend = false; response.Message = "Character not found."; return(response); } Skill skillToAdd = await _context.Abilities.FirstOrDefaultAsync(s => s.Id == skill.SkillId); CharacterSkill CharSkill = new CharacterSkill { Skill = skillToAdd, Character = character, }; await _context.CharactersSkills.AddAsync(CharSkill); await _context.SaveChangesAsync(); response.Data = _mapper.Map <GetCharacterDTO>(character); }catch (Exception ex) { response.DidSend = false; response.Message = ex.Message; } return(response); }
public async Task <IActionResult> AddSkill([FromBody] AddSkillDTO skill) { var dbSkill = _mapper.Map <Skill>(skill); await _skillsServices.AddSkill(dbSkill); return(NoContent()); }
public async Task <ActionResult> AddSkills(AddSkillDTO addSkillDTO) { ServiceWrapper <GetCharacterDTO> response = await _skillService.AddSkill(addSkillDTO); // if(response.Data == null){ // return NotFound(response); // } return(Ok(response)); }