This commit is contained in:
2025-09-10 18:09:38 +08:00
parent 141d1313d6
commit 185bc88e21
17 changed files with 2976 additions and 1275 deletions

View File

@@ -5,6 +5,23 @@ const jwt = require('jsonwebtoken');
const { getDB } = require('../database');
const { logger } = require('../config/logger');
const authenticateToken = (req, res, next) => {
const authHeader = req.headers['authorization'];
const token = authHeader && authHeader.split(' ')[1];
if (!token) {
return res.status(401).json({ success: false, message: '访问令牌缺失' });
}
jwt.verify(token, JWT_SECRET, (err, user) => {
if (err) {
return res.status(403).json({ success: false, message: '访问令牌无效' });
}
req.user = user;
next();
});
};
// JWT密钥
const JWT_SECRET = process.env.JWT_SECRET || 'agent_jwt_secret_key_2024';
@@ -37,11 +54,13 @@ router.post('/login', async (req, res) => {
u.password,
u.real_name,
u.avatar,
zr.city_name,
zr.district_name
u.user_type,
c.name as city_name,
d.name as district_name
FROM regional_agents ra
LEFT JOIN users u ON ra.user_id = u.id
LEFT JOIN zhejiang_regions zr ON ra.region_id = zr.id
LEFT JOIN china_regions c ON ra.region_id = c.code
LEFT JOIN china_regions d ON u.district_id = d.code
WHERE u.phone = ? AND ra.status = 'active'
`, [username]);
@@ -95,6 +114,7 @@ router.post('/login', async (req, res) => {
phone: agent.phone,
realName: agent.real_name,
avatar: agent.avatar,
user_type: agent.user_type,
region: {
id: agent.region_id,
cityName: agent.city_name,
@@ -223,4 +243,5 @@ router.post('/logout', (req, res) => {
});
});
module.exports = router;
module.exports = router;
module.exports.authenticateToken = authenticateToken;