diff --git a/backend/src/api/passwordStore.js b/backend/src/api/passwordStore.js index 4933d03..a1c8afc 100644 --- a/backend/src/api/passwordStore.js +++ b/backend/src/api/passwordStore.js @@ -6,3 +6,7 @@ export const getPasswordStoreDetail = (id) => request({ url: `${resource}/detail export const createPasswordStore = (data) => request({ url: `${resource}/create`, method: 'post', data }) export const updatePasswordStore = (id, data) => request({ url: `${resource}/update/${id}`, method: 'post', data }) export const deletePasswordStore = (id) => request({ url: `${resource}/delete/${id}`, method: 'delete' }) +/** 导出全部记录(不受列表 200 条限制),返回 data.list */ +export const exportPasswordStore = () => request({ url: `${resource}/export`, method: 'get' }) +/** 批量导入:rows 为 Excel/CSV 解析后的行数据,返回 created/updated/failed/failures */ +export const importPasswordStore = (rows) => request({ url: `${resource}/import`, method: 'post', data: { rows } }) diff --git a/backend/src/api/wechatMp.js b/backend/src/api/wechatMp.js index 32e91b6..d253d76 100644 --- a/backend/src/api/wechatMp.js +++ b/backend/src/api/wechatMp.js @@ -5,7 +5,7 @@ import request from "@/utils/request"; * 流程:生成二维码 → 微信扫码关注 → 公众号回复验证码 → 输入验证码完成绑定 *************************************************/ -/** 发起绑定:生成带参数二维码 */ +/** 发起绑定:返回绑定指引(未认证公众号无带参二维码,公众号内发送「验证码」取码) */ export function startWechatMpBind() { return request({ url: "/backend/wechatMp/bind/start", diff --git a/backend/src/router/index.js b/backend/src/router/index.js index 67d6d8a..16c50b9 100644 --- a/backend/src/router/index.js +++ b/backend/src/router/index.js @@ -141,6 +141,13 @@ const staticRoutes = [ component: () => import("@/views/auth/callback.vue"), meta: { requiresAuth: false } }, + // 微信公众号一次性链接登录页(公众号发「登录」/扫码确认 → 链接跳到这里兑换令牌) + { + path: "/mp-login", + name: "MpLogin", + component: () => import("@/views/auth/mpLogin.vue"), + meta: { requiresAuth: false } + }, { path: "/home", name: "Home", @@ -310,8 +317,8 @@ async function gotoAuthorize() { router.beforeEach(async (to, from, next) => { const token = localStorage.getItem("token"); - // 认证中心回跳页:始终放行,由页面自身完成 code 换令牌 - if (to.path === "/auth/callback") { + // 认证中心回跳页 / 微信登录兑换页:始终放行,由页面自身完成令牌兑换 + if (to.path === "/auth/callback" || to.path === "/mp-login") { next(); return; } diff --git a/backend/src/views/auth/mpLogin.vue b/backend/src/views/auth/mpLogin.vue new file mode 100644 index 0000000..0055edc --- /dev/null +++ b/backend/src/views/auth/mpLogin.vue @@ -0,0 +1,216 @@ + + + + + diff --git a/backend/src/views/tools/passwordStore/components/PasswordImportDialog.vue b/backend/src/views/tools/passwordStore/components/PasswordImportDialog.vue new file mode 100644 index 0000000..55b9b3b --- /dev/null +++ b/backend/src/views/tools/passwordStore/components/PasswordImportDialog.vue @@ -0,0 +1,177 @@ + + + + + diff --git a/backend/src/views/tools/passwordStore/index.vue b/backend/src/views/tools/passwordStore/index.vue index 8b0bcc5..88fef2f 100644 --- a/backend/src/views/tools/passwordStore/index.vue +++ b/backend/src/views/tools/passwordStore/index.vue @@ -14,11 +14,13 @@ clearable style="width: 300px" :prefix-icon="Search" - @keyup.enter="load" - @clear="load" + @keyup.enter="refresh" + @clear="refresh" /> 新增平台密码 - 刷新 + 导出 Excel + 批量导入 + 刷新 @@ -94,18 +96,7 @@
登录密码: - - {{ showPasswords[`${row.id}_${accIdx}`] ? acc.password : '••••••••' }} - - + {{ acc.password || '-' }} + + +
+ +
@@ -476,17 +483,7 @@
登录密码: - - {{ showDetailPasswords[accIdx] ? acc.password : '••••••••' }} - - + {{ acc.password || '-' }} 关闭 + + +
diff --git a/platform/src/views/tools/passwordStore/index.vue b/platform/src/views/tools/passwordStore/index.vue index 7c4ebe8..0fef209 100644 --- a/platform/src/views/tools/passwordStore/index.vue +++ b/platform/src/views/tools/passwordStore/index.vue @@ -14,11 +14,13 @@ clearable style="width: 300px" :prefix-icon="Search" - @keyup.enter="load" - @clear="load" + @keyup.enter="refresh" + @clear="refresh" /> 新增平台密码 - 刷新 + 导出 Excel + 批量导入 + 刷新
@@ -94,18 +96,7 @@
登录密码: - - {{ showPasswords[`${row.id}_${accIdx}`] ? acc.password : '••••••••' }} - - + {{ acc.password || '-' }} + + +
+ +
@@ -476,17 +483,7 @@
登录密码: - - {{ showDetailPasswords[accIdx] ? acc.password : '••••••••' }} - - + {{ acc.password || '-' }} 关闭 + + +