|
|
@@ -17,6 +17,7 @@ import com.cyksj.dto.Result;
|
|
|
import com.cyksj.enums.GatewayResponse;
|
|
|
import com.cyksj.mapper.ChatgptSessionMapper;
|
|
|
import com.cyksj.model.dto.ChatGptChangePasswordDto;
|
|
|
+import com.cyksj.model.dto.ChatgptChangeNodesDto;
|
|
|
import com.cyksj.model.entity.ChatgptSession;
|
|
|
import com.cyksj.model.entity.SysConfig;
|
|
|
import com.cyksj.model.excel.ExcelGptMirrorAccountData;
|
|
|
@@ -277,4 +278,27 @@ public class CmsGptCarController {
|
|
|
log.error("刷新车队token异常:{}", StringUtil.getErrorText(e));
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * gpt更换节点
|
|
|
+ */
|
|
|
+ @PostMapping("/changeNodes")
|
|
|
+ public Result<String> changeNodes(@RequestBody ChatgptChangeNodesDto node){
|
|
|
+ SysConfig one = sysConfigService.getOne(Wrappers.lambdaQuery(SysConfig.class).eq(SysConfig::getSysKey, "gpt_car_nodes_list"));
|
|
|
+ List<String> nodeList = new JSONArray(one.getSysValue()).toList(String.class);
|
|
|
+ if (nodeList.contains(node.getNode())) {
|
|
|
+ //修改目前使用gpt节点值
|
|
|
+ sysConfigService.update(Wrappers.lambdaUpdate(SysConfig.class).eq(SysConfig::getSysKey,"gpt_car_nodes").set(SysConfig::getSysValue, node.getNode()));
|
|
|
+ SysConfig domainConfig = sysConfigService.getOne(Wrappers.lambdaQuery(SysConfig.class).eq(SysConfig::getSysKey, "mirror_gpt_domain"));
|
|
|
+ List<String> domainList = new JSONArray(domainConfig.getSysValue()).toList(String.class);
|
|
|
+ domainList.forEach((domain)->{
|
|
|
+ HttpUtil.get(domain + "/backend-api/car/changeNodes");
|
|
|
+ });
|
|
|
+ log.info("切换成功");
|
|
|
+ return GatewayResponse.SUCCESS.newBuilder().toResult();
|
|
|
+ }else {
|
|
|
+ throw BusinessRuntimeException.getInstance("该节点不存在!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|