From 25aace375476ad7f73089cac6bfed606828c5371 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期四, 21 十一月 2024 09:04:26 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- admin/src/views/workorder/workorderCate.vue | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 115 insertions(+), 0 deletions(-) diff --git a/admin/src/views/workorder/workorderCate.vue b/admin/src/views/workorder/workorderCate.vue index e69de29..a86289e 100644 --- a/admin/src/views/workorder/workorderCate.vue +++ b/admin/src/views/workorder/workorderCate.vue @@ -0,0 +1,115 @@ +<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> + <li v-permissions="['business:category:exportExcel']"><el-button type="primary" + @click="exportExcel">瀵煎嚭</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="remark" label="澶囨敞" min-width="100px"></el-table-column> + <!-- <el-table-column prop="status" label="鐘舵��" min-width="100px"> + <template slot-scope="{row}"> + <span v-if="row.status === 0">鍚敤</span> + <span v-if="row.status === 1">绂佺敤</span> + </template> +</el-table-column> --> + <el-table-column prop="createDate" 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/OperaCategoryWindow' +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 }, + 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