|
@@ -26,7 +26,9 @@ router.get('/', async (req, res) => {
|
|
|
offset: parseInt(offset)
|
|
|
});
|
|
|
|
|
|
- res.json({
|
|
|
+ res.status(200).json({
|
|
|
+ status: 'success',
|
|
|
+ message: '获取新闻列表成功',
|
|
|
data: news.rows,
|
|
|
total: news.count,
|
|
|
page: parseInt(page),
|
|
@@ -34,7 +36,11 @@ router.get('/', async (req, res) => {
|
|
|
totalPages: Math.ceil(news.count / limit)
|
|
|
});
|
|
|
} catch (error) {
|
|
|
- res.status(500).json({ error: error.message });
|
|
|
+ res.status(500).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '获取新闻列表失败',
|
|
|
+ error: error.message
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
|
|
@@ -43,29 +49,49 @@ router.get('/:id', async (req, res) => {
|
|
|
try {
|
|
|
const news = await News.findByPk(req.params.id);
|
|
|
if (!news) {
|
|
|
- return res.status(404).json({ error: '新闻不存在' });
|
|
|
+ return res.status(404).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '新闻不存在',
|
|
|
+ error: '新闻不存在'
|
|
|
+ });
|
|
|
}
|
|
|
|
|
|
// 增加浏览次数
|
|
|
await news.increment('viewCount');
|
|
|
|
|
|
- res.json(news);
|
|
|
+ res.status(200).json({
|
|
|
+ status: 'success',
|
|
|
+ message: '获取新闻详情成功',
|
|
|
+ data: news
|
|
|
+ });
|
|
|
} catch (error) {
|
|
|
- res.status(500).json({ error: error.message });
|
|
|
+ res.status(500).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '获取新闻详情失败',
|
|
|
+ error: error.message
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
|
|
|
// 添加新新闻
|
|
|
-router.post('/', async (req, res) => {
|
|
|
+router.post('/add', async (req, res) => {
|
|
|
try {
|
|
|
const newsData = {
|
|
|
...req.body,
|
|
|
publishedAt: req.body.publishedAt || new Date()
|
|
|
};
|
|
|
const news = await News.create(newsData);
|
|
|
- res.status(201).json(news);
|
|
|
+ res.status(201).json({
|
|
|
+ status: 'success',
|
|
|
+ message: '新闻创建成功',
|
|
|
+ data: news
|
|
|
+ });
|
|
|
} catch (error) {
|
|
|
- res.status(500).json({ error: error.message });
|
|
|
+ res.status(500).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '新闻创建失败',
|
|
|
+ error: error.message
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
|
|
@@ -74,12 +100,24 @@ router.put('/:id', async (req, res) => {
|
|
|
try {
|
|
|
const news = await News.findByPk(req.params.id);
|
|
|
if (!news) {
|
|
|
- return res.status(404).json({ error: '新闻不存在' });
|
|
|
+ return res.status(404).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '新闻不存在',
|
|
|
+ error: '新闻不存在'
|
|
|
+ });
|
|
|
}
|
|
|
await news.update(req.body);
|
|
|
- res.json(news);
|
|
|
+ res.status(200).json({
|
|
|
+ status: 'success',
|
|
|
+ message: '新闻更新成功',
|
|
|
+ data: news
|
|
|
+ });
|
|
|
} catch (error) {
|
|
|
- res.status(500).json({ error: error.message });
|
|
|
+ res.status(500).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '新闻更新失败',
|
|
|
+ error: error.message
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
|
|
@@ -88,12 +126,23 @@ router.delete('/:id', async (req, res) => {
|
|
|
try {
|
|
|
const news = await News.findByPk(req.params.id);
|
|
|
if (!news) {
|
|
|
- return res.status(404).json({ error: '新闻不存在' });
|
|
|
+ return res.status(404).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '新闻不存在',
|
|
|
+ error: '新闻不存在'
|
|
|
+ });
|
|
|
}
|
|
|
await news.destroy();
|
|
|
- res.status(204).send();
|
|
|
+ res.status(200).json({
|
|
|
+ status: 'success',
|
|
|
+ message: '新闻删除成功'
|
|
|
+ });
|
|
|
} catch (error) {
|
|
|
- res.status(500).json({ error: error.message });
|
|
|
+ res.status(500).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '新闻删除失败',
|
|
|
+ error: error.message
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
|
|
@@ -119,9 +168,17 @@ router.get('/categories/list', async (req, res) => {
|
|
|
name: category
|
|
|
}));
|
|
|
|
|
|
- res.json(categoryList);
|
|
|
+ res.status(200).json({
|
|
|
+ status: 'success',
|
|
|
+ message: '获取分类列表成功',
|
|
|
+ data: categoryList
|
|
|
+ });
|
|
|
} catch (error) {
|
|
|
- res.status(500).json({ error: error.message });
|
|
|
+ res.status(500).json({
|
|
|
+ status: 'error',
|
|
|
+ message: '获取分类列表失败',
|
|
|
+ error: error.message
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
|