Parcourir la source

必填项整理

zouzs il y a 2 semaines
Parent
commit
a2247fd682
2 fichiers modifiés avec 66 ajouts et 14 suppressions
  1. 29 7
      src/views/ipAccount/ipAccountInterface.vue
  2. 37 7
      src/views/ipInterface/index.vue

+ 29 - 7
src/views/ipAccount/ipAccountInterface.vue

@@ -42,17 +42,21 @@
       @confirm="handleSubmit"
       @close="handleClose"
     />
-    <PlusDialog
-      v-model="detailsVisible"
-      title="密钥"
-      :hasFooter="false"
-      width="400"
-    >
+    <PlusDialog v-model="detailsVisible" title="密钥" width="400">
       <PlusDescriptions
         :column="24"
         :columns="descriptionsColumns"
         :data="descriptionsData"
       />
+      <template #footer>
+        <el-button
+          size="small"
+          type="primary"
+          @click="handleCopy(descriptionsData)"
+        >
+          一键复制
+        </el-button>
+      </template>
     </PlusDialog>
   </div>
 </template>
@@ -245,7 +249,11 @@ const state = reactive<State>({
   selectedIds: [],
   isCreate: false,
   form: {},
-  rules: {},
+  rules: {
+    interfaceId: [{ required: true, message: "请选择接口", trigger: "blur" }],
+    token: [{ required: true, message: "请生成token", trigger: "blur" }],
+    secret: [{ required: true, message: "请生成密钥", trigger: "blur" }]
+  },
   descriptionsData: {}
 });
 
@@ -476,6 +484,20 @@ const handleClose = () => {
   console.log(dialogForm.value.formInstance);
 };
 
+const handleCopy = (params: any) => {
+  copy(JSON.stringify(params));
+  ElMessage.success("复制成功");
+};
+
+const copy = (text: string) => {
+  let input = document.createElement("input");
+  input.value = text;
+  document.body.appendChild(input);
+  input.select();
+  document.execCommand("Copy");
+  document.body.removeChild(input);
+};
+
 const { buttons } = useTable();
 
 buttons.value = [

+ 37 - 7
src/views/ipInterface/index.vue

@@ -39,17 +39,21 @@
       @confirm="handleSubmit"
       @close="handleClose"
     />
-    <PlusDialog
-      v-model="detailsVisible"
-      title="接口配置"
-      :hasFooter="false"
-      width="500"
-    >
+    <PlusDialog v-model="detailsVisible" title="接口配置" width="500">
       <PlusDescriptions
         :column="24"
         :columns="descriptionsColumns"
         :data="descriptionsData"
       />
+      <template #footer>
+        <el-button
+          size="small"
+          type="primary"
+          @click="handleCopy(descriptionsData)"
+        >
+          一键复制
+        </el-button>
+      </template>
     </PlusDialog>
   </div>
 </template>
@@ -208,7 +212,18 @@ const state = reactive<State>({
   isCreate: false,
   form: {},
   rules: {
-    accNo: [{ required: true, message: "请输入账户号", trigger: "blur" }]
+    interfaceName: [
+      { required: true, message: "请输入接口名称", trigger: "blur" }
+    ],
+    interfaceNo: [
+      { required: true, message: "请输入接口编码", trigger: "blur" }
+    ],
+    manufacturer: [
+      { required: true, message: "请输入接口厂商", trigger: "blur" }
+    ],
+    interfaceConfig: [
+      { required: true, message: "请输入接口配置", trigger: "blur" }
+    ]
   },
   descriptionsData: {}
 });
@@ -329,6 +344,21 @@ const handleClose = () => {
   console.log(dialogForm.value.formInstance);
 };
 
+const handleCopy = (params: any) => {
+  console.log(params);
+  copy(JSON.stringify(params.interfaceConfig));
+  ElMessage.success("复制成功");
+};
+
+const copy = (text: string) => {
+  let input = document.createElement("input");
+  input.value = text;
+  document.body.appendChild(input);
+  input.select();
+  document.execCommand("Copy");
+  document.body.removeChild(input);
+};
+
 // 参数预期管理
 const normalizeParams = (params: Record<string, any>) => {
   return {