fix: 优化数据
This commit is contained in:
@@ -1,8 +1,58 @@
|
||||
const express = require('express')
|
||||
const { getSituation } = require('./situationData')
|
||||
const db = require('./db')
|
||||
|
||||
const router = express.Router()
|
||||
|
||||
// 数据库 Dashboard:返回各表原始数据
|
||||
router.get('/db/dashboard', (req, res) => {
|
||||
try {
|
||||
const tables = [
|
||||
'situation',
|
||||
'force_summary',
|
||||
'power_index',
|
||||
'force_asset',
|
||||
'key_location',
|
||||
'combat_losses',
|
||||
'wall_street_trend',
|
||||
'retaliation_current',
|
||||
'retaliation_history',
|
||||
'situation_update',
|
||||
'gdelt_events',
|
||||
'conflict_stats',
|
||||
]
|
||||
const data = {}
|
||||
const timeSort = {
|
||||
situation: 'updated_at DESC',
|
||||
situation_update: 'timestamp DESC',
|
||||
gdelt_events: 'event_time DESC',
|
||||
wall_street_trend: 'time DESC',
|
||||
retaliation_history: 'time DESC',
|
||||
conflict_stats: 'updated_at DESC',
|
||||
}
|
||||
for (const name of tables) {
|
||||
try {
|
||||
const order = timeSort[name]
|
||||
let rows
|
||||
try {
|
||||
rows = order
|
||||
? db.prepare(`SELECT * FROM ${name} ORDER BY ${order}`).all()
|
||||
: db.prepare(`SELECT * FROM ${name}`).all()
|
||||
} catch (qerr) {
|
||||
rows = db.prepare(`SELECT * FROM ${name}`).all()
|
||||
}
|
||||
data[name] = rows
|
||||
} catch (e) {
|
||||
data[name] = { error: e.message }
|
||||
}
|
||||
}
|
||||
res.json(data)
|
||||
} catch (err) {
|
||||
console.error(err)
|
||||
res.status(500).json({ error: err.message })
|
||||
}
|
||||
})
|
||||
|
||||
router.get('/situation', (req, res) => {
|
||||
try {
|
||||
res.json(getSituation())
|
||||
|
||||
Reference in New Issue
Block a user