From 8a1ccdca26614ed988b7dc47f6541efb9bf9c83c Mon Sep 17 00:00:00 2001 From: liwei Date: Tue, 24 Aug 2021 17:57:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8F=9C=E5=8D=95=E5=88=97=E8=A1=A8=E8=BF=81?= =?UTF-8?q?=E7=A7=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mixins/ListMixin.js | 39 ++++----- src/server/system/menu.js | 7 ++ src/views/system/menu/index.vue | 139 +++++++++++++++++++++++++++++--- 3 files changed, 155 insertions(+), 30 deletions(-) create mode 100644 src/server/system/menu.js diff --git a/src/mixins/ListMixin.js b/src/mixins/ListMixin.js index 681c00a..5e26e30 100644 --- a/src/mixins/ListMixin.js +++ b/src/mixins/ListMixin.js @@ -1,6 +1,6 @@ import { get, deleteData } from "@/server/api.js"; export const ListMixin = { - data () { + data() { return { isShowDialog: '', item: null, @@ -9,43 +9,44 @@ export const ListMixin = { pageSize: 10, total: 0, }, - dataList: [], // 表格数据 + queryParams:{}, + tableData: [], // 表格数据 loading: true, // 表格loading加载 } }, - created () { + created() { this.getList() }, methods: { // 查询分页列表 - getList () { + getList() { this.loading = true - get(this.url.queryListUrl, this.pagination) - .then((res) => { - if (res.code === 200) { - this.dataList = res.data.records || [] - this.pagination.total = res.data.count + get(this.queryTableDataUrl, {...this.pagination, ...this.queryParams}) + .then(({code, data=[], count=0}) => { + if (code === 200) { + this.tableData = data || [] + this.pagination.total = count + this.loading = false + } else { + this.loading = false + } + }).catch(() => { this.loading = false - } else { - this.loading = false - } - }).catch (() => { - this.loading = false - }) + }) }, // 监听回调 - completeCallBack (data) { + completeCallBack(data) { this.isShowDialog = '' this.item = null this.getList() }, // 新增按钮操作 - handleAdd () { + handleAdd() { this.isShowDialog = 'edit' this.item = null }, // 修改按钮操作 - handleUpdate (row) { + handleUpdate(row) { this.isShowDialog = 'edit' this.item = row }, @@ -54,7 +55,7 @@ export const ListMixin = { this.isShowDialog = data }, // 删除数据 - delHanle (keyName, url) { + delHanle(keyName, url) { this.$confirm('是否确认删除"' + keyName + '"的数据项?', '警告', { confirmButtonText: '确定', cancelButtonText: '取消', diff --git a/src/server/system/menu.js b/src/server/system/menu.js new file mode 100644 index 0000000..aed2789 --- /dev/null +++ b/src/server/system/menu.js @@ -0,0 +1,7 @@ +import { post, put, get } from "../api"; +// 新增菜单 +export const addMenu = (params) =>post('/admin/menu/addmenu', params); +// 修改菜单 +export const updateMenu = (params) =>put('/admin/menu/upmenu', params); +// 查询菜单详情 +export const getMenuDetails = (params) =>get('/admin/menu/menubyid', params); \ No newline at end of file diff --git a/src/views/system/menu/index.vue b/src/views/system/menu/index.vue index 97ace20..3f17a5b 100644 --- a/src/views/system/menu/index.vue +++ b/src/views/system/menu/index.vue @@ -1,25 +1,142 @@ +