From 0bf750e5aea623d837e5006177964c5427526d7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BB=B2=E4=B9=88=E4=BA=86?= Date: Mon, 22 Jan 2024 14:21:31 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/user-boot/user.ts | 91 ++++++ src/api/user.ts | 42 --- src/components/table/defaultAttribute.ts | 3 +- src/components/tree/govern/getMarketList.vue | 2 +- src/layouts/admin/index.vue | 293 ++++-------------- src/stores/adminInfo.ts | 3 +- src/utils/common.ts | 17 + src/utils/request.ts | 4 +- .../auth/{userlist => userList}/index.vue | 81 +++-- .../auth/{userlist => userList}/popupEdit.vue | 147 ++++----- src/views/auth/userList/popupPwd.vue | 122 ++++++++ src/views/auth/userlist/popupPwd.vue | 75 ----- src/views/user/login.vue | 3 +- 13 files changed, 432 insertions(+), 451 deletions(-) delete mode 100644 src/api/user.ts rename src/views/auth/{userlist => userList}/index.vue (65%) rename src/views/auth/{userlist => userList}/popupEdit.vue (57%) create mode 100644 src/views/auth/userList/popupPwd.vue delete mode 100644 src/views/auth/userlist/popupPwd.vue diff --git a/src/api/user-boot/user.ts b/src/api/user-boot/user.ts index 8f638d4..c652926 100644 --- a/src/api/user-boot/user.ts +++ b/src/api/user-boot/user.ts @@ -1,4 +1,60 @@ import request from '@/utils/request' +import { LoginData } from '@/api/types' +import { useAdminInfo } from '@/stores/adminInfo' +import { sm3Digest } from '@/assets/commjs/sm3.js' +import { sm2 } from '@/assets/commjs/sm2.js' + +// 获取公钥 +export function gongkey(params?: any) { + if (!params) { + const adminInfo = useAdminInfo() + params = { + loginName: adminInfo.$state.loginName + } + } + return request({ + url: '/user-boot/user/generateSm2Key', + method: 'get', + params + }) +} + +export async function pwdSm3(pwd: any) { + let publicKey = await gongkey() + let sm3Pwd = sm3Digest(pwd) //SM3加密 + return sm2(sm3Pwd + '|' + pwd, publicKey.data, 0) +} + +//登录获取token +export function login(params: LoginData) { + return request({ + url: '/pqs-auth/oauth/token', + method: 'post', + params + }) +} + +// 刷新token +export function refreshToken(): Promise { + const adminInfo = useAdminInfo() + return login({ + grant_type: 'refresh_token', + refresh_token: adminInfo.refresh_token, + username: adminInfo.username + }) +} + +/** + * 获取营销用户列表 + * @returns {AxiosPromise} + */ +export const getMarketList = () => { + return request({ + url: '/user-boot/user/getMarketList', + method: 'post' + }) +} + export function add(data: any) { return request({ @@ -15,3 +71,38 @@ export function edit(data: any) { data: data }) } + +export async function passwordConfirm(pwd: string) { + + return request({ + url: '/user-boot/user/passwordConfirm?password=' + await pwdSm3(pwd), + method: 'get' + }) +} + +export function deluser(data: any) { + return request({ + url: '/user-boot/user/delete', + method: 'delete', + params: data + }) +} + +export function activateUser(data: any) { + return request({ + url: '/user-boot/user/activateUser', + method: 'put', + params: data + }) +} + +export async function updatePassword(params: any) { + return request({ + url: '/user-boot/user/updatePassword', + method: 'put', + params: { + id: params.id, + newPassword: await pwdSm3(params.newPassword) + } + }) +} diff --git a/src/api/user.ts b/src/api/user.ts deleted file mode 100644 index a31ab93..0000000 --- a/src/api/user.ts +++ /dev/null @@ -1,42 +0,0 @@ -import createAxios from '@/utils/request' -import { useAdminInfo } from '@/stores/adminInfo' - -import { LoginData } from './types' - -// 获取公钥 -export function gongkey(params: any) { - return createAxios({ - url: '/user-boot/user/generateSm2Key', - method: 'get', - params - }) -} -//登录获取token -export function login(params: LoginData) { - return createAxios({ - url: '/pqs-auth/oauth/token', - method: 'post', - params - }) -} - -// 刷新token -export function refreshToken(): Promise { - const adminInfo = useAdminInfo() - return login({ - grant_type: 'refresh_token', - refresh_token: adminInfo.refresh_token, - username: adminInfo.username - }) -} - -/** - * 获取营销用户列表 - * @returns {AxiosPromise} - */ -export const getMarketList = () => { - return createAxios({ - url: '/user-boot/user/getMarketList', - method: 'post', - }) -} diff --git a/src/components/table/defaultAttribute.ts b/src/components/table/defaultAttribute.ts index 39589fd..8eedf86 100644 --- a/src/components/table/defaultAttribute.ts +++ b/src/components/table/defaultAttribute.ts @@ -12,5 +12,6 @@ export const defaultAttribute: VxeTableProps = { scrollY: { scrollToTopOnChange: true, enabled: true }, treeConfig: { reserve: true - } + }, + showOverflow:true } diff --git a/src/components/tree/govern/getMarketList.vue b/src/components/tree/govern/getMarketList.vue index 5464b09..8ddc598 100644 --- a/src/components/tree/govern/getMarketList.vue +++ b/src/components/tree/govern/getMarketList.vue @@ -2,7 +2,7 @@ diff --git a/src/views/auth/userList/popupPwd.vue b/src/views/auth/userList/popupPwd.vue new file mode 100644 index 0000000..cc56614 --- /dev/null +++ b/src/views/auth/userList/popupPwd.vue @@ -0,0 +1,122 @@ + + diff --git a/src/views/auth/userlist/popupPwd.vue b/src/views/auth/userlist/popupPwd.vue deleted file mode 100644 index 3e8d2fc..0000000 --- a/src/views/auth/userlist/popupPwd.vue +++ /dev/null @@ -1,75 +0,0 @@ - - diff --git a/src/views/user/login.vue b/src/views/user/login.vue index 5ec2b8d..b4c4fce 100644 --- a/src/views/user/login.vue +++ b/src/views/user/login.vue @@ -68,7 +68,7 @@ import * as pageBubble from '@/utils/pageBubble' import { sm3Digest } from '@/assets/commjs/sm3.js' import { sm2, encrypt } from '@/assets/commjs/sm2.js' import { ElMessage } from 'element-plus' -import { gongkey, login } from '@/api/user' +import { gongkey, login } from '@/api/user-boot/user' import { useAdminInfo } from '@/stores/adminInfo' import type { FormInstance, InputInstance, FormRules } from 'element-plus' import { useRouter } from 'vue-router' @@ -137,6 +137,7 @@ const onSubmit = async (formEl: FormInstance | undefined) => { imageCode: '', verifyCode: 0 }).then(res => { + res.data.loginName = encrypt(form.username) userInfo.dataFill(res.data) state.submitLoading = false router.push({