From 84cde8eb23188e186513af93ea1f7847a16bdb0a Mon Sep 17 00:00:00 2001 From: Felipe Vieira Date: Wed, 7 Dec 2011 21:32:37 +0000 Subject: [PATCH] ajuste para listar contados e categorias respondidas --- sigi/apps/diagnosticos/models.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/sigi/apps/diagnosticos/models.py b/sigi/apps/diagnosticos/models.py index c844ec4..a9eedad 100644 --- a/sigi/apps/diagnosticos/models.py +++ b/sigi/apps/diagnosticos/models.py @@ -58,25 +58,24 @@ class Diagnostico(BaseEntity): """Retorna uma lista de contatos que foram respondidos """ - casa_legislativa = CasaLegislativa.objects.get( - pk=self.casa_legislativa.id) - categoria_com_respostas = set(casa_legislativa.funcionario_set.all()) - - return list(categoria_com_respostas) + return list(self.casa_legislativa.funcionario_set.all()) @property def categorias_respondidas(self): """ Retorna uma listas das categorias dinamicas que tem ao menos uma resposta """ + # unifica as categorias das perguntas dessas respostas + categoria_com_respostas = set([r.schema.categoria for r in self._get_respostas()]) + + return list(categoria_com_respostas) + def _get_respostas(self): # obtem todas as respostas dinamicas desse diagnostico respostas = Resposta.objects.filter(entity_id=self.id).all() - # unifica as categorias das perguntas dessas respostas - categoria_com_respostas = set([r.schema.choices.all() for r in respostas]) - - return list(categoria_com_respostas) + # remove as respostas nulas ou em branco + return [r for r in respostas if r._get_value()] def email_diagnostico_publicado(self, from_email, host): """Enviando email quando o diagnóstico for publicado. Os