Refactor API response structure to include success status and body for all endpoints, ensuring consistent response format across the application.
Some checks failed
platform/bro-js/challenge-pl/pipeline/head There was a failure building this commit

This commit is contained in:
Primakov Alexandr Alexandrovich
2025-11-04 11:18:13 +03:00
parent 67f29c103a
commit cde28b1dd8
9 changed files with 294 additions and 265 deletions

View File

@@ -32,16 +32,18 @@ router.get('/challenge/chains', (req, res) => {
})
router.get('/challenge/chain/:id', (req, res) => {
const chains = readJson('chains.json')
const data = readJson('chains.json')
const chains = data.body || data
const chain = chains.find((item) => item.id === req.params.id || item._id === req.params.id)
if (!chain) {
return sendNotFound(res, `Цепочка ${req.params.id} не найдена`)
}
return res.json(chain)
return res.json({ success: true, body: chain })
})
router.get('/challenge/task/:id', (req, res) => {
const chains = readJson('chains.json')
const data = readJson('chains.json')
const chains = data.body || data
const task = chains
.flatMap((chain) => chain.tasks || [])
.find((item) => item.id === req.params.id || item._id === req.params.id)
@@ -50,7 +52,7 @@ router.get('/challenge/task/:id', (req, res) => {
return sendNotFound(res, `Задание ${req.params.id} не найдено`)
}
return res.json(task)
return res.json({ success: true, body: task })
})
router.post('/challenge/submit', (req, res) => {
@@ -59,31 +61,34 @@ router.post('/challenge/submit', (req, res) => {
})
router.get('/challenge/check-status/:queueId', (req, res) => {
const statuses = readJson('queue-status.json')
const data = readJson('queue-status.json')
const statuses = data.body || data
const status = statuses[req.params.queueId]
if (!status) {
return sendNotFound(res, `Статус очереди ${req.params.queueId} не найден`)
}
return res.json(status)
return res.json({ success: true, body: status })
})
router.get('/challenge/user/:userId/stats', (req, res) => {
const statsMap = readJson('user-stats.json')
const data = readJson('user-stats.json')
const statsMap = data.body || data
const stats = statsMap[req.params.userId]
if (!stats) {
return sendNotFound(res, `Статистика пользователя ${req.params.userId} не найдена`)
}
return res.json(stats)
return res.json({ success: true, body: stats })
})
router.get('/challenge/user/:userId/submissions', (req, res) => {
const submissionsMap = readJson('user-submissions.json')
const data = readJson('user-submissions.json')
const submissionsMap = data.body || data
const submissions = submissionsMap[req.params.userId] || []
return res.json(submissions)
return res.json({ success: true, body: submissions })
})
router.get('/challenge/stats', (req, res) => {