update new way

This commit is contained in:
2024-11-17 01:35:05 +08:00
parent 7ec8a001de
commit dc69b95f39
13 changed files with 463 additions and 1030 deletions

View File

@@ -16,7 +16,7 @@ app
logging: false,
});
if (!user) {
throw new CustomError(500, 'user not found');
ctx.throw(500, 'user not found');
}
user.setTokenUser(tokenUser);
ctx.body = await user.getInfo();
@@ -30,7 +30,7 @@ app
.define(async (ctx) => {
const { username, email, password } = ctx.query;
if (!username && !email) {
throw new CustomError(400, 'username or email is required');
ctx.throw(400, 'username or email is required');
}
let user: User | null = null;
if (username) {
@@ -40,10 +40,10 @@ app
user = await User.findOne({ where: { email } });
}
if (!user) {
throw new CustomError(500, 'Login Failed');
ctx.throw(500, 'Login Failed');
}
if (!user.checkPassword(password)) {
throw new CustomError(500, 'Password error');
ctx.throw(500, 'Password error');
}
const token = await user.createToken();
ctx.body = token;
@@ -58,7 +58,7 @@ app
const result = await User.verifyToken(token);
ctx.body = result || {};
} catch (e) {
throw new CustomError(401, 'Token InValid ');
ctx.throw(401, 'Token InValid ');
}
})
.addTo(app);
@@ -73,7 +73,7 @@ app
const { id } = tokenUser;
const user = await User.findByPk(id);
if (!user) {
throw new CustomError(500, 'user not found');
ctx.throw(500, 'user not found');
}
user.setTokenUser(tokenUser);
if (username) {
@@ -105,13 +105,13 @@ app
const tokenUser = ctx.state.tokenUser;
const { username, type = 'org' } = ctx.query.data || {};
if (!username && type === 'org') {
throw new CustomError('username is required');
ctx.throw('username is required');
}
if (tokenUser.username === username) {
// 自己刷新自己的token
const user = await User.findByPk(tokenUser.id);
if (!user) {
throw new CustomError('user not found');
ctx.throw('user not found');
}
if (user.type === 'user') {
const token = await user.createToken();
@@ -131,7 +131,7 @@ app
}
if (!me || me.type === 'org') {
console.log('switch Error ', me.username, me.type);
throw new CustomError('Permission denied');
ctx.throw('Permission denied');
}
if (type === 'user') {
const token = await me.createToken();
@@ -140,13 +140,13 @@ app
}
const orgUser = await User.findOne({ where: { username } });
if (!orgUser) {
throw new CustomError('org user not found');
ctx.throw('org user not found');
}
const user = await Org.findOne({ where: { username } });
const users = user.users;
const index = users.findIndex((u) => u.uid === me.id);
if (index === -1) {
throw new CustomError('Permission denied');
ctx.throw('Permission denied');
}
const token = await orgUser.createToken(me.id);
ctx.body = token;