mirror of https://github.com/interlegis/sapl.git
Browse Source
* Init crud composição * Muda listagem de composicao * Muda listagem de participação para detail * Cria crud de participação * Conserta links dos botões * Fix qa * Arruma links quando está no detalhe do parlamentarpull/480/head
Eduardo Edson Batista Cordeiro Alves
9 years ago
committed by
Edward
8 changed files with 119 additions and 309 deletions
@ -1,69 +0,0 @@ |
|||||
from crispy_forms.helper import FormHelper |
|
||||
from crispy_forms.layout import Fieldset, Layout |
|
||||
from django import forms |
|
||||
from django.forms import ModelForm |
|
||||
from django.utils.translation import ugettext_lazy as _ |
|
||||
|
|
||||
import crispy_layout_mixin |
|
||||
from crispy_layout_mixin import form_actions |
|
||||
from parlamentares.models import Filiacao |
|
||||
|
|
||||
from .models import Participacao |
|
||||
|
|
||||
|
|
||||
class ComposicaoForm(forms.Form): |
|
||||
periodo = forms.CharField() |
|
||||
|
|
||||
|
|
||||
class ParticipacaoCadastroForm(ModelForm): |
|
||||
|
|
||||
YES_OR_NO = ( |
|
||||
(True, 'Sim'), |
|
||||
(False, 'Não') |
|
||||
) |
|
||||
|
|
||||
parlamentar_id = forms.ModelChoiceField( |
|
||||
label='Parlamentar', |
|
||||
required=True, |
|
||||
queryset=Filiacao.objects.filter( |
|
||||
data_desfiliacao__isnull=True, parlamentar__ativo=True).order_by( |
|
||||
'parlamentar__nome_parlamentar'), |
|
||||
empty_label='Selecione', |
|
||||
) |
|
||||
|
|
||||
class Meta: |
|
||||
model = Participacao |
|
||||
fields = ['parlamentar_id', |
|
||||
'cargo', |
|
||||
'titular', |
|
||||
'data_designacao', |
|
||||
'data_desligamento', |
|
||||
'motivo_desligamento', |
|
||||
'observacao'] |
|
||||
|
|
||||
def __init__(self, *args, **kwargs): |
|
||||
self.helper = FormHelper() |
|
||||
|
|
||||
row1 = crispy_layout_mixin.to_row( |
|
||||
[('parlamentar_id', 4), |
|
||||
('cargo', 4), |
|
||||
('titular', 4)]) |
|
||||
|
|
||||
row2 = crispy_layout_mixin.to_row( |
|
||||
[('data_designacao', 6), |
|
||||
('data_desligamento', 6)]) |
|
||||
|
|
||||
row3 = crispy_layout_mixin.to_row( |
|
||||
[('motivo_desligamento', 12)]) |
|
||||
|
|
||||
row4 = crispy_layout_mixin.to_row( |
|
||||
[('observacao', 12)]) |
|
||||
|
|
||||
self.helper.layout = Layout( |
|
||||
Fieldset( |
|
||||
_('Cadastro de Parlamentar em Comissão'), |
|
||||
row1, row2, row3, row4 |
|
||||
), |
|
||||
form_actions() |
|
||||
) |
|
||||
super(ParticipacaoCadastroForm, self).__init__(*args, **kwargs) |
|
@ -1,52 +0,0 @@ |
|||||
{% extends "crud/detail.html" %} |
|
||||
{% load i18n %} |
|
||||
{% load crispy_forms_tags %} |
|
||||
{% block actions %} {% endblock %} |
|
||||
{% block detail_content %} |
|
||||
|
|
||||
{% if composicao_id != 0 %} |
|
||||
<table class="table table-striped table-bordered"> |
|
||||
<thead class="thead-default"> |
|
||||
<tr> |
|
||||
<th>Nome</th> |
|
||||
<th>Cargo</th> |
|
||||
<th>Titular</th> |
|
||||
<th>Designação</th> |
|
||||
<th>Desligamento</th> |
|
||||
<th>Motivo</th> |
|
||||
<th>Observação</th> |
|
||||
</tr> |
|
||||
</thead> |
|
||||
|
|
||||
<form method="POST"> |
|
||||
|
|
||||
{% csrf_token %} |
|
||||
<select id="periodo" name="periodo" class="form-control" onChange="form.submit();"> |
|
||||
{% for c in composicoes %} |
|
||||
<option value="{{c.id}}" {% if composicao_id == c.id %} selected {% endif %}> |
|
||||
{{ c.periodo.data_inicio|date:"d/m/Y" }} - {{ c.periodo.data_fim|date:"d/m/Y" }} |
|
||||
</option> |
|
||||
{% endfor %} |
|
||||
</select> |
|
||||
</form> |
|
||||
<br /> |
|
||||
{% for participacao in participacoes %} |
|
||||
{% if participacao.composicao_id == composicao_id %} |
|
||||
<tr> |
|
||||
<td><a href="{% url 'comissoes:comissao_parlamentar_edit' pk composicao_id participacao.id %}">{{participacao.parlamentar.nome_parlamentar}}</a></td> |
|
||||
<td>{{participacao.cargo}}</td> |
|
||||
<td>{{participacao.titular|yesno:"Sim,Não"}}</td> |
|
||||
<td>{{participacao.data_designacao|date:"d/m/Y"}}</td> |
|
||||
<td>{{participacao.data_desligamento|date:"d/m/Y"|default:"-"}}</td> |
|
||||
<td>{{participacao.motivo_desligamento|default:"-"}}</td> |
|
||||
<td>{{participacao.observacao|default:"-"}}</td> |
|
||||
</tr> |
|
||||
{% endif %} |
|
||||
{% endfor %} |
|
||||
|
|
||||
</table> |
|
||||
|
|
||||
<a href="{% url 'comissoes:comissao_parlamentar' pk composicao_id %}" class="btn btn-primary">Incluir Parlamentar</a> |
|
||||
{% endif %} |
|
||||
|
|
||||
{% endblock detail_content %} |
|
@ -0,0 +1,31 @@ |
|||||
|
{% extends "crud/detail.html" %} |
||||
|
{% load i18n %} |
||||
|
{% load crispy_forms_tags %} |
||||
|
{% block detail_content %} |
||||
|
<table class="table table-striped"> |
||||
|
<thead class="thead-default"> |
||||
|
<tr> |
||||
|
<th>Nome</th> |
||||
|
<th>Cargo</th> |
||||
|
<th>Titular</th> |
||||
|
<th>Designação</th> |
||||
|
<th>Desligamento</th> |
||||
|
<th>Motivo</th> |
||||
|
<th>Observação</th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
{% for participacao in participacoes %} |
||||
|
<tr> |
||||
|
<td><a href="{% url 'comissoes:participacao_detail' participacao.pk %}">{{participacao.parlamentar.nome_parlamentar}}</a></td> |
||||
|
<td>{{participacao.cargo}}</td> |
||||
|
<td>{{participacao.titular|yesno:"Sim,Não"}}</td> |
||||
|
<td>{{participacao.data_designacao|date:"d/m/Y"}}</td> |
||||
|
<td>{{participacao.data_desligamento|date:"d/m/Y"|default:"-"}}</td> |
||||
|
<td>{{participacao.motivo_desligamento|default:"-"}}</td> |
||||
|
<td>{{participacao.observacao|default:"-"}}</td> |
||||
|
</tr> |
||||
|
{% endfor %} |
||||
|
</table> |
||||
|
|
||||
|
<a href="{% url 'comissoes:participacao_create' composicao.pk %}" class="btn btn-primary">Incluir Parlamentar</a> |
||||
|
{% endblock detail_content %} |
@ -1,6 +1,6 @@ |
|||||
- title: Início |
- title: Início |
||||
url: comissao_detail |
url: comissao_detail |
||||
- title: Composição |
- title: Composição |
||||
url: composicao |
url: composicao_list |
||||
- title: Matérias em Tramitação |
- title: Matérias em Tramitação |
||||
url: materias_em_tramitacao |
url: materias_em_tramitacao |
||||
|
Loading…
Reference in new issue