service.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. const { register, Sequelize } = require('@alancnet/material-framework/auto-crud')
  2. register({
  3. camelName: 'service',
  4. iconAsset: 'userIcon',
  5. schema: {
  6. id: {
  7. type: Sequelize.UUID,
  8. defaultValue: Sequelize.UUIDV1,
  9. primaryKey: true
  10. },
  11. workdayId: Sequelize.UUID,
  12. clientId: Sequelize.UUID,
  13. date: Sequelize.DATEONLY, // Copy from Workday
  14. delivered: Sequelize.INTEGER,
  15. inbound: Sequelize.INTEGER
  16. },
  17. options: {
  18. paranoid: true,
  19. indexes: [
  20. {
  21. unique: true,
  22. fields: ['workdayId', 'clientId']
  23. }
  24. ]
  25. },
  26. columns: [
  27. { camelName: 'date', type: 'date' },
  28. { camelName: 'workdayId', titleName: 'Workday', type: 'autocomplete', source: '/api/workdays' },
  29. { camelName: 'clientId', titleName: 'Client', type: 'autocomplete', source: '/api/clients' },
  30. { camelName: 'delivered', type: 'number' },
  31. { camelName: 'scanned', type: 'number' }
  32. ],
  33. layout: [
  34. {
  35. section: 'Details',
  36. rows: [
  37. [ 'name', 'key' ],
  38. [ 'address' ]
  39. [ 'terminalId', 'distanceMiles' ]
  40. ]
  41. }
  42. ]
  43. })