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,