From 9ff7f420bdd172827939773f127ee746bfc04c1a Mon Sep 17 00:00:00 2001 From: Lude Ribeiro Date: Wed, 20 Oct 2021 11:14:36 -0300 Subject: [PATCH 1/3] Atualizando campo Processo no Senado no form de Casas e Orgaos --- sigi/apps/convenios/models.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sigi/apps/convenios/models.py b/sigi/apps/convenios/models.py index 84e683d..b8e35ac 100644 --- a/sigi/apps/convenios/models.py +++ b/sigi/apps/convenios/models.py @@ -249,18 +249,18 @@ class Convenio(models.Model): if ((self.data_retorno_assinatura is None) and (self.equipada and self.data_termo_aceite is not None)): - return _(u"Convênio nº {number} - equipada em {date} pelo {project}" + return _(u"{project} nº {number} - equipada em {date}" ).format(number=self.num_convenio, date=self.data_termo_aceite.strftime('%d/%m/%Y'), project=self.projeto.sigla) elif self.data_retorno_assinatura is None: - return _(u"Convênio nº {number} - adesão ao projeto {project}, " + return _(u"{project}, nº {number}, início " u"em {date}").format(number=self.num_convenio, project=self.projeto.sigla, date=self.data_adesao) if ((self.data_retorno_assinatura is not None) and not (self.equipada and self.data_termo_aceite is not None)): - return _(u"Convênio nº {number} - conveniada ao {project} em " + return _(u"{project}, nº {number}, inicio em " u"{date}. Status: {status}").format( number=self.num_convenio, project=self.projeto.sigla, @@ -268,7 +268,7 @@ class Convenio(models.Model): status=self.get_status()) if ((self.data_retorno_assinatura is not None) and (self.equipada and self.data_termo_aceite is not None)): - return _(u"Convẽnio nº {number} - conveniada ao {project} em {date}" + return _(u"{project}, nº {number}, início em {date}" u" e equipada em {equipped_date}. Status: {status}" ).format(number=self.num_convenio, project=self.projeto.sigla, From 87de2c9ceec17973229e774ea0344a1c29124105 Mon Sep 17 00:00:00 2001 From: Lude Ribeiro Date: Tue, 26 Oct 2021 12:12:24 -0300 Subject: [PATCH 2/3] Fix #98 --- sigi/apps/casas/admin.py | 27 ++++++++++++++++++++++++--- sigi/apps/convenios/models.py | 3 ++- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/sigi/apps/casas/admin.py b/sigi/apps/casas/admin.py index 19b67f8..263b881 100644 --- a/sigi/apps/casas/admin.py +++ b/sigi/apps/casas/admin.py @@ -1,11 +1,13 @@ # -*- coding: utf-8 -*- +from unicodedata import name from django.contrib import admin from django.contrib.contenttypes import generic from django.core.urlresolvers import reverse from django.http import HttpResponseRedirect from django.shortcuts import render from django.utils.translation import ugettext as _ +#from geraldo.site.newsite.django_1_0.django.forms import extras from image_cropping import ImageCroppingMixin from sigi.apps.casas.forms import OrgaoForm @@ -57,6 +59,24 @@ class PresidenteInline(admin.StackedInline): # A função extra foi usada para quando existir um registro com o campo igual a null não aparecer na frente dos mais novos ) +class ContatoInterlegisInline(admin.StackedInline): + model = Funcionario + fields = ('nome', 'sexo', 'data_nascimento', 'nota', 'email', 'cargo', + 'funcao', 'setor', 'tempo_de_servico', 'ult_alteracao', + 'endereco', 'municipio', 'bairro', 'cep', 'redes_sociais', + 'desativado', 'observacoes') + raw_id_fields = ('municipio',) + readonly_fields = ('ult_alteracao',) + extra = 1 + inlines = (TelefonesInline,) + verbose_name_plural = _(u'Contato Interlegis Vigente') + def get_queryset(self, request): + return (self.model.objects.filter(setor='contato_interlegis') + .extra(select={'ult_null': 'ult_alteracao is null'}).order_by('-ult_alteracao') + ) + def get_extra(self, request, obj=None , **kwargs): + extra = 0 + return extra class FuncionariosInline(admin.StackedInline): model = Funcionario @@ -65,6 +85,7 @@ class FuncionariosInline(admin.StackedInline): 'endereco', 'municipio', 'bairro', 'cep', 'redes_sociais', 'desativado', 'observacoes') raw_id_fields = ('municipio',) + # fieldsets = ((None, { # 'fields': ( # ('nome', 'sexo', 'data_nascimento'), @@ -80,15 +101,15 @@ class FuncionariosInline(admin.StackedInline): readonly_fields = ('ult_alteracao',) extra = 1 inlines = (TelefonesInline,) + verbose_name_plural = _(u'Outros Contatos da Casa') def get_queryset(self, request): - return (self.model.objects.exclude(cargo='Presidente') + return (self.model.objects.exclude(cargo='Presidente',) .exclude(desativado=True).extra(select={'ult_null': 'ult_alteracao is null'}) .order_by('ult_null', '-ult_alteracao') # A função extra foi usada para quando existir um registro com o campo igual a null não aparecer na frente dos mais novos ) - class ConveniosInline(admin.TabularInline): model = Convenio fieldsets = ( @@ -354,7 +375,7 @@ class ServicoFilter(admin.SimpleListFilter): class OrgaoAdmin(ImageCroppingMixin, BaseModelAdmin): form = OrgaoForm actions = ['adicionar_casas', ] - inlines = (TelefonesInline, PresidenteInline, FuncionariosInline, + inlines = (TelefonesInline, PresidenteInline, ContatoInterlegisInline, FuncionariosInline, ConveniosInline, ServicoInline, OcorrenciaInline,) list_display = ('id', 'sigla', 'nome', 'get_uf', 'get_gerentes', 'get_convenios', 'get_servicos') diff --git a/sigi/apps/convenios/models.py b/sigi/apps/convenios/models.py index b8e35ac..3e9aafb 100644 --- a/sigi/apps/convenios/models.py +++ b/sigi/apps/convenios/models.py @@ -3,7 +3,7 @@ import re import requests from datetime import datetime, date from django.db import models -from django.db.models import Q +from django.db.models import Q, fields from django.core.mail import send_mail from django.core.urlresolvers import reverse from django.utils.translation import ugettext as _ @@ -65,6 +65,7 @@ class Convenio(models.Model): blank=True, help_text=_(u'Formatos:
Antigo: XXXXXX/XX-X.
SIGAD: XXXXX.XXXXXX/XXXX-XX') ) + fieldsets = ({'fields':('num_processo_sf',)}) num_convenio = models.CharField( _(u'número do convênio'), max_length=10, From ade62d8cdbcad02caa76e8c8310c504e4b7fdddb Mon Sep 17 00:00:00 2001 From: Lude Ribeiro Date: Wed, 27 Oct 2021 12:26:12 -0300 Subject: [PATCH 3/3] Fix #100 e Resolvendo problema da busca --- sigi/apps/casas/admin.py | 7 +++++-- sigi/apps/convenios/models.py | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sigi/apps/casas/admin.py b/sigi/apps/casas/admin.py index 263b881..d5562de 100644 --- a/sigi/apps/casas/admin.py +++ b/sigi/apps/casas/admin.py @@ -334,8 +334,11 @@ class ExcluirConvenioFilter(admin.SimpleListFilter): return tuple([(p.pk, p.sigla) for p in Projeto.objects.all()]) def queryset(self, request, queryset): - queryset = queryset.exclude(convenio__projeto_id=self.value()) - return queryset.distinct('municipio__uf__nome', 'nome') + if (self.value() is None): + return queryset + else: + queryset = queryset.exclude(convenio__projeto_id=self.value()).distinct('municipio__uf__nome', 'nome') + return queryset class ServicoFilter(admin.SimpleListFilter): title = _(u"Serviço") diff --git a/sigi/apps/convenios/models.py b/sigi/apps/convenios/models.py index 3e9aafb..5ab575e 100644 --- a/sigi/apps/convenios/models.py +++ b/sigi/apps/convenios/models.py @@ -10,6 +10,7 @@ from django.utils.translation import ugettext as _ from sigi.apps.utils import SearchField, to_ascii from sigi.apps.casas.models import Orgao from sigi.apps.servidores.models import Servidor, Servico +#from sigi.apps.convenios.admin import ConvenioAdmin class Projeto(models.Model): """ Modelo para representar os projetos do programa @@ -65,7 +66,6 @@ class Convenio(models.Model): blank=True, help_text=_(u'Formatos:
Antigo: XXXXXX/XX-X.
SIGAD: XXXXX.XXXXXX/XXXX-XX') ) - fieldsets = ({'fields':('num_processo_sf',)}) num_convenio = models.CharField( _(u'número do convênio'), max_length=10,