diff --git a/server/seedDatabase.js b/server/seedDatabase.js index 15dc1d5..3c72c1e 100644 --- a/server/seedDatabase.js +++ b/server/seedDatabase.js @@ -1,5 +1,5 @@ const bcrypt = require('bcryptjs'); -const { User, Device, AlertRule, ManagementUser } = require('./models'); +const { User, Device, AlertRule, ManagementUser, Tenant } = require('./models'); const { createInitialManagementUser } = require('./scripts/seed-management-users'); async function seedDatabase() { @@ -9,16 +9,38 @@ async function seedDatabase() { // First, create management users (platform admins) await createInitialManagementUser(); + // Create default tenant "uamils-ab" + let defaultTenant = await Tenant.findOne({ where: { slug: 'uamils-ab' } }); + + if (!defaultTenant) { + defaultTenant = await Tenant.create({ + name: 'UAMILS AB', + slug: 'uamils-ab', + domain: 'uamils-ab.dev.uggla.uamils.com', + subscription_type: 'enterprise', + is_active: true, + auth_provider: 'local' + }); + console.log('✅ Default tenant "uamils-ab" created'); + } else { + console.log('✅ Default tenant "uamils-ab" already exists'); + } + // Check if admin user exists (legacy tenant admin) - const existingAdmin = await User.findOne({ where: { username: 'admin' } }); + const existingAdmin = await User.findOne({ + where: { + username: 'admin', + tenant_id: defaultTenant.id + } + }); if (!existingAdmin) { - // Create default admin user + // Create default admin user for uamils-ab tenant const adminPassword = await bcrypt.hash('admin123', 10); await User.create({ username: 'admin', - email: 'admin@dronedetection.local', + email: 'admin@uamils.com', password_hash: adminPassword, first_name: 'System', last_name: 'Administrator', @@ -26,12 +48,13 @@ async function seedDatabase() { is_active: true, sms_alerts_enabled: false, email_alerts_enabled: false, - timezone: 'Europe/Stockholm' + timezone: 'Europe/Stockholm', + tenant_id: defaultTenant.id }); - console.log('✅ Admin user created (username: admin, password: admin123)'); + console.log('✅ Admin user created for uamils-ab tenant (username: admin, password: admin123)'); } else { - console.log('✅ Admin user already exists'); + console.log('✅ Admin user already exists for uamils-ab tenant'); } // Check if tumanovsky user exists