ZaiZai před 1 rokem
rodič
revize
9adb2e1e2d

+ 0 - 15
src/utils/tools.js

@@ -67,21 +67,6 @@ export const actionConfirm = (cbk) => {
     })
 }
 
-//删除提醒
-export const delMessage = (cbk) => {
-    window?.$messageBox?.alert('请谨慎考虑后,确认是否需要删除?', '删除提醒', {
-        showCancelButton: true,
-        confirmButtonText: '确认删除',
-        cancelButtonText: '取消',
-        type: 'warning',
-        callback: (action) => {
-            if (action === 'confirm') {
-                cbk()
-            }
-        },
-    })
-}
-
 //动态加载线上js文件
 export const addDocumentsJs = () => {
     return new Promise((resolve) => {

+ 18 - 13
src/views/authority/modules/api/auth.vue

@@ -19,7 +19,7 @@
                     <template #scopeType="{ row }">{{ getScopeTypeName(row) }}</template>
                     <template #action="{ row }">
                         <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                        <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                        <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
                     </template>
                 </hc-table>
                 <template #action>
@@ -72,7 +72,7 @@
 import { nextTick, ref, watch } from 'vue'
 import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
 import { getDictionaryData } from '~uti/tools'
-import { delMessage } from 'hc-vue3-ui'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/authority/api'
 
 const props = defineProps({
@@ -264,16 +264,16 @@ const dialogFormClose = () => {
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除
@@ -284,13 +284,18 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        resolve() //关闭弹窗的回调
         if (code === 200) {
+            instance.confirmButtonLoading = false
             window.$message.success('删除成功')
             getTableData().then()
         } else {
+            instance.confirmButtonLoading = false
             window.$message.error(msg ?? '删除失败')
         }
     })

+ 20 - 13
src/views/authority/modules/data/auth.vue

@@ -19,7 +19,7 @@
                     <template #scopeType="{ row }">{{ getScopeTypeName(row) }}</template>
                     <template #action="{ row }">
                         <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                        <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                        <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
                     </template>
                 </hc-table>
                 <template #action>
@@ -87,7 +87,7 @@
 import { nextTick, ref, watch } from 'vue'
 import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
 import { getDictionaryData } from '~uti/tools'
-import { delMessage } from 'hc-vue3-ui'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/authority/data'
 
 const props = defineProps({
@@ -292,16 +292,16 @@ const dialogFormClose = () => {
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除
@@ -312,9 +312,16 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 22 - 14
src/views/authority/role.vue

@@ -24,7 +24,7 @@
                 <el-link type="primary" @click="authRowClick(row)">权限设置</el-link>
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
                 <el-link type="success" @click="addRowClick(row)">添加</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
 
@@ -59,8 +59,8 @@
 
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
-import { delMessage } from 'hc-vue3-ui'
 import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
+import { HcDelMsg } from 'hc-vue3-ui'
 import HcRoleAuth from './modules/role/auth.vue'
 import tenantApi from '~api/system/tenant'
 import mainApi from '~api/authority/role'
@@ -238,18 +238,19 @@ const dialogClose = () => {
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
+
 //批量删除
 const delClick = () => {
     const rows = tableCheckKeys.value
@@ -258,12 +259,19 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
-            getTableData()
+            getTableData().then()
         } else {
             window.$message.error(msg ?? '删除失败')
         }

+ 11 - 12
src/views/certificate/list.vue

@@ -18,7 +18,7 @@
             </template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -34,7 +34,6 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { getArrValue } from 'js-fast-way'
-import { delMessage } from '~uti/tools'
 import HcListForm from './modules/list/form.vue'
 import adminApi from '~api/certificate/admin'
 import mainApi from '~api/certificate/list'
@@ -140,15 +139,15 @@ const registerRowClick = async (row) => {
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 </script>

+ 14 - 14
src/views/certificate/modules/admin/see.vue

@@ -39,7 +39,7 @@
                     {{ row.pfxType != -1 ? row.pfxType : '-' }}
                 </template>
                 <template #action="{ row, index }">
-                    <el-link type="danger" @click="delRowClick(row, index)">删除签名配置</el-link>
+                    <el-link v-del-com:[delRowClick]="{ row, index }" type="danger">删除签名配置</el-link>
                 </template>
             </hc-table>
         </hc-new-card>
@@ -48,9 +48,8 @@
 
 <script setup>
 import { onMounted, ref } from 'vue'
-import { getArrValue, isNullES } from 'js-fast-way'
+import { getArrValue, getObjValue, isNullES } from 'js-fast-way'
 import mainApi from '~api/certificate/admin'
-import { delMessage } from '~uti/tools.js'
 
 const props = defineProps({
     cid: {
@@ -112,17 +111,18 @@ const signPfxClick = ({ signPfxFileList }) => {
 }
 
 //删除签名配置
-const delRowClick = async (row, index) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getRoleList().then()
-            tableData.value.splice(index, 1)
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { row, index } = getObjValue(item)
+    const { code, msg } = await mainApi.del(row.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getRoleList().then()
+        tableData.value.splice(index, 1)
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 </script>
 

+ 13 - 14
src/views/home/modules/agent-charge.vue

@@ -52,7 +52,7 @@
                                 <template #dropdown>
                                     <el-dropdown-menu>
                                         <el-dropdown-item @click="openPreview(item)">立即处理</el-dropdown-item>
-                                        <el-dropdown-item @click="ignore(index)">忽略</el-dropdown-item>
+                                        <el-dropdown-item v-yes-com:[ignore]="{ index }">忽略</el-dropdown-item>
                                     </el-dropdown-menu>
                                 </template>
                             </el-dropdown>
@@ -134,7 +134,6 @@ import frame256 from '~ass/home/Frame256.png'
 import frame255 from '~ass/home/Frame255.png'
 import frameWarning from '~ass/home/warning.png'
 import { formValidate, getArrValue, getObjValue } from 'js-fast-way'
-import { actionConfirm } from '~uti/tools'
 import mainApi from '~api/home/index'
 
 const props = defineProps({
@@ -261,19 +260,19 @@ const agentDisposeSave = async () => {
 }
 
 //忽略
-const ignore = (index) => {
-    actionConfirm(async () => {
-        const { userOpinionId } = tableData.value[index]
-        const { error, code, msg } = await mainApi.isIgnore({
-            userOpinionId : userOpinionId,
-        })
-        if (!error && code === 200) {
-            //重新刷新列表
-            getLoadData(false)
-        } else {
-            window.$message.error(msg ?? '操作失败')
-        }
+const ignore = async ({ item }, resolve) => {
+    const { index } = getObjValue(item)
+    const { userOpinionId } = tableData.value[index]
+    const { error, code, msg } = await mainApi.isIgnore({
+        userOpinionId : userOpinionId,
     })
+    resolve()
+    if (!error && code === 200) {
+        //重新刷新列表
+        getLoadData(false)
+    } else {
+        window.$message.error(msg ?? '操作失败')
+    }
 }
 </script>
 

+ 20 - 13
src/views/resource/attach.vue

@@ -30,7 +30,7 @@
             <template #attachSize="{ row }">{{ getRowFilterSize(row) }}</template>
             <template #action="{ row }">
                 <el-link type="primary" :href="row.link">下载</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -49,7 +49,7 @@
 
 <script setup>
 import { onActivated, ref } from 'vue'
-import { delMessage, getHeader } from 'hc-vue3-ui'
+import { HcDelMsg, getHeader } from 'hc-vue3-ui'
 import { arrToId, filterSize, getArrValue } from 'js-fast-way'
 import mainApi from '~api/resource/attach'
 
@@ -162,16 +162,16 @@ const uploadClose = () => {
 
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve)=> {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除
@@ -182,9 +182,16 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 33 - 26
src/views/resource/oss.vue

@@ -29,9 +29,9 @@
             <template #status="{ row }">{{ row.statusName ?? '否' }}</template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
                 <el-link type="success" @click="debugRowClick(row)">调试</el-link>
-                <el-link type="primary" @click="enableRowClick(row)">启用</el-link>
+                <el-link v-yes-com:[enableRowClick]="row" type="primary">启用</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -121,10 +121,10 @@
 
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
-import { getHeader } from 'hc-vue3-ui'
-import mainApi from '~api/resource/oss'
-import { actionConfirm, delMessage, getDictionaryData } from '~uti/tools'
+import { HcDelMsg, getHeader } from 'hc-vue3-ui'
+import { getDictionaryData } from '~uti/tools'
 import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
+import mainApi from '~api/resource/oss'
 
 defineOptions({
     name: 'Oss',
@@ -320,29 +320,29 @@ const debugClose = () => {
 
 
 //启用
-const enableRowClick = (row) => {
-    actionConfirm(async () => {
-        const { code, msg } = await mainApi.enable(row.id)
-        if (code === 200) {
-            window.$message.success('启用成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '启用失败')
-        }
-    })
+const enableRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.enable(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('启用成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '启用失败')
+    }
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除
@@ -353,9 +353,16 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 32 - 24
src/views/resource/sms.vue

@@ -29,9 +29,9 @@
             <template #status="{ row }">{{ row.statusName ?? '否' }}</template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
                 <el-link type="success" @click="debugRowClick(row)">调试</el-link>
-                <el-link type="primary" @click="enableRowClick(row)">启用</el-link>
+                <el-link v-yes-com:[enableRowClick]="row" type="primary">启用</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -142,8 +142,9 @@
 
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
-import { actionConfirm, delMessage, getDictionaryData } from '~uti/tools'
+import { getDictionaryData } from '~uti/tools'
 import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/resource/sms'
 
 defineOptions({
@@ -390,29 +391,29 @@ const debugClose = () => {
 
 
 //启用
-const enableRowClick = (row) => {
-    actionConfirm(async () => {
-        const { code, msg } = await mainApi.enable(row.id)
-        if (code === 200) {
-            window.$message.success('启用成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '启用失败')
-        }
-    })
+const enableRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.enable(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('启用成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '启用失败')
+    }
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除
@@ -423,9 +424,16 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 25 - 26
src/views/system/app.vue

@@ -12,7 +12,7 @@
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
                 <el-link type="primary" @click="updateRowClick(row)">升级</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -64,7 +64,7 @@
                 </template>
                 <template #action="{ row }">
                     <el-link type="warning" @click="editUpdateRow(row)">修改</el-link>
-                    <el-link type="danger" @click="delUpdateRow(row)">删除</el-link>
+                    <el-link v-del-com:[delUpdateRow]="row" type="danger">删除</el-link>
                 </template>
             </hc-table>
             <template #footer>
@@ -135,9 +135,8 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { formValidate, getArrValue } from 'js-fast-way'
-import { delMessage } from '~uti/tools'
-import mainApi from '~api/system/app'
 import { getHeader } from 'hc-vue3-ui'
+import mainApi from '~api/system/app'
 
 defineOptions({
     name: 'App',
@@ -242,17 +241,17 @@ const editRowClick = (row) => {
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            dialogClose()
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        dialogClose()
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //提交表单
@@ -409,17 +408,17 @@ const editUpdateRow = (row) => {
 }
 
 //删除
-const delUpdateRow = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.removeDetail(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            updateDialogClose()
-            getUpdateTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delUpdateRow = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.removeDetail(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        updateDialogClose()
+        getUpdateTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //关闭升级弹窗

+ 22 - 14
src/views/system/client.vue

@@ -16,7 +16,7 @@
         >
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -103,7 +103,8 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage, reloadPage } from '~uti/tools'
+import { reloadPage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/client'
 
 defineOptions({
@@ -243,16 +244,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        reloadPage()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -262,10 +263,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             reloadPage()

+ 22 - 14
src/views/system/dept.vue

@@ -30,7 +30,7 @@
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
                 <el-link type="success" @click="addRowClick(row)">新增子项</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
 
@@ -85,10 +85,11 @@
 
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
+import { getDictionaryData, reloadPage } from '~uti/tools'
+import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/dept'
 import tenantApi from '~api/system/tenant'
-import { delMessage, getDictionaryData, reloadPage } from '~uti/tools'
-import { arrToId, formValidate, getArrValue, isNullES } from 'js-fast-way'
 
 defineOptions({
     name: 'Dept',
@@ -304,16 +305,16 @@ const dialogClose = () => {
 }
 
 //删除
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        reloadPage()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除
@@ -324,9 +325,16 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             reloadPage()

+ 21 - 14
src/views/system/dict.vue

@@ -26,7 +26,7 @@
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
                 <el-link type="primary" @click="handleRowClick(row)">配置</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -70,7 +70,7 @@
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
 import HcChildDict from './modules/dict/dict.vue'
-import { delMessage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/dict'
 
 defineOptions({
@@ -193,16 +193,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -212,10 +212,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 21 - 14
src/views/system/dictbiz.vue

@@ -26,7 +26,7 @@
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
                 <el-link type="primary" @click="handleRowClick(row)">配置</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -70,7 +70,7 @@
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
 import HcChildDictbiz from './modules/dictbiz/dictbiz.vue'
-import { delMessage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/dictbiz'
 
 defineOptions({
@@ -193,16 +193,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -212,10 +212,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 22 - 14
src/views/system/menu-top.vue

@@ -16,7 +16,7 @@
         >
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -60,7 +60,8 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage, reloadPage } from '~uti/tools'
+import { reloadPage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/menu-top'
 
 defineOptions({
@@ -170,16 +171,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        reloadPage()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -189,10 +190,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             reloadPage()

+ 22 - 15
src/views/system/menu.vue

@@ -29,7 +29,7 @@
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
                 <el-link type="success" @click="addRowClick(row)">新增子项</el-link>
                 <el-link type="primary" @click="copyRowClick(row)">复制</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
 
@@ -180,9 +180,9 @@
 import { nextTick, onActivated, ref } from 'vue'
 import { useRoute, useRouter } from 'vue-router'
 import { arrToId, formValidate, getArrValue, getObjValue } from 'js-fast-way'
-import { delMessage, reloadPage } from '~uti/tools'
+import { HcDelMsg, getHeader } from 'hc-vue3-ui'
+import { reloadPage } from '~uti/tools'
 import { getClinetAll } from '~api/other'
-import { getHeader } from 'hc-vue3-ui'
 import mainApi from '~api/system/menu'
 
 //初始组合式
@@ -398,16 +398,16 @@ const copyRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        reloadPage()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -417,10 +417,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             reloadPage()

+ 21 - 14
src/views/system/modules/dict/dict.vue

@@ -30,7 +30,7 @@
             </template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
     </hc-new-dialog>
@@ -89,7 +89,7 @@
 <script setup>
 import { nextTick, ref, watch } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/dict'
 
 const props = defineProps({
@@ -218,16 +218,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -237,10 +237,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 20 - 13
src/views/system/modules/dictbiz/dictbiz.vue

@@ -30,7 +30,7 @@
             </template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
     </hc-new-dialog>
@@ -89,7 +89,7 @@
 <script setup>
 import { nextTick, ref, watch } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/dictbiz'
 
 const props = defineProps({
@@ -218,16 +218,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -238,9 +238,16 @@ const delClick = () => {
         return false
     }
     //确认删除菜单
-    delMessage(async () => {
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 21 - 14
src/views/system/modules/tenant/package-data.vue

@@ -21,7 +21,7 @@
         >
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
     </hc-new-dialog>
@@ -52,8 +52,8 @@
 <script setup>
 import { nextTick, ref, watch } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/tenant-package'
-import { delMessage } from '~uti/tools'
 import menuApi from '~api/system/menu'
 
 //事件
@@ -157,16 +157,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -176,10 +176,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 22 - 14
src/views/system/param.vue

@@ -16,7 +16,7 @@
         >
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -47,7 +47,8 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage, reloadPage } from '~uti/tools'
+import { reloadPage } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import mainApi from '~api/system/param'
 
 defineOptions({
@@ -158,16 +159,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        reloadPage()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -177,10 +178,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             reloadPage()

+ 22 - 14
src/views/system/post.vue

@@ -33,7 +33,7 @@
             </template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -84,7 +84,8 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage, getDictionaryData } from '~uti/tools'
+import { getDictionaryData } from '~uti/tools'
+import { HcDelMsg } from 'hc-vue3-ui'
 import tenantApi from '~api/system/tenant'
 import mainApi from '~api/system/post'
 
@@ -236,16 +237,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -255,10 +256,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 21 - 15
src/views/system/tenant.vue

@@ -36,7 +36,7 @@
             </template>
             <template #action="{ row }">
                 <el-link type="warning" @click="editRowClick(row)">修改</el-link>
-                <el-link type="danger" @click="delRowClick(row)">删除</el-link>
+                <el-link v-del-com:[delRowClick]="row" type="danger">删除</el-link>
             </template>
         </hc-table>
         <template #action>
@@ -115,12 +115,11 @@
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
 import { arrToId, formValidate, getArrValue } from 'js-fast-way'
+import { HcDelMsg, getHeader } from 'hc-vue3-ui'
 import HcSettingVue from './modules/tenant/setting.vue'
 import HcDataSource from './modules/tenant/data-source.vue'
 import HcPackageData from './modules/tenant/package-data.vue'
 import HcPackage from './modules/tenant/package.vue'
-import { delMessage } from '~uti/tools'
-import { getHeader } from 'hc-vue3-ui'
 import mainApi from '~api/system/tenant'
 
 defineOptions({
@@ -246,16 +245,16 @@ const editRowClick = (row) => {
 }
 
 //删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            getTableData().then()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
+const delRowClick = async ({ item }, resolve) => {
+    const { code, msg } = await mainApi.del(item.id)
+    if (code === 200) {
+        resolve()
+        window.$message.success('删除成功')
+        getTableData().then()
+    } else {
+        resolve()
+        window.$message.error(msg ?? '删除失败')
+    }
 }
 
 //批量删除菜单
@@ -265,10 +264,17 @@ const delClick = () => {
         window.$message.warning('请选择要删除的菜单')
         return false
     }
-    //确认删除菜单
-    delMessage(async () => {
+    //确认删除
+    HcDelMsg({}, async (instance, resolve) => {
+        instance.confirmButtonLoading = true
+        instance.confirmButtonText = '删除中...'
+        //发起请求
         const ids = arrToId(rows)
         const { code, msg } = await mainApi.del(ids)
+        //关闭弹窗的回调
+        resolve()
+        instance.confirmButtonLoading = false
+        //处理结果
         if (code === 200) {
             window.$message.success('删除成功')
             getTableData().then()

+ 0 - 167
src/views/system/user.vue

@@ -4,171 +4,4 @@
 
 <script setup>
 import { nextTick, onActivated, ref } from 'vue'
-import { arrToId, formValidate, getArrValue } from 'js-fast-way'
-import { delMessage, reloadPage } from '~uti/tools'
-import roleApi from '~api/system/role'
-import mainApi from '~api/system/user'
-
-defineOptions({
-    name: 'User',
-})
-
-//激活
-onActivated(() => {
-    getTableData()
-})
-
-//搜索表单
-const searchForm = ref({ current: 1, size: 30, total: 0 })
-
-//搜索
-const searchClick = () => {
-    searchForm.value.current = 1
-    getTableData()
-}
-
-//分页
-const pageChange = ({ current, size }) => {
-    searchForm.value.current = current
-    searchForm.value.size = size
-    getTableData()
-}
-
-//表格数据
-const tableRef = ref(null)
-const tableColumn = ref([
-    { key: 'paramName', name: '参数名称' },
-    { key: 'paramKey', name: '参数键名' },
-    { key: 'paramValue', name: '参数键值' },
-    { key: 'action', name: '操作', width: 100, align: 'center' },
-])
-
-//获取表格数据
-const tableLoading = ref(true)
-const tableData = ref([])
-const getTableData = async () => {
-    tableData.value = []
-    tableLoading.value = true
-    const { error, code, data } = await mainApi.page({
-        ...searchForm.value,
-        total: null,
-    })
-    tableLoading.value = false
-    if (!error && code === 200) {
-        tableData.value = getArrValue(data['records'])
-        searchForm.value.total = data['total']
-    } else {
-        tableData.value = []
-        searchForm.value.total = 0
-    }
-}
-
-//表格被选择
-const tableCheckKeys = ref([])
-const tableCheckChange = (rows) => {
-    tableCheckKeys.value = rows
-}
-
-//新增/修改 弹窗
-const isDialogShow = ref(false)
-const dialogTitle = ref('')
-
-//菜单表单
-const formRef = ref(null)
-const formModel = ref({})
-const formRules = {
-    paramName: {
-        required: true,
-        trigger: 'blur',
-        message: '请输入参数名称',
-    },
-    paramKey: {
-        required: true,
-        trigger: 'blur',
-        message: '请输入参数键名',
-    },
-    paramValue: {
-        required: true,
-        trigger: 'blur',
-        message: '请输入参数键值',
-    },
-}
-
-//新增
-const addClick = () => {
-    dialogTitle.value = '新增参数'
-    formModel.value = {}
-    //显示表单弹窗
-    nextTick(() => {
-        isDialogShow.value = true
-    })
-}
-
-//修改菜单
-const editRowClick = (row) => {
-    formModel.value = {}
-    dialogTitle.value = '修改参数'
-    formModel.value = { ...row }
-    //显示表单弹窗
-    nextTick(() => {
-        isDialogShow.value = true
-    })
-}
-
-//删除菜单
-const delRowClick = (row) => {
-    delMessage(async () => {
-        const { code, msg } = await mainApi.del(row.id)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
-}
-
-//批量删除菜单
-const delClick = () => {
-    const rows = tableCheckKeys.value
-    if (rows.length <= 0) {
-        window.$message.warning('请选择要删除的菜单')
-        return false
-    }
-    //确认删除菜单
-    delMessage(async () => {
-        const ids = arrToId(rows)
-        const { code, msg } = await mainApi.del(ids)
-        if (code === 200) {
-            window.$message.success('删除成功')
-            reloadPage()
-        } else {
-            window.$message.error(msg ?? '删除失败')
-        }
-    })
-}
-
-//提交表单
-const submitLoading = ref(false)
-const dialogSubmit = async () => {
-    const formRes = await formValidate(formRef.value)
-    if (!formRes) return false
-    submitLoading.value = true
-    //发起请求
-    const { error, code, msg } = await mainApi.submit(formModel.value)
-    submitLoading.value = false
-    if (!error && code === 200) {
-        window?.$message?.success('操作成功')
-        reloadPage()
-    } else {
-        window?.$message?.error(msg ?? '操作失败')
-    }
-}
-
-//关闭弹窗
-const dialogClose = () => {
-    isDialogShow.value = false
-    submitLoading.value = false
-    formModel.value = {}
-}
 </script>