From 580740ff0a2c30eb19ad46b72ac5c851d9ac38fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Mon, 20 Nov 2023 21:56:23 +0800 Subject: [PATCH 01/15] =?UTF-8?q?:sparkles:=E6=96=B0=E5=A2=9E=E9=82=AE?= =?UTF-8?q?=E4=BB=B6=E5=8F=91=E9=80=81=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/icons/svg/emailLog.svg | 1 + src/assets/icons/svg/emailSend.svg | 1 + src/views/tool/email/emailLog.vue | 16 ++++++++++------ src/views/tool/email/emailTpl.vue | 6 ------ src/views/tool/email/sendEmail.vue | 27 ++++++++++++++++----------- 5 files changed, 28 insertions(+), 23 deletions(-) create mode 100644 src/assets/icons/svg/emailLog.svg create mode 100644 src/assets/icons/svg/emailSend.svg diff --git a/src/assets/icons/svg/emailLog.svg b/src/assets/icons/svg/emailLog.svg new file mode 100644 index 0000000..5cb5987 --- /dev/null +++ b/src/assets/icons/svg/emailLog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/svg/emailSend.svg b/src/assets/icons/svg/emailSend.svg new file mode 100644 index 0000000..41155d3 --- /dev/null +++ b/src/assets/icons/svg/emailSend.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/views/tool/email/emailLog.vue b/src/views/tool/email/emailLog.vue index 5a363d7..326f182 100644 --- a/src/views/tool/email/emailLog.vue +++ b/src/views/tool/email/emailLog.vue @@ -230,18 +230,22 @@ function handlePreview(row) { } function handleSendEmail() { router.push({ - path: '/tool/email/sendemail' + name: 'sendemail' }) } // 添加&修改 表单提交 function handleSend(row) { const Ids = row.id != undefined ? [row.id] : ids.value - - sendEmail({ idArr: Ids }).then((res) => { - getList() - proxy.$modal.msgSuccess('发送成功') - }) + proxy.$modal.loading('发送中...') + sendEmail({ idArr: Ids }) + .then(() => { + getList() + proxy.$modal.msgSuccess('发送成功') + }) + .finally(() => { + proxy.$modal.closeLoading() + }) } // 删除按钮操作 diff --git a/src/views/tool/email/emailTpl.vue b/src/views/tool/email/emailTpl.vue index f3b1452..6d23fa2 100644 --- a/src/views/tool/email/emailTpl.vue +++ b/src/views/tool/email/emailTpl.vue @@ -21,9 +21,6 @@ {{ $t('btn.add') }} - - 发送邮件 - @@ -268,8 +265,5 @@ const handleOpenPre = function (row) { openPreview.value = true info.value = { ...row } } -function handleSend() { - proxy.$tab.openPage('/tool/email/sendEmail') -} handleQuery() diff --git a/src/views/tool/email/sendEmail.vue b/src/views/tool/email/sendEmail.vue index 0888f64..3814f75 100644 --- a/src/views/tool/email/sendEmail.vue +++ b/src/views/tool/email/sendEmail.vue @@ -16,20 +16,26 @@ - - - - - + + + + + + + + + + + + - - - @@ -38,7 +44,7 @@ - -- Gitee From 43485dddfa8292abfcf13a96d7fbd935f2915b96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Sun, 26 Nov 2023 12:27:13 +0800 Subject: [PATCH 07/15] =?UTF-8?q?:zap:=E4=BC=98=E5=8C=96=E6=9C=AA=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E8=AE=BF=E9=97=AE=E9=9C=80=E8=A6=81=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E7=9A=84=E8=B5=84=E6=BA=90,=E5=9C=A8=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E5=90=8E=E9=87=8D=E5=AE=9A=E5=90=91=E4=B8=A2=E5=A4=B1=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=8F=82=E6=95=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/login.vue | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/views/login.vue b/src/views/login.vue index f113b57..b3d45d4 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -143,7 +143,14 @@ function handleLogin() { .login(loginForm.value) .then(() => { proxy.$modal.msgSuccess(proxy.$t('login.loginSuccess')) - router.push({ path: redirect.value || '/' }) + const query = route.query + const otherQueryParams = Object.keys(query).reduce((acc, cur) => { + if (cur !== 'redirect') { + acc[cur] = query[cur] + } + return acc + }, {}) + router.push({ path: redirect.value || '/', query: otherQueryParams }) }) .catch((error) => { console.error(error) -- Gitee From 7c6e21531bb60e7f458a39ee29e957961ae6a363 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Sun, 26 Nov 2023 21:23:46 +0800 Subject: [PATCH 08/15] =?UTF-8?q?:zap:=E4=BC=98=E5=8C=96=E8=B7=AF=E7=94=B1?= =?UTF-8?q?=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/system/user.js | 2 +- src/components/HeaderSearch/index.vue | 12 ++++++++++-- src/components/TopNav/index.vue | 8 +++++++- src/views/login.vue | 7 +++++++ 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/api/system/user.js b/src/api/system/user.js index b3477bf..8ae212d 100644 --- a/src/api/system/user.js +++ b/src/api/system/user.js @@ -22,7 +22,7 @@ export function getUser(userId) { // 新增用户 export function addUser(data) { return request({ - url: '/system/user/edit', + url: '/system/user/add', method: 'post', data: data }) diff --git a/src/components/HeaderSearch/index.vue b/src/components/HeaderSearch/index.vue index b6dfe92..732c10c 100644 --- a/src/components/HeaderSearch/index.vue +++ b/src/components/HeaderSearch/index.vue @@ -68,12 +68,17 @@ function close() { } function change(val) { const path = val.path + const query = val.query if (isHttp(path)) { // http(s):// 路径新窗口打开 const pindex = path.indexOf('http') window.open(path.substr(pindex, path.length), '_blank') } else { - router.push(path) + if (query) { + router.push({ path: path, query: JSON.parse(query) }) + } else { + router.push(path) + } } search.value = '' @@ -104,7 +109,7 @@ function initFuse(list) { } // Filter out the routes that can be displayed in the sidebar // And generate the internationalized title -function generateRoutes(routes, basePath = '', prefixTitle = []) { +function generateRoutes(routes, basePath = '', prefixTitle = [], query = {}) { let res = [] for (const r of routes) { @@ -130,6 +135,9 @@ function generateRoutes(routes, basePath = '', prefixTitle = []) { res.push(data) } } + if (r.query) { + data.query = r.query + } // recursive child routes if (r.children) { diff --git a/src/components/TopNav/index.vue b/src/components/TopNav/index.vue index 9a8300a..9fd5cb3 100644 --- a/src/components/TopNav/index.vue +++ b/src/components/TopNav/index.vue @@ -126,7 +126,13 @@ function handleSelect(key, keyPath) { window.open(key, '_blank') } else if (!route || !route.children) { // 没有子路由路径内部打开 - router.push({ path: key }) + const routeMenu = childrenMenus.value.find((item) => item.path === key) + if (routeMenu && routeMenu.query) { + let query = JSON.parse(routeMenu.query) + router.push({ path: key, query: query }) + } else { + router.push({ path: key }) + } appStore.toggleSideBarHide(true) } else { // 显示左侧联动菜单 diff --git a/src/views/login.vue b/src/views/login.vue index b3d45d4..8375a89 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -123,6 +123,13 @@ fpPromise visitorId = result.visitorId userStore.setClientId(visitorId) }) +watch( + route, + (newRoute) => { + redirect.value = newRoute.query && newRoute.query.redirect + }, + { immediate: true } +) function handleLogin() { proxy.$refs.loginRef.validate((valid) => { if (valid) { -- Gitee From e964662f7a99c0293cbbf2bb029ef0e5d3583e51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Fri, 1 Dec 2023 17:29:51 +0800 Subject: [PATCH 09/15] =?UTF-8?q?:lipstick:=E4=BF=AE=E6=94=B9=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/tool/email/emailTpl.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/tool/email/emailTpl.vue b/src/views/tool/email/emailTpl.vue index 6d23fa2..e169357 100644 --- a/src/views/tool/email/emailTpl.vue +++ b/src/views/tool/email/emailTpl.vue @@ -41,7 +41,7 @@ @@ -211,14 +211,17 @@ function handlePreview(row) { return } proxy.$modal.loading('请稍后...') - previewTable(row.tableId, { VueVersion: 3 }).then((res) => { - if (res.code === 200) { - showGenerate.value = false - preview.value.open = true - preview.value.data = res.data + previewTable(row.tableId, { VueVersion: 3 }) + .then((res) => { + if (res.code === 200) { + showGenerate.value = false + preview.value.open = true + preview.value.data = res.data + } + }) + .finally(() => { proxy.$modal.closeLoading() - } - }) + }) }) } // 多选框选中数据 @@ -262,8 +265,7 @@ function handleDelete(row) { }) } /** 高亮显示 */ -function highlightedCode(code, key) { - // var language = key.substring(key.lastIndexOf(".") , key.length) +function highlightedCode(code) { const result = hljs.highlightAuto(code || '') return result.value || ' ' } -- Gitee From d7d4c671562c17e3d894609595016192cad2e52b Mon Sep 17 00:00:00 2001 From: "YUN-PC5\\user" Date: Fri, 8 Dec 2023 10:52:01 +0800 Subject: [PATCH 13/15] =?UTF-8?q?=E8=A7=A3=E5=86=B3vxe-table=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E7=AE=A1=E7=90=86=E4=BF=AE=E6=94=B9=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=90=8E=E6=8A=98=E5=8F=A0=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/system/menu/index.vue | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/views/system/menu/index.vue b/src/views/system/menu/index.vue index 4c83073..4ef7f9d 100644 --- a/src/views/system/menu/index.vue +++ b/src/views/system/menu/index.vue @@ -50,7 +50,13 @@ ref="listRef" :loading="loading" :column-config="{ resizable: true }" - :tree-config="{}" + :tree-config="{ + parentField: 'parentId', + reserve: true + }" + :row-config="{ + keyField: 'menuId' + }" :scroll-y="{ enabled: true, gt: 20 }" :data="menuList"> -- Gitee From a3cd677e62c73bc466acbfff8ec47a1732ccb07a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Fri, 8 Dec 2023 09:23:12 +0800 Subject: [PATCH 14/15] =?UTF-8?q?:zap:=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E7=94=9F=E6=88=90=E7=BC=96=E8=BE=91=E9=A1=B5ui?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/tool/gen/editTable.vue | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/views/tool/gen/editTable.vue b/src/views/tool/gen/editTable.vue index cfe23f7..7673781 100644 --- a/src/views/tool/gen/editTable.vue +++ b/src/views/tool/gen/editTable.vue @@ -42,6 +42,16 @@ + +