feat: 新增运动节拍训练工具套件与子工具页面
新增运动节拍RepClock全套小程序页面、后端API与数据库服务,新增subhub子工具汇总页面,优化全局主页样式与配置,为web静态资源添加版本缓存参数,补充配套调试脚本
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const envPath = path.join(process.env.USERPROFILE || 'C:\\Users\\Administrator', 'Toolbox_local_creds.env.local')
|
||||
if (fs.existsSync(envPath)) {
|
||||
const text = fs.readFileSync(envPath, 'utf8')
|
||||
for (const line of text.split(/\r?\n/)) {
|
||||
if (!line || /^\s*#/.test(line)) continue
|
||||
const i = line.indexOf('=')
|
||||
if (i < 0) continue
|
||||
const k = line.slice(0, i).trim(), v = line.slice(i + 1).trim().replace(/^["']|["']$/g, '')
|
||||
if (k && !(k in process.env)) process.env[k] = v
|
||||
}
|
||||
}
|
||||
process.chdir('d:/Trae_Files/TRAE-Toolbox')
|
||||
global.__builtin_fetch = globalThis.fetch
|
||||
|
||||
const db = require(path.join(process.cwd(), 'src/server/mp_rep_clock/db'))
|
||||
const locks = require(path.join(process.cwd(), 'src/server/mp_rep_clock/locks.js'))
|
||||
const store = require(path.join(process.cwd(), 'src/server/mp_rep_clock/kits/rep_clock/store.js'))
|
||||
|
||||
async function main() {
|
||||
console.log('=== 1. 当前锁表 rc_global_lock ===')
|
||||
try {
|
||||
const lock = locks.getLockState()
|
||||
console.log(' lock=', JSON.stringify(lock, null, 2))
|
||||
} catch (e) { console.log(' err', e.message) }
|
||||
console.log()
|
||||
|
||||
console.log('=== 2. 找一个已有卡片(标题=测试一下)===')
|
||||
const list = store.listCards()
|
||||
console.log(' 卡片总数=', list && list.length)
|
||||
let card = null
|
||||
if (list && list.length) {
|
||||
card = list.find(c => String(c.title || '').indexOf('测试一下') >= 0) || list[0]
|
||||
console.log(' 选中 card=', card && card.id, card && card.title)
|
||||
}
|
||||
console.log()
|
||||
|
||||
console.log('=== 3. 调 store.createSession + locks.reserveRunningLock(等价 sessionStart 接口)===')
|
||||
try {
|
||||
const session = store.createSession({ cardId: card && card.id })
|
||||
console.log(' createSession ok, id=', session && session.id)
|
||||
const r = locks.reserveRunningLock(session.id)
|
||||
console.log(' reserveRunningLock=', JSON.stringify(r))
|
||||
if (!r.ok) {
|
||||
console.log(' ★★★ 锁冲突!!调用 resetRunningLock 清空后再试一次')
|
||||
locks.resetRunningLock()
|
||||
console.log(' 清空后锁状态=', JSON.stringify(locks.getLockState()))
|
||||
const r2 = locks.reserveRunningLock(session.id)
|
||||
console.log(' 第二次 reserveRunningLock=', JSON.stringify(r2))
|
||||
}
|
||||
} catch (e) { console.log(' ex=', e.stack || e.message) }
|
||||
console.log()
|
||||
|
||||
console.log('=== 4. 查看 sessions 表最后 3 行 ===')
|
||||
try {
|
||||
const rows = db.getDb().prepare(`SELECT id, card_id, status, created_at FROM rc_sessions WHERE deleted = 0 ORDER BY datetime(created_at) DESC LIMIT 3`).all()
|
||||
rows.forEach(r => console.log(' -', JSON.stringify(r)))
|
||||
} catch (e) { console.log(' err', e.message) }
|
||||
}
|
||||
main()
|
||||
Reference in New Issue
Block a user