瀏覽代碼

关联页面

LAPTOP-BJJ3IV5R\SIWEI 11 月之前
父節點
當前提交
c9862b0a2d

+ 44 - 0
src/api/system/filed.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询【请填写功能名称】列表
+export function listFiled(query) {
+  return request({
+    url: '/system/filed/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询【请填写功能名称】详细
+export function getFiled(id) {
+  return request({
+    url: '/system/filed/' + id,
+    method: 'get'
+  })
+}
+
+// 新增【请填写功能名称】
+export function addFiled(data) {
+  return request({
+    url: '/system/filed',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改【请填写功能名称】
+export function updateFiled(data) {
+  return request({
+    url: '/system/filed',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除【请填写功能名称】
+export function delFiled(id) {
+  return request({
+    url: '/system/filed/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/system/layer.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询【请填写功能名称】列表
+export function listLayer(query) {
+  return request({
+    url: '/system/layer/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询【请填写功能名称】详细
+export function getLayer(id) {
+  return request({
+    url: '/system/layer/' + id,
+    method: 'get'
+  })
+}
+
+// 新增【请填写功能名称】
+export function addLayer(data) {
+  return request({
+    url: '/system/layer',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改【请填写功能名称】
+export function updateLayer(data) {
+  return request({
+    url: '/system/layer',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除【请填写功能名称】
+export function delLayer(id) {
+  return request({
+    url: '/system/layer/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/system/relation.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询【请填写功能名称】列表
+export function listRelation(query) {
+  return request({
+    url: '/system/relation/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询【请填写功能名称】详细
+export function getRelation(id) {
+  return request({
+    url: '/system/relation/' + id,
+    method: 'get'
+  })
+}
+
+// 新增【请填写功能名称】
+export function addRelation(data) {
+  return request({
+    url: '/system/relation',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改【请填写功能名称】
+export function updateRelation(data) {
+  return request({
+    url: '/system/relation',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除【请填写功能名称】
+export function delRelation(id) {
+  return request({
+    url: '/system/relation/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/system/table.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询【请填写功能名称】列表
+export function listTable(query) {
+  return request({
+    url: '/system/table/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询【请填写功能名称】详细
+export function getTable(id) {
+  return request({
+    url: '/system/table/' + id,
+    method: 'get'
+  })
+}
+
+// 新增【请填写功能名称】
+export function addTable(data) {
+  return request({
+    url: '/system/table',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改【请填写功能名称】
+export function updateTable(data) {
+  return request({
+    url: '/system/table',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除【请填写功能名称】
+export function delTable(id) {
+  return request({
+    url: '/system/table/' + id,
+    method: 'delete'
+  })
+}

+ 371 - 0
src/views/system/filed/index.vue

@@ -0,0 +1,371 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="字段的名称" prop="filedName">
+        <el-input
+          v-model="queryParams.filedName"
+          placeholder="请输入字段的名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="字段的中文名称" prop="filedZh">
+        <el-input
+          v-model="queryParams.filedZh"
+          placeholder="请输入字段的中文名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="字段的注释" prop="filedDescribe">
+        <el-input
+          v-model="queryParams.filedDescribe"
+          placeholder="请输入字段的注释"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="字段类型长度,只支持varchar,numeric.¶字段varchar,输入10¶字段numeric 输入10,2" prop="filedTypeLen">
+        <el-input
+          v-model="queryParams.filedTypeLen"
+          placeholder="请输入字段类型长度,只支持varchar,numeric.¶字段varchar,输入10¶字段numeric 输入10,2"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="字段类型对应的字典类型" prop="filedDict">
+        <el-input
+          v-model="queryParams.filedDict"
+          placeholder="请输入字段类型对应的字典类型"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="删除时间" prop="deleteTime">
+        <el-date-picker clearable
+          v-model="queryParams.deleteTime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择删除时间">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item label="创建人" prop="createUserId">
+        <el-input
+          v-model="queryParams.createUserId"
+          placeholder="请输入创建人"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="删除人" prop="deleteUserId">
+        <el-input
+          v-model="queryParams.deleteUserId"
+          placeholder="请输入删除人"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['system:filed:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['system:filed:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:filed:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:filed:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="filedList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="主键ID(使用UUID)" align="center" prop="id" />
+      <el-table-column label="字段的名称" align="center" prop="filedName" />
+      <el-table-column label="字段的中文名称" align="center" prop="filedZh" />
+      <el-table-column label="字段的注释" align="center" prop="filedDescribe" />
+      <el-table-column label="字段的类型,varchar,numeric,timestamp,date,geometry(入库会统一为4326)" align="center" prop="filedType" />
+      <el-table-column label="字段类型长度,只支持varchar,numeric.¶字段varchar,输入10¶字段numeric 输入10,2" align="center" prop="filedTypeLen" />
+      <el-table-column label="字段类型对应的字典类型" align="center" prop="filedDict" />
+      <el-table-column label="删除时间" align="center" prop="deleteTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.deleteTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="创建人" align="center" prop="createUserId" />
+      <el-table-column label="删除人" align="center" prop="deleteUserId" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['system:filed:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:filed:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改【请填写功能名称】对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="字段的名称" prop="filedName">
+          <el-input v-model="form.filedName" placeholder="请输入字段的名称" />
+        </el-form-item>
+        <el-form-item label="字段的中文名称" prop="filedZh">
+          <el-input v-model="form.filedZh" placeholder="请输入字段的中文名称" />
+        </el-form-item>
+        <el-form-item label="字段的注释" prop="filedDescribe">
+          <el-input v-model="form.filedDescribe" placeholder="请输入字段的注释" />
+        </el-form-item>
+        <el-form-item label="字段类型长度,只支持varchar,numeric.¶字段varchar,输入10¶字段numeric 输入10,2" prop="filedTypeLen">
+          <el-input v-model="form.filedTypeLen" placeholder="请输入字段类型长度,只支持varchar,numeric.¶字段varchar,输入10¶字段numeric 输入10,2" />
+        </el-form-item>
+        <el-form-item label="字段类型对应的字典类型" prop="filedDict">
+          <el-input v-model="form.filedDict" placeholder="请输入字段类型对应的字典类型" />
+        </el-form-item>
+        <el-form-item label="删除时间" prop="deleteTime">
+          <el-date-picker clearable
+            v-model="form.deleteTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择删除时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="创建人" prop="createUserId">
+          <el-input v-model="form.createUserId" placeholder="请输入创建人" />
+        </el-form-item>
+        <el-form-item label="删除人" prop="deleteUserId">
+          <el-input v-model="form.deleteUserId" placeholder="请输入删除人" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listFiled, getFiled, delFiled, addFiled, updateFiled } from "@/api/system/filed";
+
+export default {
+  name: "Filed",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 【请填写功能名称】表格数据
+      filedList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        filedName: null,
+        filedZh: null,
+        filedDescribe: null,
+        filedType: null,
+        filedTypeLen: null,
+        filedDict: null,
+        deleteTime: null,
+        createUserId: null,
+        deleteUserId: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        filedName: [
+          { required: true, message: "字段的名称不能为空", trigger: "blur" }
+        ],
+        filedZh: [
+          { required: true, message: "字段的中文名称不能为空", trigger: "blur" }
+        ],
+        filedType: [
+          { required: true, message: "字段的类型,varchar,numeric,timestamp,date,geometry(入库会统一为4326)不能为空", trigger: "change" }
+        ],
+        createTime: [
+          { required: true, message: "创建时间不能为空", trigger: "blur" }
+        ],
+        createUserId: [
+          { required: true, message: "创建人不能为空", trigger: "blur" }
+        ],
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询【请填写功能名称】列表 */
+    getList() {
+      this.loading = true;
+      listFiled(this.queryParams).then(response => {
+        this.filedList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        filedName: null,
+        filedZh: null,
+        filedDescribe: null,
+        filedType: null,
+        filedTypeLen: null,
+        filedDict: null,
+        createTime: null,
+        deleteTime: null,
+        createUserId: null,
+        deleteUserId: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加【请填写功能名称】";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getFiled(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改【请填写功能名称】";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateFiled(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addFiled(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除【请填写功能名称】编号为"' + ids + '"的数据项?').then(function() {
+        return delFiled(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('system/filed/export', {
+        ...this.queryParams
+      }, `filed_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 351 - 0
src/views/system/layer/index.vue

@@ -0,0 +1,351 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="父级ID" prop="pid">
+        <el-input
+          v-model="queryParams.pid"
+          placeholder="请输入父级ID"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="名称" prop="name">
+        <el-input
+          v-model="queryParams.name"
+          placeholder="请输入名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="图层ID" prop="layerId">
+        <el-input
+          v-model="queryParams.layerId"
+          placeholder="请输入图层ID"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="数据库表id" prop="tableId">
+        <el-input
+          v-model="queryParams.tableId"
+          placeholder="请输入数据库表id"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="创建人" prop="createUserId">
+        <el-input
+          v-model="queryParams.createUserId"
+          placeholder="请输入创建人"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="排序" prop="sort">
+        <el-input
+          v-model="queryParams.sort"
+          placeholder="请输入排序"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="分组字段" prop="groupcolumn">
+        <el-input
+          v-model="queryParams.groupcolumn"
+          placeholder="请输入分组字段"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['system:layer:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['system:layer:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:layer:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:layer:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="layerList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="id" align="center" prop="id" />
+      <el-table-column label="父级ID" align="center" prop="pid" />
+      <el-table-column label="名称" align="center" prop="name" />
+      <el-table-column label="图层ID" align="center" prop="layerId" />
+      <el-table-column label="数据库表id" align="center" prop="tableId" />
+      <el-table-column label="默认显示选中 0默认" align="center" prop="defaultType" />
+      <el-table-column label="创建人" align="center" prop="createUserId" />
+      <el-table-column label="排序" align="center" prop="sort" />
+      <el-table-column label="分组字段" align="center" prop="groupcolumn" />
+      <el-table-column label="0 前端显示 1可选择但前端不显示" align="center" prop="stateType" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['system:layer:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:layer:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改【请填写功能名称】对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="父级ID" prop="pid">
+          <el-input v-model="form.pid" placeholder="请输入父级ID" />
+        </el-form-item>
+        <el-form-item label="名称" prop="name">
+          <el-input v-model="form.name" placeholder="请输入名称" />
+        </el-form-item>
+        <el-form-item label="图层ID" prop="layerId">
+          <el-input v-model="form.layerId" placeholder="请输入图层ID" />
+        </el-form-item>
+        <el-form-item label="数据库表id" prop="tableId">
+          <el-input v-model="form.tableId" placeholder="请输入数据库表id" />
+        </el-form-item>
+        <el-form-item label="创建人" prop="createUserId">
+          <el-input v-model="form.createUserId" placeholder="请输入创建人" />
+        </el-form-item>
+        <el-form-item label="排序" prop="sort">
+          <el-input v-model="form.sort" placeholder="请输入排序" />
+        </el-form-item>
+        <el-form-item label="分组字段" prop="groupcolumn">
+          <el-input v-model="form.groupcolumn" placeholder="请输入分组字段,参数为3个用逗号分隔例如【a,b,c】。a用于分组,b用于汇总,c是空间数据" />
+        </el-form-item>
+        <el-form-item label="前端是否显示" prop="stateType">
+          <el-input v-model="form.stateType" placeholder="前端是否显示,0 前端显示 1可选择但前端不显示" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listLayer, getLayer, delLayer, addLayer, updateLayer } from "@/api/system/layer";
+
+export default {
+  name: "Layer",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 【请填写功能名称】表格数据
+      layerList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        pid: null,
+        name: null,
+        layerId: null,
+        tableId: null,
+        defaultType: null,
+        createUserId: null,
+        sort: null,
+        groupcolumn: null,
+        stateType: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        name: [
+          { required: true, message: "名称不能为空", trigger: "blur" }
+        ],
+        tableId: [
+          { required: true, message: "数据库表id不能为空", trigger: "blur" }
+        ],
+        createTime: [
+          { required: true, message: "创建时间不能为空", trigger: "blur" }
+        ],
+        createUserId: [
+          { required: true, message: "创建人不能为空", trigger: "blur" }
+        ],
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询【请填写功能名称】列表 */
+    getList() {
+      this.loading = true;
+      listLayer(this.queryParams).then(response => {
+        this.layerList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        pid: null,
+        name: null,
+        layerId: null,
+        tableId: null,
+        defaultType: null,
+        createTime: null,
+        createUserId: null,
+        sort: null,
+        groupcolumn: null,
+        stateType: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加【请填写功能名称】";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getLayer(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改【请填写功能名称】";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateLayer(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addLayer(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除【请填写功能名称】编号为"' + ids + '"的数据项?').then(function() {
+        return delLayer(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('system/layer/export', {
+        ...this.queryParams
+      }, `layer_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 332 - 0
src/views/system/relation/index.vue

@@ -0,0 +1,332 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="表的ID" prop="tableId">
+        <el-input
+          v-model="queryParams.tableId"
+          placeholder="请输入表的ID"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="字段的id" prop="filedId">
+        <el-input
+          v-model="queryParams.filedId"
+          placeholder="请输入字段的id"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="是否必需 0必需" prop="isRequited">
+        <el-input
+          v-model="queryParams.isRequited"
+          placeholder="请输入是否必需 0必需"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="前端是否显示0显示 其他不显示" prop="isDisplay">
+        <el-input
+          v-model="queryParams.isDisplay"
+          placeholder="请输入前端是否显示0显示 其他不显示"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="排序" prop="sort">
+        <el-input
+          v-model="queryParams.sort"
+          placeholder="请输入排序"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="创建人" prop="createUserId">
+        <el-input
+          v-model="queryParams.createUserId"
+          placeholder="请输入创建人"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['system:relation:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['system:relation:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:relation:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:relation:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="relationList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="表的ID" align="center" prop="tableId" />
+      <el-table-column label="表名" align="center" prop="tableName" />
+      <el-table-column label="字段的id" align="center" prop="filedId" />
+      <el-table-column label="字段名" align="center" prop="filedName" />
+      <el-table-column label="是否必需 0必需" align="center" prop="isRequited" />
+      <el-table-column label="前端是否显示0显示 其他不显示" align="center" prop="isDisplay" />
+      <el-table-column label="排序" align="center" prop="sort" />
+      <el-table-column label="创建人" align="center" prop="createUserId" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['system:relation:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:relation:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改【请填写功能名称】对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="表的ID" prop="tableId">
+          <el-input v-model="form.tableId" placeholder="请输入表的ID" />
+        </el-form-item>
+        <el-form-item label="字段的id" prop="filedId">
+          <el-input v-model="form.filedId" placeholder="请输入字段的id" />
+        </el-form-item>
+        <el-form-item label="是否必需 0必需" prop="isRequited">
+          <el-input v-model="form.isRequited" placeholder="请输入是否必需 0必需" />
+        </el-form-item>
+        <el-form-item label="前端是否显示0显示 其他不显示" prop="isDisplay">
+          <el-input v-model="form.isDisplay" placeholder="请输入前端是否显示0显示 其他不显示" />
+        </el-form-item>
+        <el-form-item label="排序" prop="sort">
+          <el-input v-model="form.sort" placeholder="请输入排序" />
+        </el-form-item>
+        <el-form-item label="创建人" prop="createUserId">
+          <el-input v-model="form.createUserId" placeholder="请输入创建人" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listRelation, getRelation, delRelation, addRelation, updateRelation } from "@/api/system/relation";
+
+export default {
+  name: "Relation",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 【请填写功能名称】表格数据
+      relationList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        tableId: null,
+        filedId: null,
+        isRequited: null,
+        isDisplay: null,
+        sort: null,
+        createUserId: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        tableId: [
+          { required: true, message: "表的ID不能为空", trigger: "blur" }
+        ],
+        filedId: [
+          { required: true, message: "字段的id不能为空", trigger: "blur" }
+        ],
+        sort: [
+          { required: true, message: "排序不能为空", trigger: "blur" }
+        ],
+        createTime: [
+          { required: true, message: "创建时间不能为空", trigger: "blur" }
+        ],
+        createUserId: [
+          { required: true, message: "创建人不能为空", trigger: "blur" }
+        ]
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询【请填写功能名称】列表 */
+    getList() {
+      this.loading = true;
+      listRelation(this.queryParams).then(response => {
+        this.relationList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        tableId: null,
+        filedId: null,
+        isRequited: null,
+        isDisplay: null,
+        sort: null,
+        createTime: null,
+        createUserId: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加【请填写功能名称】";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getRelation(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改【请填写功能名称】";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateRelation(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addRelation(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除【请填写功能名称】编号为"' + ids + '"的数据项?').then(function() {
+        return delRelation(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('system/relation/export', {
+        ...this.queryParams
+      }, `relation_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 360 - 0
src/views/system/table/index.vue

@@ -0,0 +1,360 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="表的名称" prop="tableName">
+        <el-input
+          v-model="queryParams.tableName"
+          placeholder="请输入表的名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="表的注释" prop="tableDescribe">
+        <el-input
+          v-model="queryParams.tableDescribe"
+          placeholder="请输入表的注释"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="表是否存在 0存在,其他不存在" prop="isExist">
+        <el-input
+          v-model="queryParams.isExist"
+          placeholder="请输入表是否存在 0存在,其他不存在"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="删除时间" prop="deleteTime">
+        <el-date-picker clearable
+          v-model="queryParams.deleteTime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择删除时间">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item label="创建人" prop="createUserId">
+        <el-input
+          v-model="queryParams.createUserId"
+          placeholder="请输入创建人"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="删除人(对应表真实删除)" prop="deleteUserId">
+        <el-input
+          v-model="queryParams.deleteUserId"
+          placeholder="请输入删除人(对应表真实删除)"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="版本号" prop="version">
+        <el-input
+          v-model="queryParams.version"
+          placeholder="请输入版本号"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['system:table:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['system:table:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:table:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:table:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="tableList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="主键ID(使用UUID)" align="center" prop="id" />
+      <el-table-column label="表的名称" align="center" prop="tableName" />
+      <el-table-column label="表的注释" align="center" prop="tableDescribe" />
+      <el-table-column label="表的类型 0系统 1外部" align="center" prop="tableType" />
+      <el-table-column label="表是否存在 0存在,其他不存在" align="center" prop="isExist" />
+      <el-table-column label="删除时间" align="center" prop="deleteTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.deleteTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="创建人" align="center" prop="createUserId" />
+      <el-table-column label="删除人(对应表真实删除)" align="center" prop="deleteUserId" />
+      <el-table-column label="版本号" align="center" prop="version" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['system:table:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:table:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改【请填写功能名称】对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="表的名称" prop="tableName">
+          <el-input v-model="form.tableName" placeholder="请输入表的名称" />
+        </el-form-item>
+        <el-form-item label="表的注释" prop="tableDescribe">
+          <el-input v-model="form.tableDescribe" placeholder="请输入表的注释" />
+        </el-form-item>
+        <el-form-item label="表是否存在 0存在,其他不存在" prop="isExist">
+          <el-input v-model="form.isExist" placeholder="请输入表是否存在 0存在,其他不存在" />
+        </el-form-item>
+        <el-form-item label="删除时间" prop="deleteTime">
+          <el-date-picker clearable
+            v-model="form.deleteTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择删除时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="创建人" prop="createUserId">
+          <el-input v-model="form.createUserId" placeholder="请输入创建人" />
+        </el-form-item>
+        <el-form-item label="删除人(对应表真实删除)" prop="deleteUserId">
+          <el-input v-model="form.deleteUserId" placeholder="请输入删除人(对应表真实删除)" />
+        </el-form-item>
+        <el-form-item label="版本号" prop="version">
+          <el-input v-model="form.version" placeholder="请输入版本号" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listTable, getTable, delTable, addTable, updateTable } from "@/api/system/table";
+
+export default {
+  name: "Table",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 【请填写功能名称】表格数据
+      tableList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        tableName: null,
+        tableDescribe: null,
+        tableType: null,
+        isExist: null,
+        deleteTime: null,
+        createUserId: null,
+        deleteUserId: null,
+        version: null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        tableName: [
+          { required: true, message: "表的名称不能为空", trigger: "blur" }
+        ],
+        tableType: [
+          { required: true, message: "表的类型 0系统 1外部不能为空", trigger: "change" }
+        ],
+        isExist: [
+          { required: true, message: "表是否存在 0存在,其他不存在不能为空", trigger: "blur" }
+        ],
+        createTime: [
+          { required: true, message: "创建时间不能为空", trigger: "blur" }
+        ],
+        createUserId: [
+          { required: true, message: "创建人不能为空", trigger: "blur" }
+        ],
+        version: [
+          { required: true, message: "版本号不能为空", trigger: "blur" }
+        ]
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询【请填写功能名称】列表 */
+    getList() {
+      this.loading = true;
+      listTable(this.queryParams).then(response => {
+        this.tableList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        tableName: null,
+        tableDescribe: null,
+        tableType: null,
+        isExist: null,
+        createTime: null,
+        deleteTime: null,
+        createUserId: null,
+        deleteUserId: null,
+        version: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加【请填写功能名称】";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getTable(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改【请填写功能名称】";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateTable(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addTable(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除【请填写功能名称】编号为"' + ids + '"的数据项?').then(function() {
+        return delTable(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('system/table/export', {
+        ...this.queryParams
+      }, `table_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>