From fd1845889744a82334799291674709de0971657a Mon Sep 17 00:00:00 2001 From: 潘志宝 <979469083@qq.com> Date: 星期一, 04 十一月 2024 08:28:56 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/data/channel/http/api/tag/index.vue | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 51 insertions(+), 7 deletions(-) diff --git a/src/views/data/channel/http/api/tag/index.vue b/src/views/data/channel/http/api/tag/index.vue index 4fbca5b..c2cd9fd 100644 --- a/src/views/data/channel/http/api/tag/index.vue +++ b/src/views/data/channel/http/api/tag/index.vue @@ -2,7 +2,7 @@ <el-drawer v-model="drawer" size="50%" - title="Kio Tag" + title="Http Tag" :direction="direction" :before-close="handleClose" > @@ -37,10 +37,25 @@ type="primary" plain @click="openForm('create')" - v-hasPermi="['data:channel-kio:create']" + v-hasPermi="['data:channel-http:create']" > <Icon icon="ep:plus" class="mr-5px" /> 新增 + </el-button> + <el-button + type="warning" + plain + @click="handleImport" + v-hasPermi="['data:channel-http-tag:import']"> + <Icon icon="ep:upload" /> 导入 + </el-button> + <el-button + type="success" + plain + @click="handleExport" + :loading="exportLoading" + v-hasPermi="['data:channel-http-tag:export']"> + <Icon icon="ep:download" />导出 </el-button> </el-form-item> </el-form> @@ -75,7 +90,7 @@ align="center" > <template #default="scope"> - <el-tag v-if="scope.row.enabled === true" size="small">是</el-tag> + <el-tag v-if="scope.row.enabled === 1" size="small">是</el-tag> <el-tag v-else size="small" type="danger">否</el-tag> </template> </el-table-column> @@ -85,7 +100,7 @@ link type="primary" @click="openForm('update', scope.row.id)" - v-hasPermi="['data:channel-kio:update']" + v-hasPermi="['data:channel-http:update']" > 编辑 </el-button> @@ -93,7 +108,7 @@ link type="danger" @click="handleDelete(scope.row.id)" - v-hasPermi="['data:channel-kio:delete']" + v-hasPermi="['data:channel-http:delete']" > 删除 </el-button> @@ -110,12 +125,16 @@ </ContentWrap> <!-- 表单弹窗:添加/修改 --> <TagForm ref="formRef" @success="getList" /> + <TagImportForm ref="importFormRef" @success="getList" /> </el-drawer> </template> <script lang="ts" setup> import type { DrawerProps } from 'element-plus' import * as HttpTagApi from "@/api/data/channel/http/tag"; import TagForm from './TagForm.vue' +import download from "@/utils/download"; +import {ref} from "vue"; +import TagImportForm from '../../../common/tag/TagImportForm.vue' defineOptions({name: 'HttpTag'}) @@ -131,7 +150,8 @@ pageNo: 1, pageSize: 10, apiId: undefined, - tagName: undefined + tagName: undefined, + httpName: undefined }) const queryFormRef = ref() // 搜索的表单 const exportLoading = ref(false) // 导出的加载中 @@ -181,10 +201,11 @@ } /** 打开弹窗 */ -const open = async (apiId?: string) => { +const open = async (apiId?: string, name?:string) => { resetForm() drawer.value = true queryParams.apiId = apiId + queryParams.httpName = name if (apiId) { getList() } @@ -202,4 +223,27 @@ const handleClose = (done: () => void) => { drawer.value = false } + +/** tag导入 */ +const importFormRef = ref() +const handleImport = () => { + if(queryParams.apiId){ + importFormRef.value.open(queryParams.httpName, '/data/channel/http/tag/import',HttpTagApi.importHttpTagTemplate(), 'Http', queryParams.apiId) + } +} + +/** 导出按钮操作 */ +const handleExport = async () => { + try { + // 导出的二次确认 + await message.exportConfirm() + // 发起导出 + exportLoading.value = true + const data = await HttpTagApi.exportHttpTag(queryParams) + download.excel(data, 'Http_' + queryParams.httpName + '_Tag列表.xlsx') + } catch { + } finally { + exportLoading.value = false + } +} </script> -- Gitblit v1.9.3