From e9b4cda4c70a3e0185767dee8ac2e4e6f5049ac7 Mon Sep 17 00:00:00 2001 From: suerprisePlus <15810472099@163.com> Date: 星期二, 27 八月 2024 18:32:12 +0800 Subject: [PATCH] 1.API名称:[显示地点] 接口添加 --- .idea/ollama_ai.iml | 2 target/classes/com/yb/helper/RsaHelper.class | 0 target/classes/com/yb/controller/XzController.class | 0 pom.xml | 5 .idea/misc.xml | 5 src/main/java/com/yb/controller/XzController.java | 105 +++++++-- target/classes/com/yb/entity/ReqEntity.class | 0 target/classes/com/yb/controller/WebSocketController.class | 0 target/classes/com/yb/message/WebSocketServer.class | 0 target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst | 1 src/main/java/com/yb/message/WebSocketServer.java | 8 target/classes/com/yb/util/EntityHttpUtil.class | 0 target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst | 12 + target/classes/com/yb/message/WebsocketConfiguration.class | 0 src/main/java/com/yb/util/EntityHttpUtil.java | 69 ++++++ target/maven-archiver/pom.properties | 3 target/ollama-ai-0.0.1-SNAPSHOT.jar.original | 0 target/classes/com/yb/config/R.class | 0 target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst | 12 + src/main/java/com/yb/helper/RsaHelper.java | 27 ++ target/classes/com/yb/entity/ResponseEntity.class | 0 .idea/jarRepositories.xml | 17 + target/ollama-ai-0.0.1-SNAPSHOT.jar | 0 target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst | 1 target/classes/com/yb/util/OkHttpUtil.class | 0 /dev/null | 252 ------------------------- target/classes/application.yml | 53 +++++ .idea/compiler.xml | 3 target/classes/com/yb/message/WebSocketStompConfig.class | 0 target/classes/com/yb/OllamaAiApplication.class | 0 src/main/resources/application.yml | 24 ++ target/test-classes/com/yb/OllamaApiTest.class | 0 32 files changed, 312 insertions(+), 287 deletions(-) diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 147a437..15114c9 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -7,12 +7,13 @@ <sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> <outputRelativeToContentRoot value="true" /> <module name="ollama-ai" /> + <module name="ollama_ai" /> </profile> </annotationProcessing> </component> <component name="JavacSettings"> <option name="ADDITIONAL_OPTIONS_OVERRIDE"> - <module name="ollama-ai" options="-parameters" /> + <module name="ollama_ai" options="-parameters" /> </option> </component> </project> \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml index cb286e6..12eac5a 100644 --- a/.idea/jarRepositories.xml +++ b/.idea/jarRepositories.xml @@ -4,7 +4,12 @@ <remote-repository> <option name="id" value="central" /> <option name="name" value="Central Repository" /> - <option name="url" value="http://maven.aliyun.com/nexus/content/groups/public/" /> + <option name="url" value="https://maven.aliyun.com/repository/public" /> + </remote-repository> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Central Repository" /> + <option name="url" value="https://repo.maven.apache.org/maven2" /> </remote-repository> <remote-repository> <option name="id" value="central" /> @@ -17,6 +22,16 @@ <option name="url" value="https://repo.spring.io/snapshot" /> </remote-repository> <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Central Repository" /> + <option name="url" value="http://maven.aliyun.com/nexus/content/groups/public/" /> + </remote-repository> + <remote-repository> + <option name="id" value="spring-snapshots" /> + <option name="name" value="Spring Snapshots" /> + <option name="url" value="https://maven.aliyun.com/repository/public" /> + </remote-repository> + <remote-repository> <option name="id" value="jboss.community" /> <option name="name" value="JBoss Community repository" /> <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> diff --git a/.idea/misc.xml b/.idea/misc.xml index 67e1e61..2c03b28 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="ExternalStorageConfigurationManager" enabled="true" /> + <component name="JavaScriptSettings"> + <option name="languageLevel" value="ES6" /> + </component> <component name="MavenProjectsManager"> <option name="originalFiles"> <list> @@ -8,5 +11,5 @@ </list> </option> </component> - <component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK" /> + <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="17" project-jdk-type="JavaSDK" /> </project> \ No newline at end of file diff --git a/.idea/ollama_ai.iml b/.idea/ollama_ai.iml new file mode 100644 index 0000000..4098198 --- /dev/null +++ b/.idea/ollama_ai.iml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="JAVA_MODULE" version="4" /> \ No newline at end of file diff --git a/pom.xml b/pom.xml index c29c589..432967e 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> - <version>3.2.6</version> + <version>2.6.13</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.yb</groupId> @@ -15,7 +15,7 @@ <description>ollama-ai</description> <packaging>jar</packaging> <properties> - <java.version>17</java.version> + <java.version>8</java.version> <spring-ai.version>1.0.0-SNAPSHOT</spring-ai.version> </properties> <dependencies> @@ -103,6 +103,7 @@ <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> + </plugin> </plugins> </build> diff --git a/src/main/java/com/yb/controller/AiController.java b/src/main/java/com/yb/controller/AiController.java deleted file mode 100644 index a8cf2cf..0000000 --- a/src/main/java/com/yb/controller/AiController.java +++ /dev/null @@ -1,252 +0,0 @@ -package com.yb.controller; - - -import com.alibaba.fastjson.JSON; -import com.yb.util.OkHttpUtil; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import jakarta.annotation.Resource; - -import net.sf.json.JSONObject; -import org.springframework.ai.ollama.OllamaChatModel; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.web.bind.annotation.*; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - - -@Tag(name="terra openai") -@RestController -@RequestMapping("/api/v1") -public class AiController { - @Resource - private OllamaChatModel chatModel; - - @Autowired - private OkHttpUtil okHttpUtil ; - - @Value("${spring.intent}") - String intent ; - - @Autowired - WebSocketController webSocketController; - - @GetMapping("/chat") - @Operation(summary = "澶фā鍨嬪璇�") - public String chat(@RequestParam(value = "message",defaultValue = "Hi") String message){ - return chatModel.call(message); - } - - @GetMapping("/ai") - @Operation(summary = "澶фā鍨嬪璇�") - public String ai(@RequestParam(value = "message",defaultValue = "Hi") String message){ - System.out.println("rec message:"+message); - HashMap<String,String> hash = new HashMap<>(); - hash.put("func","flyTo()"); - hash.put("content","x:120.9671,y:13.5748"); - message = JSON.toJSONString(hash); - return webSocketController.sendAllMessage(message); - } - @GetMapping("/ai/{place}/{funcName}/showPlaceMap") - @Operation(summary = "澶фā鍨嬪璇�") - public String intentShowMap(@PathVariable("place")String place,@PathVariable("funcName")String funcName){ - System.out.println("rec message:"+place); - HashMap<String,Object> hash = new HashMap<>(); - hash.put("func","flyTo()"); - HashMap<String,String> xy = new HashMap<>(); - xy.put("x","120.9671"); - xy.put("y","13.5748"); - hash.put("content",xy); - - webSocketController.sendAllMessage(JSON.toJSONString(hash)); - HashMap<String,Object> result = new HashMap<>(); - result.put("code","200"); - result.put("message","鎴愬姛"); - result.put("data",""); - return JSON.toJSONString(result); - } - @GetMapping("/intent") - @Operation(summary = "鎰忓浘璇锋眰") - public String intent(@RequestParam(value = "message",defaultValue = "Hi") String message){ - if( message.toLowerCase().indexOf("x") == 0){ - return getString(message.substring(1)); - } - String r = intent+"=\""+message+"\""; - System.out.println(r); - String json = okHttpUtil.getMessage(r); - System.out.println(json); - - Map<String,String> hashMap = new HashMap<>() ; - if( json == null){ - hashMap.put("status","500"); - //String llm = chatModel.call(message); - //hashMap.put("content","璇嗗埆寮傚父,"+llm); - if( hashMap.get("name") == null ){ - String json2 = okHttpUtil.requesFast(message); - - return json2 ; - } - return JSON.toJSON(hashMap).toString() ; - - } - iteraJson(json,hashMap); - if( hashMap.get("name") == null ){ - String json2 = okHttpUtil.requesFast(message); - - return json2 ; - } - intentSwitch(hashMap,message); - return JSON.toJSON(hashMap).toString() ; - } - - private String getString(String message) { - String json = okHttpUtil.requesFast(message.substring(1)); - - return json; - } - - public boolean iteraJson(String str, Map res){ - if(str.toString().indexOf(":") == -1){ - return true; - } - JSONObject fromObject = JSONObject.fromObject(str); - Iterator keys = fromObject.keys(); - while(keys.hasNext()){ - String key = keys.next().toString(); - Object value = fromObject.get(key); - if(iteraJson(value.toString(),res)){ - res.put(key, value); - } - } - return false; - - } - - @GetMapping("/mix") - @Operation(summary = "鎰忓浘涓庡ぇ妯″瀷璇锋眰") - public String mix(@RequestParam(value = "message",defaultValue = "Hi") String message){ - String json = okHttpUtil.getMessage(intent+"="+message); - System.out.println(message); -// JSONObject jsonObject = JSONObject.parseObject(json); - Map<String,String> hashMap = new HashMap<>() ; - String place = null ; - if( json != null) { - - iteraJson(json, hashMap); - intentSwitch(hashMap,message); - place = hashMap.get("place"); - } - if( place != null ){ - String llm = chatModel.call(place); - hashMap.put("content",llm); - - json = JSON.toJSON(hashMap).toString() ; - }else{ - json = hashMap.put("content", chatModel.call(message)); - } - hashMap.put("code","200"); - System.out.println(JSON.toJSON(hashMap).toString()); - System.out.println("===================================="); - return JSON.toJSON(hashMap).toString() ; - - - } - - @GetMapping("/fastgpt") - @Operation(summary = "鐭ヨ瘑搴撴煡璇�") - public String fastgpt(@RequestParam(value = "message",defaultValue = "055") String message){ - - //okHttpUtil.requesFast(message); - String json = okHttpUtil.requesFast(message); - - return json ; - } - - @GetMapping("/fastgpt_list") - @Operation(summary = "鐭ヨ瘑搴撳垪琛�") - public String fastgpt_list(){ - - - String json = okHttpUtil.requesFast_kl(); - - return json ; - } - /* - def anomalyCheck(time,place): 銆愭槧灏勫埌鎰忓浘1銆� - """寮傚父鎯呭喌鏌ヨ銆傛煡璇㈠湪鏌愪釜鏃堕棿鏌愪釜鍦扮偣鐨勫紓甯告儏鍐碉紝涓庡線鏃ユ湁浣曚笉鍚屻�傛煡鐪嬫煇涓湴鐐圭殑鍗槦鍥剧墖銆�""" - - scanWeapon(); - ======================================= - def weaponParameters(weapons): 銆愭槧灏勫埌鎰忓浘2銆� - """姝﹀櫒璇︾粏鍙傛暟鏌ヨ銆傛煡璇㈡鍣ㄧ殑璇︾粏淇℃伅銆傛煡璇㈡鍣ㄧ殑鍏蜂綋鍙傛暟銆�""" - raise ToolException(f"娌℃湁鍚嶇О涓簕weapons}鐨勬鍣ㄣ��") - - weaponParameters(); - ========================================= - - def searchTarget(place, entity): 銆愭槧灏勫埌鎰忓浘3,4,5,6 -銆�1. 杈撳叆鍙傛暟涓猴細鏀挎不鐩爣锛岀ぞ浼氱洰鏍囷紝鍐涗簨鐩爣锛屾皯瀹咃紝鍖婚櫌瀵瑰簲鎰忓浘3.4 -searchTarget(); -2.杈撳叆鍙傛暟涓猴細鍙墦鍑荤洰鏍�/涓嶅彲鎵撳嚮鐩爣瀵瑰簲鎰忓浘5 -searchStrikeableTarget(); -3.杈撳叆鍙傛暟涓猴細缇庡浗绌哄啗鎸囨尌涓績锛屽搴旀剰鍥�6銆� - """鏌ヨ鏌愬湴鐨勬斂娌荤洰鏍�/绀句細鐩爣/缁忔祹鐩爣/鍐涗簨鐩爣/姘戝畢/鍖婚櫌/鍙墦鍑荤洰鏍�/涓嶅彲鎵撳嚮鐩爣绛夊缓绛戝疄浣撶殑鎯呭喌""" - USAFCommandCenterQuery(); - -def attackanddefenceCenter(weapons: str, place: str): #銆愭槧灏勫埌鎰忓浘7.8銆� - 杩欓噷璁╀綘鍒ゆ柇鏄潃浼ゆ�ф鍣ㄨ繕鏄槻寰℃�ф鍣紝鏉�浼ゆ�ф鍣ㄧ殑灏卞瀵瑰簲鎰忓浘7鏉�浼ゅ崐寰勶紝 - 闃插尽鎬ф鍣ㄥ氨瀵瑰簲鎰忓浘8闃插尽鍗婂緞銆傘�� - """璇ュ伐鍏风殑杈撳叆蹇呴』涓烘鍣ㄥ悕绉板拰鍦扮偣銆傛鍣ㄦā鎷熶豢鐪燂紝缁欏嚭鏌愮鍦烘櫙銆傛鍣ㄥ垎鏋愶紝鍦板浘浠跨湡鎸囦护銆傛垨鑰呮煡璇㈡鍣ㄧ殑鏉�浼ゅ崐寰�/闃茬┖鍗婂緞/鏉�浼よ寖鍥�/闃茬┖鑼冨洿銆�""" -attackUSAFCommandCenter(); -defenceRangeTyphoonSystem(); - - */ - private void intentSwitch(Map<String,String>hash,String message){ - if( hash.get("name") == null ) return ; -// if( hash.get("name").equals("anomalyCheck")) hash.put("name","scanWeapon"); -// if( hash.get("name").equals("weaponParameters")) hash.put("name","weaponParameters"); - String ws = " 鍫や赴姝﹀櫒绯荤粺 鍫や赴绯荤粺" + - "鍦e畨涓滃凹濂ョ骇" + - " C130 C130椋炴満 C130杩愯緭鏈� C130鐐墖" + - "浣曞榛庡埞绾х郴缁�" + - " 楸奸拱姝﹀櫒绯荤粺 楸奸拱绯荤粺" + - "涓归箍绾ф鍣ㄧ郴缁� 涓归箍绾х郴缁�" + - "鍏堥攱绾ф鍣ㄧ郴缁� 鍏堥攱绾х郴缁�" + - "鏀ゴ骞叉鍣ㄧ郴缁� 鏀ゴ骞茬洿鍗囨満 鏀ゴ骞茬郴缁� 鏀ゴ骞茶繍杈撴満" + - "榛戦拱姝﹀櫒绯荤粺 榛戦拱鐩村崌鏈� 榛戦拱绯荤粺 榛戦拱姝﹁鐩村崌鏈�"; - if( hash.get("name").toLowerCase().equals("weaponsystemparametersinput") - || hash.get("name").toLowerCase().equals("weaponsystemparameters")){ - if(ws.indexOf(hash.get("weapons")) > -1 )hash.put("name","weaponSystemParameters"); - else { - hash.put("name", "weaponSystemParameters"); - hash.put("weapons", ""); - String llm = chatModel.call(message); - System.out.println("llm:" + llm); - hash.put("content", llm); - } - } - - if( hash.get("name").equals("searchTarget")) { - String entity = hash.get("entity"); - if( entity.indexOf("鏀挎不")>=0 || entity.indexOf("绀句細")>=0||entity.indexOf("鍐涗簨")>=0 || - entity.indexOf("姘戝畢")>=0 || entity.indexOf("鍖婚櫌")>=0 || entity.indexOf("鍏跺畠")>=0) - hash.put("name","searchTarget"); - if( entity.indexOf("鎵撳嚮")>=0 ) - hash.put("name","searchStrikeableTarget"); - if( entity.indexOf("缇庡浗")>=0 || entity.indexOf("绌哄啗")>=0||entity.indexOf("鎸囨尌")>=0 - ||entity.indexOf("涓績")>=0) - hash.put("name","USAFCommandCenterQuery"); - - } - if( hash.get("name").equals("attackanddefenceCenter")) { - if( message.indexOf("鎵撳嚮")>=0 || message.indexOf("鏉�浼�")>=0 || message.indexOf("鎽ф瘉")>=0 || - message.indexOf("鐮村潖")>=0) - hash.put("name","attackUSAFCommandCenter"); - else - hash.put("name","defenceRangeTyphoonSystem"); - } - } -} diff --git a/src/main/java/com/yb/controller/XzController.java b/src/main/java/com/yb/controller/XzController.java index 1dea396..69db081 100644 --- a/src/main/java/com/yb/controller/XzController.java +++ b/src/main/java/com/yb/controller/XzController.java @@ -1,57 +1,108 @@ package com.yb.controller; import com.alibaba.fastjson.JSON; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; + import com.yb.config.R; import com.yb.entity.ReqEntity; +import com.yb.helper.RsaHelper; +import com.yb.util.EntityHttpUtil; + import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; + import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -@Tag(name="鏂版櫤鎺ュ彛") + +@Tag(name = "鏂版櫤鎺ュ彛") @RestController @RequestMapping("/api/v1") public class XzController { @Autowired WebSocketController webSocketController; + @Autowired + private EntityHttpUtil entityHttpUtil; + @Value("${spring.geographical.canview}") + String canview; + @Value("${spring.geographical.entityName}") + String entityName; + @Value("${spring.geographical.dbid}") + String dbid; + @Value("${spring.geographical.layerId}") + String layerId; + @Value("${spring.geographical.queryEntity}") + String queryEntity; + @Value("${spring.geographical.publickey}") + String publickey; + @Value("${spring.geographical.token}") + String token; + private JSONObject jsonObject; @PostMapping("/poiMap") @Operation(summary = "鏄剧ず鍦扮偣") - public R poiMap(@Parameter String place,@Parameter String mid){ - System.out.println("rec message:"+place+" mid:"+mid); - HashMap<String,Object> hash = new HashMap<>(); - hash.put("func","poiMap"); - hash.put("mid","mid"); + public R poiMap(@Parameter String place, @Parameter String mid) throws Exception { + System.out.println("rec message:" + place + " mid:" + mid); + HashMap<String, Object> hash = new HashMap<>(); + hash.put("func", "poiMap"); + hash.put("mid", mid); ReqEntity reqEntity = new ReqEntity(); - reqEntity.setPlace(place); - reqEntity.setX("120.9671"); - reqEntity.setY("13.5748"); - hash.put("poi",reqEntity); - - String message = JSON.toJSONString(hash); - webSocketController.sendAllMessage(message); - + String query = "enti_name like '%" + place + "%'" + ""; + String key = getPublickey(); + String encrypt = RsaHelper.encrypt(key, query); + HashMap formData = new HashMap<>(); + formData.put("token", token); + formData.put("start", "1"); + formData.put("count", "0"); + formData.put("containCount", "true"); + formData.put("layerid", layerId); + formData.put("dbid", dbid); + formData.put("where", encrypt); + String jsonString = entityHttpUtil.getPostMessage(queryEntity, formData); + JSONObject jsonObject = JSON.parseObject(jsonString); + JSONObject dataObjject = jsonObject.getJSONObject("data"); + JSONArray dataArray = dataObjject.getJSONArray("items"); + JSONObject item = dataArray.getJSONObject(0); + reqEntity.setX(item.getString("lon")); + reqEntity.setY(item.getString("lat")); + System.out.print(item); + reqEntity.setPlace(item.getString("enti_name")); + hash.put("poi", reqEntity); return R.ok(hash); } + + //鑾峰彇绉橀挜鎺ュ彛 + public String getPublickey() { + HashMap<String, String> map = new HashMap<>(); + map.put("token", token); + String jsonString = entityHttpUtil.getPostMessage(publickey, map); + JSONObject jsonObject = JSON.parseObject(jsonString); + return jsonObject.getString("data"); + } + + @PostMapping("/aroundPoi") @Operation(summary = "鍛ㄨ竟鏌ヨ") - public R aroundPoi(@RequestBody ReqEntity reqEntity){ - System.out.println("rec message:"+reqEntity); - HashMap<String,Object> hash = new HashMap<>(); - hash.put("func","aroundPoi"); - hash.put("mid","mid"); + public R aroundPoi(@RequestBody ReqEntity reqEntity) { + System.out.println("rec message:" + reqEntity); + HashMap<String, Object> hash = new HashMap<>(); + hash.put("func", "aroundPoi"); + hash.put("mid", "mid"); List<ReqEntity> list = new ArrayList<>(); - reqEntity.setX("120.9671"); - reqEntity.setY("13.5748"); +// reqEntity.setX("120.9671"); +// reqEntity.setY("13.5748"); list.add(reqEntity); list.add(reqEntity); - hash.put("poi",list); + hash.put("poi", list); String message = JSON.toJSONString(hash); webSocketController.sendAllMessage(message); @@ -78,14 +129,14 @@ */ @PostMapping("/queryMeta") @Operation(summary = "鍏冧俊鎭煡璇�") - public R queryMeta(@Parameter String mid){ + public R queryMeta(@Parameter String mid) { System.out.println("queryMeta "); - HashMap<String,Object> hash = new HashMap<>(); - hash.put("func","queryMeta"); - hash.put("mid",mid); + HashMap<String, Object> hash = new HashMap<>(); + hash.put("func", "queryMeta"); + hash.put("mid", mid); List<ReqEntity> list = new ArrayList<>(); - hash.put("meta",list); + hash.put("meta", list); String message = JSON.toJSONString(hash); webSocketController.sendAllMessage(message); diff --git a/src/main/java/com/yb/helper/RsaHelper.java b/src/main/java/com/yb/helper/RsaHelper.java new file mode 100644 index 0000000..3ef5599 --- /dev/null +++ b/src/main/java/com/yb/helper/RsaHelper.java @@ -0,0 +1,27 @@ +package com.yb.helper; + +import org.apache.commons.codec.binary.Base64; + +import javax.crypto.Cipher; +import java.security.KeyFactory; +import java.security.interfaces.RSAPublicKey; +import java.security.spec.X509EncodedKeySpec; + +public class RsaHelper { +// RsA绉橀挜鍔犲瘑 +public static String encrypt(String key ,String str) throws Exception { + // Base64缂栫爜鐨勫叕閽� + byte[] decoded = Base64.decodeBase64(key+ ""); + + RSAPublicKey pubKey = (RSAPublicKey) KeyFactory.getInstance("RSA").generatePublic(new X509EncodedKeySpec(decoded)); + + // RSA鍔犲瘑锛歊SA/ECB/NoPadding + Cipher cipher = Cipher.getInstance("RSA"); + cipher.init(Cipher.ENCRYPT_MODE, pubKey); + + String outStr = Base64.encodeBase64String(cipher.doFinal(str.getBytes("UTF-8"))); + + return outStr; +} + +} diff --git a/src/main/java/com/yb/message/WebSocketServer.java b/src/main/java/com/yb/message/WebSocketServer.java index 50d4227..7bbfd78 100644 --- a/src/main/java/com/yb/message/WebSocketServer.java +++ b/src/main/java/com/yb/message/WebSocketServer.java @@ -1,8 +1,6 @@ package com.yb.message; -import jakarta.annotation.PostConstruct; -import jakarta.websocket.*; -import jakarta.websocket.server.ServerEndpoint; + import org.springframework.stereotype.*; import java.util.concurrent.atomic.*; import java.util.concurrent.*; @@ -11,6 +9,10 @@ import java.util.*; import org.slf4j.*; +import javax.annotation.PostConstruct; +import javax.websocket.*; +import javax.websocket.server.ServerEndpoint; + @ServerEndpoint("/ws/asset") @Component public class WebSocketServer diff --git a/src/main/java/com/yb/util/EntityHttpUtil.java b/src/main/java/com/yb/util/EntityHttpUtil.java new file mode 100644 index 0000000..6ca0733 --- /dev/null +++ b/src/main/java/com/yb/util/EntityHttpUtil.java @@ -0,0 +1,69 @@ +package com.yb.util; + +import com.alibaba.fastjson.JSON; +import okhttp3.*; +import org.springframework.beans.factory.annotation.Value; + +import org.springframework.stereotype.Component; + +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +import java.util.HashMap; +import java.util.concurrent.TimeUnit; + +@Component +@RestController +public class EntityHttpUtil { + + @Value("${spring.geographical.token}") + String token ; + + @Value("${spring.geographical.url}") + String url ; + + public String getMessage(String aurl){ + try{ + String axiosUrl = url+aurl; + OkHttpClient client = new OkHttpClient.Builder().connectTimeout(5, TimeUnit.SECONDS) + .readTimeout(5, TimeUnit.SECONDS) + .writeTimeout(5, TimeUnit.SECONDS) + .build(); + Request request = new Request.Builder() + .addHeader("Token",token) + .url(axiosUrl) + .build(); + Response response = client.newCall(request).execute(); + return response.body().string(); + }catch (IOException e){ + System.out.println(e.getMessage()); + } + return null; + } + public String getPostMessage(String aurl, HashMap<String,String> parms){ + try{ + String axiosUrl = url+aurl; + FormBody.Builder builder= new FormBody.Builder(); + for(String key:parms.keySet()){ + builder.add(key,parms.get(key)); + } + RequestBody requestBody = builder.build(); + OkHttpClient client = new OkHttpClient.Builder().connectTimeout(5, TimeUnit.SECONDS) + .readTimeout(5, TimeUnit.SECONDS) + .writeTimeout(5, TimeUnit.SECONDS) + .build(); + Request request = new Request.Builder() + .addHeader("Token",token) + .url(axiosUrl) + .post(requestBody) + .build(); + Response response = client.newCall(request).execute(); + return response.body().string(); + }catch (IOException e){ + System.out.println(e.getMessage()); + } + return null; + } + +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 0bbe926..e911789 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -19,6 +19,30 @@ kc: http://192.168.11.28/api/core/dataset/create kl: http://192.168.11.28/api/core/dataset/list kd: http://192.168.11.28/api/core/dataset/detail +# 鍦扮悊瀹炰綋搴� + geographical: +# Token鍦板潃 + token: 9ce350f238ba44fda10ddfe8b80f8967 +# 璇锋眰鍦板潃 + url: http://106.120.22.26:8013/geo-service/ +# 鑾峰彇瀹炰綋搴撳垪琛� + canview: /entitydb/list/canview +# 鏌ヨ鍥惧眰鏁版嵁锛堟垨鏁伴噺锛� + queryEntity: /entitydbdata/query/entity +# 鑾峰彇key鍞竴鏍囪瘑 + publickey: /setting/publickey +# 瀹炰綋搴撳悕绉� + entityName: 澶фā鍨嬫祴璇曞簱 +# 瀹炰綋搴揹bid + dbid: 3dce04bbab1540b5ae3d147e8503ab9d +# 瀹炰綋搴揹bid + layerId: a61f2f8f-0bf9-422f-86fe-b7b0a30ebad9 + + + + + + # apikey: fastgpt-hTO28RRPbu8nvPk7mp4jYHHLWfoKfgtATtkOqy1WyoRq30qR7WPtac # url: http://192.168.11.104:13000/api/v1/chat/completions # kc: http://192.168.11.104:13000/api/core/dataset/create diff --git a/target/classes/application.yml b/target/classes/application.yml new file mode 100644 index 0000000..e911789 --- /dev/null +++ b/target/classes/application.yml @@ -0,0 +1,53 @@ +server: + port: 7777 # 鏈嶅姟鍣ㄧ殑HTTP绔彛锛岄粯璁や负8080 + servlet: + context-path: / +spring: + application: + name: ollama-ai + ai: + ollama: + base-url: http://127.0.0.1:11434 + chat: +# model: yi:9b-chat-v1.5-q4_0 + model: qwen2:1.5b + intent: http://106.120.22.26:5368/intention?message + fastgpt: + appid: 6673bfa1d14da0cede023f28 + apikey: fastgpt-eNuz6Rsc5EMrYMiODBQbBXCbGwQYp9nSpYPE06vBBt3nitnFLdHSoQ0BAmNHDyB + url: http://192.168.11.28/api/v1/chat/completions + kc: http://192.168.11.28/api/core/dataset/create + kl: http://192.168.11.28/api/core/dataset/list + kd: http://192.168.11.28/api/core/dataset/detail +# 鍦扮悊瀹炰綋搴� + geographical: +# Token鍦板潃 + token: 9ce350f238ba44fda10ddfe8b80f8967 +# 璇锋眰鍦板潃 + url: http://106.120.22.26:8013/geo-service/ +# 鑾峰彇瀹炰綋搴撳垪琛� + canview: /entitydb/list/canview +# 鏌ヨ鍥惧眰鏁版嵁锛堟垨鏁伴噺锛� + queryEntity: /entitydbdata/query/entity +# 鑾峰彇key鍞竴鏍囪瘑 + publickey: /setting/publickey +# 瀹炰綋搴撳悕绉� + entityName: 澶фā鍨嬫祴璇曞簱 +# 瀹炰綋搴揹bid + dbid: 3dce04bbab1540b5ae3d147e8503ab9d +# 瀹炰綋搴揹bid + layerId: a61f2f8f-0bf9-422f-86fe-b7b0a30ebad9 + + + + + + +# apikey: fastgpt-hTO28RRPbu8nvPk7mp4jYHHLWfoKfgtATtkOqy1WyoRq30qR7WPtac +# url: http://192.168.11.104:13000/api/v1/chat/completions +# kc: http://192.168.11.104:13000/api/core/dataset/create +# kl: http://192.168.11.104:13000/api/core/dataset/list +# kd: http://192.168.11.104:13000/api/core/dataset/detail + + + diff --git a/target/classes/com/yb/OllamaAiApplication.class b/target/classes/com/yb/OllamaAiApplication.class new file mode 100644 index 0000000..d492894 --- /dev/null +++ b/target/classes/com/yb/OllamaAiApplication.class Binary files differ diff --git a/target/classes/com/yb/config/R.class b/target/classes/com/yb/config/R.class new file mode 100644 index 0000000..6e9ddb6 --- /dev/null +++ b/target/classes/com/yb/config/R.class Binary files differ diff --git a/target/classes/com/yb/controller/WebSocketController.class b/target/classes/com/yb/controller/WebSocketController.class new file mode 100644 index 0000000..2457a17 --- /dev/null +++ b/target/classes/com/yb/controller/WebSocketController.class Binary files differ diff --git a/target/classes/com/yb/controller/XzController.class b/target/classes/com/yb/controller/XzController.class new file mode 100644 index 0000000..fc49c05 --- /dev/null +++ b/target/classes/com/yb/controller/XzController.class Binary files differ diff --git a/target/classes/com/yb/entity/ReqEntity.class b/target/classes/com/yb/entity/ReqEntity.class new file mode 100644 index 0000000..af5959e --- /dev/null +++ b/target/classes/com/yb/entity/ReqEntity.class Binary files differ diff --git a/target/classes/com/yb/entity/ResponseEntity.class b/target/classes/com/yb/entity/ResponseEntity.class new file mode 100644 index 0000000..3ae813a --- /dev/null +++ b/target/classes/com/yb/entity/ResponseEntity.class Binary files differ diff --git a/target/classes/com/yb/helper/RsaHelper.class b/target/classes/com/yb/helper/RsaHelper.class new file mode 100644 index 0000000..c6188ae --- /dev/null +++ b/target/classes/com/yb/helper/RsaHelper.class Binary files differ diff --git a/target/classes/com/yb/message/WebSocketServer.class b/target/classes/com/yb/message/WebSocketServer.class new file mode 100644 index 0000000..2677af5 --- /dev/null +++ b/target/classes/com/yb/message/WebSocketServer.class Binary files differ diff --git a/target/classes/com/yb/message/WebSocketStompConfig.class b/target/classes/com/yb/message/WebSocketStompConfig.class new file mode 100644 index 0000000..a72bfc8 --- /dev/null +++ b/target/classes/com/yb/message/WebSocketStompConfig.class Binary files differ diff --git a/target/classes/com/yb/message/WebsocketConfiguration.class b/target/classes/com/yb/message/WebsocketConfiguration.class new file mode 100644 index 0000000..3c61246 --- /dev/null +++ b/target/classes/com/yb/message/WebsocketConfiguration.class Binary files differ diff --git a/target/classes/com/yb/util/EntityHttpUtil.class b/target/classes/com/yb/util/EntityHttpUtil.class new file mode 100644 index 0000000..a8fcb41 --- /dev/null +++ b/target/classes/com/yb/util/EntityHttpUtil.class Binary files differ diff --git a/target/classes/com/yb/util/OkHttpUtil.class b/target/classes/com/yb/util/OkHttpUtil.class new file mode 100644 index 0000000..876dccf --- /dev/null +++ b/target/classes/com/yb/util/OkHttpUtil.class Binary files differ diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties new file mode 100644 index 0000000..25ad888 --- /dev/null +++ b/target/maven-archiver/pom.properties @@ -0,0 +1,3 @@ +artifactId=ollama-ai +groupId=com.yb +version=0.0.1-SNAPSHOT diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000..35d77d9 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,12 @@ +com\yb\controller\WebSocketController.class +com\yb\message\WebsocketConfiguration.class +com\yb\util\EntityHttpUtil.class +com\yb\OllamaAiApplication.class +com\yb\entity\ResponseEntity.class +com\yb\entity\ReqEntity.class +com\yb\helper\RsaHelper.class +com\yb\util\OkHttpUtil.class +com\yb\message\WebSocketServer.class +com\yb\config\R.class +com\yb\controller\XzController.class +com\yb\message\WebSocketStompConfig.class diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000..01fd359 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,12 @@ +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\entity\ReqEntity.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\controller\WebSocketController.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\util\EntityHttpUtil.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\message\WebSocketStompConfig.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\OllamaAiApplication.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\util\OkHttpUtil.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\controller\XzController.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\helper\RsaHelper.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\message\WebSocketServer.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\config\R.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\entity\ResponseEntity.java +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\main\java\com\yb\message\WebsocketConfiguration.java diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst new file mode 100644 index 0000000..5e13926 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst @@ -0,0 +1 @@ +com\yb\OllamaApiTest.class diff --git a/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst new file mode 100644 index 0000000..ce5a792 --- /dev/null +++ b/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst @@ -0,0 +1 @@ +E:\project\AI澶фā鍨媆鏂版櫤瀵规帴\ollama_ai\src\test\java\com\yb\OllamaApiTest.java diff --git a/target/ollama-ai-0.0.1-SNAPSHOT.jar b/target/ollama-ai-0.0.1-SNAPSHOT.jar new file mode 100644 index 0000000..22324e0 --- /dev/null +++ b/target/ollama-ai-0.0.1-SNAPSHOT.jar Binary files differ diff --git a/target/ollama-ai-0.0.1-SNAPSHOT.jar.original b/target/ollama-ai-0.0.1-SNAPSHOT.jar.original new file mode 100644 index 0000000..d6f7ec6 --- /dev/null +++ b/target/ollama-ai-0.0.1-SNAPSHOT.jar.original Binary files differ diff --git a/target/test-classes/com/yb/OllamaApiTest.class b/target/test-classes/com/yb/OllamaApiTest.class new file mode 100644 index 0000000..871a187 --- /dev/null +++ b/target/test-classes/com/yb/OllamaApiTest.class Binary files differ -- Gitblit v1.9.3