cálculo de votos ok

1 parent bc99d4e4
......@@ -39,17 +39,19 @@ export default class Andamento extends Component {
getVotosRealizados = () => {
const { votantes, questoes } = this.state.sala;
const qtdVotantes = votantes.length;
let count = 0;
let { alternativas } = questoes[0];
alternativas.forEach(element => {
if(element && element[1]) {
//contabiliza a qtd de votos nas alternativas da questão[0], já que é obrigatório votar em somente uma.
count = count + element[1];
}
});
const porcentagem = 100*count/qtdVotantes;
return Number(porcentagem).toFixed(2);
if(votantes && questoes) {
const qtdVotantes = votantes.length;
let count = 0;
let { alternativas } = questoes[0];
alternativas.forEach(element => {
if(element && element[1]) {
//contabiliza a qtd de votos nas alternativas da questão[0], já que é obrigatório votar em somente uma.
count = count + element[1];
}
});
const porcentagem = 100*count/qtdVotantes;
return Number(porcentagem).toFixed(2);
}
}
render() {
......@@ -60,7 +62,7 @@ export default class Andamento extends Component {
{sala.descricao}
</Text>
<View>
<StatusVotacao tipo = 'usuario' texto={`${this.getVotosRealizados()}% dos usuários já votaram`} />
<StatusVotacao tipo = 'usuario' texto={`${this.getVotosRealizados() || 0}% dos usuários já votaram`} />
<StatusVotacao tipo = 'hora' texto = {
encerrou ? 'Votação encerrou em: ' +
getStatus(
......@@ -72,7 +74,7 @@ export default class Andamento extends Component {
): "Votação ainda não encerrou."
}/>
</View>
<BotaoGrande texto="Andamento" disabled={!encerrou} onPress={() => this.andamentoVotos()}/>
<BotaoGrande texto="Andamento" onPress={() => this.andamentoVotos()}/>
</View>
);
}
......
......@@ -51,8 +51,8 @@ export default class Andamento extends Component {
return (
<View key={index + 1 } style={andamento.alternativas}>
<IndiceAlternativa indice={`${alfabeto[index]})`} />
<BarraProgresso progresso={Number(((alternativa[1]/totalDeVotos)*100).toFixed(1))} />
<Text>{Number(((alternativa[1]/totalDeVotos)*100).toFixed(5))}%</Text>
<BarraProgresso progresso={Number(((alternativa[1]/totalDeVotos)*100).toFixed(1)) || 0} />
<Text>{Number(((alternativa[1]/totalDeVotos)*100).toFixed(5)) || 0}%</Text>
</View>
);
})
......
......@@ -10,7 +10,7 @@ export default class Login extends Component {
super(props)
this.state = {
salas: {},
email: 'email@email.com',
email: 'email@id.com',
senha: '123456',
errorMessage:''
}
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!