Compare commits

...

3 Commits

Author SHA1 Message Date
my_ong
566da2e791 bug: 退出登录
All checks were successful
Release / lint (push) Successful in 28s
Release / Release (push) Successful in 1m22s
2024-12-16 10:05:13 +08:00
my_ong
c0b5e0bfd5 bug: 退出登录,暂未实现 2024-12-14 16:48:04 +08:00
my_ong
9e27d62e0e bug: 打印数量我为空的时候,不请求后台 2024-12-14 11:29:19 +08:00
5 changed files with 40 additions and 30 deletions

View File

@ -1,18 +1,18 @@
/**
* @desc
*/
import { defaultSuccess, defaultError, http } from '@/plugins/axios';
import type { AxiosResponse } from 'axios';
import { defaultSuccess, defaultError, http } from '@/plugins/axios'
import type { AxiosResponse } from 'axios'
export default async function (
success: (data: auth.AuthUser) => void = defaultSuccess,
fail: (error: { code: string; error?: string }) => void = defaultError,
success: (data: auth.AuthUser) => void = defaultSuccess,
fail: (error: { code: string; error?: string }) => void = defaultError,
): Promise<void> {
return http({
method: 'get',
url: `/auth/current-user`,
})
.then((data: AxiosResponse<auth.AuthUser, unknown>) => {
success(data.data);
})
.catch((error: { code: string; error?: string }) => fail(error));
return http({
method: 'get',
url: `/auth/current-user`,
})
.then((data: AxiosResponse<auth.AuthUser, unknown>) => {
success(data.data)
})
.catch((error: { code: string; error?: string }) => fail(error))
}

View File

@ -67,6 +67,7 @@
import { config } from '@/settings/application'
import { MenuInfo } from 'ant-design-vue/es/menu/src/interface'
import { useUserStore } from '@/stores/user'
import api from '@/api'
const t = useI18n()
const user = useUserStore()
@ -81,11 +82,13 @@
}
const logout = () => {
Modal.confirm({
title: t.t('layout.user.modal.logout.title'),
title: '退出登录',
icon: createVNode(ExclamationCircleOutlined),
content: createVNode('div', { style: 'color:red;' }, t.t('layout.user.modal.logout.content')),
content: createVNode('div', { style: 'color:red;' }, '确定退出系统吗?'),
onOk() {
console.log(1)
api.authApi.auth.logout(() => {
user.logout()
})
},
})
}

View File

@ -101,7 +101,6 @@ export const routes: Array<RouteRecordRaw> = [
const getNewRouter = () => {
// TODO 用户store判断是否登录,登录就返回过滤的,没有登录就返回全量
return createRouter({
history: createWebHashHistory(),
routes: [

View File

@ -18,6 +18,12 @@ export const useUserStore = defineStore('user', {
isAdmin(state) {
return state.roles.includes('admin')
},
isLogin(state) {
return state.token && state.refreshToken
},
getPermission(state) {
return state.permissions
},
},
actions: {
refreshUserInfo(user: auth.AuthUser) {
@ -41,6 +47,7 @@ export const useUserStore = defineStore('user', {
this.sex = 'FEMALE'
this.token = ''
this.refreshToken = ''
router.push({ path: '/login/user' }) // 退出登录后跳转到登录页面,未实现,要清理缓存?
},
},
persist: {

View File

@ -52,20 +52,20 @@
honorMarginPadding: false,
targetStyles: ['*'],
style: `
@page {
size: ${widthInches}in ${heightInches}in;
margin: 0;
}
body {
margin: 0;
padding: 0;
font-size: 6px;
}
#barcodes-container canvas {
display: block;
margin-bottom: 2mm; /* 调整条形码之间的间距 */
}
`,
@page {
size: ${widthInches}in ${heightInches}in;
margin: 0;
}
body {
margin: 0;
padding: 0;
font-size: 6px;
}
#barcodes-container canvas {
display: block;
margin-bottom: 2mm; /* 调整条形码之间的间距 */
}
`,
onLoadingStart: () => console.log('开始加载'),
onLoadingEnd: () => console.log('加载完成'),
// onError: (err: Error) => console.error(':', err),
@ -80,6 +80,7 @@
//
const fetchAndPrintBarcodes = (count: number) => {
if (count <= 0) return
//
const container = document.getElementById('barcodes-container')
if (!container) throw new Error('条形码容器未找到')