From d2a9c47a32695f8cab1384679fb64e8b440ca9e1 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期一, 05 八月 2024 14:19:47 +0800 Subject: [PATCH] 优云token接口 --- ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/UYTokenParam.java | 18 +++++++++ ycl-server/src/main/resources/application-prod.yml | 15 +++++++ ycl-server/src/main/resources/application-dev.yml | 2 + ycl-server/src/main/java/com/ycl/task/UYTask.java | 4 +- ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java | 12 ++---- ycl-server/src/main/java/com/ycl/feign/UYClient.java | 13 ++++++ ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java | 39 +++++++++++++++++++ 7 files changed, 91 insertions(+), 12 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/UYTokenParam.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/UYTokenParam.java new file mode 100644 index 0000000..447bce6 --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/param/UY/UYTokenParam.java @@ -0,0 +1,18 @@ +package com.ycl.platform.domain.param.UY; + +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +public class UYTokenParam { + /** + * 璐﹀彿 + */ + private String email; + + /** + * 瀵嗙爜 + */ + private String passwd; +} diff --git a/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java b/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java index 6bdf620..f372bb3 100644 --- a/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java +++ b/ycl-server/src/main/java/com/ycl/calculate/IndexCalculationServe.java @@ -1,24 +1,20 @@ package com.ycl.calculate; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ycl.platform.base.CheckIndex; -import com.ycl.platform.domain.entity.CheckIndexCar; -import com.ycl.platform.domain.entity.TMonitor; import com.ycl.platform.domain.entity.YwPoint; -import com.ycl.platform.domain.result.HK.SnapshotDataMonitorResult; import com.ycl.platform.mapper.YwPointMapper; -import com.ycl.platform.service.ITMonitorService; import constant.CheckConstants; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.math.RoundingMode; -import java.util.*; -import java.util.function.Function; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Optional; import java.util.stream.Collectors; /** diff --git a/ycl-server/src/main/java/com/ycl/feign/UYClient.java b/ycl-server/src/main/java/com/ycl/feign/UYClient.java index e350dcc..ce48a8f 100644 --- a/ycl-server/src/main/java/com/ycl/feign/UYClient.java +++ b/ycl-server/src/main/java/com/ycl/feign/UYClient.java @@ -2,12 +2,14 @@ import com.alibaba.fastjson2.JSONObject; import com.ycl.platform.domain.param.UY.*; +import org.springframework.beans.factory.annotation.Value; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestHeader; /** * @author gonghl @@ -50,7 +52,7 @@ * @return */ @GetMapping("/api/v1/app/osdMonitor/list") - JSONObject osdMonitorList(@SpringQueryMap OsdMonitorParam param); + JSONObject osdMonitorList(@SpringQueryMap OsdMonitorParam param, @RequestHeader("tenantId") String tenantId); /** * 鍥惧儚妫�娴嬭瘖鏂粨鏋� @@ -69,4 +71,13 @@ */ @GetMapping("/api/v1/app/report/vqd/detail/list") JSONObject videoQuality(@SpringQueryMap VideoQualityParam param); + + /** + * 浼樹簯鑾峰彇token鎺ュ彛 + * + * @param param + * @return + */ + @PostMapping("/tenant/api/vi/user/login") + JSONObject getToken(@RequestBody UYTokenParam param); } diff --git a/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java b/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java index 53dcb3a..52ec880 100644 --- a/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java +++ b/ycl-server/src/main/java/com/ycl/interceptor/YYFeignInterceptor.java @@ -1,15 +1,52 @@ package com.ycl.interceptor; +import com.alibaba.fastjson2.JSONObject; +import com.ycl.feign.UYClient; +import com.ycl.platform.domain.param.UY.UYTokenParam; +import com.ycl.utils.redis.RedisCache; import feign.RequestInterceptor; import feign.RequestTemplate; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.redis.core.RedisTemplate; + +import java.util.concurrent.TimeUnit; + /** * 浼樹簯璇锋眰鎷︽埅鍣� */ +@Slf4j public class YYFeignInterceptor implements RequestInterceptor { + @Autowired + @Lazy + private UYClient uyClient; + @Autowired + private RedisCache redisCache; + @Value("${youYun.email}") + private String email; + @Value("${youYun.passwd}") + private String passwd; + @Override public void apply(RequestTemplate requestTemplate) { System.out.println("wodefa"); - requestTemplate.header("token", "auth"); + String uyToken = redisCache.getCacheObject("UY_Token"); + if (uyToken == null) { + uyToken = getToken(); + } + requestTemplate.header("Cookie", "token"+uyToken); + } + + private String getToken() { + UYTokenParam param = new UYTokenParam(); + param.setPasswd(passwd); + param.setEmail(email); + JSONObject jsonObject = uyClient.getToken(param); + log.info("璇锋眰token鏁版嵁鏍煎紡" + jsonObject); + redisCache.setCacheObject("Uy_Token",jsonObject.toJSONString(),3600, TimeUnit.SECONDS); + return "1"; } } diff --git a/ycl-server/src/main/java/com/ycl/task/UYTask.java b/ycl-server/src/main/java/com/ycl/task/UYTask.java index 7fa70ba..1e2558e 100644 --- a/ycl-server/src/main/java/com/ycl/task/UYTask.java +++ b/ycl-server/src/main/java/com/ycl/task/UYTask.java @@ -26,7 +26,6 @@ import java.util.Date; import java.util.List; -import java.util.stream.Collectors; //浼樹簯瀵规帴鏁版嵁浠诲姟 @Slf4j @@ -116,6 +115,7 @@ //褰曞儚鍙敤鐜� log.info("寮�濮嬫墽琛屽綍鍍忓彲鐢ㄦ暟鎹悓姝�"); RecordMetaDSumParam param = new RecordMetaDSumParam(); + param.setTenantId(tenantId); JSONObject jsonObject = uyClient.recordMetaDSumList(param); if (jsonObject != null) { if (jsonObject.getBoolean("success")) { @@ -149,7 +149,7 @@ //瑙嗛鏍囨敞 log.info("寮�濮嬫墽琛岃棰戞爣娉ㄦ暟鎹悓姝�"); OsdMonitorParam param = new OsdMonitorParam(); - JSONObject jsonObject = uyClient.osdMonitorList(param); + JSONObject jsonObject = uyClient.osdMonitorList(param,tenantId); if (jsonObject != null) { if (jsonObject.getBoolean("success")) { JSONObject data = jsonObject.getJSONObject("data"); diff --git a/ycl-server/src/main/resources/application-dev.yml b/ycl-server/src/main/resources/application-dev.yml index d457d71..a84f9d2 100644 --- a/ycl-server/src/main/resources/application-dev.yml +++ b/ycl-server/src/main/resources/application-dev.yml @@ -135,3 +135,5 @@ youYun: tenantId: 11 + email: 11 + passwd: 11 diff --git a/ycl-server/src/main/resources/application-prod.yml b/ycl-server/src/main/resources/application-prod.yml index d1c5a60..2eb8adf 100644 --- a/ycl-server/src/main/resources/application-prod.yml +++ b/ycl-server/src/main/resources/application-prod.yml @@ -119,9 +119,24 @@ # 璇锋眰鍓嶇紑 pathMapping: /prod-api +# MongoDB閰嶇疆 +spring: + data: + mongodb: + host: 42.193.1.25 + database: zgyw + port: 27017 + username: admin + password: ycl@202466 # 鎷夊彇鏁版嵁璇锋眰閰嶇疆 request: retry: 4 # 鏈�澶ч噸璇曟鏁� youYunDomain: 123.123.123.5 # 浼樹簯鍦板潃 haiKangDomain: 123.123.123.1 # 娴峰悍鍦板潃 + +youYun: + tenantId: e10adc3949ba59abbe56e057f2gg88dd + email: 11 + passwd: 11 + -- Gitblit v1.8.0