public async Task <Response <string> > AddDiary(CreateDiaryRequest request) { var getMom = await _unitOfWork.ChildInfoRepository.FirstAsync(x => x.Id == request.ChildId); var diary = new Diary { ChildId = request.ChildId, ImageUrl = request.ImageURL, DiaryContent = request.DiaryContent, CreatedBy = request.CreatedBy, CreatedTime = DateTimeOffset.Now.ToOffset(new TimeSpan(7, 0, 0)).DateTime, LastModifiedTime = DateTimeOffset.Now.ToOffset(new TimeSpan(7, 0, 0)).DateTime, PublicFlag = request.PublicFlag, }; await _unitOfWork.DiaryRepository.AddAsync(diary); if (request.PublicFlag) { var staffs = await _unitOfWork.UserRepository.GetAsync(x => x.RoleId == RoleConstant.STAFF_ROLE && x.DelFlag == false); foreach (var staff in staffs) { await sendNotification(staff.Id, "Yêu cầu đăng nhật ký mới!", $"Id mẹ \'{getMom.MomId}\' gửi yêu cầu public nhật ký \'{diary.Id}\', vui lòng kiểm tra và phê duyệt!"); } } await _unitOfWork.SaveAsync(); return(new Response <string>(diary.Id.ToString(), $"Thêm nhật ký thành công, id: {diary.Id}")); }
public bool Create(String token, DiaryPost post) { try { HttpClient client = new HttpClient(); client.BaseAddress = new Uri(BASE_URL); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); CreateDiaryRequest diaryRequest = new CreateDiaryRequest { Token = token, Title = post.Title, IsPublic = post.IsPublic, Text = post.Text }; HttpResponseMessage response = client.PostAsync("diary/create", new StringContent(JsonConvert.SerializeObject(diaryRequest), Encoding.UTF8, "application/json")).Result; return(response.IsSuccessStatusCode); } catch { return(false); } }
public ApiResponseModel Create([FromBody] CreateDiaryRequest createRequest) { if (ModelState.IsValid) { ApplicationUser user = _dbContext.GetUserWithToken(createRequest.Token); if (user != null) { Diary newDiary = new Diary() { Title = createRequest.Title, Author = user.UserName, PublishDate = DateTime.Now, IsPublic = createRequest.IsPublic, Text = createRequest.Text }; _dbContext.Add(newDiary); if (_dbContext.SaveChanges() > 0) { Response.StatusCode = 201; return(new ApiResponseModel() { Status = true, Result = new CreateDiaryResultModel() { Id = newDiary.Id.ToString() } }); } } } return(new ApiResponseModel() { Status = false, Error = "Invalid authentication token." }); }
public async Task <IActionResult> AddDiary(CreateDiaryRequest request) { return(Ok(await _diaryService.AddDiary(request))); }