ソースを参照

汇率获取定时任务

zhangle 5 ヶ月 前
コミット
31e957da22

+ 51 - 0
crmeb_src/mer_java/crmeb-admin/src/main/java/com/zbkj/admin/task/daibi/DaibiRateTask.java

@@ -0,0 +1,51 @@
+package com.zbkj.admin.task.daibi;
+
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.http.HttpUtil;
+import cn.hutool.json.JSONObject;
+import cn.hutool.json.JSONUtil;
+import com.zbkj.common.utils.RedisUtil;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.math.BigDecimal;
+
+@Component("DaibiRateTask")
+public class DaibiRateTask {
+
+    private static final Logger logger = LoggerFactory.getLogger(DaibiRateTask.class);
+
+    @Autowired
+    private RedisUtil redisUtil;
+
+    /**
+     * 获取当前代币汇率
+     */
+    public void getDaibiRate() {
+        // cron : 0 0 1 * * ?
+        logger.info("---DaibiRateTask getDaibiRate------produce Data with fixed rate task: Execution Time - {}", DateUtil.date());
+        String url = "https://api.coingecko.com/api/v3/simple/price?ids=origin-lgns&vs_currencies=usd";
+        String res = HttpUtil.get(url);
+        JSONObject obj = JSONUtil.parseObj(res);
+        BigDecimal rate = obj.getJSONObject("origin-lgns").getBigDecimal("usd");
+        redisUtil.set("daibi_rate_lgns_usd", rate);
+        logger.info("daibi_rate_lgns_usd代币汇率: {}", rate);
+
+        url = "https://api.coingecko.com/api/v3/simple/price?ids=origin-lgns&vs_currencies=cny";
+        res = HttpUtil.get(url);
+        obj = JSONUtil.parseObj(res);
+        rate = obj.getJSONObject("origin-lgns").getBigDecimal("cny");
+        redisUtil.set("daibi_rate_lgns_cny", rate);
+        logger.info("daibi_rate_lgns_cny代币汇率: {}", rate);
+
+        url = "https://api.coingecko.com/api/v3/simple/price?ids=usd&vs_currencies=cny";
+        res = HttpUtil.get(url);
+        obj = JSONUtil.parseObj(res);
+        rate = obj.getJSONObject("usd").getBigDecimal("cny");
+        redisUtil.set("daibi_rate_usd_cny", rate);
+        logger.info("daibi_rate_usd_cny代币汇率: {}", rate);
+    }
+
+}