module.exports = (server, db) => {
  return {
    index: (req, res, next) => {
      db.query('SELECT * FROM PRODUTOS_GRUPOS', (error, data) => {
        res.send(data)
        next()
      })
    },

    show: (req, res, next) => {
      let { groupId } = req.params

      let queryString = 'SELECT FIRST 1 * FROM PRODUTOS_GRUPOS WHERE PRODUTO_GRUPO_ID = ?'
      let queryData = [groupId]

      db.query(queryString, queryData, (error, data) => {
        if (data.length !== 1) {
          res.send(`Falha ao encontrar o grupo de id ${groupId}.`)
          return next()
        }

        res.send(data[0])
        next()
      })
    },

    subgroups: (req, res, next) => {
      let groupId = req.params.groupId

      let queryString = 'SELECT * FROM PRODUTOS_SUBGRUPOS WHERE PRODUTO_GRUPO_ID = ?'
      let queryData = [groupId]

      db.query(queryString, queryData, (error, data) => {
        res.send(data)
        next()
      })
    }
  }
}
