diff --git a/server/services/eventos.js b/server/services/eventos.js index af27972..1752e97 100644 --- a/server/services/eventos.js +++ b/server/services/eventos.js @@ -2,7 +2,9 @@ const dbRecords = _db.query(` SELECT evento.titulo, to_char(evento.data, 'DD/MM/YYYY') AS data, evento.capacidade, - evento.preco, categoria_evento.nome AS categoria + evento.preco, categoria_evento.nome AS categoria, + (SELECT count(*) FROM evento evento2 WHERE evento2.id_categoria = evento.id_categoria) as quantia, + ROW_NUMBER () OVER (PARTITION BY categoria_evento.id ORDER BY categoria_evento.nome) as linha FROM evento JOIN categoria_evento ON evento.id_categoria = categoria_evento.id ORDER BY categoria `); @@ -19,20 +21,25 @@ _out.println('
Categoria') _out.println('') - let copiaDbRecords = dbRecords.slice() +// let copiaDbRecords = dbRecords.slice() dbRecords.map(dbRecord => { - const initialLength = copiaDbRecords.length - copiaDbRecords = copiaDbRecords.filter(r => r.getString("categoria") != dbRecord.getString("categoria")) - const lengthCategoria = initialLength - copiaDbRecords.length +// const initialLength = copiaDbRecords.length +// copiaDbRecords = copiaDbRecords.filter(r => r.getString("categoria") != dbRecord.getString("categoria")) +// const lengthCategoria = initialLength - copiaDbRecords.length + + const quantia = dbRecord.getInt("quantia") + const linha = dbRecord.getInt("linha") + const imprimeCategoria = (quantia > 1 && linha === 1) || quantia === 1 _out.println(``) _out.println(`${dbRecord.getString("titulo")}`) _out.println(`${dbRecord.getString("data")}`) _out.println(`${dbRecord.getInt("capacidade")}`) _out.println(`${dbRecord.getDouble("preco")}`) - {lengthCategoria > 0 && _out.println(`${dbRecord.getString("categoria")}`)} + {imprimeCategoria _out.println(`${dbRecord.getString("categoria")}`)} + _out.println('') })