From 97158794d69fd2beee1bf27577aa7cadea8d847d Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 04 二月 2026 16:08:45 +0800
Subject: [PATCH] 优化
---
admin/src/views/business/categoryField.vue | 64 +++++++++++++++++++++++++++++++
1 files changed, 63 insertions(+), 1 deletions(-)
diff --git a/admin/src/views/business/categoryField.vue b/admin/src/views/business/categoryField.vue
index 3b6135c..0b0b6bd 100644
--- a/admin/src/views/business/categoryField.vue
+++ b/admin/src/views/business/categoryField.vue
@@ -14,7 +14,7 @@
<template v-slot:table-wrap>
<ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']">
<li><el-button type="primary" @click="$refs.operaCategoryWindow.open('鏂板缓鎿呴暱棰嗗煙',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">鏂板缓</el-button></li>
- <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button></li>
+ <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button></li>
</ul>
<el-table
:height="tableHeightNew"
@@ -88,6 +88,68 @@
this.search()
},
methods: {
+ deleteById (row, childConfirm = true, call) {
+ this.__checkApi()
+ let message = `纭鍒犻櫎鎿呴暱棰嗗煙鏁版嵁鍚�?`
+ if (childConfirm && row.children != null && row.children.length > 0) {
+ message = `纭鍒犻櫎鎿呴暱棰嗗煙鏁版嵁鍚�?`
+ }
+ this.$dialog.deleteConfirm(message)
+ .then(() => {
+ this.isWorking.delete = true
+ this.api.deleteById(row[this.configData['field.id']])
+ .then(() => {
+ this.__afterDelete()
+ if (call) {
+ call()
+ }
+ })
+ .catch(e => {
+ this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.isWorking.delete = false
+ })
+ })
+ .catch(() => {})
+ },
+ deleteByIdInBatch (childConfirm = true, call) {
+ this.__checkApi()
+ if (this.tableData.selectedRows.length === 0) {
+ this.$tip.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�')
+ return
+ }
+ let message = `纭鍒犻櫎鎿呴暱棰嗗煙鏁版嵁鍚�?`
+ if (childConfirm) {
+ const containChildrenRows = []
+ for (const row of this.tableData.selectedRows) {
+ if (row.children != null && row.children.length > 0) {
+ containChildrenRows.push(row[this.configData['field.main']])
+ }
+ }
+ if (containChildrenRows.length > 0) {
+ message = `纭鍒犻櫎鎿呴暱棰嗗煙鏁版嵁鍚�?`
+ }
+ }
+ this.$dialog.deleteConfirm(message)
+ .then(() => {
+ this.isWorking.delete = true
+ this.api.deleteByIdInBatch(this.tableData.selectedRows.map(row => row[this.configData['field.id']]).join(','))
+ .then(() => {
+ this.__afterDelete(this.tableData.selectedRows.length)
+ if (call) {
+ call()
+ }
+ })
+ .catch(e => {
+ this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.isWorking.delete = false
+ })
+ })
+ .catch(() => {})
+ },
isChangeSelected(row,index){
// if(row.isFixed ==1) {
// return false
--
Gitblit v1.9.3