public async Task <ActionResult <CommonRecruitmentPostDataset> > GetById(int id, string lang = "vi") { string userId = User.FindFirstValue(ClaimTypes.NameIdentifier); CommonRecruitmentPostDataset result = await _recruitmentService.GetRecruitmentPostById(id, lang); if (result == null) { return(NotFound()); } if (userId != null) { result.IsApplied = await _recruitmentService.IsUserApplied(id, int.Parse(userId)); } return(Ok(result)); }
public async Task <CommonRecruitmentPostDataset> GetRecruitmentPostById(int id, string lang = "vi") { CommonRecruitmentPostDataset result = null; RecruitmentPost post = await _uow.RecruitmentRepository.GetFirst(filter : post => post.PostId == id, includeProperties : "Company,Company.Account"); if (post != null) { result = _mapper.Map <CommonRecruitmentPostDataset>(post); result.Major = new Datasets.Major.MajorDataset() { MajorId = post.MajorId, MajorName = (await _uow.TranslationRepository.GetFirst(filter: t => t.MajorId == post.MajorId && t.Language == lang)).Text }; } return(result); }
public async Task <ActionResult <CommonRecruitmentPostDataset> > CreatePost([FromBody] NewRecruitmentPostParam param) { int userId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)); if (userId != param.CompanyId) { return(Forbid()); } CommonRecruitmentPostDataset result = await _recruitmentService.InsertRecruitmentPost(param); if (result != null) { await _fcmService.SendMessage(userId, "Creating post succeed", "Recruitment post " + result.Title + " has created."); return(Created("", result)); } else { await _fcmService.SendMessage(userId, "Creating post failed", "Creating recruitment post failed."); } return(BadRequest()); }