mirror of https://github.com/interlegis/sapl.git
Browse Source
* Refatorar reuniao_detail p/ add seleção de pauta * Refatorar reuniao_detail p/ add CRUD Pauta Reunião * Adicionar model PautaReuniao e migração * Adicionar config. iniciais p/ CRUD Pauta * Refatorar código * Adicionar CRUD Pauta Reunião * Adicionar permissões necessárias * Update sapl/comissoes/views.py Co-Authored-By: Edward <edwardoliveira@users.noreply.github.com> * Update sapl/comissoes/views.py Co-Authored-By: Edward <edwardoliveira@users.noreply.github.com> * Update sapl/comissoes/views.py Co-Authored-By: Edward <edwardoliveira@users.noreply.github.com> * Atualizar sapl/comissoes/views.py * Update views.pypull/2793/head
João Rodrigues
6 years ago
committed by
Edward
10 changed files with 346 additions and 24 deletions
@ -0,0 +1,29 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.11.20 on 2019-05-14 20:11 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations, models |
||||
|
import django.db.models.deletion |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('comissoes', '0019_auto_20181214_1023'), |
||||
|
('materia', '0048_merge_20190426_0828'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.CreateModel( |
||||
|
name='PautaReuniao', |
||||
|
fields=[ |
||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
||||
|
('materia', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='materia_set', to='materia.MateriaLegislativa', verbose_name='Matéria')), |
||||
|
('reuniao', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reuniao_set', to='comissoes.Reuniao', verbose_name='Reunião')), |
||||
|
], |
||||
|
options={ |
||||
|
'verbose_name': 'Matéria da Pauta', |
||||
|
'verbose_name_plural': 'Matérias da Pauta', |
||||
|
}, |
||||
|
), |
||||
|
] |
@ -0,0 +1,68 @@ |
|||||
|
{% extends "crud/detail.html" %} |
||||
|
{% load i18n crispy_forms_tags %} |
||||
|
{% block actions %}{% endblock %} |
||||
|
|
||||
|
{% block title %} |
||||
|
<h1 class="page-header"> |
||||
|
{% if opcao %} |
||||
|
Adicionar Matérias à Pauta <small>(Reunião: {{object}})</small> |
||||
|
{% else %} |
||||
|
Remover Matérias da Pauta <small>(Reunião: {{object}})</small> |
||||
|
{% endif %} |
||||
|
</h1> |
||||
|
{% endblock %} |
||||
|
|
||||
|
{% block detail_content %} |
||||
|
{% if materias %} |
||||
|
{% if num_materias == 1 %} |
||||
|
<b>Há {{num_materias}} matéria disponível.</b> <br><br> |
||||
|
{% else %} |
||||
|
<b>Há {{num_materias}} matérias disponíveis.</b> <br><br> |
||||
|
{% endif %} |
||||
|
<form method="POST" enctype="multipart/form-data"> |
||||
|
{% csrf_token %} |
||||
|
<fieldset> |
||||
|
<table class="table table-striped table-hover"> |
||||
|
<div class="controls"> |
||||
|
<div class="checkbox"> |
||||
|
<label for="id_check_all"> |
||||
|
<input type="checkbox" id="id_check_all" onchange="checkAll(this)" /> Marcar/Desmarcar Todos |
||||
|
</label> |
||||
|
</div> |
||||
|
</div> |
||||
|
<thead> |
||||
|
<tr><th>Matéria</th></tr> |
||||
|
</thead> |
||||
|
<tbody onload="checks(materias_checked)"> |
||||
|
{% for materia in materias %} |
||||
|
<tr> |
||||
|
<td> |
||||
|
<input type="checkbox" name="materia_id" value="{{materia.id}}" {% if check %} checked {% endif %}/> |
||||
|
{{materia.tipo.sigla}} {{materia.numero}}/{{materia.ano}} - {{materia.tipo.descricao}} |
||||
|
</td> |
||||
|
</tr> |
||||
|
{% endfor %} |
||||
|
</tbody> |
||||
|
</table> |
||||
|
</fieldset> |
||||
|
{% if opcao %} |
||||
|
<input type="submit" value="Salvar" class="btn btn-primary"S> |
||||
|
{% else %} |
||||
|
<input type="submit" value="Remover" class="btn btn-danger"S> |
||||
|
{% endif %} |
||||
|
</form> |
||||
|
{% else %} |
||||
|
<b>Não há matéria disponível.</b> <br><br> |
||||
|
{% endif %} |
||||
|
{% endblock %} |
||||
|
{% block extra_js %} |
||||
|
<script language="JavaScript"> |
||||
|
function checkAll(elem){ |
||||
|
let checkboxes = document.getElementsByName('materia_id'); |
||||
|
for(let i=0; i<checkboxes.length; i++){ |
||||
|
if(checkboxes[i].type == 'checkbox') |
||||
|
checkboxes[i].checked = elem.checked |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
{% endblock %} |
@ -0,0 +1,65 @@ |
|||||
|
{% extends "crud/detail.html" %} |
||||
|
{% load i18n %} |
||||
|
|
||||
|
{% block detail_content %} |
||||
|
{{ block.super }} |
||||
|
<h2 class="legend">Pauta</h2> |
||||
|
{% if mats %} |
||||
|
<p>Total de Registros: <b>{{num_mats}}</b></p> |
||||
|
<table class="table table-striped table-hover"> |
||||
|
<thead> |
||||
|
<tr> |
||||
|
<th>Matéria</th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
<tbody> |
||||
|
{% for mat in mats %} |
||||
|
<tr> |
||||
|
<td> |
||||
|
<a href="{% url 'sapl.materia:materialegislativa_detail' mat.pk %}">{{mat}}</a> |
||||
|
</td> |
||||
|
</tr> |
||||
|
{% endfor %} |
||||
|
</tbody> |
||||
|
</table> |
||||
|
{% if perms.comissoes.add_reuniao %} |
||||
|
<div class="actions btn-group float-right" role="group"> |
||||
|
<a href="{% url 'sapl.comissoes:pauta_add' reuniao_pk %}" class="btn btn-outline-primary">{% trans 'Adicionar Matéria' %}</a> |
||||
|
<a href="{% url 'sapl.comissoes:pauta_remove' reuniao_pk %}" class="btn btn-outline-primary btn-outline-danger">{% trans 'Remover Matéria' %}</a> |
||||
|
</div> |
||||
|
{% endif %} |
||||
|
{% else %} |
||||
|
{% if perms.comissoes.add_reuniao %} |
||||
|
<a href="{% url 'sapl.comissoes:pauta_add' reuniao_pk %}" class="btn btn-outline-primary">{% trans 'Adicionar Matéria' %}</a> |
||||
|
{% endif %} |
||||
|
{% endif %} |
||||
|
<br /><br /> |
||||
|
<h2 class="legend">Documentos Acessórios</h2> |
||||
|
{% if docs %} |
||||
|
<p>Total de registros: <b>{{num_docs}}</b></p> |
||||
|
<table class="table table-striped table-hover"> |
||||
|
<thead> |
||||
|
<tr> |
||||
|
<th>Documento Acessório</th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
<tbody> |
||||
|
{% for doc in docs %} |
||||
|
<tr> |
||||
|
<td> |
||||
|
<a href="{% url 'sapl.comissoes:documentoacessorio_detail' doc.pk %}">{{ doc.nome }}</a> |
||||
|
</td> |
||||
|
</tr> |
||||
|
{% endfor %} |
||||
|
</tbody> |
||||
|
</table> |
||||
|
{% if perms.comissoes.add_reuniao %} |
||||
|
<a href="{% url 'sapl.comissoes:documentoacessorio_create' reuniao_pk %}" class="btn btn-outline-primary float-right">{% trans 'Adicionar Documento' %}</a> |
||||
|
{% endif %} |
||||
|
{% else %} |
||||
|
{% if perms.comissoes.add_reuniao %} |
||||
|
<a href="{% url 'sapl.comissoes:documentoacessorio_create' reuniao_pk %}" class="btn btn-outline-primary">{% trans 'Adicionar Documento' %}</a> |
||||
|
{% endif %} |
||||
|
{% endif %} |
||||
|
<br /><br /> |
||||
|
{% endblock detail_content %} |
Loading…
Reference in new issue