From 155c661d8602c78023b0978872a69b8c1ddc55f8 Mon Sep 17 00:00:00 2001 From: RogerKoala Date: Thu, 2 Jul 2026 09:35:16 -0300 Subject: [PATCH] =?UTF-8?q?feat(votacao):=20implementa=20app=20Vue2+Vuex?= =?UTF-8?q?=20para=20vota=C3=A7=C3=A3o=20nominal=20v2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/__apps/painel/main.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/frontend/src/__apps/painel/main.js b/frontend/src/__apps/painel/main.js index 237bd3004..a96036546 100644 --- a/frontend/src/__apps/painel/main.js +++ b/frontend/src/__apps/painel/main.js @@ -1,6 +1,5 @@ import './scss/painel.scss' -// main.js (Vue 2) import Vue from 'vue' import Vuex from 'vuex' import { mapState } from 'vuex'; @@ -14,7 +13,6 @@ import PainelOradores from '../../components/painel/PainelOradores.vue' import PainelMateria from '../../components/painel/PainelMateria.vue' import PainelResultado from '../../components/painel/PainelResultado.vue' import PainelFooter from '../../components/painel/PainelFooter.vue' -import alarm from '../../assets/audio/ring.mp3' // register components Vue.component('painel-cronometro', Cronometro) @@ -121,6 +119,7 @@ new Vue({ this.connectWS() }, + computed: { ...mapState(["painel_aberto", "sessao_aberta", "sessao"]), canRender () { @@ -269,6 +268,11 @@ new Vue({ console.log(`Received ping from server: ${JSON.stringify(data)}`); } else if (data.type == 'stopwatch.update') { this.handleStopWatchEvent(data); + } else if (data.type == 'vote.update') { + console.log('Received vote update:', data); + this.updateParlamentares({ + [data.parlamentar_id]: { voto: data.voto } + }); } } catch (e) { console.error('WS parse error:', e);