fix: base 菜单删除进行刷新

This commit is contained in:
caoqianming 2024-03-12 08:54:29 +08:00
parent 47b34cf175
commit 50148b4e3a
1 changed files with 22 additions and 86 deletions

View File

@ -2,30 +2,15 @@
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"> <div class="left-panel">
<el-button <el-button type="primary" icon="el-icon-plus" @click="addMenu"></el-button>
type="primary"
icon="el-icon-plus"
@click="addMenu"
></el-button>
</div> </div>
</el-header> </el-header>
<el-main class="nopadding"> <el-main class="nopadding">
<scTable <scTable ref="table" :isTree="true" :apiObj="apiObj" :params="params" row-key="id"
ref="table" @selection-change="selectionChange" hidePagination>
:isTree="true"
:apiObj="apiObj"
:params="params"
row-key="id"
@selection-change="selectionChange"
hidePagination
>
<!-- <el-table-column type="selection" width="50"></el-table-column> --> <!-- <el-table-column type="selection" width="50"></el-table-column> -->
<el-table-column label="#" type="index" width="50"></el-table-column> <el-table-column label="#" type="index" width="50"></el-table-column>
<el-table-column <el-table-column label="菜单名称" prop="name" min-width="200"></el-table-column>
label="菜单名称"
prop="name"
min-width="200"
></el-table-column>
<el-table-column label="类型" prop="type" min-width="200"> <el-table-column label="类型" prop="type" min-width="200">
<template #default="scope"> <template #default="scope">
<span>{{ types[scope.row.type] }}</span> <span>{{ types[scope.row.type] }}</span>
@ -36,43 +21,23 @@
<el-tag v-for="i in scope.row.codes" v-bind:key="i">{{ i }}</el-tag> <el-tag v-for="i in scope.row.codes" v-bind:key="i">{{ i }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="排序" prop="sort" min-width="200"></el-table-column>
label="排序"
prop="sort"
min-width="200"
></el-table-column>
<el-table-column label="操作" fixed="right" align="center" width="200"> <el-table-column label="操作" fixed="right" align="center" width="200">
<template #default="scope"> <template #default="scope">
<el-button <el-button type="primary" size="small" @click="editMenu(scope.row, scope.$index)">编辑</el-button>
type="primary" <el-button type="danger" size="small" @click="delMenu(scope.row.id)">删除</el-button>
size="small"
@click="editMenu(scope.row, scope.$index)"
>编辑</el-button
>
<el-button
type="danger"
size="small"
@click="delMenu(scope.row.id)"
>删除</el-button
>
<!--<el-popconfirm title="确定删除吗?" @confirm="delMenu(scope.row, scope.$index)"> <!--<el-popconfirm title="确定删除吗?" @confirm="delMenu(scope.row, scope.$index)">
<template #reference> <template #reference>
<el-button link size="small">删除</el-button> <el-button link size="small">删除</el-button>
</template> </template>
</el-popconfirm>--> </el-popconfirm>-->
</template> </template>
</el-table-column> </el-table-column>
</scTable> </scTable>
</el-main> </el-main>
</el-container> </el-container>
<el-dialog :title="titleMap[type]" v-model="limitedVisible" :width="600"> <el-dialog :title="titleMap[type]" v-model="limitedVisible" :width="600">
<el-form <el-form :model="addForm" :rules="rules" ref="addForm" label-width="100px" label-position="right">
:model="addForm"
:rules="rules"
ref="addForm"
label-width="100px"
label-position="right"
>
<el-form-item label="类型" prop="type"> <el-form-item label="类型" prop="type">
<el-radio-group v-model="addForm.type"> <el-radio-group v-model="addForm.type">
<el-radio :label="10">目录</el-radio> <el-radio :label="10">目录</el-radio>
@ -85,49 +50,23 @@
</el-form-item> </el-form-item>
<el-form-item label="标识"> <el-form-item label="标识">
<!-- <el-input v-model="codes" clearable style="width: 90%;"></el-input> --> <!-- <el-input v-model="codes" clearable style="width: 90%;"></el-input> -->
<el-select <el-select v-model="addForm.codes" multiple filterable allow-create default-first-option
v-model="addForm.codes" :reserve-keyword="false" placeholder="权限标识(回车添加多个)" style="width: 100%">
multiple <el-option v-for="item in permCodes" :key="item" :label="item" :value="item" />
filterable
allow-create
default-first-option
:reserve-keyword="false"
placeholder="权限标识(回车添加多个)"
style="width: 100%"
>
<el-option
v-for="item in permCodes"
:key="item"
:label="item"
:value="item"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="父级"> <el-form-item label="父级">
<el-cascader <el-cascader v-model="addForm.parent" :options="group" :props="groupsProps" :show-all-levels="false" clearable
v-model="addForm.parent" style="width: 100%" @change="handleChange"></el-cascader>
:options="group"
:props="groupsProps"
:show-all-levels="false"
clearable
style="width: 100%"
@change="handleChange"
></el-cascader>
</el-form-item> </el-form-item>
<el-form-item label="排序"> <el-form-item label="排序">
<el-input-number <el-input-number v-model="addForm.sort" controls-position="right" :min="1"
v-model="addForm.sort" style="width: 100%"></el-input-number>
controls-position="right"
:min="1"
style="width: 100%"
></el-input-number>
</el-form-item> </el-form-item>
</el-form> </el-form>
<template #footer> <template #footer>
<el-button @click="limitedVisible = false"> </el-button> <el-button @click="limitedVisible = false"> </el-button>
<el-button type="primary" :loading="isSaving" @click="submitHandle()" <el-button type="primary" :loading="isSaving" @click="submitHandle()"> </el-button>
> </el-button
>
</template> </template>
</el-dialog> </el-dialog>
</template> </template>
@ -232,12 +171,7 @@ export default {
confirmButtonClass: "el-button--danger", confirmButtonClass: "el-button--danger",
}).then(() => { }).then(() => {
this.$API.system.permission.delete.req(id).then((res) => { this.$API.system.permission.delete.req(id).then((res) => {
if (res.err_msg) { this.$refs.table.refresh();
this.$message.error(res.err_msg);
this.$refs.table.refresh();
} else {
this.$message.success("操作成功");
}
}); });
}); });
}, },
@ -280,8 +214,8 @@ export default {
}, },
// //
handleQuery() { handleQuery() {
this.$refs.table.queryData(this.query) this.$refs.table.queryData(this.query)
}, },
// //
handleSaveSuccess(data, mode) { handleSaveSuccess(data, mode) {
if (mode == "add") { if (mode == "add") {
@ -306,6 +240,7 @@ export default {
right: 0; right: 0;
top: 0; top: 0;
} }
.formSaveButton, .formSaveButton,
.formDelButton { .formDelButton {
padding: 0; padding: 0;
@ -318,6 +253,7 @@ export default {
left: 20px; left: 20px;
top: 0; top: 0;
} }
.formDelButton { .formDelButton {
left: 60px; left: 60px;
} }