From 22303b546049922ed26109750f3d9aa0dbcf8eaf Mon Sep 17 00:00:00 2001 From: vu-tran Date: Fri, 4 Jul 2025 18:38:26 +0700 Subject: [PATCH] update --- .../cn/stock/market/web/MoneyApiController.java | 3 ++- .../stock/market/web/service/MoneyApiService.java | 13 +++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/main/java/cn/stock/market/web/MoneyApiController.java b/src/main/java/cn/stock/market/web/MoneyApiController.java index 0801986..300ef11 100644 --- a/src/main/java/cn/stock/market/web/MoneyApiController.java +++ b/src/main/java/cn/stock/market/web/MoneyApiController.java @@ -213,6 +213,7 @@ public class MoneyApiController { return ServerResponse.createByErrorMsg("Stock is not exist!"); } StockQuoteData data = moneyApiService.getSingleStockQuote(symbol); + data.setName(stock.getStockName()); return ServerResponse.createBySuccess(data); } @@ -592,7 +593,7 @@ public class MoneyApiController { @ResponseBody @EncryptFilter(decryptRequest = false) - public List getTopLoser(@RequestParam String stockType) { + public List getTopLoser(@RequestParam(required = false) String stockType) { List moneyStockSuggestDTOS = null; List stockQuoteDataList = moneyApiService.getTopLosersFromTradingView(); moneyStockSuggestDTOS = convertStockQuoteDataToMoneyStockSuggestDTO(stockQuoteDataList); diff --git a/src/main/java/cn/stock/market/web/service/MoneyApiService.java b/src/main/java/cn/stock/market/web/service/MoneyApiService.java index f74efd2..0b22bfe 100644 --- a/src/main/java/cn/stock/market/web/service/MoneyApiService.java +++ b/src/main/java/cn/stock/market/web/service/MoneyApiService.java @@ -175,6 +175,9 @@ public class MoneyApiService { public List getTopStocksFromTradingView(String sortOrder) { String url = "https://scanner.tradingview.com/germany/scan"; + // Determine preset based on sort order + String preset = "desc".equals(sortOrder) ? "gainers" : "losers"; + // Prepare request body String requestBody = "{\n" + " \"columns\": [\n" + @@ -198,6 +201,7 @@ public class MoneyApiService { " \"options\": {\n" + " \"lang\": \"en\"\n" + " },\n" + + " \"preset\": \"" + preset + "\",\n" + " \"range\": [\n" + " 0,\n" + " 30\n" + @@ -241,14 +245,7 @@ public class MoneyApiService { if (!stocks.isEmpty()) { // Get real-time quotes for these stocks - List stockQuoteDatas = getStocksQuote(stocks); - for (StockQuoteData stockQuoteData : stockQuoteDatas) { - Stock name = stocks.stream().filter(e->e.getStockCode().equals(stockQuoteData.getSymbol())).findFirst().orElse(null); - if (name != null) { - stockQuoteData.setName(name.getStockName()); - } - } - return stockQuoteDatas; + return getStocksQuote(stocks); } } }