import faker from 'faker'; import kommuner from './kommuner.js'; import languages from './languages.js'; import organizations from './organizations.js'; import services from './services.js'; faker.locale = 'sv'; const SERVICES = services.generate(); const KOMMUN = kommuner.generate(); const ORGANIZATIONS = organizations.generate(); const STATUSES = [true, false]; const LANGUAGES = languages.generate(); const AUTHORIZATIONS = ['Hantera användare', 'Hantera origisation', 'Hantera ekonomi']; function generateEmployees(amount = 10) { const employees = []; for (let i = 1; i <= amount; ++i) { const person = { id: faker.datatype.uuid(), firstName: faker.name.firstName(), lastName: faker.name.lastName(), ssn: `${faker.date.between('1950', '2000').toISOString().split('T')[0].replace(/-/g, '')}-${faker.datatype.number( { min: 1000, max: 9999, } )}`, phone: `07${faker.datatype.number(9)}-${faker.datatype.number({ min: 1000000, max: 9999999 })}`, email: faker.internet.email(), organization: ORGANIZATIONS[Math.floor(Math.random() * ORGANIZATIONS.length)], services: [SERVICES[Math.floor(Math.random() * SERVICES.length)].name], authorizations: AUTHORIZATIONS, // active: STATUSES[Math.floor(Math.random() * STATUSES.length)], // languages: [ // LANGUAGES.find(language => language.name === 'Svenska'), // ...chooseRandom(LANGUAGES, faker.datatype.number(3)), // ], // outOfOffice: STATUSES[Math.floor(Math.random() * STATUSES.length)] // ? [ // { // start: new Date('2021-07-12'), // end: new Date('2021-07-24'), // }, // ] // : [], }; employees.push(person); } console.info('Employees generated...'); return employees; } export default { generate: generateEmployees, };