fixed determination of user roles in seeder.helper.js
This commit is contained in:
parent
3f48cea5c3
commit
eca0126f45
|
|
@ -1,6 +1,6 @@
|
|||
const bcrypt = require("bcryptjs");
|
||||
|
||||
export const createUsers = async (queryInterface, roles, users) => {
|
||||
const createUsers = async (queryInterface, roles, users) => {
|
||||
// Create Authentications
|
||||
await queryInterface.bulkInsert('Authentications', users.map((player) => {
|
||||
return {
|
||||
|
|
@ -26,22 +26,22 @@ export const createUsers = async (queryInterface, roles, users) => {
|
|||
};
|
||||
}));
|
||||
|
||||
const createdUsers = await queryInterface.select(null, 'Users');
|
||||
const userRoles = createdUsers.flatMap(user => user.roles.map(role => ({
|
||||
id: user.id,
|
||||
role: role
|
||||
})));
|
||||
|
||||
const rolesByName = roles.reduce((map, role) => {
|
||||
map[role.name] = role;
|
||||
return map;
|
||||
})
|
||||
}, {});
|
||||
|
||||
const createdUsers = await queryInterface.select(null, 'Users');
|
||||
const userRoles = users.flatMap(user => user.roles.map(role => ({
|
||||
id: createdUsers.find(user => user.firstName === user.firstName && user.lastName === user.lastName).id,
|
||||
role: rolesByName[role]
|
||||
})));
|
||||
|
||||
// Create UserRoles
|
||||
await queryInterface.bulkInsert('UserRoles', userRoles.map(userRole => {
|
||||
return {
|
||||
userId: userRole.id,
|
||||
roleId: rolesByName[userRole.role].id,
|
||||
roleId: userRole.role.id,
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date()
|
||||
};
|
||||
|
|
@ -50,9 +50,11 @@ export const createUsers = async (queryInterface, roles, users) => {
|
|||
return createdUsers;
|
||||
}
|
||||
|
||||
export const createPlayer = async (queryInterface, roles, players) => {
|
||||
|
||||
const users = await createUsers(queryInterface, roles, players);
|
||||
const createPlayer = async (queryInterface, roles, players) => {
|
||||
const users = await createUsers(queryInterface, roles, players.map(player => ({
|
||||
...player,
|
||||
roles: player.roles || ['player']
|
||||
})));
|
||||
|
||||
// Create Players
|
||||
await queryInterface.bulkInsert('Players', players.map(player => {
|
||||
|
|
@ -64,6 +66,7 @@ export const createPlayer = async (queryInterface, roles, players) => {
|
|||
bats: player.bats,
|
||||
throws: player.throws,
|
||||
state: player.state,
|
||||
jerseyNumber: player.jerseyNumber,
|
||||
userId: user ? user.id : null,
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date()
|
||||
|
|
@ -72,3 +75,8 @@ export const createPlayer = async (queryInterface, roles, players) => {
|
|||
|
||||
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
createPlayer,
|
||||
createUsers
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue