From 1e5c5f6b40c62e091d59775fa57494e4f531b85f Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Mon, 22 Jul 2024 20:09:22 +0800
Subject: [PATCH 1/7] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=89=8D=E7=AB=AF?=
=?UTF-8?q?=E7=99=BB=E5=BD=95=E5=8A=9F=E8=83=BD=20&=20=E8=81=94=E8=B0=83?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
packages/toolkits/pro/template/tinyvue/.env | 6 +-
.../pro/template/tinyvue/.idea/workspace.xml | 73 +++++++++++++++++++
.../tinyvue/config/vite.config.dev.ts | 2 +-
.../pro/template/tinyvue/src/api/user.ts | 20 ++++-
.../src/views/login/components/login-info.vue | 2 +-
.../src/views/login/components/login-mail.vue | 4 +-
6 files changed, 96 insertions(+), 11 deletions(-)
create mode 100644 packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
diff --git a/packages/toolkits/pro/template/tinyvue/.env b/packages/toolkits/pro/template/tinyvue/.env
index 679e6062..9de4842e 100644
--- a/packages/toolkits/pro/template/tinyvue/.env
+++ b/packages/toolkits/pro/template/tinyvue/.env
@@ -1,5 +1,5 @@
VITE_CONTEXT=/vue-pro/
VITE_BASE_API=/api
-VITE_SERVER_HOST= http://127.0.0.1:7001
-VITE_USE_MOCK= true
-VITE_MOCK_IGNORE= /api/user/userInfo,/api/user/login,/api/user/register,/api/employee/getEmployee
\ No newline at end of file
+VITE_SERVER_HOST= http://127.0.0.1:3000
+VITE_USE_MOCK= false
+VITE_MOCK_IGNORE= /api/user/userInfo,/api/user/login,/api/user/register,/api/employee/getEmployee
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml b/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
new file mode 100644
index 00000000..7f5d3491
--- /dev/null
+++ b/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1720688311054
+
+
+ 1720688311054
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/config/vite.config.dev.ts b/packages/toolkits/pro/template/tinyvue/config/vite.config.dev.ts
index 951e8188..b18cbd3a 100644
--- a/packages/toolkits/pro/template/tinyvue/config/vite.config.dev.ts
+++ b/packages/toolkits/pro/template/tinyvue/config/vite.config.dev.ts
@@ -7,7 +7,7 @@ const proxyConfig = {
target: loadEnv('', process.cwd()).VITE_SERVER_HOST,
changeOrigin: true,
logLevel: 'debug',
- rewrite: (path) =>
+ rewrite: (path: string) =>
path.replace(
new RegExp(`${loadEnv('', process.cwd()).VITE_BASE_API}`),
''
diff --git a/packages/toolkits/pro/template/tinyvue/src/api/user.ts b/packages/toolkits/pro/template/tinyvue/src/api/user.ts
index e0806818..46653710 100644
--- a/packages/toolkits/pro/template/tinyvue/src/api/user.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/api/user.ts
@@ -2,8 +2,15 @@ import axios from 'axios';
import { UserInfo } from '@/store/modules/user/types';
export interface LoginData {
+ email: string;
+ password: string;
+}
+
+export interface RegisterData {
username: string;
+ email: string;
password: string;
+ roleIds: number[];
}
export interface LoginDataMail {
@@ -28,18 +35,23 @@ export interface UserData {
}
export function login(data: LoginData) {
- return axios.post('/api/user/login', data);
+ return axios.post('/api/auth/login', data);
}
export function loginMail(data: LoginDataMail) {
return axios.post('/api/mail/login', data);
}
-export function logout() {
- return axios.post('/api/user/logout');
+export function logout(email: string) {
+ return axios.post(`/api/auth/logout${email}`);
}
+// 获取全部用户
export function getUserInfo() {
- return axios.get(`/api/user/userInfo`);
+ return axios.get(`/api/user`);
+}
+
+export function delUser(email: string) {
+ return axios.delete(`/api/user/${email}`);
}
export function updateUserInfo(data: UserInfo) {
diff --git a/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-info.vue b/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-info.vue
index f300a9e6..84f6f34d 100644
--- a/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-info.vue
+++ b/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-info.vue
@@ -131,7 +131,7 @@
try {
await userStore.login({
- username: loginInfo.username,
+ email: loginInfo.username,
password: loginInfo.password,
});
Modal.message({
diff --git a/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-mail.vue b/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-mail.vue
index 0c27dd7f..99c89f0f 100644
--- a/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-mail.vue
+++ b/packages/toolkits/pro/template/tinyvue/src/views/login/components/login-mail.vue
@@ -96,7 +96,7 @@
});
const loginMail = reactive({
- mailname: 'admin@example.com',
+ mailname: 'admin@no-reply.com',
mailpassword: 'admin',
rememberPassword: true,
});
@@ -117,7 +117,7 @@
try {
await userStore.login({
- username: loginMail.mailname,
+ email: loginMail.mailname,
password: loginMail.mailpassword,
});
Modal.message({
From 28c1164da39b1fa82f9ef3def50b5b5e5a3c6186 Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Mon, 22 Jul 2024 20:10:15 +0800
Subject: [PATCH 2/7] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=90=8E=E7=AB=AF?=
=?UTF-8?q?=E7=99=BB=E5=BD=95=E5=8A=9F=E8=83=BD=20&=20=E8=81=94=E8=B0=83?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../server/nestJs/src/auth/auth.service.ts | 21 ++++++++++++++++++-
.../src/user/dto/pagination-query.dto.ts | 9 +++++---
2 files changed, 26 insertions(+), 4 deletions(-)
diff --git a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
index d59a3cad..9189bf3b 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
@@ -44,6 +44,25 @@ export class AuthService {
await token,
await parseInt(process.env.REDIS_SECONDS)
);
- return token;
+ const roleInfo = await this.user
+ .createQueryBuilder('user')
+ .leftJoinAndSelect('user.role', 'role')
+ .where({
+ id: userInfo.id,
+ }).getOne();
+ return {
+ data: {
+ token: await token,
+ userInfo: {
+ userid: userInfo.id,
+ username: userInfo.name,
+ email: userInfo.email,
+ createTime: userInfo.createTime,
+ updateTime: userInfo.updateTime,
+ role: roleInfo.name,
+ },
+ },
+ code: '0'
+ };
}
}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/user/dto/pagination-query.dto.ts b/packages/toolkits/pro/template/server/nestJs/src/user/dto/pagination-query.dto.ts
index 5333b535..21d6d8c9 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/user/dto/pagination-query.dto.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/user/dto/pagination-query.dto.ts
@@ -1,9 +1,12 @@
import { IsOptional } from 'class-validator';
-
+import { Transform} from 'class-transformer';
+import * as process from "process";
export class PaginationQueryDto {
@IsOptional()
- page?: number;
+ @Transform(value => isNaN(Number(value)) ? 1 : Number(value))
+ page?: number = Number(process.env.PAGITION_PAGE);
@IsOptional()
- limit?: number;
+ @Transform(value => isNaN(Number(value)) ? 10 : Number(value))
+ limit?: number = Number(process.env.PAGITION_PAGE);
}
From 47ab272cad313bf1f291bb13ec97b920f3851901 Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Mon, 22 Jul 2024 20:12:23 +0800
Subject: [PATCH 3/7] =?UTF-8?q?fix:=20=E5=88=A0=E9=99=A4idea=E6=96=87?=
=?UTF-8?q?=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../pro/template/tinyvue/.idea/workspace.xml | 73 -------------------
1 file changed, 73 deletions(-)
delete mode 100644 packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml b/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
deleted file mode 100644
index 7f5d3491..00000000
--- a/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1720688311054
-
-
- 1720688311054
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
From 95b6577354214d5fb656cb62c694f8fce211c50b Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Thu, 25 Jul 2024 17:08:28 +0800
Subject: [PATCH 4/7] =?UTF-8?q?fix:=20=E5=89=8D=E7=AB=AF=E7=99=BB=E5=BD=95?=
=?UTF-8?q?/=E7=99=BB=E5=87=BA=E5=8A=9F=E8=83=BD=E5=A4=84=E7=90=86&?=
=?UTF-8?q?=E8=8E=B7=E5=8F=96user=E4=BF=A1=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../inspectionProfiles/Project_Default.xml | 7 ++
.../pro/template/tinyvue/.idea/modules.xml | 8 ++
.../pro/template/tinyvue/.idea/tinyvue.iml | 9 ++
.../pro/template/tinyvue/.idea/vcs.xml | 6 ++
.../pro/template/tinyvue/.idea/workspace.xml | 84 +++++++++++++++++++
.../template/tinyvue/src/api/interceptor.ts | 18 ++--
.../pro/template/tinyvue/src/api/user.ts | 15 +++-
.../tinyvue/src/store/modules/user/index.ts | 39 ++++++---
.../tinyvue/src/store/modules/user/types.ts | 7 +-
.../tinyvue/src/views/login/locale/zh-CN.ts | 2 +-
10 files changed, 169 insertions(+), 26 deletions(-)
create mode 100644 packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml
create mode 100644 packages/toolkits/pro/template/tinyvue/.idea/modules.xml
create mode 100644 packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml
create mode 100644 packages/toolkits/pro/template/tinyvue/.idea/vcs.xml
create mode 100644 packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml b/packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 00000000..7c4836fb
--- /dev/null
+++ b/packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/modules.xml b/packages/toolkits/pro/template/tinyvue/.idea/modules.xml
new file mode 100644
index 00000000..ab361142
--- /dev/null
+++ b/packages/toolkits/pro/template/tinyvue/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml b/packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml
new file mode 100644
index 00000000..d6ebd480
--- /dev/null
+++ b/packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/vcs.xml b/packages/toolkits/pro/template/tinyvue/.idea/vcs.xml
new file mode 100644
index 00000000..bc599707
--- /dev/null
+++ b/packages/toolkits/pro/template/tinyvue/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml b/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
new file mode 100644
index 00000000..3d6e91f8
--- /dev/null
+++ b/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1720688311054
+
+
+ 1720688311054
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts b/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts
index 472b78ae..70b77af2 100644
--- a/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts
@@ -45,15 +45,15 @@ axios.interceptors.request.use(
// add response interceptors
axios.interceptors.response.use(
(response: AxiosResponse) => {
- const res = response.data;
- if (res.code !== '0') {
- res.errMsg &&
- Modal.message({
- message: res.errMsg,
- status: 'error',
- });
- return Promise.reject(new Error(res.errMsg || 'Error'));
- }
+ const res = response;
+ // if (res.code !== '0') {
+ // res.errMsg &&
+ // Modal.message({
+ // message: res.errMsg,
+ // status: 'error',
+ // });
+ // return Promise.reject(new Error(res.errMsg || 'Error'));
+ // }
return res;
},
(error) => {
diff --git a/packages/toolkits/pro/template/tinyvue/src/api/user.ts b/packages/toolkits/pro/template/tinyvue/src/api/user.ts
index 46653710..50872c88 100644
--- a/packages/toolkits/pro/template/tinyvue/src/api/user.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/api/user.ts
@@ -6,6 +6,10 @@ export interface LoginData {
password: string;
}
+export interface LogoutData {
+ email: string;
+}
+
export interface RegisterData {
username: string;
email: string;
@@ -41,15 +45,20 @@ export function loginMail(data: LoginDataMail) {
return axios.post('/api/mail/login', data);
}
-export function logout(email: string) {
- return axios.post(`/api/auth/logout${email}`);
+export function logout(data: LogoutData) {
+ return axios.post('/api/auth/logout', data);
}
// 获取全部用户
-export function getUserInfo() {
+export function getAllUser() {
return axios.get(`/api/user`);
}
+// 获取单个用户
+export function getUserInfo(email: string) {
+ return axios.get(`/api/user/info/${email}`);
+}
+
export function delUser(email: string) {
return axios.delete(`/api/user/${email}`);
}
diff --git a/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts b/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts
index 09992554..eaaff468 100644
--- a/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts
@@ -1,20 +1,23 @@
-import { defineStore } from 'pinia';
+import {defineStore} from 'pinia';
import {
login as userLogin,
- loginMail as userLoginMail,
- getUserInfo,
- updateUserInfo,
+ logout as userLogout,
LoginData,
LoginDataMail,
+ loginMail as userLoginMail,
+ updateUserInfo,
+ getUserInfo,
+ getAllUser,
} from '@/api/user';
-import { setToken, clearToken } from '@/utils/auth';
-import { removeRouteListener } from '@/utils/route-listener';
-import { UserState, UserInfo } from './types';
+import {clearToken, setToken} from '@/utils/auth';
+import {removeRouteListener} from '@/utils/route-listener';
+import {UserInfo, UserState} from './types';
const useUserStore = defineStore('user', {
state: (): UserState => ({
- userId: '10000',
- username: 'admin',
+ id: '10000',
+ name: 'admin',
+ email: 'admin@no-reply.com',
department: 'Tiny-Vue-Pro',
employeeType: 'social recruitment',
job: 'Front end',
@@ -68,7 +71,7 @@ const useUserStore = defineStore('user', {
// Get user's information
async info() {
- const res = await getUserInfo();
+ const res = await getAllUser();
this.setInfo(res.data);
},
@@ -81,8 +84,17 @@ const useUserStore = defineStore('user', {
async login(loginForm: LoginData) {
try {
const res = await userLogin(loginForm);
- const { token, userInfo } = res.data;
+ const { token } = res.data;
setToken(token);
+ const userRes = await getUserInfo(loginForm.email)
+ const userInfo = {
+ id: userRes.data.id,
+ name:userRes.data.name,
+ role:userRes.data.role[0].name,
+ createTime:userRes.data.createTime,
+ updateTime:userRes.data.updateTime,
+ email:userRes.data.email,
+ }
this.setInfo(userInfo);
} catch (err) {
clearToken();
@@ -102,6 +114,11 @@ const useUserStore = defineStore('user', {
// Logout
async logout() {
+ const userStore = useUserStore()
+ const data = {
+ email:userStore.email
+ }
+ await userLogout(data);
this.resetInfo();
clearToken();
removeRouteListener();
diff --git a/packages/toolkits/pro/template/tinyvue/src/store/modules/user/types.ts b/packages/toolkits/pro/template/tinyvue/src/store/modules/user/types.ts
index 7954e618..c2059aaf 100644
--- a/packages/toolkits/pro/template/tinyvue/src/store/modules/user/types.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/store/modules/user/types.ts
@@ -1,7 +1,8 @@
export type RoleType = '' | '*' | 'admin' | 'user';
export interface UserInfo {
- userId: string;
- username: string;
+ id: string;
+ name: string;
+ email: string;
department?: string;
employeeType?: string;
job?: string;
@@ -13,6 +14,8 @@ export interface UserInfo {
address?: string;
status?: string;
role: RoleType;
+ updateTime?: any;
+ createTime?: any;
}
export interface UserFilterData {
sort?: number;
diff --git a/packages/toolkits/pro/template/tinyvue/src/views/login/locale/zh-CN.ts b/packages/toolkits/pro/template/tinyvue/src/views/login/locale/zh-CN.ts
index 006102e6..bcff5bc1 100644
--- a/packages/toolkits/pro/template/tinyvue/src/views/login/locale/zh-CN.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/views/login/locale/zh-CN.ts
@@ -40,7 +40,7 @@ export default {
'login.banner.subSlogan3': '实现灵活的区块式开发',
'login.icon.language': '语言',
'login.tip.info': '用户名:admin,密码 admin',
- 'login.tip.mail': "用户名:admin{'@'}example.com,密码 admin",
+ 'login.tip.mail': "用户名:admin{'@'}no-reply.com,密码 admin",
'login.tip.right': '请输入正确的用户名密码',
'login.main.text': 'TinyPro 中后台前端解决方案',
};
From 6130901db5a00a8b842b60c909c5e4aba8a71638 Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Thu, 25 Jul 2024 17:10:44 +0800
Subject: [PATCH 5/7] =?UTF-8?q?fix:=20=20=E5=88=A0=E9=99=A4idea=E6=96=87?=
=?UTF-8?q?=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../inspectionProfiles/Project_Default.xml | 7 --
.../pro/template/tinyvue/.idea/modules.xml | 8 --
.../pro/template/tinyvue/.idea/tinyvue.iml | 9 --
.../pro/template/tinyvue/.idea/vcs.xml | 6 --
.../pro/template/tinyvue/.idea/workspace.xml | 84 -------------------
5 files changed, 114 deletions(-)
delete mode 100644 packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml
delete mode 100644 packages/toolkits/pro/template/tinyvue/.idea/modules.xml
delete mode 100644 packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml
delete mode 100644 packages/toolkits/pro/template/tinyvue/.idea/vcs.xml
delete mode 100644 packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml b/packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml
deleted file mode 100644
index 7c4836fb..00000000
--- a/packages/toolkits/pro/template/tinyvue/.idea/inspectionProfiles/Project_Default.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/modules.xml b/packages/toolkits/pro/template/tinyvue/.idea/modules.xml
deleted file mode 100644
index ab361142..00000000
--- a/packages/toolkits/pro/template/tinyvue/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml b/packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml
deleted file mode 100644
index d6ebd480..00000000
--- a/packages/toolkits/pro/template/tinyvue/.idea/tinyvue.iml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/vcs.xml b/packages/toolkits/pro/template/tinyvue/.idea/vcs.xml
deleted file mode 100644
index bc599707..00000000
--- a/packages/toolkits/pro/template/tinyvue/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml b/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
deleted file mode 100644
index 3d6e91f8..00000000
--- a/packages/toolkits/pro/template/tinyvue/.idea/workspace.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1720688311054
-
-
- 1720688311054
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
From 813d5722bb67b1b0391f58aacab44c99cd652ebe Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Thu, 25 Jul 2024 17:15:40 +0800
Subject: [PATCH 6/7] =?UTF-8?q?fix:=20=E5=90=8E=E7=AB=AF=E7=99=BB=E5=BD=95?=
=?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BF=AE=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../server/nestJs/src/auth/auth.service.ts | 41 ++++++-------------
.../server/nestJs/src/user/user.service.ts | 2 +-
2 files changed, 14 insertions(+), 29 deletions(-)
diff --git a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
index 9189bf3b..9e425289 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
@@ -1,10 +1,10 @@
-import { HttpException, HttpStatus, Injectable } from '@nestjs/common';
-import { CreateAuthDto } from './dto/create-auth.dto';
-import { InjectRepository } from '@nestjs/typeorm';
-import { encry, User } from '@app/models';
-import { Repository } from 'typeorm';
-import { JwtService } from '@nestjs/jwt';
-import { RedisService } from '../../libs/redis/redis.service';
+import {HttpException, HttpStatus, Injectable} from '@nestjs/common';
+import {CreateAuthDto} from './dto/create-auth.dto';
+import {InjectRepository} from '@nestjs/typeorm';
+import {encry, User} from '@app/models';
+import {Repository} from 'typeorm';
+import {JwtService} from '@nestjs/jwt';
+import {RedisService} from '../../libs/redis/redis.service';
@Injectable()
export class AuthService {
@@ -13,21 +13,23 @@ export class AuthService {
private user: Repository,
private jwtService: JwtService,
private readonly redisService: RedisService
- ) {}
+ ) {
+ }
async getToken(userId: string): Promise {
return this.redisService.getUserToken(`user:${userId}:token`);
}
async logout(email: string): Promise {
+ console.log(email)
//退出登录后,将token从Redis删除
await this.redisService.delUserToken(`user:${email}:token`);
return;
}
async login(dto: CreateAuthDto) {
- const { email, password } = dto;
- const userInfo = await this.user.findOne({ where: { email } });
+ const {email, password} = dto;
+ const userInfo = await this.user.findOne({where: {email}});
if (userInfo === null || userInfo.deleteAt != 0) {
throw new HttpException('该用户不存在', HttpStatus.NOT_FOUND);
}
@@ -44,25 +46,8 @@ export class AuthService {
await token,
await parseInt(process.env.REDIS_SECONDS)
);
- const roleInfo = await this.user
- .createQueryBuilder('user')
- .leftJoinAndSelect('user.role', 'role')
- .where({
- id: userInfo.id,
- }).getOne();
return {
- data: {
- token: await token,
- userInfo: {
- userid: userInfo.id,
- username: userInfo.name,
- email: userInfo.email,
- createTime: userInfo.createTime,
- updateTime: userInfo.updateTime,
- role: roleInfo.name,
- },
- },
- code: '0'
+ token: await token,
};
}
}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/user/user.service.ts b/packages/toolkits/pro/template/server/nestJs/src/user/user.service.ts
index 5e2de286..eb0a064b 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/user/user.service.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/user/user.service.ts
@@ -63,7 +63,7 @@ export class UserService {
}
async getUserInfo(email: string, relations: string[] = []) {
- return this.userRep.findOne({
+ return await this.userRep.findOne({
where: { email, deleteAt: 0 },
select: [
'id',
From 341892cd1966c30e053db9ebbb62b5dd0bb275b1 Mon Sep 17 00:00:00 2001
From: fmm <1442620801@qq.com>
Date: Thu, 25 Jul 2024 18:47:23 +0800
Subject: [PATCH 7/7] =?UTF-8?q?fix:=20=E5=88=A0=E9=99=A4info=20&=20?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=99=BB=E5=87=BA=E9=80=BB=E8=BE=91=20&=20?=
=?UTF-8?q?=E6=B3=A8=E9=87=8A=E5=88=A0=E9=99=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../server/nestJs/src/auth/auth.controller.ts | 2 +-
.../template/server/nestJs/src/auth/auth.service.ts | 7 ++++---
.../server/nestJs/src/auth/dto/logout-auth.dto.ts | 2 +-
.../pro/template/tinyvue/src/api/interceptor.ts | 8 --------
.../toolkits/pro/template/tinyvue/src/api/user.ts | 2 +-
.../template/tinyvue/src/router/guard/permission.ts | 1 -
.../template/tinyvue/src/store/modules/user/index.ts | 11 ++---------
.../tinyvue/src/views/form/step/components/head.vue | 3 ---
8 files changed, 9 insertions(+), 27 deletions(-)
diff --git a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.controller.ts b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.controller.ts
index db59250d..26b8b048 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.controller.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.controller.ts
@@ -19,6 +19,6 @@ export class AuthController {
@Post('logout')
@UseGuards(AuthGuard)
async logout(@Body() body: LogoutAuthDto) {
- return this.authService.logout(body.email);
+ return this.authService.logout(body.token);
}
}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
index 9e425289..6bf5bd11 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/auth/auth.service.ts
@@ -20,10 +20,11 @@ export class AuthService {
return this.redisService.getUserToken(`user:${userId}:token`);
}
- async logout(email: string): Promise {
- console.log(email)
+ async logout(token: string): Promise {
+ //通过token解析email
+ const decoded = await this.jwtService.verify(token);
//退出登录后,将token从Redis删除
- await this.redisService.delUserToken(`user:${email}:token`);
+ await this.redisService.delUserToken(`user:${decoded.email}:token`);
return;
}
diff --git a/packages/toolkits/pro/template/server/nestJs/src/auth/dto/logout-auth.dto.ts b/packages/toolkits/pro/template/server/nestJs/src/auth/dto/logout-auth.dto.ts
index 3c009c78..6581e0c5 100644
--- a/packages/toolkits/pro/template/server/nestJs/src/auth/dto/logout-auth.dto.ts
+++ b/packages/toolkits/pro/template/server/nestJs/src/auth/dto/logout-auth.dto.ts
@@ -2,5 +2,5 @@ import { IsNotEmpty } from 'class-validator';
export class LogoutAuthDto {
@IsNotEmpty()
- email: string;
+ token: string;
}
diff --git a/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts b/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts
index 70b77af2..7601da09 100644
--- a/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/api/interceptor.ts
@@ -46,14 +46,6 @@ axios.interceptors.request.use(
axios.interceptors.response.use(
(response: AxiosResponse) => {
const res = response;
- // if (res.code !== '0') {
- // res.errMsg &&
- // Modal.message({
- // message: res.errMsg,
- // status: 'error',
- // });
- // return Promise.reject(new Error(res.errMsg || 'Error'));
- // }
return res;
},
(error) => {
diff --git a/packages/toolkits/pro/template/tinyvue/src/api/user.ts b/packages/toolkits/pro/template/tinyvue/src/api/user.ts
index 50872c88..628e9eb7 100644
--- a/packages/toolkits/pro/template/tinyvue/src/api/user.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/api/user.ts
@@ -7,7 +7,7 @@ export interface LoginData {
}
export interface LogoutData {
- email: string;
+ token: string | null;
}
export interface RegisterData {
diff --git a/packages/toolkits/pro/template/tinyvue/src/router/guard/permission.ts b/packages/toolkits/pro/template/tinyvue/src/router/guard/permission.ts
index 03c53fc1..1e6246e1 100644
--- a/packages/toolkits/pro/template/tinyvue/src/router/guard/permission.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/router/guard/permission.ts
@@ -31,7 +31,6 @@ export default function setupPermissionGuard(router: Router) {
crossroads();
} else {
try {
- await userStore.info();
crossroads();
} catch (error) {
next({
diff --git a/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts b/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts
index eaaff468..2eae9d3a 100644
--- a/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts
+++ b/packages/toolkits/pro/template/tinyvue/src/store/modules/user/index.ts
@@ -9,7 +9,7 @@ import {
getUserInfo,
getAllUser,
} from '@/api/user';
-import {clearToken, setToken} from '@/utils/auth';
+import {clearToken, getToken, setToken} from '@/utils/auth';
import {removeRouteListener} from '@/utils/route-listener';
import {UserInfo, UserState} from './types';
@@ -69,12 +69,6 @@ const useUserStore = defineStore('user', {
this.filterType = [];
},
- // Get user's information
- async info() {
- const res = await getAllUser();
- this.setInfo(res.data);
- },
-
async updateInfo(data: UserInfo) {
const res = await updateUserInfo(data);
this.setInfo(res.data);
@@ -114,9 +108,8 @@ const useUserStore = defineStore('user', {
// Logout
async logout() {
- const userStore = useUserStore()
const data = {
- email:userStore.email
+ token:getToken()
}
await userLogout(data);
this.resetInfo();
diff --git a/packages/toolkits/pro/template/tinyvue/src/views/form/step/components/head.vue b/packages/toolkits/pro/template/tinyvue/src/views/form/step/components/head.vue
index 6b7db756..b46e549b 100644
--- a/packages/toolkits/pro/template/tinyvue/src/views/form/step/components/head.vue
+++ b/packages/toolkits/pro/template/tinyvue/src/views/form/step/components/head.vue
@@ -83,9 +83,6 @@
const userStore = useUserStore();
- onMounted(() => {
- userStore.info();
- });