public async Task <IActionResult> Create([FromBody] CreateNewsRequest newsRequest) { News news = _mapper.Map <News>(newsRequest); await _newsService.AddNewsAsync(news); string locationUrl = Path.Combine(HttpContext.GetBaseUrl(), ApiRoutes.News.Get.Replace("{newsId}", news.Id.ToString())); return(Created(locationUrl, news)); }
public async Task <ActionResult <CreateNewsResponse> > CreateNews(CreateNewsRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } return(await _newsServices.CreateNews(request)); }
public IActionResult Create(CreateNewsRequest request) { var url = "https://news-fpt-api.azurewebsites.net/api/News"; var json = JsonConvert.SerializeObject(request); var result = api.SendAsyncJson(url, json, false); Debug.WriteLine(result); return(View("Index")); }
public async Task <CreateNewsResponse> CreateNews(CreateNewsRequest requestModel) { var author = await _admin.FindById(requestModel.AuthorId); var news = CreateNewsRequest.NewNewsFromRequest(requestModel, author); news = await _repoWrapper.News.CreateAsync(news); return(CreateNewsResponse.CreateFromNews(news)); }
public async Task <OperationResultResponse <Guid?> > ExecuteAsync(CreateNewsRequest request) { if (!await _accessValidator.HasRightsAsync(Rights.AddEditRemoveNews)) { _httpContextAccessor.HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden; return(new OperationResultResponse <Guid?> { Status = OperationResultStatusType.Failed, Errors = new() { "Not enough rights." } });
public void CreateValidate_Author_Tests(string title, string content, bool result) { var author = new AuthorRequest { UserName = "******", Name = "Gilmar" }; var authorReq = new CreateNewsRequest { Title = title, Content = content, Author = author }; var validate = new CreateNewsRequestValidator().Validate(authorReq); validate.IsValid.Should().Be(result); }
public DbNews Map(CreateNewsRequest request) { if (request == null) { return(null); } return(new DbNews { Id = Guid.NewGuid(), Preview = request.Preview, Content = request.Content, Subject = request.Subject, Pseudonym = !string.IsNullOrEmpty(request.Pseudonym?.Trim()) ? request.Pseudonym.Trim() : null, AuthorId = request.AuthorId, IsActive = true, CreatedBy = _httpContextAccessor.HttpContext.GetUserId(), CreatedAtUtc = DateTime.UtcNow, }); }
public async Task <Response <string> > AddNews(CreateNewsRequest request) { var news = new News { Id = Guid.NewGuid().ToString(), Title = request.Title, NewsContent = request.NewsContent, ImageUrl = request.ImageURL, EstimatedFinishTime = request.EstimatedFinishTime, CreatedBy = request.CreatedBy, CreatedTime = DateTimeOffset.Now.ToOffset(new TimeSpan(7, 0, 0)).DateTime, LastModifiedBy = request.LastModifiedBy, LastModifiedTime = DateTimeOffset.Now.ToOffset(new TimeSpan(7, 0, 0)).DateTime, TypeId = request.TypeId, DelFlag = false, }; await _unitOfWork.NewsRepository.AddAsync(news); await _unitOfWork.SaveAsync(); return(new Response <string>(news.Id, $"Thêm news thành công, id: {news.Id}")); }
public async Task <Response <NewsResponse> > CreateNews([FromBody] CreateNewsRequest request) { return(await _newsService.CreateNewsAsync(request)); }
/// <summary> /// Tạo mới tin tức /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <Response <NewsResponse> > CreateNewsAsync(CreateNewsRequest request) { if (string.IsNullOrEmpty(request.Content) || string.IsNullOrEmpty(request.Title)) { _logger.LogError("Title or content is not null"); return(new Response <NewsResponse>(Constant.STATUS_ERROR, new List <string> { "Title or content is not null" })); } var news = new News { Id = Guid.NewGuid(), Title = request.Title, Content = request.Content, CreateTime = DateTime.UtcNow.Date, UpdateTime = DateTime.UtcNow.Date, UrlImage = request.UrlImage }; var categoryNews = new List <CategoryNews>(); if (request.CategoryIds != null && request.CategoryIds.Any()) { foreach (var categoryId in request.CategoryIds) { var category = await _newsContext.Categories.FindAsync(categoryId); if (category == null) { _logger.LogError("Not find category"); return(new Response <NewsResponse>(Constant.STATUS_ERROR, new List <string> { "Not find category" })); } categoryNews.Add(new CategoryNews { Id = Guid.NewGuid(), CategoryId = category.Id, NewsId = news.Id }); } } await _newsContext.News.AddAsync(news); _newsContext.CategoryNews.AddRange(categoryNews); var result = await _newsContext.SaveChangesAsync(); var dataReponse = new NewsResponse { Id = news.Id, Title = news.Title, Content = news.Content, CreateTime = news.CreateTime, UpdateTime = news.UpdateTime, Categories = await GetCategoryModels(news.Id), UrlImage = news.UrlImage }; if (result > 0) { _logger.LogInformation("Create news success"); return(new Response <NewsResponse>(Constant.STATUS_SUCESS, null, dataReponse, 1)); } _logger.LogError("Create news failed"); return(new Response <NewsResponse>(Constant.STATUS_ERROR, new List <string> { "Error when Save" })); }
public async Task <IActionResult> AddNews(CreateNewsRequest request) { return(Ok(await _newsService.AddNews(request))); }
public async Task <OperationResultResponse <Guid?> > Create( [FromServices] ICreateNewsCommand command, [FromBody] CreateNewsRequest request) { return(await command.ExecuteAsync(request)); }