微调
This commit is contained in:
@@ -2,11 +2,12 @@ import type { Login } from '@/api/user/interface/user'
|
|||||||
import {ADMIN as rePrefix} from '@/api/system/config/serviceName'
|
import {ADMIN as rePrefix} from '@/api/system/config/serviceName'
|
||||||
import http from '@/api'
|
import http from '@/api'
|
||||||
import type {Dict} from '@/api/interface'
|
import type {Dict} from '@/api/interface'
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @name 登录模块
|
* @name 登录模块
|
||||||
*/
|
*/
|
||||||
// 用户登录
|
// 用户登录
|
||||||
export const loginApi = (params: { username: string; password: string }) => {
|
export const loginApi = (params: { username: string; password: string,checked: boolean }) => {
|
||||||
return http.post<Login.ResLogin>(`${rePrefix}/login`, params, {loading: false})
|
return http.post<Login.ResLogin>(`${rePrefix}/login`, params, {loading: false})
|
||||||
// return http.post<Login.ResLogin>(`/Register1`, params, { loading: false })
|
// return http.post<Login.ResLogin>(`/Register1`, params, { loading: false })
|
||||||
}
|
}
|
||||||
@@ -46,6 +47,6 @@ export const getCurrentScene = () => {
|
|||||||
/**
|
/**
|
||||||
* 获取RSA公钥
|
* 获取RSA公钥
|
||||||
*/
|
*/
|
||||||
export const getPublicKey = () => {
|
export const getPublicKey = (username: string, checked: boolean) => {
|
||||||
return http.get('/admin/getPublicKey', {}, { loading: false })
|
return http.get(`/admin/getPublicKey?username=${username}&checked=${checked}`, {}, {loading: false})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<!-- :requestApi="getRoleList" -->
|
<!-- :requestApi="getRoleList" -->
|
||||||
<!-- 表格 header 按钮 -->
|
<!-- 表格 header 按钮 -->
|
||||||
<template #tableHeader='scope'>
|
<template #tableHeader='scope'>
|
||||||
<el-button v-auth.role="'add'" type='primary' :icon='CirclePlus' @click="openDrawer('新增角色')">新增</el-button>
|
<el-button v-auth.role="'add'" type='primary' :icon='CirclePlus' @click="openDrawer('add')">新增</el-button>
|
||||||
<el-button v-auth.role="'delete'" type='danger' :icon='Delete' plain :disabled='!scope.isSelected'
|
<el-button v-auth.role="'delete'" type='danger' :icon='Delete' plain :disabled='!scope.isSelected'
|
||||||
@click='batchDelete(scope.selectedListIds)'>
|
@click='batchDelete(scope.selectedListIds)'>
|
||||||
删除
|
删除
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<!-- 表格操作 -->
|
<!-- 表格操作 -->
|
||||||
<template #operation='scope'>
|
<template #operation='scope'>
|
||||||
<el-button v-auth.role="'edit'" type='primary' link :icon='EditPen' @click="openDrawer('编辑角色', scope.row)">编辑</el-button>
|
<el-button v-auth.role="'edit'" type='primary' link :icon='EditPen' @click="openDrawer('edit', scope.row)">编辑</el-button>
|
||||||
<el-button v-auth.role="'delete'" v-if="scope.row.type !== 0 && scope.row.type !== 1" type='primary' link :icon='Delete' @click='deleteAccount(scope.row)'>删除</el-button>
|
<el-button v-auth.role="'delete'" v-if="scope.row.type !== 0 && scope.row.type !== 1" type='primary' link :icon='Delete' @click='deleteAccount(scope.row)'>删除</el-button>
|
||||||
<el-button v-auth.role="'SetPermissions'" type='primary' link :icon='Share' @click="openDrawer('设置权限', scope.row)">设置权限</el-button>
|
<el-button v-auth.role="'SetPermissions'" type='primary' link :icon='Share' @click="openDrawer('设置权限', scope.row)">设置权限</el-button>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -105,10 +105,18 @@ const login = (formEl: FormInstance | undefined) => {
|
|||||||
if (!valid) return
|
if (!valid) return
|
||||||
loading.value = true
|
loading.value = true
|
||||||
try {
|
try {
|
||||||
|
if (!isAutoLogin.value) {
|
||||||
|
let {data: publicKeyBase64}: { data: string } = await getPublicKey(loginForm.username, loginForm.checked)
|
||||||
|
//将base64格式的公钥转换为Forge可以使用的格式
|
||||||
|
const publicKeyDer = forge.util.decode64(publicKeyBase64);
|
||||||
|
publicKey = forge.pki.publicKeyFromPem(forge.pki.publicKeyToPem(forge.pki.publicKeyFromAsn1(forge.asn1.fromDer(publicKeyDer))));
|
||||||
|
}
|
||||||
|
|
||||||
// 1.执行登录接口
|
// 1.执行登录接口
|
||||||
const {data} = await loginApi({
|
const {data} = await loginApi({
|
||||||
username: forge.util.encode64(loginForm.username),
|
username: forge.util.encode64(loginForm.username),
|
||||||
password: isAutoLogin.value ? loginForm.password : encryptPassword(loginForm.password)
|
password: isAutoLogin.value ? loginForm.password : encryptPassword(loginForm.password),
|
||||||
|
checked: loginForm.checked
|
||||||
})
|
})
|
||||||
if (loginForm.checked) {
|
if (loginForm.checked) {
|
||||||
localStorage.setItem("loginInfo", JSON.stringify({
|
localStorage.setItem("loginInfo", JSON.stringify({
|
||||||
@@ -184,12 +192,6 @@ onBeforeMount(async () => {
|
|||||||
loginForm.checked = true
|
loginForm.checked = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!isAutoLogin.value) {
|
|
||||||
let {data: publicKeyBase64}:{data:string} = await getPublicKey()
|
|
||||||
//将base64格式的公钥转换为Forge可以使用的格式
|
|
||||||
const publicKeyDer = forge.util.decode64(publicKeyBase64);
|
|
||||||
publicKey = forge.pki.publicKeyFromPem(forge.pki.publicKeyToPem(forge.pki.publicKeyFromAsn1(forge.asn1.fromDer(publicKeyDer))));
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -227,7 +227,7 @@ const columns = reactive<ColumnProps<Plan.ReqPlan>[]>([
|
|||||||
{
|
{
|
||||||
prop: 'errorSysId',
|
prop: 'errorSysId',
|
||||||
label: '误差体系',
|
label: '误差体系',
|
||||||
width: 200,
|
width: 240,
|
||||||
render: scope => {
|
render: scope => {
|
||||||
return (
|
return (
|
||||||
<el-link type='primary' link onClick={() => showData(scope.row)}>
|
<el-link type='primary' link onClick={() => showData(scope.row)}>
|
||||||
|
|||||||
Reference in New Issue
Block a user