feat: Add 5Why_ prefix to all database tables
- Rename all tables with 5Why_ prefix for namespace isolation - Update models: User.js, Analysis.js, AuditLog.js - Update routes: llmConfig.js - Update scripts: seed-test-users.js, add-deepseek-config.js, add-ollama-config.js - Add migrate-table-prefix.js script for database migration - Update db_schema.sql with new table names - Update views: 5Why_user_analysis_stats, 5Why_recent_analyses Tables renamed: - users -> 5Why_users - analyses -> 5Why_analyses - analysis_perspectives -> 5Why_analysis_perspectives - analysis_whys -> 5Why_analysis_whys - llm_configs -> 5Why_llm_configs - system_settings -> 5Why_system_settings - audit_logs -> 5Why_audit_logs - sessions -> 5Why_sessions 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -60,7 +60,7 @@ async function seedTestUsers() {
|
||||
for (const user of testUsers) {
|
||||
// 檢查使用者是否已存在 (只用 email 精確匹配)
|
||||
const [existing] = await connection.execute(
|
||||
'SELECT id FROM users WHERE email = ?',
|
||||
'SELECT id FROM 5Why_users WHERE email = ?',
|
||||
[user.email]
|
||||
);
|
||||
|
||||
@@ -68,7 +68,7 @@ async function seedTestUsers() {
|
||||
// 更新現有使用者的密碼
|
||||
const passwordHash = await bcrypt.hash(user.password, 10);
|
||||
await connection.execute(
|
||||
'UPDATE users SET password_hash = ?, role = ?, is_active = 1, employee_id = ? WHERE email = ?',
|
||||
'UPDATE 5Why_users SET password_hash = ?, role = ?, is_active = 1, employee_id = ? WHERE email = ?',
|
||||
[passwordHash, user.role, user.employee_id, user.email]
|
||||
);
|
||||
console.log(`🔄 Updated: ${user.email} (${user.role})`);
|
||||
@@ -76,7 +76,7 @@ async function seedTestUsers() {
|
||||
// 建立新使用者
|
||||
const passwordHash = await bcrypt.hash(user.password, 10);
|
||||
await connection.execute(
|
||||
`INSERT INTO users (employee_id, username, email, password_hash, role, department, position, is_active)
|
||||
`INSERT INTO 5Why_users (employee_id, username, email, password_hash, role, department, position, is_active)
|
||||
VALUES (?, ?, ?, ?, ?, ?, ?, 1)`,
|
||||
[user.employee_id, user.username, user.email, passwordHash, user.role, user.department, user.position]
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user