Browse Source

Insere permissões a tela de impressos

pull/1434/head
Eduardo Calil 8 years ago
parent
commit
75f7b9a2bd
  1. 19
      sapl/materia/migrations/0012_auto_20170829_1321.py
  2. 2
      sapl/materia/models.py
  3. 7
      sapl/materia/views.py
  4. 5
      sapl/rules/map_rules.py
  5. 3
      sapl/templates/navbar.yaml

19
sapl/materia/migrations/0012_auto_20170829_1321.py

@ -0,0 +1,19 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.3 on 2017-08-29 13:21
from __future__ import unicode_literals
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('materia', '0011_auto_20170808_1034'),
]
operations = [
migrations.AlterModelOptions(
name='materialegislativa',
options={'permissions': (('can_access_impressos', 'Can access impressos'),), 'verbose_name': 'Matéria Legislativa', 'verbose_name_plural': 'Matérias Legislativas'},
),
]

2
sapl/materia/models.py

@ -234,6 +234,8 @@ class MateriaLegislativa(models.Model):
verbose_name_plural = _('Matérias Legislativas') verbose_name_plural = _('Matérias Legislativas')
unique_together = (("tipo", "numero", "ano"),) unique_together = (("tipo", "numero", "ano"),)
permissions = (("can_access_impressos", "Can access impressos"),)
def __str__(self): def __str__(self):
return _('%(tipo)s%(numero)s de %(ano)s') % { return _('%(tipo)s%(numero)s de %(ano)s') % {
'tipo': self.tipo, 'numero': self.numero, 'ano': self.ano} 'tipo': self.tipo, 'numero': self.numero, 'ano': self.ano}

7
sapl/materia/views.py

@ -1747,9 +1747,9 @@ class TramitacaoEmLoteView(PrimeiraTramitacaoEmLoteView):
return context return context
class ImpressosView(TemplateView): class ImpressosView(PermissionRequiredMixin, TemplateView):
template_name = 'materia/impressos/impressos.html' template_name = 'materia/impressos/impressos.html'
permission_required = ('materia.can_access_impressos', )
def gerar_pdf_impressos(request, context): def gerar_pdf_impressos(request, context):
template = loader.get_template('materia/impressos/pdf.html') template = loader.get_template('materia/impressos/pdf.html')
@ -1763,9 +1763,10 @@ def gerar_pdf_impressos(request, context):
return response return response
class EtiquetaPesquisaView(FormView): class EtiquetaPesquisaView(PermissionRequiredMixin, FormView):
form_class = EtiquetaPesquisaForm form_class = EtiquetaPesquisaForm
template_name = 'materia/impressos/etiqueta.html' template_name = 'materia/impressos/etiqueta.html'
permission_required = ('materia.can_access_impressos', )
def form_valid(self, form): def form_valid(self, form):
context = {} context = {}

5
sapl/rules/map_rules.py

@ -53,6 +53,7 @@ __listdetailchange__ = [RP_LIST, RP_DETAIL, RP_CHANGE]
rules_group_administrativo = { rules_group_administrativo = {
'group': SAPL_GROUP_ADMINISTRATIVO, 'group': SAPL_GROUP_ADMINISTRATIVO,
'rules': [ 'rules': [
(materia.MateriaLegislativa, ['can_access_impressos']),
(protocoloadm.DocumentoAdministrativo, __base__), (protocoloadm.DocumentoAdministrativo, __base__),
(protocoloadm.DocumentoAcessorioAdministrativo, __base__), (protocoloadm.DocumentoAcessorioAdministrativo, __base__),
(protocoloadm.TramitacaoAdministrativo, __base__), (protocoloadm.TramitacaoAdministrativo, __base__),
@ -69,6 +70,7 @@ rules_group_protocolo = {
(protocoloadm.DocumentoAcessorioAdministrativo, __listdetailchange__), (protocoloadm.DocumentoAcessorioAdministrativo, __listdetailchange__),
(materia.MateriaLegislativa, __listdetailchange__), (materia.MateriaLegislativa, __listdetailchange__),
(materia.MateriaLegislativa, ['can_access_impressos']),
(materia.DocumentoAcessorio, __listdetailchange__), (materia.DocumentoAcessorio, __listdetailchange__),
(materia.Anexada, __base__), (materia.Anexada, __base__),
(materia.Autoria, __base__), (materia.Autoria, __base__),
@ -98,7 +100,7 @@ rules_group_materia = {
(materia.DespachoInicial, __base__), (materia.DespachoInicial, __base__),
(materia.DocumentoAcessorio, __base__), (materia.DocumentoAcessorio, __base__),
(materia.MateriaLegislativa, __base__), (materia.MateriaLegislativa, __base__ + ['can_access_impressos']),
(materia.Numeracao, __base__), (materia.Numeracao, __base__),
(materia.Tramitacao, __base__), (materia.Tramitacao, __base__),
(norma.LegislacaoCitada, __base__), (norma.LegislacaoCitada, __base__),
@ -209,6 +211,7 @@ rules_group_geral = {
(materia.AssuntoMateria, __base__), # não há implementação (materia.AssuntoMateria, __base__), # não há implementação
(materia.MateriaAssunto, __base__), # não há implementação (materia.MateriaAssunto, __base__), # não há implementação
(materia.MateriaLegislativa, ['can_access_impressos']),
(materia.TipoProposicao, __base__), (materia.TipoProposicao, __base__),
(materia.TipoMateriaLegislativa, __base__), (materia.TipoMateriaLegislativa, __base__),
(materia.RegimeTramitacao, __base__), (materia.RegimeTramitacao, __base__),

3
sapl/templates/navbar.yaml

@ -33,6 +33,9 @@
- title: {% trans 'Acessório em Lote' %} - title: {% trans 'Acessório em Lote' %}
url: sapl.materia:acessorio_em_lote url: sapl.materia:acessorio_em_lote
check_permission: materia.list_documentoacessorio {% comment %} FIXME transformar para checagens de menu_[funcionalidade]{% endcomment%} check_permission: materia.list_documentoacessorio {% comment %} FIXME transformar para checagens de menu_[funcionalidade]{% endcomment%}
- title: {% trans 'Impressos' %}
url: sapl.materia:impressos
check_permission: materia.can_access_impressos {% comment %} FIXME transformar para checagens de menu_[funcionalidade]{% endcomment%}
- title: {% trans 'Matérias Legislativas' %} - title: {% trans 'Matérias Legislativas' %}
url: sapl.materia:pesquisar_materia url: sapl.materia:pesquisar_materia
- title: {% trans 'Pautas das Sessões' %} - title: {% trans 'Pautas das Sessões' %}

Loading…
Cancel
Save