Files
admin-sjzx/src/api/user-boot/user.ts

216 lines
5.2 KiB
TypeScript
Raw Normal View History

2024-02-19 13:44:32 +08:00
import request from '@/utils/request'
import { LoginData } from '@/api/types'
import { useAdminInfo } from '@/stores/adminInfo'
import { sm3Digest } from '@/assets/commjs/sm3.js'
import { sm2, encrypt } from '@/assets/commjs/sm2.js'
// 获取公钥
export function gongkey(params?: any) {
if (!params) {
const adminInfo = useAdminInfo()
params = {
loginName: encrypt(adminInfo.$state.loginName)
}
}
return request({
url: '/user-boot/user/generateSm2Key',
method: 'get',
params
})
}
export async function pwdSm3(pwd: any, loginName?: string) {
let publicKey = await gongkey(
loginName
? {
loginName: encrypt(loginName)
}
: false
)
let sm3Pwd = sm3Digest(pwd) //SM3加密
return sm2(sm3Pwd + '|' + pwd, publicKey.data, 0)
}
//登录获取token
export async function login(params: any) {
2024-12-18 11:31:33 +08:00
if (params.refresh_token == undefined) {
params.password = await pwdSm3(params.password, params.username)
}
2024-02-19 13:44:32 +08:00
params.username = encrypt(params.username)
return request({
url: '/pqs-auth/oauth/token',
method: 'post',
params
})
}
//获取用户信息
export function getUserById() {
const adminInfo = useAdminInfo()
return request({
url: '/user-boot/user/getUserById?id=' + adminInfo.userIndex,
method: 'get'
})
}
// 刷新token
2025-03-13 18:26:03 +08:00
// 导出一个名为refreshToken的函数该函数返回一个Promise对象
2024-02-19 13:44:32 +08:00
export function refreshToken(): Promise<any> {
2025-03-13 18:26:03 +08:00
// 调用useAdminInfo函数获取管理员信息并将其赋值给adminInfo变量
2024-02-19 13:44:32 +08:00
const adminInfo = useAdminInfo()
2025-03-13 18:26:03 +08:00
// 调用login函数传入一个对象作为参数该对象包含grant_type、refresh_token和username三个属性
// grant_type设置为'refresh_token',表示使用刷新令牌的方式获取新的访问令牌
// refresh_token使用adminInfo中的refresh_token属性
// username使用adminInfo中的loginName属性
// 返回login函数的调用结果即一个Promise对象
2024-02-19 13:44:32 +08:00
return login({
grant_type: 'refresh_token',
refresh_token: adminInfo.refresh_token,
username: adminInfo.loginName
})
}
/**
*
* @returns {AxiosPromise}
*/
export const getMarketList = () => {
return request({
url: '/user-boot/user/getMarketList',
method: 'post'
})
}
export function add(data: any) {
return request({
url: '/user-boot/user/add',
method: 'post',
data: data
})
}
export function edit(data: any) {
return request({
url: '/user-boot/user/update',
method: 'put',
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)
}
})
}
export async function updateFirstPassword(params: any) {
return request({
url: '/user-boot/user/updateFirstPassword',
method: 'put',
data: {
name: encrypt(params.name),
password: await pwdSm3(params.password, params.name)
}
})
}
export function checkUser(data: any) {
return request({
url: '/user-boot/user/check',
method: 'put',
data: data
})
}
export function existMonitorDeptTree() {
return request({
url: '/user-boot/dept/existMonitorDeptTree',
method: 'post'
})
}
// 获取用户
2024-12-18 11:31:33 +08:00
export function getUserByRoleType(data: any) {
return request({
url: '/user-boot/user/getUserByRoleType?roleType=' + data,
method: 'GET'
})
}
2024-05-06 13:57:06 +08:00
// 获取部门下所有用户
2024-12-18 11:31:33 +08:00
export function listAllUserByDeptId(data: any) {
2024-05-06 13:57:06 +08:00
return request({
url: '/user-boot/user/listAllUserByDeptId?deptId=' + data,
method: 'GET'
})
}
2024-05-06 16:09:56 +08:00
// 根据id获取所有用户信息
2024-12-18 11:31:33 +08:00
export function getUserListByIds(data: any) {
2024-05-06 16:09:56 +08:00
return request({
url: '/user-boot/user/getUserListByIds',
method: 'POST',
data
})
}
2024-05-09 14:18:39 +08:00
/**
2024-06-20 15:30:04 +08:00
*
2024-05-09 14:18:39 +08:00
*/
export const getUserSimpleList = () => {
return request({
2024-12-18 11:31:33 +08:00
url: '/user-boot/user/simpleList',
2024-05-09 14:18:39 +08:00
method: 'GET'
})
}
2024-06-20 15:30:04 +08:00
/**
*
*/
export const getAllUserSimpleList = () => {
return request({
2024-12-18 11:31:33 +08:00
url: '/user-boot/user/getAllUserSimpleList',
2024-06-20 15:30:04 +08:00
method: 'GET'
})
}
2024-12-18 11:31:33 +08:00
export const getSysConfig = () => {
2024-11-13 16:21:08 +08:00
return request({
2024-12-18 11:31:33 +08:00
url: '/system-boot/config/getSysConfig',
method: 'get'
})
2024-11-13 16:21:08 +08:00
}
2025-05-28 08:41:29 +08:00
// 驾驶舱组件配置
export const componentTree = () => {
return request({
url: '/user-boot/component/componentTree',
method: 'GET'
})
}