feat(auth): enrutar clientes webcontrol a XSYSTEM y google a Telcotronics; registrar admins por empresa
This commit is contained in:
+14
-11
@@ -162,26 +162,29 @@ async function setup() {
|
||||
}
|
||||
}
|
||||
|
||||
// Seed users
|
||||
// Seed users and company admins
|
||||
const bcrypt = require('bcryptjs');
|
||||
const hash = await bcrypt.hash('123456', 10);
|
||||
const users = [
|
||||
['super@helpdesk.com', 'Super Admin', 'superadmin'],
|
||||
['admin@helpdesk.com', 'Admin', 'admin'],
|
||||
['agent@helpdesk.com', 'Agente', 'agent'],
|
||||
['client@helpdesk.com', 'Cliente', 'client']
|
||||
[1, 'super@helpdesk.com', 'Super Admin', 'superadmin'],
|
||||
[1, 'admin@telcotronics.local', 'Admin Telcotronics', 'admin'],
|
||||
[2, 'admin@xsystem.com', 'Admin XSYSTEM', 'admin'],
|
||||
[3, 'admin@domus.com', 'Admin DOMUS', 'admin'],
|
||||
[1, 'agent@helpdesk.com', 'Agente', 'agent'],
|
||||
[1, 'client@helpdesk.com', 'Cliente', 'client']
|
||||
];
|
||||
for (const [email, nombre, rol] of users) {
|
||||
const [u] = await conn.query('SELECT id FROM users WHERE email = ?', [email]);
|
||||
for (const [cId, email, nombre, rol] of users) {
|
||||
const [u] = await conn.query('SELECT id, rol FROM users WHERE email = ?', [email]);
|
||||
if (u.length === 0) {
|
||||
await conn.query(
|
||||
'INSERT INTO users (company_id, nombre, email, password, rol) VALUES (?, ?, ?, ?, ?)',
|
||||
[companyId, nombre, email, hash, rol]
|
||||
[cId, nombre, email, hash, rol]
|
||||
);
|
||||
console.log(`+ Usuario ${email} creado`);
|
||||
console.log(`+ Usuario ${email} (${rol}) creado en empresa ${cId}`);
|
||||
} else {
|
||||
await conn.query('UPDATE users SET company_id = ?, rol = ? WHERE email = ? AND rol != ?', [companyId, rol, email, 'superadmin']);
|
||||
console.log(`~ Usuario ${email} actualizado`);
|
||||
const finalRole = u[0].rol === 'superadmin' ? 'superadmin' : rol;
|
||||
await conn.query('UPDATE users SET company_id = ?, nombre = ?, rol = ? WHERE email = ?', [cId, nombre, finalRole, email]);
|
||||
console.log(`~ Usuario ${email} actualizado en empresa ${cId}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user