diff --git a/sigi/context_processors.py b/sigi/context_processors.py index 09dcd53..1eab4df 100644 --- a/sigi/context_processors.py +++ b/sigi/context_processors.py @@ -26,42 +26,50 @@ def busca_informacoes_camara(): ''' Busca informacoes no banco para montar tabela de resumo de camaras por projeto Retorna um dicionario de listas - ''' - casas = CasaLegislativa.objects.all() - camaras = casas.filter(tipo__sigla='CM') + ''' + camaras = CasaLegislativa.objects.filter(tipo__sigla='CM') convenios = Convenio.objects.filter(casa_legislativa__tipo__sigla='CM') projetos = Projeto.objects.all() convenios_assinados = convenios.exclude(data_retorno_assinatura=None) convenios_em_andamento = convenios.filter(data_retorno_assinatura=None) - camaras_nao_aderidas = camaras.filter(convenio__data_adesao=None) - camaras_aderidas = camaras.exclude(convenio__data_adesao=None) + convenios_sem_adesao = convenios.filter(data_adesao=None) + convenios_com_adesao = convenios.exclude(data_adesao=None) + + convenios_com_aceite = convenios.exclude(data_termo_aceite=None) - camaras_equipadas = camaras.exclude(convenio__data_termo_aceite=None) + camaras_sem_processo = camaras.filter(convenio=None) # Criacao das listas para o resumo de camaras por projeto - cabecalho_topo = ['','Total'] # Cabecalho superior da tabela + cabecalho_topo = ['',] # Cabecalho superior da tabela - lista_total = [camaras.count()] - lista_nao_aderidas = [camaras_nao_aderidas.count()] - lista_aderidas = [camaras_aderidas.count()] - lista_convenios_assinados = [convenios_assinados.count()] - lista_convenios_em_andamento = [convenios_em_andamento.count()] - lista_camaras_equipadas = [camaras_equipadas.count()] + lista_total = [] + lista_nao_aderidas = [] + lista_aderidas = [] + lista_convenios_assinados = [] + lista_convenios_em_andamento = [] + lista_camaras_equipadas = [] for projeto in projetos: + conv_sem_adesao_proj = convenios_sem_adesao.filter(projeto=projeto) + conv_com_adesao_proj = convenios_com_adesao.filter(projeto=projeto) + conv_assinados_proj = convenios_assinados.filter(projeto=projeto) + conv_em_andamento_proj = convenios_em_andamento.filter(projeto=projeto) + conv_equipadas_proj = convenios_com_aceite.filter(projeto=projeto) + + cabecalho_topo.append(projeto.sigla) lista_total.append(camaras.filter(convenio__projeto=projeto).count()) - lista_nao_aderidas.append(camaras_nao_aderidas.filter(convenio__projeto=projeto).count()) - lista_aderidas.append(camaras_aderidas.filter(convenio__projeto=projeto).count()) - lista_convenios_assinados.append(convenios_assinados.filter(projeto=projeto).count()) - lista_convenios_em_andamento.append(convenios_em_andamento.filter(projeto=projeto).count()) - lista_camaras_equipadas.append(camaras_equipadas.filter(convenio__projeto=projeto).count()) + lista_nao_aderidas.append(camaras.filter(convenio__in=conv_sem_adesao_proj).count() ) + lista_aderidas.append(camaras.filter(convenio__in=conv_com_adesao_proj).count()) + lista_convenios_assinados.append(camaras.filter(convenio__in=conv_assinados_proj).count()) + lista_convenios_em_andamento.append(camaras.filter(convenio__in=conv_em_andamento_proj).count()) + lista_camaras_equipadas.append(camaras.filter(convenio__in=conv_equipadas_proj).count()) # Cabecalho da esquerda na tabela cabecalho_esquerda = ( - u'Total de câmaras municipais', + u'Câmaras municipais', u'Câmaras municipais não aderidas', u'Câmaras municipais aderidas', u'Câmaras municipais com convênios assinados', @@ -83,11 +91,11 @@ def busca_informacoes_camara(): lista_zip = zip(cabecalho_esquerda,linhas) # Retornando listas em forma de dicionario - return { + return { u'cabecalho_topo': cabecalho_topo, u'lista_zip': lista_zip, - u'linhas' : linhas, - + u'total_camaras' : camaras.count(), + u'camaras_sem_processo': camaras_sem_processo.count(), } def grafico_convenio_projeto(convenios): diff --git a/sigi/templates/snippets/modules/charts-convenios.html b/sigi/templates/snippets/modules/charts-convenios.html index 38c41d0..b54853f 100644 --- a/sigi/templates/snippets/modules/charts-convenios.html +++ b/sigi/templates/snippets/modules/charts-convenios.html @@ -24,7 +24,7 @@

Resumo de informações

Câmaras municipais por projeto

- +
{% for item in tabela_resumo_camara.cabecalho_topo %} @@ -38,8 +38,15 @@ {% endfor %} - {% endfor %} -
{{item}}{{item}}
+ {% endfor %} + + +

+
Câmaras sem processo: {{tabela_resumo_camara.camaras_sem_processo}}

+ Total de câmaras: {{tabela_resumo_camara.total_camaras}}
+

+
+
@@ -57,4 +64,4 @@
- \ No newline at end of file +