|
|
@ -9,23 +9,22 @@ from sapl.base.models import Autor, TipoAutor |
|
|
from sapl.comissoes.models import Participacao, Composicao, Comissao |
|
|
from sapl.comissoes.models import Participacao, Composicao, Comissao |
|
|
from sapl.parlamentares.models import Parlamentar, Legislatura, Mandato |
|
|
from sapl.parlamentares.models import Parlamentar, Legislatura, Mandato |
|
|
|
|
|
|
|
|
|
|
|
class ParticipacaoCreateForm(forms.ModelForm): |
|
|
class ParticipacaoForm(forms.ModelForm): |
|
|
|
|
|
|
|
|
|
|
|
parent_pk = forms.CharField(required=False) # widget=forms.HiddenInput()) |
|
|
parent_pk = forms.CharField(required=False) # widget=forms.HiddenInput()) |
|
|
|
|
|
|
|
|
class Meta: |
|
|
class Meta: |
|
|
model = Participacao |
|
|
model = Participacao |
|
|
# includes = ['parlamentar', 'cargo', 'titular', 'data_designacao', 'data_desligamento', 'data_'] |
|
|
|
|
|
# exclude = [] |
|
|
|
|
|
exclude = ['composicao'] |
|
|
exclude = ['composicao'] |
|
|
|
|
|
|
|
|
def __init__(self, user=None, **kwargs): |
|
|
def __init__(self, user=None, **kwargs): |
|
|
super(ParticipacaoForm, self).__init__(**kwargs) |
|
|
super(ParticipacaoCreateForm, self).__init__(**kwargs) |
|
|
|
|
|
|
|
|
import ipdb; ipdb.set_trace() |
|
|
if self.instance: |
|
|
if self.instance.pk: |
|
|
comissao = kwargs['initial'] |
|
|
participantes = self.instance.composicao.participacao_set.all() |
|
|
comissao_pk = int(comissao['parent_pk']) |
|
|
|
|
|
composicao = Composicao.objects.get(id=comissao_pk) |
|
|
|
|
|
participantes = composicao.participacao_set.all() |
|
|
id_part = [p.parlamentar.id for p in participantes] |
|
|
id_part = [p.parlamentar.id for p in participantes] |
|
|
else: |
|
|
else: |
|
|
id_part = [] |
|
|
id_part = [] |
|
|
@ -50,7 +49,7 @@ class ParticipacaoForm(forms.ModelForm): |
|
|
self.fields['parlamentar'].queryset = qs |
|
|
self.fields['parlamentar'].queryset = qs |
|
|
|
|
|
|
|
|
def create_participacao(self): |
|
|
def create_participacao(self): |
|
|
composicao = self.instance.composicao |
|
|
composicao = Composicao.objects.get(id=self.initial['parent_pk']) |
|
|
data_inicio_comissao = composicao.periodo.data_inicio |
|
|
data_inicio_comissao = composicao.periodo.data_inicio |
|
|
data_fim_comissao = composicao.periodo.data_fim |
|
|
data_fim_comissao = composicao.periodo.data_fim |
|
|
q1 = Q(data_fim_mandato__isnull=False, |
|
|
q1 = Q(data_fim_mandato__isnull=False, |
|
|
@ -63,13 +62,11 @@ class ParticipacaoForm(forms.ModelForm): |
|
|
return qs |
|
|
return qs |
|
|
|
|
|
|
|
|
def clean(self): |
|
|
def clean(self): |
|
|
super(ParticipacaoForm, self).clean() |
|
|
super(ParticipacaoCreateForm, self).clean() |
|
|
|
|
|
|
|
|
# if self.instance: |
|
|
|
|
|
return self.cleaned_data |
|
|
return self.cleaned_data |
|
|
|
|
|
|
|
|
def verifica(self): |
|
|
def verifica(self): |
|
|
composicao = self.instance.composicao |
|
|
composicao = Composicao.objects.get(id=self.initial['parent_pk']) |
|
|
participantes = composicao.participacao_set.all() |
|
|
participantes = composicao.participacao_set.all() |
|
|
participantes_id = [p.parlamentar.id for p in participantes] |
|
|
participantes_id = [p.parlamentar.id for p in participantes] |
|
|
parlamentares = Parlamentar.objects.all().exclude(id__in=participantes_id).order_by('nome_completo') |
|
|
parlamentares = Parlamentar.objects.all().exclude(id__in=participantes_id).order_by('nome_completo') |
|
|
@ -93,6 +90,26 @@ class ParticipacaoForm(forms.ModelForm): |
|
|
|
|
|
|
|
|
return lista |
|
|
return lista |
|
|
|
|
|
|
|
|
|
|
|
class ParticipacaoEditForm(forms.ModelForm): |
|
|
|
|
|
|
|
|
|
|
|
parent_pk = forms.CharField(required=False) # widget=forms.HiddenInput()) |
|
|
|
|
|
nome_parlamentar = forms.CharField(required=False, label='Parlamentar') |
|
|
|
|
|
|
|
|
|
|
|
class Meta: |
|
|
|
|
|
model = Participacao |
|
|
|
|
|
fields = ['nome_parlamentar', 'parlamentar', 'cargo', 'titular', 'data_designacao', 'data_desligamento', 'motivo_desligamento', 'observacao'] |
|
|
|
|
|
widgets = { |
|
|
|
|
|
'parlamentar': forms.HiddenInput(), |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
def __init__(self, user=None, **kwargs): |
|
|
|
|
|
super(ParticipacaoEditForm, self).__init__(**kwargs) |
|
|
|
|
|
self.initial['nome_parlamentar'] = Parlamentar.objects.filter(id=self.initial['parlamentar']).first().nome_parlamentar |
|
|
|
|
|
self.fields['nome_parlamentar'].widget.attrs['disabled'] = 'disabled' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ComissaoForm(forms.ModelForm): |
|
|
class ComissaoForm(forms.ModelForm): |
|
|
|
|
|
|
|
|
class Meta: |
|
|
class Meta: |
|
|
@ -114,7 +131,7 @@ class ComissaoForm(forms.ModelForm): |
|
|
comissao = super(ComissaoForm, self).save(commit) |
|
|
comissao = super(ComissaoForm, self).save(commit) |
|
|
content_type = ContentType.objects.get_for_model(Comissao) |
|
|
content_type = ContentType.objects.get_for_model(Comissao) |
|
|
object_id = comissao.pk |
|
|
object_id = comissao.pk |
|
|
tipo = TipoAutor.objects.get(descricao='Comissão') |
|
|
tipo = TipoAutor.objects.get(descricao__icontains='Comiss') |
|
|
nome = comissao.sigla+' - '+comissao.nome |
|
|
nome = comissao.sigla+' - '+comissao.nome |
|
|
Autor.objects.create( |
|
|
Autor.objects.create( |
|
|
content_type=content_type, |
|
|
content_type=content_type, |
|
|
|