fix: 修复加密失效、权限失效、盘点页面崩溃等问题
- secureStorage.js: 移除硬编码密钥,改为运行时动态生成密钥 - AuthContext.jsx: 修复 hasPermission() 始终返回 true 的权限失效问题 - auth.js: 登录接口返回用户角色信息,支持前端权限判断 - InventoryManagement.jsx: 修复 res.data 多取一层导致 TypeError 崩溃
This commit is contained in:
@@ -193,6 +193,13 @@ router.post('/login', async (req, res) => {
|
||||
|
||||
const token = generateToken(user);
|
||||
|
||||
// 查询用户角色(通过 UserRole 中间表)
|
||||
const userRoles = await UserRole.findAll({
|
||||
where: { UserId: user.userId },
|
||||
include: [{ model: Role }],
|
||||
});
|
||||
const roles = userRoles.map(ur => ur.Role || ur);
|
||||
|
||||
user.lastLoginTime = new Date();
|
||||
user.lastLoginIp = req.ip || req.connection.remoteAddress;
|
||||
user.loginCount = 0;
|
||||
@@ -208,6 +215,11 @@ router.post('/login', async (req, res) => {
|
||||
email: user.email,
|
||||
realName: user.realName,
|
||||
avatar: user.avatar,
|
||||
roles: roles.map(r => ({
|
||||
roleId: r.roleId,
|
||||
roleName: r.roleName,
|
||||
roleCode: r.roleCode,
|
||||
})),
|
||||
},
|
||||
token,
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user