You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

42 lines
2.0 KiB

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
FROM evento JOIN categoria_evento ON evento.id_categoria = categoria_evento.id ORDER BY categoria
`);
_out.println('<div style="display: flex; justify-content: center; margin-top: 80px; min-height: 585px;">')
_out.println('<div>')
_out.println('<caption><a style="display: flex; justify-content: center; font-weight: bold; font-size: 25px; margin-bottom: 10px;">Eventos</a></caption>')
_out.println('<table style="min-width:700px; text-align:left">')
_out.println('<tr style="height: 35px;">')
_out.println('<th>Título</th>')
_out.println('<th>Data</th>')
_out.println('<th>Capacidade</th>')
_out.println('<th>Preço</th>')
_out.println('<th>Categoria</th>')
_out.println('</tr>')
let copiaDbRecords = dbRecords.slice()
dbRecords.map((dbRecord,i) => {
const initialLength = copiaDbRecords.length
copiaDbRecords = copiaDbRecords.filter(r => r.getString("categoria") != dbRecord.getString("categoria"))
const lengthCategoria = initialLength - copiaDbRecords.length
_out.println(`<tr style="height:35px;">`)
_out.println(`<td>${dbRecord.getString("titulo")}</td>`)
_out.println(`<td>${dbRecord.getString("data")}</td>`)
_out.println(`<td>${dbRecord.getInt("capacidade")}</td>`)
_out.println(`<td>${dbRecord.getDouble("preco")}</td>`)
{lengthCategoria > 0 && _out.println(`<td rowspan="${lengthCategoria}">${dbRecord.getString("categoria")}</td>`)}
_out.println('</tr>')
})
_out.println('</table>')
_out.println('</div>')
_out.println('</div>')