public async Task <IActionResult> GetFromSold(int portfolioId) { int userId = Int32.Parse(this.User.FindFirstValue(ClaimTypes.NameIdentifier)); var portfolio = await _portfolioServices.GetPortfolioByIdAsync(portfolioId); var orders = await _orderServices.GetOrders(portfolio.UserId, portfolioId, 0, null, null); if (await _ppServices.Exists(userId, portfolioId) || portfolio.UserId == userId) { return(StatusCode(200, orders)); } else { orders = orders.OrderBy(x => x.Timestamp).ToList(); orders = orders.Take(3).ToList(); return(StatusCode(200, orders)); } }
public async Task <IActionResult> Post(int portfolioId) { int userId = Int32.Parse(this.User.FindFirstValue(ClaimTypes.NameIdentifier)); var ppDTO = new PurchasedPortfolioDTO() { UserId = userId, PortfolioId = portfolioId }; if (ppDTO.PortfolioId == 0) { return(StatusCode(400, "portfolioId can not be 0")); } if (await _ppServices.Exists(ppDTO.UserId, ppDTO.PortfolioId)) { return(StatusCode(400, "Entry already exists")); } var createdPurchase = await _ppServices.AddPurchasedPortfolio(ppDTO); return(StatusCode(200)); }