From 3417cf014a65765e02696c1d121ce58b2b4a8aed Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期二, 08 四月 2025 15:55:36 +0800 Subject: [PATCH] 修改pom.xml --- src/main/java/com/se/simu/utils/EntityLibraryUtils.java | 180 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 167 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/se/simu/utils/EntityLibraryUtils.java b/src/main/java/com/se/simu/utils/EntityLibraryUtils.java index 2b73b52..f5d4b09 100644 --- a/src/main/java/com/se/simu/utils/EntityLibraryUtils.java +++ b/src/main/java/com/se/simu/utils/EntityLibraryUtils.java @@ -8,7 +8,6 @@ import org.springframework.http.*; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.web.client.RestTemplate; -import org.springframework.web.util.UriUtils; import javax.crypto.Cipher; import java.net.URL; @@ -18,6 +17,7 @@ import java.security.interfaces.RSAPublicKey; import java.security.spec.PKCS8EncodedKeySpec; import java.security.spec.X509EncodedKeySpec; +import java.time.LocalDateTime; import java.util.List; /** @@ -41,6 +41,50 @@ if (responseEntity.getStatusCode().is2xxSuccessful()) { String body = responseEntity.getBody(); return JSONObject.parseObject(body).getString("data"); + } + return null; + } + + public static String getLoginPublicKey() { + JSONObject jsonObject = new JSONObject(); + String json = jsonObject.toJSONString(); + // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + HttpEntity<String> request = new HttpEntity<>(json, headers); + RestTemplate restTemplate = new RestTemplate(); + ResponseEntity<String> responseEntity = restTemplate.postForEntity("http://106.120.22.26:8024/account-service/security/publickey", request, String.class); + if (responseEntity.getStatusCode().is2xxSuccessful()) { + String body = responseEntity.getBody(); + return JSONObject.parseObject(body).getString("data"); + } + return null; + } + + /** + * 鐧诲綍瀹炰綋搴� + * + * @return 鍙傛暟鍐呰鎯� + */ + public static String login() throws Exception { + String publicKey = getLoginPublicKey(); + JSONObject jsonObject = new JSONObject(); + jsonObject.put("userid", "admin"); + jsonObject.put("password", encrypt("admin", publicKey)); + RestTemplate restTemplate = new RestTemplate(); + // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 + StringHttpMessageConverter converter = new StringHttpMessageConverter(StandardCharsets.UTF_8); + converter.setSupportedMediaTypes(MediaType.parseMediaTypes("text/plain;charset=UTF-8")); + restTemplate.getMessageConverters().add(0, converter); + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + headers.add("Access-Control-Allow-Origin", "*"); + String json = jsonObject.toJSONString(); + HttpEntity<String> request = new HttpEntity<>(json, headers); + ResponseEntity<String> responseEntity = restTemplate.exchange("http://106.120.22.26:8024/account-service/security/login", HttpMethod.POST, request, String.class); + if (responseEntity.getStatusCode().is2xxSuccessful()) { + String body = responseEntity.getBody(); + return JSONObject.parseObject(body).getJSONObject("data").getString("token"); } return null; } @@ -72,16 +116,94 @@ return outstn; } - public static void main(String[] args) throws Exception { - String publickey = getPublicKey(); - System.out.println("鍏挜=" + publickey); - String en = encrypt("id in ('46235','49876')", publickey); - System.out.println("鍔犲瘑瀛楃涓�=" + en); - String encode = UriUtils.encode(en, StandardCharsets.UTF_8); - System.out.println("encode瀛楃涓�=" + encode); - String decode = UriUtils.decode(encode, StandardCharsets.UTF_8); - System.out.println("decode瀛楃涓�=" + decode); - System.out.println("瑙e瘑瀛楃涓�=" + decrypt(decode, "MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAJiF6WkdgHlimpakWJMvH3Xnjwws7qqoo1rhbg/iLzLGly/EKLvUzD6D7FUFk+GAP/sOKh1cZZEvi1KkGd6OufqMKdDvRvVtGjXExI5MLJDVDaYTsqhzNF8maB2H7dwR+iiDGph2DMPQtuV/k/dalXMxR6O8Q2MPQfaUiOVebKBbAgMBAAECgYARrPs21ldsOdQmfxdQv1ZLCLHYPGDQYEjGIHfr2U+U99TPkVETK38cA5fg5ouTx5QimSqiSnHu2G6x/hiNZUcCJp/1agvsFEI2FLokShYbitOYa07Da1eIKpZA5F+P5j5/QOVpVsWOxvEDA/dkF+vrV4vU/iV7H3QJqBfsLSxEeQJBAO43SVkzJM6dqnRw7sib7SOvguicnr7UKt0Tadc1PwLMWCCFu+4p3iN9Zj/7K5VHjomW+NIv7UAGynDfHBpv1x0CQQCj6ONm+m4FlaTdg+Pc36BBy4Gd6ucm6WfjDTHMaZi3uzINjTPBut6DmrUt68dyHdGpo6OIjCdX3xU27HtmjiPXAkEAwjdhHdCM2cfCCV1p0TUPimC2ImBPLNZefBAv4r4OuYFQ+HMQXYTVD6pViySEzBijJZppEzTwAZuHwa6lgwhcIQJBAI8PBOssSDq3kV2Fb6unwseqR0b9byKXNQUGzyAKSjCSQe1yAGpmHy/eJ6Qc1cbUH9pf6KuVKAGZw3pcjJfGF6ECQQCx9dJ2qJjm2R78/HH0SkOATpMATgewtHH5tRJfCJv7NLveuYNRFH1An4APWYq9IdVfyn+4gyXz3OClteE7jAkt")); + /** + * 鍒涘缓缁勮 + * + * @param name 缁勮鍚嶇О + * @return 鍒涘缓缁撴灉 + */ + public static JSONObject createAssemble(String name, String token) { + JSONObject jsonObject = new JSONObject(); + jsonObject.put("token", token); + jsonObject.put("description", null); + jsonObject.put("name", name); + jsonObject.put("dbid", "85257774fdb64e5f99f6778696cad02a"); + RestTemplate restTemplate = new RestTemplate(); + // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + String json = jsonObject.toJSONString(); + HttpEntity<String> request = new HttpEntity<>(json, headers); + ResponseEntity<String> responseEntity = restTemplate.postForEntity("http://106.120.22.26:8024/geo-service/package/self/add", request, String.class); + if (responseEntity.getStatusCode().is2xxSuccessful()) { + String body = responseEntity.getBody(); + JSONObject result = JSONObject.parseObject(body); + if (result.getInteger("code") == 200) { + return result.getJSONObject("data"); + } + } + return null; + } + + /** + * 鎻愪氦缁勮 + * @param token token + * @param packageid 缁勮id + * @return 鎻愪氦缁撴灉 + */ + public static JSONObject submitAssemble(String token, String packageid) { + JSONObject jsonObject = new JSONObject(); + jsonObject.put("dbid", "85257774fdb64e5f99f6778696cad02a"); + jsonObject.put("packageid", packageid); + jsonObject.put("token", token); + RestTemplate restTemplate = new RestTemplate(); + // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + String json = jsonObject.toJSONString(); + HttpEntity<String> request = new HttpEntity<>(json, headers); + ResponseEntity<String> responseEntity = restTemplate.postForEntity("http://106.120.22.26:8024/geo-service/package/status/complete", request, String.class); + if (responseEntity.getStatusCode().is2xxSuccessful()) { + String body = responseEntity.getBody(); + JSONObject result = JSONObject.parseObject(body); + if (result.getInteger("code") == 200) { + return result.getJSONObject("data"); + } + } + return null; + } + + /** + * 鍔犲叆缁勮 + * + * @param layerid 鍥惧眰id + * @param token token + * @param packageid 缁勮id + * @param bbox 鑼冨洿 + * @return 鏄惁鍔犲叆鎴愬姛 + */ + public static Boolean addAssemble(String layerid, String token, String packageid, String bbox) { + JSONObject jsonObject = new JSONObject(); + jsonObject.put("dbid", "85257774fdb64e5f99f6778696cad02a"); + jsonObject.put("layerid", layerid); + jsonObject.put("packageid", packageid); + jsonObject.put("token", token); + jsonObject.put("bbox", bbox); + RestTemplate restTemplate = new RestTemplate(); + // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + String json = jsonObject.toJSONString(); + HttpEntity<String> request = new HttpEntity<>(json, headers); + ResponseEntity<String> responseEntity = restTemplate.postForEntity("http://106.120.22.26:8024/geo-service/package/data/add", request, String.class); + if (responseEntity.getStatusCode().is2xxSuccessful()) { + String body = responseEntity.getBody(); + JSONObject result = JSONObject.parseObject(body); + if (result.getInteger("code") == 200) { + return result.getBoolean("data"); + } + } + return null; } /** @@ -90,7 +212,37 @@ * @param dtos 鍥涗釜鍧愭爣鐐� * @return 妗嗛�夊唴閮ㄧ绾� */ - public static JSONArray getPointInfo(List<GridDto> dtos) { + public static JSONArray getPointInfo(List<GridDto> dtos, String token) { + JSONArray paramArray = new JSONArray(); + for (GridDto dto : dtos + ) { + paramArray.add(ProjectionToGeographicUtil.get4548Point(dto.getLon(), dto.getLat())); + } + paramArray.add(ProjectionToGeographicUtil.get4548Point(dtos.get(0).getLon(), dtos.get(0).getLat())); + JSONObject jsonObject = getModule("layerQueryPointParams.json"); + jsonObject.getJSONObject("geometry").getJSONArray("coordinates").add(paramArray); + jsonObject.put("token", token); + RestTemplate restTemplate = new RestTemplate(); + // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + String json = jsonObject.toJSONString(); + HttpEntity<String> request = new HttpEntity<>(json, headers); + ResponseEntity<String> responseEntity = restTemplate.postForEntity("http://106.120.22.26:8024/geo-service/entitydbdata/layer/query", request, String.class); + if (responseEntity.getStatusCode().is2xxSuccessful()) { + String body = responseEntity.getBody(); + return JSONObject.parseObject(body).getJSONObject("data").getJSONArray("items"); + } + return null; + } + + /** + * 绠$嚎鍒楄〃 + * + * @param dtos 鍥涗釜鍧愭爣鐐� + * @return 妗嗛�夊唴閮ㄧ绾� + */ + public static JSONArray getLineInfo(List<GridDto> dtos, String token) { JSONArray paramArray = new JSONArray(); for (GridDto dto : dtos ) { @@ -99,6 +251,7 @@ paramArray.add(ProjectionToGeographicUtil.get4548Point(dtos.get(0).getLon(), dtos.get(0).getLat())); JSONObject jsonObject = getModule("layerQueryParams.json"); jsonObject.getJSONObject("geometry").getJSONArray("coordinates").add(paramArray); + jsonObject.put("token", token); RestTemplate restTemplate = new RestTemplate(); // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 HttpHeaders headers = new HttpHeaders(); @@ -119,9 +272,10 @@ * @param param 鏌ヨ鍙傛暟 * @return 鍙傛暟鍐呰鎯� */ - public static JSONArray getPointDetail(String param) { + public static JSONArray getLineDetail(String param, String token) { JSONObject jsonObject = getModule("layerQueryDetailParams.json"); jsonObject.put("where", param); + jsonObject.put("token", token); RestTemplate restTemplate = new RestTemplate(); // 鍙戦�丣SON鏍煎紡鐨凱OST璇锋眰 StringHttpMessageConverter converter = new StringHttpMessageConverter(StandardCharsets.UTF_8); -- Gitblit v1.9.3