重构动物模型和路由系统,优化查询逻辑并新增商户和促销活动功能
This commit is contained in:
@@ -15,13 +15,13 @@ const { globalErrorHandler, notFound } = require('./utils/errors');
|
||||
// 检查是否为无数据库模式
|
||||
const NO_DB_MODE = process.env.NO_DB_MODE === 'true';
|
||||
|
||||
let authRoutes, userRoutes, travelRoutes, animalRoutes, orderRoutes, adminRoutes, travelRegistrationRoutes;
|
||||
let authRoutes, userRoutes, travelRoutes, animalRoutes, orderRoutes, adminRoutes, travelRegistrationRoutes, promotionRoutes, merchantRoutes;
|
||||
|
||||
// 路由导入 - 根据是否为无数据库模式决定是否导入实际路由
|
||||
// 路由导入
|
||||
if (NO_DB_MODE) {
|
||||
console.log('⚠️ 无数据库模式:将使用模拟路由');
|
||||
} else {
|
||||
// 路由导入
|
||||
console.log('✅ 数据库模式:加载实际路由');
|
||||
authRoutes = require('./routes/auth');
|
||||
userRoutes = require('./routes/user');
|
||||
travelRoutes = require('./routes/travel');
|
||||
@@ -31,6 +31,8 @@ if (NO_DB_MODE) {
|
||||
travelRegistrationRoutes = require('./routes/travelRegistration'); // 旅行报名路由
|
||||
paymentRoutes = require('./routes/payment-simple');
|
||||
animalClaimRoutes = require('./routes/animalClaim-simple'); // 动物认领路由(简化版)
|
||||
promotionRoutes = require('./routes/promotion'); // 促销活动路由
|
||||
merchantRoutes = require('./routes/merchant'); // 商户路由
|
||||
}
|
||||
|
||||
const app = express();
|
||||
@@ -50,8 +52,10 @@ app.use(cors({
|
||||
'https://webapi.jiebanke.com',
|
||||
'http://localhost:3150', // 管理后台本地开发地址
|
||||
'http://localhost:3000', // 备用端口
|
||||
'http://localhost:3200', // 备用端口
|
||||
'http://127.0.0.1:3150', // 备用地址
|
||||
'http://127.0.0.1:3000' // 备用地址
|
||||
'http://127.0.0.1:3000', // 备用地址
|
||||
'http://127.0.0.1:3200' // 备用地址
|
||||
],
|
||||
credentials: true,
|
||||
methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
|
||||
@@ -132,7 +136,8 @@ app.get('/api/v1', (req, res) => {
|
||||
payments: '/api/v1/payments',
|
||||
animalClaims: '/api/v1/animal-claims',
|
||||
admin: '/api/v1/admin',
|
||||
travelRegistration: '/api/v1/travel-registration'
|
||||
travelRegistration: '/api/v1/travel-registration',
|
||||
promotion: '/api/v1/promotion'
|
||||
},
|
||||
documentation: 'https://webapi.jiebanke.com/api-docs'
|
||||
});
|
||||
@@ -239,6 +244,20 @@ if (NO_DB_MODE) {
|
||||
message: '当前为无数据库模式,管理员功能不可用'
|
||||
});
|
||||
});
|
||||
|
||||
app.use('/api/v1/promotion', (req, res) => {
|
||||
res.status(503).json({
|
||||
success: false,
|
||||
message: '当前为无数据库模式,促销活动功能不可用'
|
||||
});
|
||||
});
|
||||
|
||||
app.use('/api/v1/merchants', (req, res) => {
|
||||
res.status(503).json({
|
||||
success: false,
|
||||
message: '当前为无数据库模式,商户功能不可用'
|
||||
});
|
||||
});
|
||||
} else {
|
||||
// API路由
|
||||
app.use('/api/v1/auth', authRoutes);
|
||||
@@ -253,6 +272,10 @@ if (NO_DB_MODE) {
|
||||
app.use('/api/v1/admin', adminRoutes);
|
||||
// 旅行报名路由
|
||||
app.use('/api/v1/travel-registration', travelRegistrationRoutes);
|
||||
// 促销活动路由
|
||||
app.use('/api/v1/promotion', promotionRoutes);
|
||||
// 商户路由
|
||||
app.use('/api/v1/merchants', merchantRoutes);
|
||||
}
|
||||
|
||||
// 404处理
|
||||
|
||||
Reference in New Issue
Block a user