From 8ac30411bb33e406e0ed5a2b6e2edaf7ab59f11f Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期六, 23 十一月 2024 17:10:21 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- admin/src/views/Inspection/area.vue | 107 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 107 insertions(+), 0 deletions(-) diff --git a/admin/src/views/Inspection/area.vue b/admin/src/views/Inspection/area.vue index e69de29..1068c9c 100644 --- a/admin/src/views/Inspection/area.vue +++ b/admin/src/views/Inspection/area.vue @@ -0,0 +1,107 @@ +<template> + <TableLayout> + <template v-slot:table-wrap> + <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> + <li><el-button type="primary" @click="handleEdit()" icon="el-icon-plus" + v-permissions="['business:category:create']">鏂板缓</el-button></li> + </ul> + <el-table row-key="id" :tree-props="{ children: 'childCategoryList' }" v-loading="isWorking.search" + :data="dataList" stripe @selection-change="handleSelectionChange"> + <el-table-column prop="name" label="宸ュ崟鍖哄煙" min-width="100px"></el-table-column> + <!-- <el-table-column prop="parentName" label="鎵�灞炲垎绫�" min-width="100px"></el-table-column> --> + <el-table-column prop="sortnum" label="鎺掑簭鐮�" min-width="100px"></el-table-column> + <el-table-column v-if="containPermissions(['business:category:update', 'business:category:delete'])" label="鎿嶄綔" + min-width="120" fixed="right"> + <template slot-scope="{row}"> + <el-button type="text" @click="handleEdit(row)" icon="el-icon-edit" + v-permissions="['business:category:update']">缂栬緫</el-button> + <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" + v-permissions="['business:category:delete']">鍒犻櫎</el-button> + </template> + </el-table-column> + </el-table> + <pagination @size-change="handleSizeChange" @current-change="getList" :pagination="tableData.pagination"> + </pagination> + </template> + <!-- 鏂板缓/淇敼 --> + <OperaCategoryWindow v-if="isShowEdit" @close="isShowEdit = false" ref="operaCategoryWindow" @success="getList" /> + </TableLayout> +</template> + +<script> +import BaseTable from '@/components/base/BaseTable' +import TableLayout from '@/layouts/TableLayout' +import Pagination from '@/components/common/Pagination' +import OperaCategoryWindow from './components/areaCate.vue' +import { fetchList, deleteById } from '@/api/business/category.js' +export default { + name: 'Category', + extends: BaseTable, + components: { TableLayout, Pagination, OperaCategoryWindow }, + data() { + return { + // 鎼滅储 + filters: { + parentId: '' + }, + isShowEdit: false, + loading: false, + pagination: { + pageSize: 10, + page: 1, + total: 0, + }, + dataList: [] + } + }, + created() { + this.config({ + module: '杞﹁締淇℃伅琛�', + api: '/business/category', + 'field.id': 'id', + 'field.main': 'id' + }) + this.getList() + }, + methods: { + handleEdit(row) { + this.isShowEdit = true + let str = row && row.id ? '缂栬緫鍖哄煙' : '鏂板缓鍖哄煙' + this.$nextTick(() => { + this.$refs.operaCategoryWindow.open(str) + this.$refs.operaCategoryWindow.getList() + if (row && row.id) { + this.$refs.operaCategoryWindow.getDetail(row.id) + } + }) + }, + deleteById(row) { + this.$confirm(`鎮ㄧ‘璁よ鍒犻櫎璇ュ尯鍩熷悧`, '娓╅Θ鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + deleteById(row.id).then(res => { + this.getList() + }) + }) + + }, + getList() { + const { pagination, filters } = this + this.loading = true + fetchList({ + model: { ...filters, type: 4 }, + capacity: pagination.pageSize, + page: pagination.page, + }).then(res => { + this.loading = false + this.dataList = res.records || [] + this.pagination.total = res.total || 0 + }, () => { + this.loading = false + }) + }, + } +} +</script> -- Gitblit v1.9.3