public void AddTagsToProject(IList <string> tags, int projectId) { Require.Positive(projectId, nameof(projectId)); Require.NotNull(tags, nameof(tags)); var project = GetProject(projectId); if (project == null) { throw new ProjectNotFoundException("Project not found"); } ISet <Tag> prjTags = new HashSet <Tag>(); foreach (var tag in tags) { int tagId; if (_tagManager.TryFindTag(tag, out tagId)) { var tagToAdd = _tagManager.GetTag(t => t.TagId == tagId).Single(); prjTags.Add(tagToAdd); } else { var newTag = _tagManager.CreateTag(tag); prjTags.Add(newTag); } } project.ProjectTags = prjTags; _projectRepository.UpdateProject(project); }
public async Task <IActionResult> GetTag([FromRoute] int id) { var tag = await _tagManager.GetTag(id); if (tag == null) { return(NotFound("Tag does not exist.")); } var response = _mapper.Map <TagResponse>(tag); return(Ok(response)); }
public void AddTagsToOrganization(IList <string> tags, int orgId) { Require.Positive(orgId, nameof(orgId)); Require.NotNull(tags, nameof(tags)); var org = GetOrganization(orgId); if (org == null) { throw new OrgExceptions.OrganizationNotFoundException("Organization not found"); } ISet <Tag> orgTags = new HashSet <Tag>(); foreach (var tag in tags) { int tagId; if (_tagManager.TryFindTag(tag, out tagId)) { var tagToAdd = _tagManager.GetTag(t => t.TagId == tagId).Single(); orgTags.Add(tagToAdd); } else { var newTag = _tagManager.CreateTag(tag); orgTags.Add(newTag); } } org.OrganizationTags = orgTags; _orgRepository.UpdateOrganization(org); }
public void AddTagsToUser(IList <string> tags, int userId) { Require.Positive(userId, nameof(userId)); Require.NotNull(tags, nameof(tags)); var account = _userRepository.GetAccount(userId); ISet <Tag> userTags = new HashSet <Tag>(); foreach (var tag in tags) { int tagId; if (_tagManager.TryFindTag(tag, out tagId)) { var tagToAdd = _tagManager.GetTag(t => t.TagId == tagId).SingleOrDefault(); userTags.Add(tagToAdd); } else { var newTag = _tagManager.CreateTag(tag); userTags.Add(newTag); } } account.Profile.Tags = userTags; _userRepository.UpdateAccount(account); }
/// <summary> /// Getting the Tag by activities ID /// </summary> /// <param name="Id">activities ID</param> public async Task <List <TagDTO> > GetTagbyActivityID(int Id) { List <TagActivity> tActList = new List <TagActivity>(); tActList = await _context.TagActivity.Where(x => x.ActivitiesId == Id) .ToListAsync(); List <TagDTO> aDTO = new List <TagDTO>(); foreach (var item in tActList) { TagDTO dTO = await _tagContext.GetTag(item.TagId); aDTO.Add(dTO); } return(aDTO); }
public async Task <ActionResult <TagDTO> > GetTag(int id) => await _context.GetTag(id);