Files
2026-04-20 16:18:26 +08:00

35 lines
1006 B
JavaScript

const Database = require('better-sqlite3');
const path = require('path');
const dbPath = path.join(__dirname, 'database.sqlite');
const db = new Database(dbPath);
// Initialize tables
db.exec(`
CREATE TABLE IF NOT EXISTS documents (
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
original_path TEXT NOT NULL,
processed_path TEXT NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
username TEXT UNIQUE NOT NULL,
password TEXT NOT NULL
);
`);
// Create default admin user if not exists
// The password here is a hash for "123456"
const checkUser = db.prepare('SELECT * FROM users WHERE username = ?').get('admin');
if (!checkUser) {
const bcrypt = require('bcryptjs');
const salt = bcrypt.genSaltSync(10);
const hash = bcrypt.hashSync('123456', salt);
db.prepare('INSERT INTO users (username, password) VALUES (?, ?)').run('admin', hash);
}
module.exports = db;