statistics.js 580 B

1234567891011121314151617181920212223
  1. const sequelize = require('../database/sequelize')
  2. const get = async (req, res) => {
  3. const [results, metadata] = await sequelize.query(`
  4. SELECT
  5. loc.key,
  6. wd.date,
  7. wd.laborCost,
  8. SUM(svc.delivered) as delivered,
  9. SUM(svc.scanned) as scanned,
  10. SUM(svc.delivered) / (wd.regularHours + (wd.overtimeHours * 1.5)) as efficiency
  11. FROM workdays wd
  12. JOIN locations loc on wd.locationId = loc.id
  13. LEFT JOIN services svc on svc.workdayId = wd.id
  14. GROUP BY loc.key, wd.date
  15. `)
  16. res.status(200).send(results)
  17. }
  18. module.exports = {
  19. get
  20. }