Browse Source

接入数据源

zhengnaiwen_citu 2 months ago
parent
commit
8a76d90a19

+ 1 - 2
src/utils/request.js

@@ -25,7 +25,6 @@ service.interceptors.request.use(
 service.interceptors.response.use(
   async response => {
     const res = response.data
-    console.log(response)
 
     if (response.request.responseType === 'blob') {
       // 返回的文件流当报错时转化成json
@@ -38,7 +37,7 @@ service.interceptors.response.use(
         }
       }
       const name = response.headers['content-disposition']
-      // console.log(name)
+
       return {
         data: res,
         name: name ? decodeURI(name.replace('attachment;filename=', '')) : '未命名'

+ 3 - 54
src/views/dataGovernance/dataResource/components/editBase.vue

@@ -142,6 +142,8 @@ export default {
           hide: !this.formValues.chooseStorage,
           noAttach: true,
           outlined: true,
+          itemText: 'name',
+          itemValue: 'id',
           dense: true,
           items: this.dataSourceItems
         },
@@ -163,14 +165,6 @@ export default {
           dense: true,
           label: '请输入描述'
         },
-        // {
-        //   type: 'ifRadio',
-        //   key: 'addLine',
-        //   value: true,
-        //   label: '添加生产线',
-        //   width: 120,
-        //   items: [{ label: '是', value: true }, { label: '否', value: false }]
-        // },
         {
           type: 'ifRadio',
           key: 'status',
@@ -181,26 +175,11 @@ export default {
       ]
     }
   },
-  // watch: {
-  //   names: {
-  //     handler (val) {
-
-  //       this.formItems.options.forEach(e => {
-  //         if (e.key === 'name' || e.key === 'en_name') {
-  //           e.value = val[e.key] ? val[e.key] : e.value
-  //         }
-  //       })
-  //     },
-  //     deep: true,
-  //     immediate: true
-  //   }
-  // },
   created () {
     this.init()
     if (!Object.keys(this.itemData).length) {
       return
     }
-    // const objItems = ['parentId', 'tag']
     Object.keys(this.formValues).forEach(key => {
       if (key === 'tag') {
         this.formValues[key] = this.itemData[key]?.id || null
@@ -208,28 +187,8 @@ export default {
       }
       if (Object.prototype.hasOwnProperty.call(this.itemData, key)) {
         this.formValues[key] = this.itemData[key]
-        // if (objItems.includes(key) && this.itemData[key]) {
-        //   this.formValues[key] = this.itemData[key]?.id
-        //   if (Object.prototype.hasOwnProperty.call(item, 'search')) {
-        //     item.search = this.itemData[item.key]?.name
-        //   }
-        //   return
-        // }
-        // item.value = this.itemData[item.key]
       }
     })
-    // this.formItems.options.forEach(item => {
-    //   if (Object.prototype.hasOwnProperty.call(this.itemData, item.key)) {
-    //     if (objItems.includes(item.key) && this.itemData[item.key]) {
-    //       item.value = this.itemData[item.key]?.id
-    //       if (Object.prototype.hasOwnProperty.call(item, 'search')) {
-    //         item.search = this.itemData[item.key]?.name
-    //       }
-    //       return
-    //     }
-    //     item.value = this.itemData[item.key]
-    //   }
-    // })
   },
   methods: {
     async init () {
@@ -240,9 +199,7 @@ export default {
             ...this.pageInfo
           })
           this.labelItems = data.records
-          const { data: dataSource } = await getDatasourceList({
-            ...this.pageInfo
-          })
+          const { data: dataSource } = await getDatasourceList({})
           this.dataSourceItems = dataSource.data_source
         } catch (error) {
           this.$snackbar.error(error)
@@ -258,14 +215,6 @@ export default {
         return
       }
       return this.formValues
-
-      // return this.formItems.reduce((res, item) => {
-      //   if (item.hide) {
-      //     return res
-      //   }
-      //   res[item.key] = item.value
-      //   return res
-      // }, {})
     }
   }
 }

+ 0 - 1
src/views/dataGovernance/dataResource/components/editSelected.vue

@@ -98,7 +98,6 @@ export default {
   },
   mounted () {
     this.$nextTick(() => {
-      console.log(this.$refs.table.$el.clientHeight, this.$refs.table)
       this.height = this.$refs.table.$el.clientHeight
     })
   },

+ 35 - 11
src/views/dataOrigin/rdbmsDataSource/components/edit.vue

@@ -6,14 +6,12 @@
     </div> -->
     <MForm ref="formData" :items="formData" v-model="formValues">
       <div class="pa-2 d-flex align-center justify-center">
-        <v-btn @click="handleValid" rounded color="primary" class="buttons mr-3">
-          验证
-        </v-btn>
-        <v-btn @click="handleTest" rounded color="warning" class="buttons mr-3">
-          连接测试
-        </v-btn>
-        <v-btn @click="handleParse" rounded color="info" class="buttons">
-          快捷解析
+        <v-btn
+          v-for="(item, index) in buttons"
+          :key="index"
+          :loading="item.loading"
+          @click="item.handler(item)" rounded :color="item.color" class="buttons mr-3">
+          {{ item.text }}
         </v-btn>
       </div>
     </MForm>
@@ -49,6 +47,26 @@ export default {
   },
   data () {
     return {
+      buttons: [
+        {
+          loading: false,
+          text: '验证',
+          color: 'primary',
+          handler: this.handleValid
+        },
+        {
+          loading: false,
+          text: '连接测试',
+          color: 'warning',
+          handler: this.handleTest
+        },
+        {
+          loading: false,
+          text: '快捷解析',
+          color: 'info',
+          handler: this.handleParse
+        }
+      ],
       loading: false,
       text: null,
       show: false,
@@ -187,7 +205,8 @@ export default {
     getQuery () {
       return this.formValues
     },
-    async handleTest () {
+    async handleTest (item) {
+      item.loading = true
       const { status, ...obj } = this.formValues
       try {
         const { data } = await datasourceConnectTest(obj)
@@ -198,19 +217,24 @@ export default {
         }
       } catch (error) {
         this.$snackbar.error(error)
+      } finally {
+        item.loading = false
       }
     },
-    async handleValid () {
+    async handleValid (item) {
       const { status, ...obj } = this.formValues
+      item.loading = true
       try {
         const { data } = await datasourceValid(obj)
         if (data.exists) {
           this.$snackbar.warning(data.message)
         } else {
-          this.$snackbar.success(data.message)
+          this.$snackbar.success('验证通过')
         }
       } catch (error) {
         this.$snackbar.error(error)
+      } finally {
+        item.loading = false
       }
     },
     handleParse () {