public async Task UpdateArticle(string author = null, string title = null, string description = null, bool?publish = null) { var articleContext = await _getArticleContextWorkflow.GetArticleContext(); if (articleContext == null) { return; } var articleRequest = new ArticleRequest { BlogId = articleContext.BlogId, Author = author, Title = title, Description = description, IsPublished = publish, }; var updateArticleResponse = await _client.PutMessage(articleContext.GetSelfApiLink(), articleRequest); if (!updateArticleResponse.IsSuccessStatusCode) { throw new HttpRequestException($"failed HTTP request: {updateArticleResponse.StatusCode}\n{updateArticleResponse.ReasonPhrase}"); } await _updateArticleContextWorkflow.GetAndUpdateArticleContext(articleContext); }
public ActionResult <CreateArticleService> Post(ArticleRequest request) { CreateArticleService _service = new CreateArticleService(_unitOfWork); CreateArticleResponse response = _service.Execute(request); return(Ok(response)); }
public IActionResult MenuGetList([FromQuery] ArticleRequest request) { int totalRow = 0; var list = _articleAccess.SP_Menu_GetList(request.MenuIDs, Convert.ToInt16(request.GetChild), Convert.ToInt16(request.Status), out totalRow); return(Ok(new { TotalRow = totalRow, Items = list })); }
public HttpResponseMessage AddArticles([FromBody] ArticleRequest article) { try { using (BackNetEntity db = new BackNetEntity()) { var oArticle = new Models.articles(); oArticle.name = article.name; oArticle.description = article.description; oArticle.price = article.price; oArticle.total_in_shelf = article.total_in_shelf; oArticle.total_in_vault = article.total_in_vault; oArticle.store_id = article.store_id; db.articles.Add(oArticle); db.SaveChanges(); var message = Request.CreateResponse(HttpStatusCode.Created, article); message.Headers.Location = new Uri(Request.RequestUri + article.id.ToString()); return(message); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }
private async Task <Article> AttemptCreateNewBlogArticle(ArticleRequest request) { var blog = await GetBlogForEntry(request.BlogId); if (blog == null || string.IsNullOrWhiteSpace(request.Author) || string.IsNullOrWhiteSpace(request.Title)) { return(null); } var newBlogArticle = new Article() { BlogId = blog.Id, Author = request.Author, Title = request.Title, Description = request.Description, Created = _clock.Now }; await _context.Add(newBlogArticle); await _context.SaveChanges(); return(newBlogArticle); }
public async Task <ApiResult <Article> > Get([ModelBinder] ArticleRequest request) { var keyId = request.Id; // throw new ArgumentException("exception test"); 异常测试 return(await Task.Run(() => ApiResult <Article> .Success(_articleServices.Get(keyId)))); }
public async Task Put_Article_Should_Update_Article() { var articleRequest = new ArticleRequest() { Title = GetUniqueStringValue("title_"), Body = GetUniqueStringValue("body_"), IsPublished = false, PublishDate = null, Author = "God", }; var postRresponse = ExecuteJsonPostRequest("api/v1/article", articleRequest); var articleResponse = await GetResponse <ArticleResponse>(postRresponse); var articleRequest2 = new ArticleRequest() { Title = GetUniqueStringValue("title_"), Body = GetUniqueStringValue("body_"), IsPublished = false, PublishDate = null, Author = "God2", }; var putResponse = ExecuteJsonPutRequest($"api/v1/article/{articleResponse.Id}", articleRequest2); var articleResponse2 = await GetResponse <ArticleResponse>(putResponse); Assert.AreEqual(HttpStatusCode.OK, postRresponse.StatusCode); Assert.AreNotEqual(articleResponse.Title, articleResponse2.Title); Assert.AreNotEqual(articleResponse.Body, articleResponse2.Body); Assert.AreNotEqual(articleResponse.Author, articleResponse2.Author); Assert.AreEqual(articleResponse.Id, articleResponse2.Id); }
// // GET: /Test/ public ActionResult Index(ArticleRequest request) { //获取分类 ChannelRequest channelRequest = new ChannelRequest() { ParentId = -1 }; var channelResult = service.GetChannelList(channelRequest); //这里可以改造成注入方式 //var channelResult = this.CmsService.GetChannelList(channelRequest); //获取分类树 List <TreeNode> resultTree = new List <TreeNode>(); this.GetChannelTree(channelResult, resultTree, 0); if (resultTree.Count > 0) { request.ChannelIds = resultTree.Select(t => t.ID).ToList(); } foreach (var item in resultTree) { for (var i = 1; i <= item.level; i++) { item.Name = "-" + item.Name; } } ViewBag.ChannelId = new SelectList(resultTree.AsEnumerable(), "ID", "Name"); var result = service.GetArticleList(request); return(View(result)); }
public IActionResult GetImageList([FromQuery] ArticleRequest req) { int totalRow = 0; var list = _articleAccess.SP_ArticleImage_GetList(req.TopRow, req.ImageID, req.ArticleID, req.Status, req.Page, req.PageSize, out totalRow); return(Ok(new { TotalRow = totalRow, Items = list })); }
public HttpResponseMessage PutArticles(ArticleRequest oModel) { try { using (BackNetEntity db = new BackNetEntity()) { articles oArticles = db.articles.Find(oModel.id); if (oArticles == null) { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "La Store con el Id " + oModel.id.ToString() + " no pudo actualizarse")); } else { oArticles.name = oModel.name; oArticles.description = oModel.description; oArticles.price = oModel.price; oArticles.total_in_shelf = oModel.total_in_shelf; oArticles.total_in_vault = oModel.total_in_vault; oArticles.store_id = oModel.store_id; db.Entry(oArticles).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.OK)); } } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }
public IEnumerable <Article> GetArticleList(ArticleRequest request = null) { request = request ?? new ArticleRequest(); using (var dbContext = new CmsDbContext()) { IQueryable <Article> articles = dbContext.Articles.Include("Channel"); if (!string.IsNullOrEmpty(request.Title)) { articles = articles.Where(u => u.Title.Contains(request.Title)); } if (request.ChannelId > 0) { articles = articles.Where(u => u.ChannelId == request.ChannelId); } if (request.IsActive != null) { articles = articles.Where(u => u.IsActive == request.IsActive); } return(articles.OrderByDescending(u => u.ID).ToPagedList(request.PageIndex, request.PageSize)); } }
public async Task Delete_Article_Should_Delete_Article() { var articleRequest = new ArticleRequest() { Title = GetUniqueStringValue("title_"), Body = GetUniqueStringValue("body_"), IsPublished = false, PublishDate = null, Author = "God", }; var postRresponse = ExecuteJsonPostRequest("api/v1/article", articleRequest); Assert.AreEqual(HttpStatusCode.OK, postRresponse.StatusCode); var articleResponse = await GetResponse <ArticleResponse>(postRresponse); var deleteRresponse = ExecuteDeleteRequest($"api/v1/article/{articleResponse.Id}"); Assert.AreEqual(HttpStatusCode.OK, deleteRresponse.StatusCode); var getResponse = ExecuteGetRequest($"api/v1/article/{articleResponse.Id}"); Assert.AreEqual(HttpStatusCode.NotFound, getResponse.StatusCode); }
public async Task SavesNewEntryWhenConditionsMeet() { var blog = new BlogFixture().Build(); var newEntryRequest = new ArticleRequest { BlogId = blog.Id, Author = "Test", Title = "Some-title", Description = "some-Description", }; var dbContextFixture = new MockBlogApiDbContextFixture().With(blog, blog.Id); var clock = new MockClock(); var blogEntryCoordinator = new CreateArticleCoordinatorFixture() { Context = dbContextFixture.Build(), Clock = clock }.Build(); var result = await blogEntryCoordinator.CreateNewArticleAsync(newEntryRequest); Assert.Equal(newEntryRequest.BlogId, result.BlogId); Assert.Equal(newEntryRequest.Author, result.Author); Assert.Equal(newEntryRequest.Title, result.Title); Assert.Equal(newEntryRequest.Description, result.Description); Assert.Equal(clock.Now, result.Created); dbContextFixture.Mock.Verify(ctx => ctx.Add(result)); dbContextFixture.Mock.Verify(ctx => ctx.SaveChanges()); }
public IActionResult CMSGetList([FromQuery] ArticleRequest data) { int totalRow = 0; var list = _articleAccess.SP_Article_GetList_CMS(data.ArticleID, data.Title, data.MenuID, data.Tags, data.isHot, data.Status, data.FromDate, data.ToDate, data.Page, data.PageSize, out totalRow); return(Ok(new { TotalRow = totalRow, Items = list })); }
public IActionResult TopNew([FromQuery] ArticleRequest request) { int totalRow = 0; var list = _articleAccess.SP_Article_GetTopView_Web(request.TopRow, request.MenuID, request.UrlRedirect, 1, 10, out totalRow); return(Ok(new { TotalRow = totalRow, Items = list })); }
public IActionResult GetArticleRelationList([FromQuery] ArticleRequest request) { int totalRow = 0; var list = _articleAccess.SP_Article_GetListSameMenu_Web(request.TopRow, request.ArticleID, request.Page, request.PageSize, out totalRow); return(Ok(new { TotalRow = totalRow, Items = list })); }
public async Task <Entities.Storage.Article> Update(ArticleRequest request) { _context.Entry(request.Article).State = EntityState.Modified; await _context.SaveChangesAsync(); return(request.Article); }
/// <summary> /// 获取分页列表数据 /// </summary> /// <param name="request"></param> /// <returns></returns> public ActionResult GetGridJson(ArticleRequest request) { request.rows = 15; request.UserCode = base.UserCode; var data = _article.GetDataListForPage(request); return(Content(data.ToJson())); }
public async Task <ActionResult <ArticleDto> > Create(ArticleRequest model) { var article = await _repository.Create(model); return(article != null ? Created(nameof(Create), article) : StatusCode(StatusCodes.Status500InternalServerError, null)); }
private void UpdateValues(Article existingArticle, ArticleRequest updatedArticle) { existingArticle.Author = updatedArticle.Author ?? existingArticle.Author; existingArticle.Title = updatedArticle.Title ?? existingArticle.Title; existingArticle.Description = updatedArticle.Description ?? existingArticle.Description; existingArticle.IsPublished = updatedArticle.IsPublished ?? existingArticle.IsPublished; existingArticle.Updated = _clock.Now; }
public void EditArticle([FromBody] ArticleRequest request) { LogsDataManager.SendLog( request.LibrarianId, "Librarian", "edited article " + request.Article.Title); DocumentsDataManager.EditArticle(request.Article); }
public IActionResult GetList([FromQuery] ArticleRequest request) { int totalRow = 0; var list = _articleAccess.SP_Article_GetList_Web(request.TopRow, request.ArticleID, request.Title, request.MenuID, request.UrlRedirect, request.Tags, request.isHot, request.Page, request.PageSize, out totalRow); return(Ok(new { TotalRow = totalRow, Items = list })); }
public async Task <Article> CreateNewArticleAsync(ArticleRequest request) { if (request == null) { throw new ArgumentNullException(nameof(request)); } return(await AttemptCreateNewBlogArticle(request)); }
public async Task <Entities.Storage.Article> Add(ArticleRequest request) { if (request.Article.Author.Role == Role.Default && request.Article.Type == ArticleType.Shared) { return(null); } return(await _articleRepository.Add(request)); }
public async Task <ArticleDto> UpdateArticle(string slug, ArticleRequest <UpdateArticleCommand> request) { var command = request.Article; command.Slug = slug; await mediator.Send(command); return(await mediator.Send(new ArticleBySlugQuery { Slug = slug })); }
public async Task <IHttpActionResult> Put(int id, [FromBody] ArticleRequest articleRequest) { if (IsCurrentUserPublisher()) { return(await Put <ArticleRequest, Article>(id, articleRequest)); } else { return(BadRequest("Only publisher can update article")); } }
public async Task <IHttpActionResult> Post([FromBody] ArticleRequest articleRequest) { if (IsCurrentUserPublisher()) { return(await Post <ArticleRequest, Article>(articleRequest)); } else { return(BadRequest("Only publisher can add article")); } }
public async Task AddAsync(ArticleRequest articleRequest) { ArticleModel articleModel = new ArticleModel() { Title = articleRequest.Title, Author = articleRequest.Author, PublicationDate = articleRequest.PublicationDate, PublicationPlace = articleRequest.PublicationPlace }; await _articleRepository.AddAsync(articleModel); }
public async Task <ActionResult> UpdateArticle(Guid articleId, [FromBody] ArticleRequest articleRequest) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } articleRequest.UserName = HttpContext.User.Identity.Name; await _articleService.UpdateEntityAsync(articleId, articleRequest); return(NoContent()); }
private Article ArrangeFor_CreateEntityAsyncTest(ArticleRequest articleRequest) { var article = _mapper.Map <ArticleRequest, Article>(articleRequest); _mockMapper.Setup(m => m.Map <ArticleRequest, Article>(articleRequest)) .Returns(article); article.Id = Guid.NewGuid(); _mockRepository.Setup(r => r.Add(article)); return(article); }
public IEnumerable<Article> GetArticleList(ArticleRequest request = null) { request = request ?? new ArticleRequest(); using (var dbContext = new CmsDbContext()) { IQueryable<Article> articles = dbContext.Articles.Include("Channel"); if (!string.IsNullOrEmpty(request.Title)) articles = articles.Where(u => u.Title.Contains(request.Title)); if (request.ChannelId > 0) articles = articles.Where(u => u.ChannelId == request.ChannelId); if (request.IsActive != null) articles = articles.Where(u => u.IsActive == request.IsActive); return articles.OrderByDescending(u => u.ID).ToPagedList(request.PageIndex, request.PageSize); } }