20191127135703-EquipmentDataSeeder.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. 'use strict'
  2. const faker = require('faker')
  3. const alarms = ['Normal', 'Alarm', 'Low Battery']
  4. function getEqumentData(ap_id) {
  5. return {
  6. ap_id,
  7. aid_id: `輔具編號 ${faker.random.number(5)}`,
  8. beacon_id: faker.hacker.noun() + faker.random.number({ min: 100, max: 999 }),
  9. status: faker.random.number(3).toString(),
  10. battery: faker.random.number(100),
  11. alarm: alarms[faker.random.number(2)],
  12. latitude: faker.address.latitude(),
  13. longitude: faker.address.longitude(),
  14. created_at: faker.date.recent(1)
  15. }
  16. }
  17. module.exports = {
  18. up: (queryInterface, Sequelize) => {
  19. return queryInterface.bulkInsert(
  20. 'equipment_data',
  21. Array.from(Array(20).keys()).map(() => getEqumentData('1'))
  22. )
  23. /*
  24. Add altering commands here.
  25. Return a promise to correctly handle asynchronicity.
  26. Example:
  27. return queryInterface.bulkInsert('People', [{
  28. name: 'John Doe',
  29. isBetaMember: false
  30. }], {});
  31. */
  32. },
  33. down: (queryInterface, Sequelize) => {
  34. return queryInterface.bulkDelete('equipment_data', null, {})
  35. /*
  36. Add reverting commands here.
  37. Return a promise to correctly handle asynchronicity.
  38. Example:
  39. return queryInterface.bulkDelete('People', null, {});
  40. */
  41. }
  42. }