public static PostingDto UpdateStatus(RioDbContext dbContext, int postingID, PostingUpdateStatusDto postingUpdateStatusDto, int?availableQuantity) { var posting = dbContext.Posting .Single(x => x.PostingID == postingID); posting.PostingStatusID = postingUpdateStatusDto.PostingStatusID; if (availableQuantity.HasValue) { posting.AvailableQuantity = availableQuantity.Value; } dbContext.SaveChanges(); dbContext.Entry(posting).Reload(); return(GetByPostingID(dbContext, postingID)); }
public ActionResult <PostingDto> ClosePosting([FromRoute] int postingID, [FromBody] PostingUpdateStatusDto postingUpdateStatusDto) { if (!_allowTrading) { return(BadRequest()); } var postingDto = Posting.GetByPostingID(_dbContext, postingID); if (ThrowNotFound(postingDto, "Posting", postingID, out var actionResult)) { return(actionResult); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var updatedPostingDto = Posting.UpdateStatus(_dbContext, postingID, postingUpdateStatusDto, null); return(Ok(updatedPostingDto)); }