From 02f90534bff9168fea49e60744c66a7bd8d7e10c Mon Sep 17 00:00:00 2001
From: ydj <yangsink@163.com>
Date: Tue, 11 Jun 2024 16:09:59 +0800
Subject: [PATCH] 1

---
 websocketSerivce/src/main/java/org/example/controller/ApiController.java |   46 +++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 41 insertions(+), 5 deletions(-)

diff --git a/websocketSerivce/src/main/java/org/example/controller/ApiController.java b/websocketSerivce/src/main/java/org/example/controller/ApiController.java
index 5738f0c..4977157 100644
--- a/websocketSerivce/src/main/java/org/example/controller/ApiController.java
+++ b/websocketSerivce/src/main/java/org/example/controller/ApiController.java
@@ -1,19 +1,24 @@
 package org.example.controller;
 
+import cn.hutool.core.date.DateUtil;
 import cn.hutool.http.HttpUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.example.common.ServerResponse;
+import org.example.dao.DataServiceKeyMapper;
 import org.example.dao.JournalismMapper;
 import org.example.dao.StockMarketNewMapper;
 import org.example.enums.EStockType;
+import org.example.pojo.DataServiceKey;
 import org.example.pojo.Journalism;
 import org.example.pojo.StockMarketNew;
 import org.example.util.HttpClientRequest;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 /**
@@ -31,9 +36,19 @@
     @Autowired
     StockMarketNewMapper stockMarketNewMapper;
 
+    @Autowired
+    DataServiceKeyMapper dataServiceKeyMapper;
+
 
     @GetMapping("/stock-markets")
-    public List JournalismAll(){
+    public List JournalismAll(@RequestParam(value="key",required = true)String key){
+        DataServiceKey data = dataServiceKeyMapper.selectOne(new LambdaQueryWrapper<DataServiceKey>()
+                .eq(DataServiceKey::getTokenKey, key)
+                .gt(DataServiceKey::getExpirationTime, DateUtil.date())
+                .eq(DataServiceKey::getIsAvailable, 1));
+        if(data == null){
+            return Collections.singletonList(new ArrayList().add("key invalid"));
+        }
         QueryWrapper<Journalism> queryWrapper = new QueryWrapper<>();
         queryWrapper.orderByDesc("time");
         Page<Journalism> page = new Page<>(1,15);
@@ -41,7 +56,14 @@
     }
 
     @GetMapping("/list")
-    public ServerResponse StockMarketNew(){
+    public ServerResponse StockMarketNew(@RequestParam(value="key",required = true)String key){
+        DataServiceKey data = dataServiceKeyMapper.selectOne(new LambdaQueryWrapper<DataServiceKey>()
+                .eq(DataServiceKey::getTokenKey, key)
+                .gt(DataServiceKey::getExpirationTime, DateUtil.date())
+                .eq(DataServiceKey::getIsAvailable, 1));
+        if(data == null){
+            return ServerResponse.createByErrorMsg("key invalid");
+        }
         LambdaQueryWrapper<StockMarketNew> queryWrapper = new LambdaQueryWrapper<>();
         return ServerResponse.createBySuccess(stockMarketNewMapper.selectList(queryWrapper));
     }
@@ -52,9 +74,17 @@
     public String getKData(
             @RequestParam("pid") String pid,
             @RequestParam("interval") String interval,
-            @RequestParam("stockType") String stockType
+            @RequestParam("stockType") String stockType,
+            @RequestParam(value="key",required = true)String key
     ) {
         EStockType eStockType = null;
+        DataServiceKey data = dataServiceKeyMapper.selectOne(new LambdaQueryWrapper<DataServiceKey>()
+                .eq(DataServiceKey::getTokenKey, key)
+                .gt(DataServiceKey::getExpirationTime, DateUtil.date())
+                .eq(DataServiceKey::getIsAvailable, 1));
+        if(data == null){
+            return "key invalid";
+        }
         if(stockType.equals("US")){
             eStockType = EStockType.US;
         }else{
@@ -67,8 +97,14 @@
 
     @RequestMapping("/new-stock")
     @ResponseBody
-    public String newStock() {
-
+    public String newStock(@RequestParam(value="key",required = true)String key) {
+        DataServiceKey data = dataServiceKeyMapper.selectOne(new LambdaQueryWrapper<DataServiceKey>()
+                .eq(DataServiceKey::getTokenKey, key)
+                .gt(DataServiceKey::getExpirationTime, DateUtil.date())
+                .eq(DataServiceKey::getIsAvailable, 1));
+        if(data == null){
+            return "key invalid";
+        }
        return HttpClientRequest.doGet(EStockType.IN.getStockUrl()) + "/new-stock?key=" + (EStockType.IN.getStockKey() + "&country_id=14");
     }
 }

--
Gitblit v1.9.3