fix: auto-cleanup stale payment orders and expired pending bindings

- closeStaleOrders: marks payment orders older than 24h as 'closed'
- closeExpiredPending: marks expired binding requests (bind_status=3) as cancelled
- Both run on app startup (SCF cold start), no cron needed
- countPendingByUser already filters to 2h window (previous commit)
这个提交包含在:
Guoguo
2026-05-18 03:52:03 -07:00
父节点 343eeca89a
当前提交 c21a0912c6
修改 3 个文件,包含 22 行新增1 行删除
+8
查看文件
@@ -80,4 +80,12 @@ app.use((err, req, res, _next) => {
res.status(500).json(fail(3001, 'server_error'))
})
// Clean up stale records on startup (SCF cold start)
require('./dao/payment-order.dao').closeStaleOrders().catch(err => {
console.error('[STARTUP] closeStaleOrders failed:', err.message)
})
require('./dao/binding.dao').closeExpiredPending().catch(err => {
console.error('[STARTUP] closeExpiredPending failed:', err.message)
})
module.exports = app