From 2312e439bdf57b932b0b96b4042201388a50c9f9 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 30 Apr 2024 01:04:14 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/service/impl/StockServiceImpl.java |   47 ++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 40 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/StockServiceImpl.java b/src/main/java/com/nq/service/impl/StockServiceImpl.java
index bbd090b..f38dd02 100644
--- a/src/main/java/com/nq/service/impl/StockServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockServiceImpl.java
@@ -10,6 +10,7 @@
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.google.gson.Gson;
+import com.google.gson.JsonObject;
 import com.google.gson.reflect.TypeToken;
 import com.nq.common.ServerResponse;
 import com.nq.config.StockPoll;
@@ -94,6 +95,7 @@
 
     @Autowired
     IPriceServices iPriceServices;
+
 
     public ServerResponse getMarket() {
         String market_url = PropertiesUtil.getProperty("sina.market.url");
@@ -221,6 +223,32 @@
         map.put("introduction", introduction);
         map.put("stock", stockVO);
         return ServerResponse.createBySuccess(map);
+    }
+
+    public Map getSingleStock(String code) {
+        if (StringUtils.isBlank(code))
+            return null;
+        Stock stock = stockMapper.findStockByCode(code);
+        DataStockBean cacheBaseStock = RedisKeyUtil.getCacheBaseStock(stock);
+        Integer depositAmt = 0;
+        String introduction = null;
+        StockVO   stockVO = StockApi.assembleInStockVO(stock);
+        stockVO.setDepositAmt(depositAmt);
+        stockVO.setNowPrice(iPriceServices.getNowPrice(stock.getStockCode()).toString());
+        stockVO.setType(stock.getStockType());
+        stockVO.setId(stock.getId().intValue());
+        stockVO.setCode(stock.getStockCode());
+        stockVO.setName(stock.getStockName());
+        stockVO.setSpell(stock.getStockSpell());
+        stockVO.setGid(stock.getStockGid().toUpperCase());
+        if(null != cacheBaseStock){
+            stockVO.setOpen_px(cacheBaseStock.getOpen());
+            stockVO.setPreclose_px(cacheBaseStock.getPrevClose());
+        }
+        Map map = Maps.newHashMap();
+        map.put("introduction", introduction);
+        map.put("stock", stockVO);
+        return map;
     }
 
 
@@ -401,12 +429,12 @@
     @lombok.Data
     class kData {
         long t;
-        BigDecimal c;
-        BigDecimal o;
-        BigDecimal h;
-        BigDecimal l;
-        BigDecimal v;
-        BigDecimal vo;
+        String c;
+        String o;
+        String h;
+        String l;
+        String v;
+        String vo;
     }
 
 
@@ -421,9 +449,14 @@
 
             Stock stock = stockMapper.selectOne(new LambdaQueryWrapper<Stock>().eq(Stock::getStockCode, pid).eq(Stock::getStockType, "IN"));
             BigDecimal nowPrice = iPriceServices.getNowPrice(stock.getStockCode());
+            Map singleStock = getSingleStock(stock.getStockCode());
+            StockVO stockVO = (StockVO)singleStock.get("stock");
             // 修改 List 中的最后一条数据
             kData lastData = dataList.get(dataList.size() - 1);
-            lastData.setC(nowPrice); // 修改c字段的值
+            lastData.setC(nowPrice.toString());
+            lastData.setO(stockVO.getOpen_px());
+            lastData.setH(stockVO.getToday_max());
+            lastData.setL(stockVO.getToday_min());
             return gson.toJson(dataList);
 
         }

--
Gitblit v1.9.3