From fc4b1e66b241df686dbd7bebb6df6793060a8107 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sun, 10 Nov 2024 21:36:53 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/utils/task/stock/StockTask.java |   99 +++++++++++++++++++++++++++++--------------------
 1 files changed, 58 insertions(+), 41 deletions(-)

diff --git a/src/main/java/com/nq/utils/task/stock/StockTask.java b/src/main/java/com/nq/utils/task/stock/StockTask.java
index 482cff3..506599a 100644
--- a/src/main/java/com/nq/utils/task/stock/StockTask.java
+++ b/src/main/java/com/nq/utils/task/stock/StockTask.java
@@ -58,10 +58,14 @@
 
     private final Lock syncINStockDataLock = new ReentrantLock();
 
+    private final AtomicBoolean syncUSStockData = new AtomicBoolean(false);
+
+    private final Lock syncUSStockDataLock = new ReentrantLock();
+
     /**
      * 同步系统所需要的股票
      */
-    @Scheduled(cron = "0/5 * * * * ?")
+    @Scheduled(cron = "0 0/1 * * * ?")
     public void syncINStockData() {
         if (syncINStockData.get()) { // 判断任务是否在处理中
             return;
@@ -69,7 +73,7 @@
         if (syncINStockDataLock.tryLock()) {
             try {
                 syncINStockData.set(true); // 设置处理中标识为true
-                loadAllStock(EStockType.IN);
+                loadAllStock(EStockType.JP);
             } finally {
                 syncINStockDataLock.unlock();
                 syncINStockData.set(false); // 设置处理中标识为false
@@ -77,14 +81,25 @@
         }
     }
 
-
-    /**
-     * 同步美国股票
-     */
-//    @Scheduled(cron = "0 0/30 * * * ?")
-    public void loadStockCompanies() {
-        loadAllCompanies();
-    }
+//
+//    /**
+//     * 同步美国股票
+//     */
+//    @Scheduled(cron = "0 0/1 * * * ?")
+//    public void loadStockCompanies() {
+//        if (syncUSStockData.get()) { // 判断任务是否在处理中
+//            return;
+//        }
+//        if (syncUSStockDataLock.tryLock()) {
+//            try {
+//                syncUSStockData.set(true); // 设置处理中标识为true
+//                loadAllStock(EStockType.US);
+//            } finally {
+//                syncUSStockDataLock.unlock();
+//                syncUSStockData.set(false); // 设置处理中标识为false
+//            }
+//        }
+//    }
 
 
     /**
@@ -130,40 +145,42 @@
                 }
             }
             for (DataStockBean o : list) {
-                Stock stock = stockMapper.findStockByCode(o.getId());
-                if (stock == null) {
-                    stock = new Stock();
-                    stock.setStockCode(o.getId());
-                    stock.setStockName(o.getName());
-                    stock.setStockType(eStockType.getCode());
-                    if (o.getType() == null) {
-                        stock.setStockGid(eStockType.getCode());
+                if(o.getType().equals("TSE")){
+                    Stock stock = stockMapper.findStockByCode(o.getId());
+                    if (stock == null) {
+                        stock = new Stock();
+                        stock.setStockCode(o.getId());
+                        stock.setStockName(o.getName());
+                        stock.setStockType(eStockType.getCode());
+                        if (o.getType() == null) {
+                            stock.setStockGid(eStockType.getCode());
+                        } else {
+                            stock.setStockGid(o.getType());
+                        }
+                        stock.setStockSpell(o.getSymbol());
+                        stock.setIsLock(0);
+                        stock.setIsShow(0);
+                        stock.setDataBase(0);
+                        stock.setAddTime(new Date());
+                        stockMapper.insert1(stock);
                     } else {
-                        stock.setStockGid(o.getType());
+                        stock.setStockCode(o.getId());
+                        stock.setStockName(o.getName());
+                        stock.setStockType(eStockType.getCode());
+                        if (o.getType() == null) {
+                            stock.setStockGid(eStockType.getCode());
+                        } else {
+                            stock.setStockGid(o.getType());
+                        }
+                        stock.setStockSpell(o.getSymbol());
+                        stock.setIsLock(0);
+                        stock.setIsShow(0);
+                        stock.setDataBase(0);
+                        stock.setAddTime(new Date());
+                        stockMapper.updateById(stock);
                     }
-                    stock.setStockSpell(o.getSymbol());
-                    stock.setIsLock(0);
-                    stock.setIsShow(0);
-                    stock.setDataBase(0);
-                    stock.setAddTime(new Date());
-                    stockMapper.insert1(stock);
-                } else {
-                    stock.setStockCode(o.getId());
-                    stock.setStockName(o.getName());
-                    stock.setStockType(eStockType.getCode());
-                    if (o.getType() == null) {
-                        stock.setStockGid(eStockType.getCode());
-                    } else {
-                        stock.setStockGid(o.getType());
-                    }
-                    stock.setStockSpell(o.getSymbol());
-                    stock.setIsLock(0);
-                    stock.setIsShow(0);
-                    stock.setDataBase(0);
-                    stock.setAddTime(new Date());
-                    stockMapper.updateById(stock);
+                    RedisKeyUtil.setCaCheKeyBaseStock(eStockType, o);
                 }
-                RedisKeyUtil.setCaCheKeyBaseStock(eStockType, o);
             }
             log.info("同步股票 数据 成功 {}  总共同步数据 {}", eStockType.getCode(), list.size());
         } catch (

--
Gitblit v1.9.3