From 41a12f703f20dcd1eb88602cd0f49837968051b6 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期四, 12 九月 2024 18:06:37 +0800
Subject: [PATCH] 获取dbid

---
 src/main/java/com/se/simu/service/SedbService.java |   50 +++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/se/simu/service/SedbService.java b/src/main/java/com/se/simu/service/SedbService.java
index 1a6a556..9ab320f 100644
--- a/src/main/java/com/se/simu/service/SedbService.java
+++ b/src/main/java/com/se/simu/service/SedbService.java
@@ -1,5 +1,6 @@
 package com.se.simu.service;
 
+import cn.hutool.json.JSONArray;
 import cn.hutool.json.JSONObject;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Value;
@@ -7,6 +8,8 @@
 import org.springframework.web.client.RestTemplate;
 
 import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * SDDB鏈嶅姟绫�
@@ -17,8 +20,8 @@
 @Slf4j
 @Service
 public class SedbService {
-    @Value("${sedb.url}")
-    String url;
+    @Value("${sedb.host}")
+    String host;
 
     @Value("${sedb.user}")
     String user;
@@ -29,20 +32,49 @@
     @Resource
     RestTemplate restTemplate;
 
-    public String getToken() {
-        //http://106.120.22.26:8013/account-service/security/publickey
-        String key = getPublicKey();
+    public String test() {
+        String token = getToken();
+        String dbid = getDbId(token);
 
+        System.out.println(dbid);
 
-        return key;
+        return dbid;
     }
 
     public String getPublicKey() {
-        String uri = url + "account-service/security/publickey";
-
         //{"datetime":"2024-09-12 17:24:38","code":200,"data":"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtFwJCh2taVTEi05C8qT2oG7Y+rDmJhlO4zicpSeRtiro9LsytePeWI7BXM6sfDU0WeKun1izawcfgGkZgnoJuMBluAOKI1tL0uCrR+DreNLqMVtnXHwoWEIk/hGJedDWaf3q22aGDyEB5h9qCq0JklSShP1Ih4ppap4LmgxdTPQIDAQAB"}
-        JSONObject obj = restTemplate.getForObject(uri, JSONObject.class);
+        JSONObject obj = restTemplate.getForObject(host + "account-service/security/publickey", JSONObject.class);
 
         return obj.getStr("data");
     }
+
+    public String getToken() {
+        String key = getPublicKey();
+
+        Map<String, Object> map = new HashMap<>(2);
+        map.put("userid", user);
+        map.put("password", pwd);
+
+        JSONObject obj = restTemplate.postForObject(host + "account-service/security/login", map, JSONObject.class);
+
+        JSONObject data = obj.getJSONObject("data");
+
+        return data.getStr("token");
+    }
+
+    public String getDbId(String token) {
+        Map<String, Object> map = new HashMap<>(1);
+        map.put("token", token);
+
+        JSONObject obj = restTemplate.postForObject(host + "geo-service/entitydb/list/canview", map, JSONObject.class);
+
+        JSONArray arr = obj.getJSONArray("data");
+        if (null == arr || arr.size() == 0) {
+            return null;
+        }
+
+        JSONObject dbObj = arr.getJSONObject(0);
+
+        return dbObj.getStr("dbid");
+    }
 }

--
Gitblit v1.9.3