From 9f3859466f402f3e4145dbdd405a8da2da14015e Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Thu, 22 Aug 2024 14:34:14 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/controller/admin/AdminStockSettingController.java            |    2 
 src/main/java/com/nq/controller/admin/AdminFuturesPositionController.java         |    2 
 src/main/java/com/nq/controller/admin/AdminStockSubscribeController.java          |    3 
 src/main/java/com/nq/dao/CurrencyBeanMapper.java                                  |   15 +
 src/main/java/com/nq/controller/admin/AdminPendingOrderController.java            |    6 
 src/main/java/com/nq/controller/user/UserPayController.java                       |    2 
 src/main/java/com/nq/controller/admin/AdminCashDetailController.java              |    2 
 src/main/java/com/nq/controller/admin/AdminSitePayController.java                 |    2 
 src/main/java/com/nq/controller/admin/AdminSiteProductController.java             |    2 
 src/main/java/com/nq/controller/admin/AdminAgentController.java                   |    2 
 src/main/java/com/nq/controller/admin/AdminIndexPositionController.java           |    2 
 src/main/java/com/nq/controller/user/UserBankController.java                      |    2 
 src/main/java/com/nq/controller/admin/AdminSiteIndexSettingController.java        |    2 
 src/main/java/com/nq/controller/admin/AdminController.java                        |    2 
 src/main/java/com/nq/controller/admin/AdminStockCoinController.java               |    2 
 src/main/java/com/nq/controller/user/UserCashDetailController.java                |    2 
 src/main/java/com/nq/controller/admin/AdminPositionController.java                |    2 
 src/main/java/com/nq/controller/user/UserRechargeController.java                  |    2 
 src/main/java/com/nq/utils/pay/CmcPayTool.java                                    |    2 
 src/main/java/com/nq/controller/admin/AdminCurrencyController.java                |   99 ++++++++++++
 src/main/java/com/nq/controller/admin/AdminSiteInfoController.java                |    2 
 src/main/java/com/nq/controller/admin/AdminStockController.java                   |    2 
 src/main/java/com/nq/controller/admin/AdminStockDz.java                           |    4 
 src/main/java/com/nq/controller/user/UserOptionController.java                    |    2 
 src/main/java/com/nq/pojo/CurrencyBeanVo.java                                     |   25 +++
 src/main/java/com/nq/controller/admin/AdminSiteSettingController.java             |    2 
 src/main/java/com/nq/controller/user/UserController.java                          |    6 
 src/main/java/com/nq/controller/StockApiController.java                           |   20 ++
 src/main/java/com/nq/controller/admin/AdminLogsController.java                    |    2 
 src/main/java/com/nq/controller/admin/AdminStockConfigController.java             |    4 
 src/main/java/com/nq/utils/task/stock/StockTask.java                              |    2 
 src/main/java/com/nq/controller/admin/AdminSiteFuturesSettingController.java      |    2 
 src/main/java/com/nq/service/impl/CurrencyBeanServiceImpl.java                    |   16 ++
 src/main/java/com/nq/utils/task/digiccy/GetSymbolsTask.java                       |  135 ++++++++++++++++
 src/main/java/com/nq/controller/admin/AdminNewStockController.java                |    2 
 src/main/java/com/nq/service/CurrencyBeanService.java                             |   12 +
 src/main/java/com/nq/controller/admin/AdminMoneyLogController.java                |    2 
 src/main/java/com/nq/controller/admin/AdminUserController.java                    |    4 
 src/main/java/com/nq/controller/admin/AdminFundsDealerInstitutionsController.java |    2 
 src/main/java/com/nq/controller/admin/AdminPendingorder.java                      |    3 
 src/main/java/com/nq/controller/admin/AdminWithDrawController.java                |    2 
 src/main/java/com/nq/controller/admin/AdminFundsSettingController.java            |    2 
 src/main/java/com/nq/controller/admin/AdminRechargeController.java                |    2 
 src/main/java/com/nq/controller/admin/AdminStockIndexController.java              |    2 
 src/main/java/com/nq/controller/admin/AdminStockFuturesController.java            |    2 
 src/main/java/com/nq/controller/admin/AdminSiteArticleController.java             |    2 
 src/main/java/com/nq/controller/admin/AdminStockTimeSettingController.java        |    4 
 src/main/java/com/nq/controller/admin/AdminSiteBannerController.java              |    2 
 src/main/java/com/nq/controller/admin/AdminFundsApplyController.java              |    2 
 src/main/java/com/nq/controller/user/UserWithdrawController.java                  |    2 
 src/main/java/com/nq/pojo/CurrencyBean.java                                       |   26 +++
 src/main/java/com/nq/controller/user/UserPositionController.java                  |    2 
 src/main/resources/application.yml                                                |    2 
 53 files changed, 393 insertions(+), 63 deletions(-)

diff --git a/src/main/java/com/nq/controller/StockApiController.java b/src/main/java/com/nq/controller/StockApiController.java
index d265e7a..cf5d8a8 100644
--- a/src/main/java/com/nq/controller/StockApiController.java
+++ b/src/main/java/com/nq/controller/StockApiController.java
@@ -1,6 +1,11 @@
 package com.nq.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.pagehelper.util.StringUtil;
 import com.nq.common.ServerResponse;
+import com.nq.dao.CurrencyBeanMapper;
+import com.nq.pojo.CurrencyBean;
 import com.nq.pojo.SiteSetting;
 import com.nq.service.IStockService;
 import com.nq.service.StockDzService;
@@ -24,6 +29,8 @@
     IStockService iStockService;
     @Autowired
     StockDzService stockDzService;
+    @Autowired
+    CurrencyBeanMapper currencyBeanMapper;
 
     //查询 股票指数、大盘指数信息
     @RequestMapping({"getMarket.do"})
@@ -52,6 +59,19 @@
         return this.iStockService.getStockByType(pageNum, pageSize, orderBy,keyWords , stockType, request);
     }
 
+    @RequestMapping("getCurrency.do")
+    @ResponseBody
+    public ServerResponse getCurrency(@RequestParam(value = "sc", required = false) String sc,
+                                 @RequestParam("pageNum") int pageNum,
+                                 @RequestParam("pageSize") int pageSize) {
+
+        Page<CurrencyBean> page = new Page<>(pageNum, pageSize);
+        Page<CurrencyBean> beanPage = currencyBeanMapper.selectPage(page, new LambdaQueryWrapper<>(CurrencyBean.class)
+                .like(StringUtil.isNotEmpty(sc), CurrencyBean::getSc, sc)
+        );
+        return ServerResponse.createBySuccess(beanPage);
+    }
+
 
 
     @RequestMapping("getOptionStock.do")
diff --git a/src/main/java/com/nq/controller/backend/AdminAgentController.java b/src/main/java/com/nq/controller/admin/AdminAgentController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminAgentController.java
rename to src/main/java/com/nq/controller/admin/AdminAgentController.java
index c4d8df2..009dd75 100644
--- a/src/main/java/com/nq/controller/backend/AdminAgentController.java
+++ b/src/main/java/com/nq/controller/admin/AdminAgentController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminCashDetailController.java b/src/main/java/com/nq/controller/admin/AdminCashDetailController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminCashDetailController.java
rename to src/main/java/com/nq/controller/admin/AdminCashDetailController.java
index 0f0e73d..fa46ab6 100644
--- a/src/main/java/com/nq/controller/backend/AdminCashDetailController.java
+++ b/src/main/java/com/nq/controller/admin/AdminCashDetailController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminController.java b/src/main/java/com/nq/controller/admin/AdminController.java
similarity index 99%
rename from src/main/java/com/nq/controller/backend/AdminController.java
rename to src/main/java/com/nq/controller/admin/AdminController.java
index aecd92a..af5fb2f 100644
--- a/src/main/java/com/nq/controller/backend/AdminController.java
+++ b/src/main/java/com/nq/controller/admin/AdminController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.github.pagehelper.PageInfo;
diff --git a/src/main/java/com/nq/controller/admin/AdminCurrencyController.java b/src/main/java/com/nq/controller/admin/AdminCurrencyController.java
new file mode 100644
index 0000000..0d8c8ea
--- /dev/null
+++ b/src/main/java/com/nq/controller/admin/AdminCurrencyController.java
@@ -0,0 +1,99 @@
+package com.nq.controller.admin;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.pagehelper.util.StringUtil;
+import com.nq.common.ServerResponse;
+import com.nq.dao.CurrencyBeanMapper;
+import com.nq.pojo.CurrencyBean;
+import com.nq.pojo.CurrencyBeanVo;
+import com.nq.service.CurrencyBeanService;
+import com.nq.utils.ConverterUtil;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.xmlunit.util.Convert;
+
+import java.util.List;
+
+/**
+ * @program: dabaogp
+ * @description:数字货币管理
+ * @create: 2024-08-21 16:55
+ **/
+@Controller
+@RequestMapping({"/admin/currency"})
+public class AdminCurrencyController {
+
+    @Autowired
+    private CurrencyBeanService service;
+
+    @Autowired
+    private CurrencyBeanMapper mapper;
+
+    /**
+     * 新增币种
+     */
+    @RequestMapping({"add.do"})
+    @ResponseBody
+    public ServerResponse add(CurrencyBeanVo beanVo) {
+        if(StringUtil.isEmpty(beanVo.getSc()) ||
+                StringUtil.isEmpty(beanVo.getDn()) ||
+                StringUtil.isEmpty(beanVo.getBcdn()) ||
+                StringUtil.isEmpty(beanVo.getQcdn())){
+            return ServerResponse.createByErrorMsg("字段不能为空");
+        }
+        Long scCount = getScCount(beanVo.getSc(),null);
+        if(scCount > 0){
+            return ServerResponse.createByErrorMsg("币种已存在");
+        }
+        CurrencyBean currencyBean = ConverterUtil.convert(beanVo, CurrencyBean.class);
+        service.save(currencyBean);
+        return ServerResponse.createBySuccess();
+    }
+
+    /**
+     * 修改币种
+     */
+    @RequestMapping({"update.do"})
+    @ResponseBody
+    public ServerResponse update(CurrencyBeanVo beanVo) {
+        CurrencyBean byId = service.getById(beanVo.getId());
+        if(null == byId){
+            return ServerResponse.createByErrorMsg("币种不存在");
+        }
+        Long scCount = getScCount(beanVo.getSc(),beanVo.getId());
+        if(scCount > 0){
+            return ServerResponse.createByErrorMsg("币种已存在");
+        }
+        CurrencyBean currencyBean = ConverterUtil.convert(beanVo, CurrencyBean.class);
+        service.updateById(currencyBean);
+        return ServerResponse.createBySuccess();
+    }
+
+    /**
+     * 查询币种
+     */
+    @RequestMapping({"select.do"})
+    @ResponseBody
+    public ServerResponse select(@RequestParam(value = "sc", required = false) String sc,
+                                 @RequestParam("pageNum") int pageNum,
+                                 @RequestParam("pageSize") int pageSize) {
+
+        Page<CurrencyBean> page = new Page<>(pageNum, pageSize);
+        Page<CurrencyBean> beanPage = mapper.selectPage(page, new LambdaQueryWrapper<>(CurrencyBean.class)
+                .like(StringUtil.isNotEmpty(sc), CurrencyBean::getSc, sc)
+        );
+        return ServerResponse.createBySuccess(beanPage);
+    }
+
+    public Long getScCount(String sc,Integer id){
+        Long count = mapper.selectCount(new LambdaQueryWrapper<>(CurrencyBean.class).eq(CurrencyBean::getSc, sc).ne(null != id,CurrencyBean::getId,id));
+        return count;
+    }
+
+}
diff --git a/src/main/java/com/nq/controller/backend/AdminFundsApplyController.java b/src/main/java/com/nq/controller/admin/AdminFundsApplyController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminFundsApplyController.java
rename to src/main/java/com/nq/controller/admin/AdminFundsApplyController.java
index 0a20580..f4e305a 100644
--- a/src/main/java/com/nq/controller/backend/AdminFundsApplyController.java
+++ b/src/main/java/com/nq/controller/admin/AdminFundsApplyController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.FundsAppend;
diff --git a/src/main/java/com/nq/controller/backend/AdminFundsDealerInstitutionsController.java b/src/main/java/com/nq/controller/admin/AdminFundsDealerInstitutionsController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminFundsDealerInstitutionsController.java
rename to src/main/java/com/nq/controller/admin/AdminFundsDealerInstitutionsController.java
index 3d52a0e..1896122 100644
--- a/src/main/java/com/nq/controller/backend/AdminFundsDealerInstitutionsController.java
+++ b/src/main/java/com/nq/controller/admin/AdminFundsDealerInstitutionsController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.FundsDealerInstitutions;
diff --git a/src/main/java/com/nq/controller/backend/AdminFundsSettingController.java b/src/main/java/com/nq/controller/admin/AdminFundsSettingController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminFundsSettingController.java
rename to src/main/java/com/nq/controller/admin/AdminFundsSettingController.java
index 8f154a1..e65de74 100644
--- a/src/main/java/com/nq/controller/backend/AdminFundsSettingController.java
+++ b/src/main/java/com/nq/controller/admin/AdminFundsSettingController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.FundsLever;
diff --git a/src/main/java/com/nq/controller/backend/AdminFuturesPositionController.java b/src/main/java/com/nq/controller/admin/AdminFuturesPositionController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminFuturesPositionController.java
rename to src/main/java/com/nq/controller/admin/AdminFuturesPositionController.java
index e251c05..7a67df9 100644
--- a/src/main/java/com/nq/controller/backend/AdminFuturesPositionController.java
+++ b/src/main/java/com/nq/controller/admin/AdminFuturesPositionController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminIndexPositionController.java b/src/main/java/com/nq/controller/admin/AdminIndexPositionController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminIndexPositionController.java
rename to src/main/java/com/nq/controller/admin/AdminIndexPositionController.java
index 581df26..434949d 100644
--- a/src/main/java/com/nq/controller/backend/AdminIndexPositionController.java
+++ b/src/main/java/com/nq/controller/admin/AdminIndexPositionController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminLogsController.java b/src/main/java/com/nq/controller/admin/AdminLogsController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminLogsController.java
rename to src/main/java/com/nq/controller/admin/AdminLogsController.java
index f0f29b0..83e4100 100644
--- a/src/main/java/com/nq/controller/backend/AdminLogsController.java
+++ b/src/main/java/com/nq/controller/admin/AdminLogsController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminMoneyLogController.java b/src/main/java/com/nq/controller/admin/AdminMoneyLogController.java
similarity index 96%
rename from src/main/java/com/nq/controller/backend/AdminMoneyLogController.java
rename to src/main/java/com/nq/controller/admin/AdminMoneyLogController.java
index bfe8edb..300876a 100644
--- a/src/main/java/com/nq/controller/backend/AdminMoneyLogController.java
+++ b/src/main/java/com/nq/controller/admin/AdminMoneyLogController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminNewStockController.java b/src/main/java/com/nq/controller/admin/AdminNewStockController.java
similarity index 95%
rename from src/main/java/com/nq/controller/backend/AdminNewStockController.java
rename to src/main/java/com/nq/controller/admin/AdminNewStockController.java
index 607bef4..cde18f7 100644
--- a/src/main/java/com/nq/controller/backend/AdminNewStockController.java
+++ b/src/main/java/com/nq/controller/admin/AdminNewStockController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.service.IStockSubscribeService;
 import org.springframework.beans.factory.annotation.Autowired;
diff --git a/src/main/java/com/nq/controller/backend/AdminPendingOrderController.java b/src/main/java/com/nq/controller/admin/AdminPendingOrderController.java
similarity index 85%
rename from src/main/java/com/nq/controller/backend/AdminPendingOrderController.java
rename to src/main/java/com/nq/controller/admin/AdminPendingOrderController.java
index e948d31..b405d80 100644
--- a/src/main/java/com/nq/controller/backend/AdminPendingOrderController.java
+++ b/src/main/java/com/nq/controller/admin/AdminPendingOrderController.java
@@ -1,13 +1,9 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
-import com.nq.common.ServerResponse;
 import com.nq.service.UserPendingorderService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
-
-import javax.servlet.http.HttpServletRequest;
 
 @RestController
 @RequestMapping({"/admin/pendingorder/"})
diff --git a/src/main/java/com/nq/controller/backend/AdminPendingorder.java b/src/main/java/com/nq/controller/admin/AdminPendingorder.java
similarity index 96%
rename from src/main/java/com/nq/controller/backend/AdminPendingorder.java
rename to src/main/java/com/nq/controller/admin/AdminPendingorder.java
index f330f0a..70fae82 100644
--- a/src/main/java/com/nq/controller/backend/AdminPendingorder.java
+++ b/src/main/java/com/nq/controller/admin/AdminPendingorder.java
@@ -1,9 +1,8 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.UserPendingorder;
 import com.nq.service.UserPendingorderService;
-import com.nq.vo.position.UserPendingorderVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
diff --git a/src/main/java/com/nq/controller/backend/AdminPositionController.java b/src/main/java/com/nq/controller/admin/AdminPositionController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminPositionController.java
rename to src/main/java/com/nq/controller/admin/AdminPositionController.java
index 381a510..992a66b 100644
--- a/src/main/java/com/nq/controller/backend/AdminPositionController.java
+++ b/src/main/java/com/nq/controller/admin/AdminPositionController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminRechargeController.java b/src/main/java/com/nq/controller/admin/AdminRechargeController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminRechargeController.java
rename to src/main/java/com/nq/controller/admin/AdminRechargeController.java
index 9fd6e03..3b8a362 100644
--- a/src/main/java/com/nq/controller/backend/AdminRechargeController.java
+++ b/src/main/java/com/nq/controller/admin/AdminRechargeController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import cn.afterturn.easypoi.excel.ExcelExportUtil;
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteArticleController.java b/src/main/java/com/nq/controller/admin/AdminSiteArticleController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminSiteArticleController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteArticleController.java
index 07d3e0a..15fa7f6 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteArticleController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteArticleController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.SiteArticle;
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteBannerController.java b/src/main/java/com/nq/controller/admin/AdminSiteBannerController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminSiteBannerController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteBannerController.java
index 5206bb4..d97ee2e 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteBannerController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteBannerController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteFuturesSettingController.java b/src/main/java/com/nq/controller/admin/AdminSiteFuturesSettingController.java
similarity index 96%
rename from src/main/java/com/nq/controller/backend/AdminSiteFuturesSettingController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteFuturesSettingController.java
index d642164..4e19b8f 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteFuturesSettingController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteFuturesSettingController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
  import com.nq.common.ServerResponse;
 
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteIndexSettingController.java b/src/main/java/com/nq/controller/admin/AdminSiteIndexSettingController.java
similarity index 96%
rename from src/main/java/com/nq/controller/backend/AdminSiteIndexSettingController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteIndexSettingController.java
index d903dd8..53f08c2 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteIndexSettingController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteIndexSettingController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.SiteIndexSetting;
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteInfoController.java b/src/main/java/com/nq/controller/admin/AdminSiteInfoController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminSiteInfoController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteInfoController.java
index 2185808..4bb267f 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteInfoController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteInfoController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminSitePayController.java b/src/main/java/com/nq/controller/admin/AdminSitePayController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminSitePayController.java
rename to src/main/java/com/nq/controller/admin/AdminSitePayController.java
index 1a4910c..73b06c8 100644
--- a/src/main/java/com/nq/controller/backend/AdminSitePayController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSitePayController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteProductController.java b/src/main/java/com/nq/controller/admin/AdminSiteProductController.java
similarity index 95%
rename from src/main/java/com/nq/controller/backend/AdminSiteProductController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteProductController.java
index ebe9a18..0b379d3 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteProductController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteProductController.java
@@ -1,4 +1,4 @@
- package com.nq.controller.backend;
+ package com.nq.controller.admin;
 
 
  import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminSiteSettingController.java b/src/main/java/com/nq/controller/admin/AdminSiteSettingController.java
similarity index 95%
rename from src/main/java/com/nq/controller/backend/AdminSiteSettingController.java
rename to src/main/java/com/nq/controller/admin/AdminSiteSettingController.java
index 2950eb9..f459b82 100644
--- a/src/main/java/com/nq/controller/backend/AdminSiteSettingController.java
+++ b/src/main/java/com/nq/controller/admin/AdminSiteSettingController.java
@@ -1,4 +1,4 @@
- package com.nq.controller.backend;
+ package com.nq.controller.admin;
 
 
  import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminStockCoinController.java b/src/main/java/com/nq/controller/admin/AdminStockCoinController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminStockCoinController.java
rename to src/main/java/com/nq/controller/admin/AdminStockCoinController.java
index 5125072..86db5ef 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockCoinController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockCoinController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 
diff --git a/src/main/java/com/nq/controller/backend/AdminStockConfigController.java b/src/main/java/com/nq/controller/admin/AdminStockConfigController.java
similarity index 93%
rename from src/main/java/com/nq/controller/backend/AdminStockConfigController.java
rename to src/main/java/com/nq/controller/admin/AdminStockConfigController.java
index ad891e5..9f05a13 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockConfigController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockConfigController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.StockConfig;
@@ -8,8 +8,6 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
-
-import javax.xml.ws.Action;
 
 @Controller
 @RequestMapping({"/admin/stock/config"})
diff --git a/src/main/java/com/nq/controller/backend/AdminStockController.java b/src/main/java/com/nq/controller/admin/AdminStockController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminStockController.java
rename to src/main/java/com/nq/controller/admin/AdminStockController.java
index a884965..8cb639b 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockController.java
@@ -1,4 +1,4 @@
- package com.nq.controller.backend;
+ package com.nq.controller.admin;
 
  import com.nq.common.ServerResponse;
 
diff --git a/src/main/java/com/nq/controller/backend/AdminStockDz.java b/src/main/java/com/nq/controller/admin/AdminStockDz.java
similarity index 96%
rename from src/main/java/com/nq/controller/backend/AdminStockDz.java
rename to src/main/java/com/nq/controller/admin/AdminStockDz.java
index e6fa901..dfcdcdd 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockDz.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockDz.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.StockDz;
@@ -7,8 +7,6 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
-
-import java.math.BigDecimal;
 
 @RestController
 @RequestMapping({"/admin/stockDz/"})
diff --git a/src/main/java/com/nq/controller/backend/AdminStockFuturesController.java b/src/main/java/com/nq/controller/admin/AdminStockFuturesController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminStockFuturesController.java
rename to src/main/java/com/nq/controller/admin/AdminStockFuturesController.java
index 81bfa8d..e53bf8a 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockFuturesController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockFuturesController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.StockFutures;
diff --git a/src/main/java/com/nq/controller/backend/AdminStockIndexController.java b/src/main/java/com/nq/controller/admin/AdminStockIndexController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminStockIndexController.java
rename to src/main/java/com/nq/controller/admin/AdminStockIndexController.java
index a55e3ac..d7baec2 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockIndexController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockIndexController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminStockSettingController.java b/src/main/java/com/nq/controller/admin/AdminStockSettingController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminStockSettingController.java
rename to src/main/java/com/nq/controller/admin/AdminStockSettingController.java
index 8e0f269..f89be34 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockSettingController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockSettingController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/backend/AdminStockSubscribeController.java b/src/main/java/com/nq/controller/admin/AdminStockSubscribeController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminStockSubscribeController.java
rename to src/main/java/com/nq/controller/admin/AdminStockSubscribeController.java
index 038e4da..2aa86d0 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockSubscribeController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockSubscribeController.java
@@ -1,8 +1,7 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
-import com.nq.dao.StockSubscribeMapper;
 import com.nq.pojo.StockSubscribe;
 import com.nq.pojo.UserStockSubscribe;
 import com.nq.service.IStockSubscribeService;
diff --git a/src/main/java/com/nq/controller/backend/AdminStockTimeSettingController.java b/src/main/java/com/nq/controller/admin/AdminStockTimeSettingController.java
similarity index 89%
rename from src/main/java/com/nq/controller/backend/AdminStockTimeSettingController.java
rename to src/main/java/com/nq/controller/admin/AdminStockTimeSettingController.java
index 3d76fa7..223257c 100644
--- a/src/main/java/com/nq/controller/backend/AdminStockTimeSettingController.java
+++ b/src/main/java/com/nq/controller/admin/AdminStockTimeSettingController.java
@@ -1,10 +1,8 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
-import com.nq.pojo.StockSetting;
 import com.nq.pojo.StockTimeSetting;
-import com.nq.service.IStockSettingServices;
 import com.nq.service.IStockTimeSettingServices;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
diff --git a/src/main/java/com/nq/controller/backend/AdminUserController.java b/src/main/java/com/nq/controller/admin/AdminUserController.java
similarity index 97%
rename from src/main/java/com/nq/controller/backend/AdminUserController.java
rename to src/main/java/com/nq/controller/admin/AdminUserController.java
index bf85a88..9d3a152 100644
--- a/src/main/java/com/nq/controller/backend/AdminUserController.java
+++ b/src/main/java/com/nq/controller/admin/AdminUserController.java
@@ -1,10 +1,9 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.User;
 import com.nq.pojo.UserBank;
-import com.nq.service.IApplyLeverServices;
 import com.nq.service.IUserBankService;
 import com.nq.service.IUserService;
 import javax.servlet.http.HttpServletRequest;
@@ -19,7 +18,6 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import java.text.ParseException;
-import java.util.Date;
 
 
 @Controller
diff --git a/src/main/java/com/nq/controller/backend/AdminWithDrawController.java b/src/main/java/com/nq/controller/admin/AdminWithDrawController.java
similarity index 98%
rename from src/main/java/com/nq/controller/backend/AdminWithDrawController.java
rename to src/main/java/com/nq/controller/admin/AdminWithDrawController.java
index b969e4d..a956d19 100644
--- a/src/main/java/com/nq/controller/backend/AdminWithDrawController.java
+++ b/src/main/java/com/nq/controller/admin/AdminWithDrawController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.backend;
+package com.nq.controller.admin;
 
 import cn.afterturn.easypoi.excel.ExcelExportUtil;
 import cn.afterturn.easypoi.excel.entity.ExportParams;
diff --git a/src/main/java/com/nq/controller/protol/UserBankController.java b/src/main/java/com/nq/controller/user/UserBankController.java
similarity index 97%
rename from src/main/java/com/nq/controller/protol/UserBankController.java
rename to src/main/java/com/nq/controller/user/UserBankController.java
index 77c1041..ee1822e 100644
--- a/src/main/java/com/nq/controller/protol/UserBankController.java
+++ b/src/main/java/com/nq/controller/user/UserBankController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.protol;
+package com.nq.controller.user;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/protol/UserCashDetailController.java b/src/main/java/com/nq/controller/user/UserCashDetailController.java
similarity index 98%
rename from src/main/java/com/nq/controller/protol/UserCashDetailController.java
rename to src/main/java/com/nq/controller/user/UserCashDetailController.java
index 59d80fe..3c0137e 100644
--- a/src/main/java/com/nq/controller/protol/UserCashDetailController.java
+++ b/src/main/java/com/nq/controller/user/UserCashDetailController.java
@@ -1,4 +1,4 @@
- package com.nq.controller.protol;
+ package com.nq.controller.user;
 
 
  import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/protol/UserController.java b/src/main/java/com/nq/controller/user/UserController.java
similarity index 98%
rename from src/main/java/com/nq/controller/protol/UserController.java
rename to src/main/java/com/nq/controller/user/UserController.java
index 8710115..8f30dff 100644
--- a/src/main/java/com/nq/controller/protol/UserController.java
+++ b/src/main/java/com/nq/controller/user/UserController.java
@@ -1,12 +1,10 @@
-package com.nq.controller.protol;
+package com.nq.controller.user;
 
 
 import com.google.common.collect.Maps;
 import com.nq.common.ServerResponse;
 import com.nq.enums.EStockType;
 import com.nq.pojo.ApplyLever;
-import com.nq.pojo.StockSubscribe;
-import com.nq.pojo.UserStockSubscribe;
 import com.nq.service.*;
 import com.nq.utils.PropertiesUtil;
 
@@ -18,11 +16,9 @@
 import javax.servlet.http.HttpSession;
 
 import com.nq.vo.stock.UserStockSubscribeAddIn;
-import org.apache.ibatis.annotations.Property;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
diff --git a/src/main/java/com/nq/controller/protol/UserOptionController.java b/src/main/java/com/nq/controller/user/UserOptionController.java
similarity index 97%
rename from src/main/java/com/nq/controller/protol/UserOptionController.java
rename to src/main/java/com/nq/controller/user/UserOptionController.java
index 40a7e4c..457164d 100644
--- a/src/main/java/com/nq/controller/protol/UserOptionController.java
+++ b/src/main/java/com/nq/controller/user/UserOptionController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.protol;
+package com.nq.controller.user;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/protol/UserPayController.java b/src/main/java/com/nq/controller/user/UserPayController.java
similarity index 98%
rename from src/main/java/com/nq/controller/protol/UserPayController.java
rename to src/main/java/com/nq/controller/user/UserPayController.java
index c3b5986..d867072 100644
--- a/src/main/java/com/nq/controller/protol/UserPayController.java
+++ b/src/main/java/com/nq/controller/user/UserPayController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.protol;
+package com.nq.controller.user;
 
 
 import com.nq.common.ServerResponse;
diff --git a/src/main/java/com/nq/controller/protol/UserPositionController.java b/src/main/java/com/nq/controller/user/UserPositionController.java
similarity index 98%
rename from src/main/java/com/nq/controller/protol/UserPositionController.java
rename to src/main/java/com/nq/controller/user/UserPositionController.java
index 058f0a6..332642d 100644
--- a/src/main/java/com/nq/controller/protol/UserPositionController.java
+++ b/src/main/java/com/nq/controller/user/UserPositionController.java
@@ -1,4 +1,4 @@
- package com.nq.controller.protol;
+ package com.nq.controller.user;
 
  import com.nq.common.ServerResponse;
  import com.nq.service.IUserPositionService;
diff --git a/src/main/java/com/nq/controller/protol/UserRechargeController.java b/src/main/java/com/nq/controller/user/UserRechargeController.java
similarity index 97%
rename from src/main/java/com/nq/controller/protol/UserRechargeController.java
rename to src/main/java/com/nq/controller/user/UserRechargeController.java
index 4ab91c3..c12fd9d 100644
--- a/src/main/java/com/nq/controller/protol/UserRechargeController.java
+++ b/src/main/java/com/nq/controller/user/UserRechargeController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.protol;
+package com.nq.controller.user;
 
 
 import com.github.pagehelper.PageInfo;
diff --git a/src/main/java/com/nq/controller/protol/UserWithdrawController.java b/src/main/java/com/nq/controller/user/UserWithdrawController.java
similarity index 98%
rename from src/main/java/com/nq/controller/protol/UserWithdrawController.java
rename to src/main/java/com/nq/controller/user/UserWithdrawController.java
index 116d145..f0bbd75 100644
--- a/src/main/java/com/nq/controller/protol/UserWithdrawController.java
+++ b/src/main/java/com/nq/controller/user/UserWithdrawController.java
@@ -1,4 +1,4 @@
-package com.nq.controller.protol;
+package com.nq.controller.user;
 
 import com.nq.common.ServerResponse;
 import com.nq.pojo.User;
diff --git a/src/main/java/com/nq/dao/CurrencyBeanMapper.java b/src/main/java/com/nq/dao/CurrencyBeanMapper.java
new file mode 100644
index 0000000..7ba1500
--- /dev/null
+++ b/src/main/java/com/nq/dao/CurrencyBeanMapper.java
@@ -0,0 +1,15 @@
+package com.nq.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.nq.pojo.CurrencyBean;
+import org.apache.ibatis.annotations.Mapper;
+
+
+/**
+ * @program: dabaogp
+ * @description:
+ * @create: 2024-08-21 16:30
+ **/
+@Mapper
+public interface CurrencyBeanMapper extends BaseMapper<CurrencyBean> {
+}
diff --git a/src/main/java/com/nq/pojo/CurrencyBean.java b/src/main/java/com/nq/pojo/CurrencyBean.java
new file mode 100644
index 0000000..37e9e42
--- /dev/null
+++ b/src/main/java/com/nq/pojo/CurrencyBean.java
@@ -0,0 +1,26 @@
+package com.nq.pojo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+/**
+ * @program: dabaogp
+ * @description:币种
+ * @create: 2024-08-21 16:19
+ **/
+@Data
+public class CurrencyBean {
+    @TableId(value = "id",type = IdType.AUTO)
+    private Integer id;
+    //交易对  示范:btcusdt
+    private String sc;
+    //交易对显示名称  示范:BTC/USDT
+    private String dn;
+    //基础币种    示范:BTC
+    private String bcdn;
+    //计价币种   示范:USDT
+    private String qcdn;
+    //是否可交易(true.可交易 false.不可交易)
+    private Boolean te;
+}
diff --git a/src/main/java/com/nq/pojo/CurrencyBeanVo.java b/src/main/java/com/nq/pojo/CurrencyBeanVo.java
new file mode 100644
index 0000000..dcdcf18
--- /dev/null
+++ b/src/main/java/com/nq/pojo/CurrencyBeanVo.java
@@ -0,0 +1,25 @@
+package com.nq.pojo;
+
+import lombok.Data;
+
+/**
+ * @program: dabaogp
+ * @description:
+ * @create: 2024-08-21 16:56
+ **/
+@Data
+public class CurrencyBeanVo {
+
+    private Integer id;
+    //交易对
+    private String sc;
+    //交易对显示名称
+    private String dn;
+    //基础币种
+    private String bcdn;
+    //计价币种
+    private String qcdn;
+    //是否可交易
+    private Boolean te = true;
+
+}
diff --git a/src/main/java/com/nq/service/CurrencyBeanService.java b/src/main/java/com/nq/service/CurrencyBeanService.java
new file mode 100644
index 0000000..5e0848b
--- /dev/null
+++ b/src/main/java/com/nq/service/CurrencyBeanService.java
@@ -0,0 +1,12 @@
+package com.nq.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.nq.pojo.CurrencyBean;
+
+/**
+ * @program: dabaogp
+ * @description:
+ * @create: 2024-08-21 16:33
+ **/
+public interface CurrencyBeanService extends IService<CurrencyBean> {
+}
diff --git a/src/main/java/com/nq/service/impl/CurrencyBeanServiceImpl.java b/src/main/java/com/nq/service/impl/CurrencyBeanServiceImpl.java
new file mode 100644
index 0000000..a30d4d1
--- /dev/null
+++ b/src/main/java/com/nq/service/impl/CurrencyBeanServiceImpl.java
@@ -0,0 +1,16 @@
+package com.nq.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.nq.dao.CurrencyBeanMapper;
+import com.nq.pojo.CurrencyBean;
+import com.nq.service.CurrencyBeanService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @program: dabaogp
+ * @description:
+ * @create: 2024-08-21 16:33
+ **/
+@Service
+public class CurrencyBeanServiceImpl extends ServiceImpl<CurrencyBeanMapper, CurrencyBean> implements CurrencyBeanService {
+}
diff --git a/src/main/java/com/nq/utils/pay/CmcPayTool.java b/src/main/java/com/nq/utils/pay/CmcPayTool.java
index dd4b305..5326599 100644
--- a/src/main/java/com/nq/utils/pay/CmcPayTool.java
+++ b/src/main/java/com/nq/utils/pay/CmcPayTool.java
@@ -3,7 +3,7 @@
 
 import com.alibaba.fastjson.JSON;
 import com.nq.common.CmcPayConfig;
-import com.nq.controller.protol.UserPayController;
+import com.nq.controller.user.UserPayController;
 import org.apache.commons.collections.map.LinkedMap;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/com/nq/utils/task/digiccy/GetSymbolsTask.java b/src/main/java/com/nq/utils/task/digiccy/GetSymbolsTask.java
new file mode 100644
index 0000000..318aeba
--- /dev/null
+++ b/src/main/java/com/nq/utils/task/digiccy/GetSymbolsTask.java
@@ -0,0 +1,135 @@
+package com.nq.utils.task.digiccy;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.google.common.reflect.TypeToken;
+import com.google.gson.Gson;
+import com.nq.dao.CurrencyBeanMapper;
+import com.nq.enums.EStockType;
+import com.nq.pojo.CurrencyBean;
+import com.nq.service.CurrencyBeanService;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.io.IOException;
+import java.util.Currency;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.concurrent.locks.Lock;
+import java.util.concurrent.locks.ReentrantLock;
+import java.util.stream.Collectors;
+
+
+/**
+ * @program: dabaogp
+ * @description: 获取所有交易对     暂时不放开,采用手动添加
+ * @create: 2024-08-21 11:33
+ **/
+@Slf4j
+@Component
+public class GetSymbolsTask {
+
+    @Autowired
+    private CurrencyBeanService currencyBeanService;
+
+    private final AtomicBoolean symbolsData = new AtomicBoolean(false);
+
+    private final Lock symbolsLock = new ReentrantLock();
+    
+    /**
+     * 同步系统所需要的股票
+     */
+//    @Scheduled(cron = "0/10 * * * * ?")
+    public void symbolsTask() {
+        if (symbolsData.get()) { // 判断任务是否在处理中
+            return;
+        }
+        if (symbolsLock.tryLock()) {
+            try {
+                symbolsData.set(true); // 设置处理中标识为true
+                getSymbols();
+            } catch (IOException e) {
+                log.error("火币获取交易对报错:"+e.getMessage());
+            } finally {
+                symbolsLock.unlock();
+                symbolsData.set(false); // 设置处理中标识为false
+            }
+        }
+    }
+
+    private void getSymbols() throws IOException {
+        String json = doGet();
+        if (json != null && !json.isEmpty()) {
+            ObjectMapper objectMapper = new ObjectMapper();
+            Map<String, Object> map = objectMapper.readValue(json, new TypeReference<Map<String, Object>>() {
+            });
+            String symbolsJson = objectMapper.writeValueAsString(map.get("data"));
+            Gson gson = new Gson();
+            List<CurrencyBean> currencyBeans= gson.fromJson(symbolsJson, new TypeToken<List<CurrencyBean>>() {}.getType());
+
+            List<CurrencyBean> dbList = currencyBeanService.list(new LambdaQueryWrapper<CurrencyBean>());
+
+            //  删除已经下架的币种
+//            Set<String> symbolSet = currencyBeans.stream().map(CurrencyBean::getSc).collect(Collectors.toSet());
+//            List<CurrencyBean> removeList = dbList.stream()
+//                    .filter(currency -> !symbolSet.contains(currency.getSc()))
+//                    .collect(Collectors.toList());
+//
+//            if(CollectionUtils.isNotEmpty(removeList)){
+//                removeList.forEach(f->{
+//                    currencyBeanService.remove(new LambdaQueryWrapper<CurrencyBean>().eq(CurrencyBean::getSc,f.getSc()));
+//                });
+//            }
+
+            //  比对接口返回的数据和数据库中已有的数据,找出新增的数据
+            Set<String> loclSymbolSet = dbList.stream().map(CurrencyBean::getSc).collect(Collectors.toSet());
+            List<CurrencyBean> saveList = currencyBeans.stream()
+                    .filter(currency -> !loclSymbolSet.contains(currency.getSc()))
+                    .map(currency -> {
+                        CurrencyBean newCurrency = new CurrencyBean();
+                        newCurrency.setSc(currency.getSc());
+                        newCurrency.setDn(currency.getDn());
+                        newCurrency.setBcdn(currency.getBcdn());
+                        newCurrency.setQcdn(currency.getQcdn());
+                        newCurrency.setTe(currency.getTe());
+                        return newCurrency;
+                    })
+                    .collect(Collectors.toList());
+
+            //  批量保存新增数据到数据库
+            if (CollectionUtils.isNotEmpty(saveList)) {
+                currencyBeanService.saveBatch(saveList);
+            }
+        } else {
+            log.info("同步bitget交易所交易对,外部接口返回数据为空");
+        }
+    }
+
+    private String doGet() throws IOException {
+        HttpClient httpClient = HttpClients.createDefault();
+        HttpGet request = new HttpGet("https://api-aws.huobi.pro/v2/settings/common/symbols");
+        HttpResponse response = httpClient.execute(request);
+        try {
+            // 处理响应内容
+            HttpEntity entity = response.getEntity();
+            String responseBody = EntityUtils.toString(entity);
+            return responseBody;
+        } finally {
+            // 确保释放资源
+            EntityUtils.consume(response.getEntity());
+        }
+    }
+}
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..9919de7 100644
--- a/src/main/java/com/nq/utils/task/stock/StockTask.java
+++ b/src/main/java/com/nq/utils/task/stock/StockTask.java
@@ -61,7 +61,7 @@
     /**
      * 同步系统所需要的股票
      */
-    @Scheduled(cron = "0/5 * * * * ?")
+    @Scheduled(cron = "0 0/30 * * * ?")
     public void syncINStockData() {
         if (syncINStockData.get()) { // 判断任务是否在处理中
             return;
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 18d5047..ee589d9 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -122,7 +122,7 @@
   datasource:
     type: com.alibaba.druid.pool.DruidDataSource
     driverClassName: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://127.0.0.1:3306/stock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+    url: jdbc:mysql://127.0.0.1:3306/6-29?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
 #    url: jdbc:mysql://127.0.0.1:3306/cgstock?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
     username: root
     password: 123456

--
Gitblit v1.9.3