DESKTOP-NE65RNK\Citrus_limon 1 tahun lalu
induk
melakukan
043a9ff4e4

+ 1 - 1
.env.development

@@ -1 +1 @@
-VITE_API_BASE_URL = "http://192.168.1.10:81"
+VITE_API_BASE_URL = "http://192.168.1.10:81"

+ 36 - 4
src/api/index.ts

@@ -152,29 +152,61 @@ export const delete_apikey = (params: any, callback: any) => {
 // 服务器
 // 服务器管理-服务器列表
 export const get_server_list = (params: any, callback: any) => {
-  return http.request("/user-server/getPage", "get", params).then((data) => {
+  return http.request("/userServer/getPage", "get", params).then((data) => {
     if (data) callback && callback(data);
   });
 };
 // 服务器管理-添加服务器
 export const add_server = (params: any, callback: any) => {
-  return http.request("/user-server/save", "post", params).then((data) => {
+  return http.request("/userServer/save", "post", params).then((data) => {
     if (data) callback && callback(data);
   });
 };
 // 服务器管理-编辑服务器
 export const update_server = (params: any, callback: any) => {
-  return http.request("/user-server/update", "post", params).then((data) => {
+  return http.request("/userServer/update", "post", params).then((data) => {
+    if (data) callback && callback(data);
+  });
+};
+// 服务器管理-测试连接
+export const test_connect_server = (params: any, callback: any) => {
+  return http.request("/userServer/testConnect", "post", params).then((data) => {
     if (data) callback && callback(data);
   });
 };
 // 服务器管理-删除服务器
 export const delete_server = (params: any, callback: any) => {
-  return http.request("/user-server/delete", "post", params).then((data) => {
+  return http.request("/userServer/delete", "post", params).then((data) => {
     if (data) callback && callback(data);
   });
 };
 
+// PEM管理-pem列表
+export const get_pem_list = (params: any, callback: any) => {
+  return http.request("/serverAuth/getPage", "get", params).then((data) => {
+    if (data) callback && callback(data);
+  });
+};
+// PEM管理-添加pem
+export const add_pem = (params: any, callback: any) => {
+  return http.request("/serverAuth/save", "post", params).then((data) => {
+    if (data) callback && callback(data);
+  });
+};
+// PEM管理-修改pem
+export const update_pem = (params: any, callback: any) => {
+  return http.request("/serverAuth/update", "post", params).then((data) => {
+    if (data) callback && callback(data);
+  });
+};
+// PEM管理-删除pem
+export const delete_pem = (params: any, callback: any) => {
+  return http.request("/serverAuth/update", "post", params).then((data) => {
+    if (data) callback && callback(data);
+  });
+};
+
+
 // 指令管理-指令列表
 export const get_instruct_list = (params: any, callback: any) => {
   return http.request("/server-instruct/getPage", "get", params).then((data) => {

+ 23 - 23
src/views/server/manage/components/Pem.vue

@@ -11,7 +11,7 @@
           </template>
           <template v-slot:operator="{ row }">
             <lay-space>
-              <TableButton v-if="apiList?.includes('/user/setStatus')" :text="row.status == 0 ? '启用' : '禁用'" @click="handleStatus(row)" />
+              <!-- <TableButton v-if="apiList?.includes('/user/setStatus')" :text="row.status == 0 ? '启用' : '禁用'" @click="handleStatus(row)" /> -->
               <TableButton v-if="apiList?.includes('/menu/update')" text="编辑" @click="handleUpdate(row)" />
               <TableButton v-if="apiList?.includes('/menu/delete')" type="danger" text="删除" @click="handleDelete(row)" />
             </lay-space>
@@ -26,7 +26,7 @@
 <script lang="ts" setup>
 import { ref, reactive, getCurrentInstance } from "vue";
 import UpdatePem from "./UpdatePem.vue";
-import { add_exchange, update_exchange } from "@/api";
+import { get_pem_list, delete_pem } from "@/api";
 
 const { proxy }: any = getCurrentInstance();
 const updatePemRef = ref();
@@ -39,9 +39,9 @@ interface ModelConfig {
   isUpdate: boolean;
   loading: boolean;
 }
-interface ModelParams {}
+// interface ModelParams {}
 
-let modelParams = ref<ModelParams>({});
+// let modelParams = ref<ModelParams>({});
 let modelConfig: ModelConfig = reactive({ title: "", visible: false, isUpdate: false, loading: false });
 
 interface FormItem {
@@ -84,7 +84,7 @@ const show = () => {
 const getPageInfo = (isSearch?: boolean) => {
   if (isSearch) pageParams.pageNum = 1;
   modelConfig.loading = true;
-  get_strategy_program_list(pageParams, (data: any) => {
+  get_pem_list(pageParams, (data: any) => {
     modelConfig.loading = false;
     if (data.code == 200) {
       dataSource.value = data.data.list;
@@ -100,30 +100,30 @@ const handleUpdate = async (value?: any) => {
 };
 
 // 修改PEM状态
-const handleStatus = async (value: any) => {
-  let result = await proxy.$waitingConfirm(`是否确认${value.status == 0 ? "启用" : "禁用"}该版本?`);
-  if (!result) return;
-  let params = {
-    ids: [value.id],
-    status: value.status == 0 ? 1 : 0,
-  };
-  modelConfig.loading = true;
-  set_strategy_program_status(params, (data: any) => {
-    modelConfig.loading = false;
-    if (data.code == 200) {
-      proxy.$message(`修改成功!`);
-      getPageInfo();
-    }
-  });
-};
+// const handleStatus = async (value: any) => {
+//   let result = await proxy.$waitingConfirm(`是否确认${value.status == 0 ? "启用" : "禁用"}该版本?`);
+//   if (!result) return;
+//   let params = {
+//     ids: [value.id],
+//     status: value.status == 0 ? 1 : 0,
+//   };
+//   modelConfig.loading = true;
+//   set_strategy_program_status(params, (data: any) => {
+//     modelConfig.loading = false;
+//     if (data.code == 200) {
+//       proxy.$message(`修改成功!`);
+//       getPageInfo();
+//     }
+//   });
+// };
 
 // 删除PEM
 const handleDelete = async (value: any) => {
-  let result = await proxy.$waitingConfirm("是否确认删除该版本?");
+  let result = await proxy.$waitingConfirm("是否确认删除该PEM?");
   if (!result) return;
   let params = [value.id];
   modelConfig.loading = true;
-  delete_strategy_program(params, (data: any) => {
+  delete_pem(params, (data: any) => {
     modelConfig.loading = false;
     if (data.code == 200) {
       proxy.$message("刪除成功!");

+ 17 - 11
src/views/server/manage/components/Update.vue

@@ -2,8 +2,8 @@
   <lay-layer :title="modelConfig.title" v-model="modelConfig.visible" :area="['600px', '650px']" :btn="operator">
     <div style="padding: 20px">
       <lay-form :model="modelParams" ref="modelFormRef" required>
-        <lay-form-item label="名称" prop="title">
-          <lay-input v-model="modelParams.title" />
+        <lay-form-item label="名称" prop="name">
+          <lay-input v-model="modelParams.name" />
         </lay-form-item>
         <lay-form-item label="IP" prop="ipAddrComplex">
           <lay-input v-model="modelParams.ipAddrComplex" />
@@ -11,21 +11,24 @@
         <lay-form-item label="端口号" prop="portComplex">
           <lay-input v-model="modelParams.portComplex" />
         </lay-form-item>
+        <lay-form-item label="操作系统" prop="osType">
+          <lay-input v-model="modelParams.osType" />
+        </lay-form-item>
         <lay-form-item label="登录方式" prop="code">
-          <lay-radio v-model="modelParams.code" name="action" :value="1" label="账号密码" />
-          <lay-radio v-model="modelParams.code" name="action" :value="2" label="PEM" />
+          <lay-radio v-model="modelParams.loginType" name="action" :value="0" label="账号密码" />
+          <lay-radio v-model="modelParams.loginType" name="action" :value="1" label="PEM" />
         </lay-form-item>
-        <lay-form-item v-if="modelParams.code == 1" label="账号" prop="accountComplex">
+        <lay-form-item v-if="modelParams.loginType == 1" label="账号" prop="accountComplex">
           <lay-input v-model="modelParams.accountComplex" />
         </lay-form-item>
-        <lay-form-item v-if="modelParams.code == 1" label="密码" prop="passwordComplex">
+        <lay-form-item v-if="modelParams.loginType == 1" label="密码" prop="passwordComplex">
           <lay-input v-model="modelParams.passwordComplex" />
         </lay-form-item>
-        <lay-form-item v-if="modelParams.code == 2" label="PEM" prop="code">
-          <lay-input v-model="modelParams.code" />
+        <lay-form-item v-if="modelParams.loginType == 2" label="PEM" prop="pemId">
+          <lay-input v-model="modelParams.pemId" />
         </lay-form-item>
         <lay-form-item label="备注" prop="textarea">
-          <lay-textarea v-model="modelParams.code" />
+          <lay-textarea v-model="modelParams.remark" />
         </lay-form-item>
       </lay-form>
     </div>
@@ -46,12 +49,15 @@ interface ModelConfig {
 }
 interface ModelParams {
   userServerId?: string;
-  title?: string;
+  name?: string;
   ipAddrComplex?: string;
   portComplex?: string;
+  osType?: string;
+  loginType?: number;
   accountComplex?: string;
   passwordComplex?: string;
-  code?: number;
+  pemId?: string;
+  remark?: number;
 }
 
 let modelParams = ref<ModelParams>({});

+ 3 - 3
src/views/server/manage/components/UpdatePem.vue

@@ -19,7 +19,7 @@
 <script lang="ts" setup>
 import { ref, reactive, getCurrentInstance } from "vue";
 import DragUpload from "@/components/DragUpload.vue";
-import { add_exchange, update_exchange } from "@/api";
+import { add_pem, update_pem } from "@/api";
 
 const { proxy }: any = getCurrentInstance();
 
@@ -82,7 +82,7 @@ const operator = reactive([
       modelConfig.loading = true;
       if (modelConfig.isUpdate) {
         const params = { ...modelParams.value };
-        update_exchange(params, (data: any) => {
+        update_pem(params, (data: any) => {
           modelConfig.loading = false;
           if (data.code == 200) {
             proxy.$message("编辑成功!");
@@ -92,7 +92,7 @@ const operator = reactive([
         });
       } else {
         const params = { ...modelParams.value };
-        add_exchange(params, (data: any) => {
+        add_pem(params, (data: any) => {
           modelConfig.loading = false;
           if (data.code == 200) {
             proxy.$message("添加成功!");

+ 16 - 3
src/views/server/manage/index.vue

@@ -27,7 +27,7 @@
           </template>
           <template v-slot:operator="{ row }">
             <lay-space>
-              <TableButton v-if="apiList?.includes('/user/setStatus')" text="测试连接" @click="handleStatus(row)" />
+              <TableButton v-if="apiList?.includes('/user/setStatus')" text="测试连接" @click="handleTest(row)" />
               <TableButton v-if="apiList?.includes('/user/update')" text="编辑" @click="handleUpdate(row)" />
               <TableButton v-if="apiList?.includes('/user/update')" text="复制" @click="handleUpdate(row)" />
               <TableButton v-if="apiList?.includes('/user/delete')" type="danger" text="删除" @click="handleDelete(row)" />
@@ -48,7 +48,7 @@ import Pem from "./components/Pem.vue";
 import Update from "./components/Update.vue";
 import Batch from "./components/Batch.vue";
 import TableButton from "@/components/TableButton.vue";
-import { get_server_list, delete_server } from "@/api";
+import { get_server_list, delete_server, test_connect_server } from "@/api";
 
 const { proxy }: any = getCurrentInstance();
 const updateRef = ref();
@@ -124,9 +124,22 @@ const handleUpdate = async (value?: any) => {
   if (result) getPageInfo();
 };
 
+// 测试连接
+const handleTest = async (value: any) => {
+  let params = {};
+  pageConfig.loading = true;
+  test_connect_server(params, (data: any) => {
+    pageConfig.loading = false;
+    if (data.code == 200) {
+      proxy.$message(`删除成功!`);
+      getPageInfo();
+    }
+  });
+};
+
 // 删除交易所
 const handleDelete = async (value: any) => {
-  let result = await proxy.$waitingConfirm("是否确认删除该用户?");
+  let result = await proxy.$waitingConfirm("是否确认删除该服务器?");
   if (!result) return;
   let params = [value.userId];
   pageConfig.loading = true;