소스 검색

数据服务菜单调整

Xiao_123 19 시간 전
부모
커밋
9042b2e5f6

+ 75 - 12
src/router/routes.js

@@ -1930,27 +1930,90 @@ export default {
       urls: '',
       children: [
         {
-          hidden: 1,
+          meun: '',
+          code: '',
+          hidden: 0,
+          rootId: 972,
           icon: '',
+          remark: '',
           type: 1,
-          title: '数据服务',
-          path: '/dataService',
+          title: '数据订单',
+          local: '',
+          path: '/dataService/dataOrder',
+          urls: '',
           children: [],
-          enName: 'data Service',
+          enName: 'data Order',
+          id: 975,
           redirect: '',
+          level: 2,
+          openPath: '',
           active: '',
-          label: '数据服务',
-          sort: 0,
-          component: 'dataService',
+          label: '数据订单',
+          sort: 7,
+          parentId: 972,
+          effectiveStatus: true,
+          parentName: 'dataService',
+          component: 'dataService/dataOrder',
           meta: {
+            keepAlive: false,
+            allowClick: false,
             roles: [],
-            enName: 'data Service',
+            enName: 'data Order',
             icon: '',
-            title: '数据服务',
-            fullScreen: false
+            editModules: false,
+            title: '数据订单',
+            fullScreen: false,
+            target: false,
+            effectiveStatus: true
           },
-          name: 'index',
-          alwaysShow: 0
+          name: 'dataOrder',
+          style: '',
+          alwaysShow: 0,
+          metastr: '{"keepAlive":false,"allowClick":false,"enName":"data Order","editModules":false,"title":"数据订单","fullScreen":false,"target":false}',
+          open: null
+        },
+        {
+          meun: '',
+          code: '',
+          hidden: 0,
+          rootId: 972,
+          icon: '',
+          remark: '',
+          type: 1,
+          title: '数据产品',
+          local: '',
+          path: '/dataService/dataProduct',
+          urls: '',
+          children: [],
+          enName: 'data Product',
+          id: 975,
+          redirect: '',
+          level: 2,
+          openPath: '',
+          active: '',
+          label: '数据产品',
+          sort: 7,
+          parentId: 972,
+          effectiveStatus: true,
+          parentName: 'dataService',
+          component: 'dataService/dataProduct',
+          meta: {
+            keepAlive: false,
+            allowClick: false,
+            roles: [],
+            enName: 'data Product',
+            icon: '',
+            editModules: false,
+            title: '数据产品',
+            fullScreen: false,
+            target: false,
+            effectiveStatus: true
+          },
+          name: 'dataProduct',
+          style: '',
+          alwaysShow: 0,
+          metastr: '{"keepAlive":false,"allowClick":false,"enName":"data Product","editModules":false,"title":"数据产品","fullScreen":false,"target":false}',
+          open: null
         }
       ],
       enName: 'data service',

+ 122 - 0
src/views/dataService/dataOrder/index.vue

@@ -0,0 +1,122 @@
+<template>
+  <!-- 数据订单 -->
+  <div class="pa-3 white">
+    <m-filter :option="filter" @search="handleSearch" />
+    <table-list
+      class="mt-3"
+      :loading="loading"
+      :headers="headers"
+      :items="items"
+      :total="total"
+      :page-info="pageInfo"
+      :is-tools="true"
+      :disable-sort="true"
+      :can-delete="false"
+      :show-select="false"
+      @add="handleAdd"
+      @pageHandleChange="pageHandleChange"
+    >
+      <template #actions="{ item }">
+        <v-btn text color="success" @click="handleEdit(item)">编辑</v-btn>
+        <v-btn text color="error" @click="handleDelete(item)">删除</v-btn>
+      </template>
+    </table-list>
+  </div>
+</template>
+
+<script>
+import MFilter from '@/components/Filter'
+import TableList from '@/components/List/table'
+
+export default {
+  name: 'dataOrder',
+  components: {
+    MFilter,
+    TableList
+  },
+  data () {
+    return {
+      loading: false,
+      filter: {
+        list: [
+          { type: 'textField', value: '', label: '关键词', key: 'search', placeholder: '搜索订单信息' }
+        ]
+      },
+      headers: [
+        { text: '订单编号', value: 'order_no' },
+        { text: '订单名称', value: 'order_name' },
+        { text: '创建时间', value: 'created_at' },
+        { text: '操作', value: 'actions', align: 'center' }
+      ],
+      items: [],
+      total: 0,
+      pageInfo: {
+        size: 20,
+        current: 1
+      },
+      query: {}
+    }
+  },
+  created () {
+    this.init()
+  },
+  methods: {
+    async init () {
+      this.loading = true
+      try {
+        const params = {
+          page: this.pageInfo.current,
+          page_size: this.pageInfo.size,
+          ...this.query
+        }
+        // 移除空值
+        Object.keys(params).forEach(key => {
+          if (params[key] === '' || params[key] === null || params[key] === undefined) {
+            delete params[key]
+          }
+        })
+        // TODO: 调用数据订单API
+        // const { data } = await api.getOrders(params)
+        // this.total = data.pagination.total
+        // this.items = data.list
+        this.items = []
+        this.total = 0
+      } catch (error) {
+        this.$snackbar.error(error)
+      } finally {
+        this.loading = false
+      }
+    },
+    handleSearch (obj) {
+      Object.assign(this.query, obj)
+      this.pageInfo.current = 1
+      this.init()
+    },
+    pageHandleChange (index) {
+      this.pageInfo.current = index
+      this.init()
+    },
+    handleAdd () {
+      // TODO: 新增订单
+      this.$snackbar.info('功能开发中')
+    },
+    handleEdit (item) {
+      // TODO: 编辑订单
+      this.$snackbar.info('功能开发中')
+    },
+    async handleDelete (item) {
+      try {
+        await this.$confirm('删除确认', '确定要删除该订单吗?此操作不可恢复。')
+        // TODO: 调用删除API
+        // await api.deleteOrder(item.id)
+        this.$snackbar.success('删除成功')
+        this.init()
+      } catch (error) {
+        if (error !== 'cancel') {
+          this.$snackbar.error(error)
+        }
+      }
+    }
+  }
+}
+</script>

+ 0 - 0
src/views/dataService/components/PreviewDialog.vue → src/views/dataService/dataProduct/components/PreviewDialog.vue


+ 0 - 0
src/views/dataService/components/RegisterForm.vue → src/views/dataService/dataProduct/components/RegisterForm.vue


+ 2 - 2
src/views/dataService/index.vue → src/views/dataService/dataProduct/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <!-- 数据服务 -->
+  <!-- 数据产品 -->
   <div class="pa-3 white">
     <m-filter :option="filter" @search="handleSearch" />
     <table-list
@@ -61,7 +61,7 @@ import { api } from '@/api/dataService'
 import { formatDate } from '@/utils/date'
 
 export default {
-  name: 'dataService',
+  name: 'dataProduct',
   components: {
     MFilter,
     TableList,