From 866cb6080101f04bb41c69820f0e0cfdfdc71576 Mon Sep 17 00:00:00 2001 From: weiwei Date: Thu, 13 Mar 2025 19:16:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=BA=E8=84=B8=E5=AE=A1=E6=89=B9=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/stores/userInfo.ts | 88 ++++++++++--------- src/utils/authFunction.ts | 24 ++--- src/views/admin/system/user/face-manage.vue | 10 ++- src/views/admin/system/user/form.vue | 18 ++-- src/views/admin/system/user/index.vue | 2 +- .../admin/system/userFaceApprove/index.vue | 17 +++- 6 files changed, 94 insertions(+), 65 deletions(-) diff --git a/src/stores/userInfo.ts b/src/stores/userInfo.ts index 20fd4d5..aff5e73 100644 --- a/src/stores/userInfo.ts +++ b/src/stores/userInfo.ts @@ -1,19 +1,20 @@ -import { defineStore } from 'pinia'; -import { Session } from '/@/utils/storage'; -import { getUserInfo, login, loginByMobile, loginBySocial, refreshTokenApi } from '/@/api/login/index'; -import { useMessage } from '/@/hooks/message'; +import { defineStore } from "pinia" +import { Session } from "/@/utils/storage" +import { getUserInfo, login, loginByMobile, loginBySocial, refreshTokenApi } from "/@/api/login/index" +import { useMessage } from "/@/hooks/message" /** * @function useUserInfo * @returns {UserInfosStore} */ -export const useUserInfo = defineStore('userInfo', { +export const useUserInfo = defineStore("userInfo", { state: (): UserInfosState => ({ userInfos: { - userName: '', - photo: '', + userName: "", + photo: "", time: 0, roles: [], + roleCodes: [], authBtnList: [], }, }), @@ -26,23 +27,23 @@ export const useUserInfo = defineStore('userInfo', { * @param {Object} data - 登录数据 * @returns {Promise} */ - async login(data:any) { - data.grant_type = 'password'; - data.scope = 'server'; + async login(data: any) { + data.grant_type = "password" + data.scope = "server" return new Promise((resolve, reject) => { login(data) .then((res) => { // 存储token 信息 - Session.set('token', res.access_token); - Session.set('refresh_token', res.refresh_token); - resolve(res); + Session.set("token", res.access_token) + Session.set("refresh_token", res.refresh_token) + resolve(res) }) .catch((err) => { - useMessage().error(err?.msg || '系统异常请联系管理员'); - reject(err); - }); - }); + useMessage().error(err?.msg || "系统异常请联系管理员") + reject(err) + }) + }) }, /** @@ -57,15 +58,15 @@ export const useUserInfo = defineStore('userInfo', { loginByMobile(data.mobile, data.code) .then((res) => { // 存储token 信息 - Session.set('token', res.access_token); - Session.set('refresh_token', res.refresh_token); - resolve(res); + Session.set("token", res.access_token) + Session.set("refresh_token", res.refresh_token) + resolve(res) }) .catch((err) => { - useMessage().error(err?.msg || '系统异常请联系管理员'); - reject(err); - }); - }); + useMessage().error(err?.msg || "系统异常请联系管理员") + reject(err) + }) + }) }, /** @@ -81,15 +82,15 @@ export const useUserInfo = defineStore('userInfo', { loginBySocial(state, code) .then((res) => { // 存储token 信息 - Session.set('token', res.access_token); - Session.set('refresh_token', res.refresh_token); - resolve(res); + Session.set("token", res.access_token) + Session.set("refresh_token", res.refresh_token) + resolve(res) }) .catch((err) => { - useMessage().error(err?.msg || '系统异常请联系管理员'); - reject(err); - }); - }); + useMessage().error(err?.msg || "系统异常请联系管理员") + reject(err) + }) + }) }, /** @@ -100,19 +101,19 @@ export const useUserInfo = defineStore('userInfo', { */ async refreshToken() { return new Promise((resolve, reject) => { - const refreshToken = Session.get('refresh_token'); + const refreshToken = Session.get("refresh_token") refreshTokenApi(refreshToken) .then((res) => { // 存储token 信息 - Session.set('token', res.access_token); - Session.set('refresh_token', res.refresh_token); - resolve(res); + Session.set("token", res.access_token) + Session.set("refresh_token", res.refresh_token) + resolve(res) }) .catch((err) => { - useMessage().error(err.msg); - reject(err); - }); - }); + useMessage().error(err.msg) + reject(err) + }) + }) }, /** @@ -126,10 +127,11 @@ export const useUserInfo = defineStore('userInfo', { user: res.data.sysUser, time: new Date().getTime(), roles: res.data.roles, + roleCodes: res.data.roleCodes, authBtnList: res.data.permissions, - }; - this.userInfos = userInfo; - }); + } + this.userInfos = userInfo + }) }, }, -}); +}) diff --git a/src/utils/authFunction.ts b/src/utils/authFunction.ts index 84c0ab4..4a6ba2c 100644 --- a/src/utils/authFunction.ts +++ b/src/utils/authFunction.ts @@ -1,5 +1,5 @@ -import { useUserInfo } from '/@/stores/userInfo'; -import { judementSameArr } from '/@/utils/arrayOperation'; +import { useUserInfo } from "/@/stores/userInfo" +import { judementSameArr } from "/@/utils/arrayOperation" /** * 单个权限验证 @@ -7,8 +7,8 @@ import { judementSameArr } from '/@/utils/arrayOperation'; * @returns 有权限,返回 `true`,反之则反 */ export function auth(value: string): boolean { - const stores = useUserInfo(); - return stores.userInfos.authBtnList.some((v: string) => v === value); + const stores = useUserInfo() + return stores.userInfos.authBtnList.some((v: string) => v === value) } /** @@ -17,14 +17,14 @@ export function auth(value: string): boolean { * @returns 有权限,返回 `true`,反之则反 */ export function auths(value: Array): boolean { - let flag = false; - const stores = useUserInfo(); + let flag = false + const stores = useUserInfo() stores.userInfos.authBtnList.map((val: string) => { value.map((v: string) => { - if (val === v) flag = true; - }); - }); - return flag; + if (val === v) flag = true + }) + }) + return flag } /** @@ -33,6 +33,6 @@ export function auths(value: Array): boolean { * @returns 有权限,返回 `true`,反之则反 */ export function authAll(value: Array): boolean { - const stores = useUserInfo(); - return judementSameArr(value, stores.userInfos.authBtnList); + const stores = useUserInfo() + return judementSameArr(value, stores.userInfos.authBtnList) } diff --git a/src/views/admin/system/user/face-manage.vue b/src/views/admin/system/user/face-manage.vue index 3200677..3e98906 100644 --- a/src/views/admin/system/user/face-manage.vue +++ b/src/views/admin/system/user/face-manage.vue @@ -17,6 +17,11 @@ + + + - + diff --git a/src/views/admin/system/userFaceApprove/index.vue b/src/views/admin/system/userFaceApprove/index.vue index 17f53fa..29d14e8 100644 --- a/src/views/admin/system/userFaceApprove/index.vue +++ b/src/views/admin/system/userFaceApprove/index.vue @@ -55,10 +55,12 @@ + - + @@ -79,6 +81,7 @@ import { getUserFaceList } from "/@/api/admin/userFaceApprove" import { useMessage } from "/@/hooks/message" import { useDict } from "/@/hooks/dict" import { getDicts } from "/@/api/admin/dict" +import * as userFaceApi from "/@/api/admin/userFace" const { check_status } = useDict("check_status") const queryRef = ref() @@ -139,4 +142,16 @@ const deal = (row: any) => { const taskSubmitEvent = () => { getDataList() } + +// 删除人脸 +const delFace = async (row: any) => { + try { + await useMessage().delConfirm("是否删除人脸?") + await userFaceApi.delObjs([row.id]) + useMessage().success("删除成功") + getDataList() + } catch (error) { + console.log(error) + } +}