Beispiel #1
0
from sapl.parlamentares.models import Legislatura, Parlamentar
from sapl.protocoloadm.models import Protocolo
from sapl.utils import (create_barcode, get_client_ip,
                        get_mime_type_from_file_extension,
                        show_results_filter_set)

from .forms import (AnularProcoloAdmForm, DocumentoAcessorioAdministrativoForm,
                    DocumentoAdministrativoFilterSet,
                    DocumentoAdministrativoForm, ProtocoloDocumentForm,
                    ProtocoloFilterSet, ProtocoloMateriaForm,
                    TramitacaoAdmEditForm, TramitacaoAdmForm)
from .models import (DocumentoAcessorioAdministrativo, DocumentoAdministrativo,
                     StatusTramitacaoAdministrativo,
                     TipoDocumentoAdministrativo, TramitacaoAdministrativo)

TipoDocumentoAdministrativoCrud = CrudAux.build(TipoDocumentoAdministrativo,
                                                '')

# ProtocoloDocumentoCrud = Crud.build(Protocolo, '')
# FIXME precisa de uma chave diferente para o layout
# ProtocoloMateriaCrud = Crud.build(Protocolo, '')


def doc_texto_integral(request, pk):
    can_see = True

    if not request.user.is_authenticated():
        app_config = sapl.base.models.AppConfig.objects.last()
        if app_config and app_config.documentos_administrativos == 'R':
            can_see = False

    if can_see:
Beispiel #2
0
from sapl.base.models import AppConfig
from sapl.compilacao.views import IntegracaoTaView
from sapl.crud.base import (RP_DETAIL, RP_LIST, Crud, CrudAux,
                            MasterDetailCrud, make_pagination)
from sapl.utils import show_results_filter_set

from .forms import (AnexoNormaJuridicaForm, NormaFilterSet, NormaJuridicaForm,
                    NormaPesquisaSimplesForm, NormaRelacionadaForm,
                    AutoriaNormaForm)
from .models import (AnexoNormaJuridica, AssuntoNorma, NormaJuridica,
                     NormaRelacionada, TipoNormaJuridica,
                     TipoVinculoNormaJuridica, AutoriaNorma, NormaEstatisticas)

# LegislacaoCitadaCrud = Crud.build(LegislacaoCitada, '')
AssuntoNormaCrud = CrudAux.build(AssuntoNorma,
                                 'assunto_norma_juridica',
                                 list_field_names=['assunto', 'descricao'])

TipoNormaCrud = CrudAux.build(
    TipoNormaJuridica,
    'tipo_norma_juridica',
    list_field_names=['sigla', 'descricao', 'equivalente_lexml'])
TipoVinculoNormaJuridicaCrud = CrudAux.build(TipoVinculoNormaJuridica,
                                             '',
                                             list_field_names=[
                                                 'sigla', 'descricao_ativa',
                                                 'descricao_passiva',
                                                 'revoga_integralmente'
                                             ])

Beispiel #3
0
from sapl.crud.base import (RP_CHANGE, RP_DETAIL, RP_LIST, Crud, CrudAux,
                            CrudBaseForListAndDetailExternalAppView,
                            MasterDetailCrud)
from sapl.materia.models import Autoria, Proposicao, Relatoria
from sapl.parlamentares.apps import AppConfig
from sapl.utils import parlamentares_ativos

from .forms import (FiliacaoForm, LegislaturaForm, MandatoForm,
                    ParlamentarCreateForm, ParlamentarForm, VotanteForm)
from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa,
                     Dependente, Filiacao, Frente, Legislatura, Mandato,
                     NivelInstrucao, Parlamentar, Partido, SessaoLegislativa,
                     SituacaoMilitar, TipoAfastamento, TipoDependente, Votante,
                     Municipio)

CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa')
PartidoCrud = CrudAux.build(Partido, 'partidos')
SessaoLegislativaCrud = CrudAux.build(SessaoLegislativa, 'sessao_legislativa')
TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente')
NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao')
TipoAfastamentoCrud = CrudAux.build(TipoAfastamento, 'tipo_afastamento')
TipoMilitarCrud = CrudAux.build(SituacaoMilitar, 'tipo_situa_militar')
MunicipioCrud = CrudAux.build(Municipio, 'municipio')

DependenteCrud = MasterDetailCrud.build(Dependente, 'parlamentar',
                                        'dependente')


class VotanteView(MasterDetailCrud):
    model = Votante
    parent_field = 'parlamentar'
Beispiel #4
0
def pegar_url_composicao(pk):
    participacao = Participacao.objects.get(id=pk)
    comp_pk = participacao.composicao.pk
    url = reverse('sapl.comissoes:composicao_detail', kwargs={'pk': comp_pk})
    return url


def pegar_url_reuniao(pk):
    documentoacessorio = DocumentoAcessorio.objects.get(id=pk)
    r_pk = documentoacessorio.reuniao.pk
    url = reverse('sapl.comissoes:reuniao_detail', kwargs={'pk': r_pk})
    return url


CargoCrud = CrudAux.build(CargoComissao, 'cargo_comissao')

TipoComissaoCrud = CrudAux.build(
    TipoComissao,
    'tipo_comissao',
    list_field_names=['sigla', 'nome', 'natureza', 'dispositivo_regimental'])


class PeriodoComposicaoCrud(CrudAux):
    model = Periodo

    class CreateView(CrudAux.CreateView):
        form_class = PeriodoForm

    class UpdateView(CrudAux.UpdateView):
        form_class = PeriodoForm
Beispiel #5
0
from django.utils.translation import ugettext_lazy as _
from django.views.generic import FormView, ListView
from django.views.generic.base import RedirectView
from django_filters.views import FilterView

from sapl.base.models import AppConfig
from sapl.compilacao.views import IntegracaoTaView
from sapl.crud.base import (RP_DETAIL, RP_LIST, Crud, CrudAux,
                            MasterDetailCrud, make_pagination)

from .forms import NormaFilterSet, NormaJuridicaForm, NormaRelacionadaForm
from .models import (AssuntoNorma, NormaJuridica, NormaRelacionada,
                     TipoNormaJuridica, VinculoNormaJuridica)

# LegislacaoCitadaCrud = Crud.build(LegislacaoCitada, '')
AssuntoNormaCrud = CrudAux.build(AssuntoNorma, 'assunto_norma_juridica',
                                 list_field_names=['assunto', 'descricao'])


TipoNormaCrud = CrudAux.build(
    TipoNormaJuridica, 'tipo_norma_juridica',
    list_field_names=['sigla', 'descricao', 'equivalente_lexml'])
VinculoNormaJuridicaCrud = CrudAux.build(
    VinculoNormaJuridica, '', list_field_names=['sigla', 'descricao'])


class NormaRelacionadaCrud(MasterDetailCrud):
    model = NormaRelacionada
    parent_field = 'norma_principal'
    help_path = ''
    public = [RP_LIST, RP_DETAIL]
Beispiel #6
0
from django.http import HttpResponse
from django.shortcuts import render

from sapl.crud.base import CrudAux, Crud
from sapl.lexml.OAIServer import OAIServerFactory, get_config
from sapl.rules import RP_DETAIL, RP_LIST

from .models import LexmlProvedor, LexmlPublicador

LexmlPublicadorCrud = CrudAux.build(LexmlPublicador, 'lexml_publicador')


class LexmlProvedorCrud(Crud):
    model = LexmlProvedor
    help_topic = 'lexml_provedor'
    public = [RP_LIST, RP_DETAIL]

    class DetailView(Crud.DetailView):
        layout_key = 'LexmlProvedorDetail'


def lexml_request(request):
    request_dict = request.GET.copy()
    if request_dict.get('batch_size'):
        del request_dict['batch_size']

    config = get_config(request.get_raw_uri(),
                        int(request.GET.get('batch_size', '10')))
    oai_server = OAIServerFactory(config)
    r = oai_server.handleRequest(request_dict)
    response = r.decode('UTF-8')
Beispiel #7
0
from builtins import property

from cmj.diarios.models import TipoDeDiario, DiarioOficial
from sapl.crud.base import CrudAux, Crud, RP_DETAIL, RP_LIST

TipoDeDiarioCrud = CrudAux.build(TipoDeDiario, None)


class DiarioOficialCrud(Crud):
    model = DiarioOficial
    help_topic = 'diariooficial'
    public = [RP_LIST, RP_DETAIL]

    class ListView(Crud.ListView):
        def get_context_data(self, **kwargs):
            c = super().get_context_data(**kwargs)
            c['bg_title'] = 'bg-maroon text-white'
            return c

    class DetailView(Crud.DetailView):
        def get_context_data(self, **kwargs):
            c = super().get_context_data(**kwargs)
            c['bg_title'] = 'bg-maroon text-white'
            return c
Beispiel #8
0
from django.views.generic import FormView, ListView
from django.views.generic.base import RedirectView
from django_filters.views import FilterView

from sapl.base.models import AppConfig
from sapl.compilacao.views import IntegracaoTaView
from sapl.crud.base import (RP_DETAIL, RP_LIST, Crud, CrudAux,
                            MasterDetailCrud, make_pagination)

from .forms import NormaFilterSet, NormaJuridicaForm, NormaRelacionadaForm
from .models import (AssuntoNorma, NormaJuridica, NormaRelacionada,
                     TipoNormaJuridica, VinculoNormaJuridica)

# LegislacaoCitadaCrud = Crud.build(LegislacaoCitada, '')
AssuntoNormaCrud = CrudAux.build(AssuntoNorma,
                                 'assunto_norma_juridica',
                                 list_field_names=['assunto', 'descricao'])

TipoNormaCrud = CrudAux.build(
    TipoNormaJuridica,
    'tipo_norma_juridica',
    list_field_names=['sigla', 'descricao', 'equivalente_lexml'])
VinculoNormaJuridicaCrud = CrudAux.build(
    VinculoNormaJuridica, '', list_field_names=['sigla', 'descricao'])


class NormaRelacionadaCrud(MasterDetailCrud):
    model = NormaRelacionada
    parent_field = 'norma_principal'
    help_path = ''
    public = [RP_LIST, RP_DETAIL]
Beispiel #9
0
from sapl.comissoes.models import Participacao
from sapl.crud.base import (RP_CHANGE, RP_DETAIL, RP_LIST, Crud, CrudAux,
                            CrudBaseForListAndDetailExternalAppView,
                            MasterDetailCrud)
from sapl.materia.models import Autoria, Proposicao, Relatoria
from sapl.parlamentares.apps import AppConfig
from sapl.utils import parlamentares_ativos

from .forms import (FiliacaoForm, FrenteForm, LegislaturaForm, MandatoForm,
                    ParlamentarCreateForm, ParlamentarForm, VotanteForm)
from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa,
                     Dependente, Filiacao, Frente, Legislatura, Mandato,
                     NivelInstrucao, Parlamentar, Partido, SessaoLegislativa,
                     SituacaoMilitar, TipoAfastamento, TipoDependente, Votante)

CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa')
PartidoCrud = CrudAux.build(Partido, 'partidos')
TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente')
NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao')
TipoAfastamentoCrud = CrudAux.build(TipoAfastamento, 'tipo_afastamento')
TipoMilitarCrud = CrudAux.build(SituacaoMilitar, 'tipo_situa_militar')

DependenteCrud = MasterDetailCrud.build(Dependente, 'parlamentar',
                                        'dependente')


class SessaoLegislativaCrud(CrudAux):
    model = SessaoLegislativa

    class CreateView(CrudAux.CreateView):
        form_class = SessaoLegislativaForm
Beispiel #10
0
from sapl.comissoes.models import Participacao
from sapl.crud.base import (RP_CHANGE, RP_DETAIL, RP_LIST, Crud, CrudAux,
                            CrudBaseForListAndDetailExternalAppView,
                            MasterDetailCrud)
from sapl.materia.models import Proposicao, Relatoria
from sapl.parlamentares.apps import AppConfig

from .forms import (FiliacaoForm, LegislaturaCreateForm, LegislaturaUpdateForm,
                    ParlamentarCreateForm, ParlamentarForm)
from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa,
                     Dependente, Filiacao, Frente, Legislatura, Mandato,
                     NivelInstrucao, Parlamentar, Partido, SessaoLegislativa,
                     SituacaoMilitar, TipoAfastamento, TipoDependente)

CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa')
PartidoCrud = CrudAux.build(Partido, 'partidos')
SessaoLegislativaCrud = CrudAux.build(SessaoLegislativa, 'sessao_legislativa')
TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente')
NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao')
TipoAfastamentoCrud = CrudAux.build(TipoAfastamento, 'tipo_afastamento')
TipoMilitarCrud = CrudAux.build(SituacaoMilitar, 'tipo_situa_militar')

FrenteCrud = CrudAux.build(Frente, 'tipo_situa_militar', list_field_names=[
    'nome', 'data_criacao', 'parlamentares'])

DependenteCrud = MasterDetailCrud.build(
    Dependente, 'parlamentar', 'dependente')


class FrenteList(MasterDetailCrud):
Beispiel #11
0
from sapl.comissoes.models import Participacao
from sapl.crud.base import (RP_CHANGE, RP_DETAIL, RP_LIST, Crud, CrudAux,
                            CrudBaseForListAndDetailExternalAppView,
                            MasterDetailCrud)
from sapl.materia.models import Proposicao, Relatoria
from sapl.parlamentares.apps import AppConfig
from sapl.utils import get_client_ip

from .forms import (FiliacaoForm, LegislaturaCreateForm, LegislaturaUpdateForm,
                    ParlamentarCreateForm, ParlamentarForm, VotanteForm)
from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa,
                     Dependente, Filiacao, Frente, Legislatura, Mandato,
                     NivelInstrucao, Parlamentar, Partido, SessaoLegislativa,
                     SituacaoMilitar, TipoAfastamento, TipoDependente, Votante)

CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa')
PartidoCrud = CrudAux.build(Partido, 'partidos')
SessaoLegislativaCrud = CrudAux.build(SessaoLegislativa, 'sessao_legislativa')
TipoDependenteCrud = CrudAux.build(TipoDependente, 'tipo_dependente')
NivelInstrucaoCrud = CrudAux.build(NivelInstrucao, 'nivel_instrucao')
TipoAfastamentoCrud = CrudAux.build(TipoAfastamento, 'tipo_afastamento')
TipoMilitarCrud = CrudAux.build(SituacaoMilitar, 'tipo_situa_militar')

FrenteCrud = CrudAux.build(
    Frente,
    'tipo_situa_militar',
    list_field_names=['nome', 'data_criacao', 'parlamentares'])

DependenteCrud = MasterDetailCrud.build(Dependente, 'parlamentar',
                                        'dependente')
Beispiel #12
0
    TipoEmail, Parentesco, EstadoCivil, TipoAutoridade, TipoLocalTrabalho,\
    NivelInstrucao, Contato, Telefone, OperadoraTelefonia, Email,\
    PronomeTratamento, Dependente, LocalTrabalho, Endereco,\
    DependentePerfil, LocalTrabalhoPerfil,\
    EmailPerfil, TelefonePerfil, EnderecoPerfil, FiliacaoPartidaria,\
    StatusProcesso, ClassificacaoProcesso, TopicoProcesso, Processo,\
    AssuntoProcesso, ProcessoContato, GrupoDeContatos
from cmj.core.forms import ListWithSearchForm
from cmj.core.models import AreaTrabalho
from cmj.globalrules.crud_custom import PerfilAbstractCrud,\
    PerfilDetailCrudPermission
from sapl.crispy_layout_mixin import CrispyLayoutFormMixin
from sapl.crud.base import CrudAux, Crud, MasterDetailCrud

# ---- Details Master Crud build ---------------------------
TipoTelefoneCrud = CrudAux.build(TipoTelefone, None, 'tipotelefone')
TipoEnderecoCrud = CrudAux.build(TipoEndereco, None, 'tipoendereco')
TipoEmailCrud = CrudAux.build(TipoEmail, None, 'tipoemail')
ParentescoCrud = CrudAux.build(Parentesco, None, 'parentesco')

TipoLocalTrabalhoCrud = CrudAux.build(TipoLocalTrabalho, None,
                                      'tipolocaltrabalho')
StatusProcessoCrud = CrudAux.build(StatusProcesso, None, 'statusprocesso')
ClassificacaoProcessoCrud = CrudAux.build(ClassificacaoProcesso, None,
                                          'classificacaoprocesso')
TopicoProcessoCrud = CrudAux.build(TopicoProcesso, None, 'topicoprocesso')


# ---- Details Master Crud herança ---------------------------
class OperadoraTelefoniaCrud(Crud):
    model_set = 'telefone_set'
Beispiel #13
0
    BasicAuthentication
from rest_framework.permissions import IsAuthenticated
from weasyprint import HTML

from cmj.core.forms import OperadorAreaTrabalhoForm, ImpressoEnderecamentoForm,\
    ListWithSearchForm
from cmj.core.models import Cep, TipoLogradouro, Logradouro, RegiaoMunicipal,\
    Distrito, Bairro, Trecho, AreaTrabalho, OperadorAreaTrabalho,\
    ImpressoEnderecamento, groups_remove_user, groups_add_user, Notificacao,\
    CertidaoPublicacao, Bi
from cmj.core.serializers import TrechoSearchSerializer, TrechoSerializer
from cmj.utils import normalize
from sapl.crud.base import Crud, CrudAux, MasterDetailCrud, RP_DETAIL, RP_LIST
from sapl.parlamentares.models import Partido, Filiacao

CepCrud = CrudAux.build(Cep, None, 'cep')
RegiaoMunicipalCrud = CrudAux.build(RegiaoMunicipal, None, 'regiao_municipal')
DistritoCrud = CrudAux.build(Distrito, None, 'distrito')
BairroCrud = CrudAux.build(Bairro, None)
TipoLogradouroCrud = CrudAux.build(TipoLogradouro, None, 'tipo_logradouro')
LogradouroCrud = CrudAux.build(Logradouro, None, 'logradouro')


def template_render(request, template_name):
    return render(request, template_name, {})


def chanel_index(request):
    return render(request, 'core/channel_index.html', {})

Beispiel #14
0
import sapl
from sapl.crud.base import Crud, CrudAux, MasterDetailCrud, make_pagination
from sapl.materia.models import MateriaLegislativa, TipoMateriaLegislativa
from sapl.utils import create_barcode, get_client_ip

from .forms import (AnularProcoloAdmForm, DocumentoAcessorioAdministrativoForm,
                    DocumentoAdministrativoFilterSet,
                    DocumentoAdministrativoForm, ProtocoloDocumentForm,
                    ProtocoloFilterSet, ProtocoloMateriaForm,
                    TramitacaoAdmEditForm, TramitacaoAdmForm)
from .models import (DocumentoAcessorioAdministrativo, DocumentoAdministrativo,
                     Protocolo, StatusTramitacaoAdministrativo,
                     TipoDocumentoAdministrativo, TramitacaoAdministrativo)

TipoDocumentoAdministrativoCrud = CrudAux.build(
    TipoDocumentoAdministrativo, '')


# ProtocoloDocumentoCrud = Crud.build(Protocolo, '')
# FIXME precisa de uma chave diferente para o layout
# ProtocoloMateriaCrud = Crud.build(Protocolo, '')


DocumentoAcessorioAdministrativoCrud = Crud.build(
    DocumentoAcessorioAdministrativo, '')


class DocumentoAdministrativoMixin:

    def has_permission(self):
        app_config = sapl.base.models.AppConfig.objects.last()
Beispiel #15
0
import calendar
from datetime import datetime, timedelta

from django.core.exceptions import PermissionDenied
from django.views.generic.list import ListView

from cmj.agenda.forms import EventoForm
from cmj.agenda.models import Evento, TipoEvento
from cmj.core.models import AreaTrabalho
from sapl.crud.base import Crud, CrudAux


TipoEventoCrud = CrudAux.build(TipoEvento, None)


class EventoCrud(Crud):
    model_set = None
    model = Evento
    container_field = 'workspace__operadores'
    public = ['.list_']

    class BaseMixin(Crud.BaseMixin):
        list_field_names = ('inicio', 'fim', 'titulo',
                            'solicitante', 'descricao')

        def get_initial(self):
            initial = super().get_initial()

            try:
                initial['workspace'] = AreaTrabalho.objects.filter(
                    operadores=self.request.user.pk)[0]
Beispiel #16
0
from django.views.generic import ListView

from sapl.crud.base import RP_DETAIL, RP_LIST, Crud, CrudAux, MasterDetailCrud
from sapl.materia.models import MateriaLegislativa, Tramitacao

from .models import (CargoComissao, Comissao, Composicao, Participacao,
                     Periodo, TipoComissao)


def pegar_url_composicao(pk):
    participacao = Participacao.objects.get(id=pk)
    comp_pk = participacao.composicao.pk
    url = reverse('sapl.comissoes:composicao_detail', kwargs={'pk': comp_pk})
    return url

CargoCrud = CrudAux.build(CargoComissao, 'cargo_comissao')
PeriodoComposicaoCrud = CrudAux.build(Periodo, 'periodo_composicao_comissao')

TipoComissaoCrud = CrudAux.build(
    TipoComissao, 'tipo_comissao', list_field_names=[
        'sigla', 'nome', 'natureza', 'dispositivo_regimental'])


class ParticipacaoCrud(MasterDetailCrud):
    model = Participacao
    parent_field = 'composicao__comissao'
    public = [RP_DETAIL, ]
    ListView = None
    is_m2m = True
    link_return_to_parent_field = True
Beispiel #17
0
from sapl.crud.base import CrudAux

from .models import LexmlProvedor, LexmlPublicador

LexmlProvedorCrud = CrudAux.build(LexmlProvedor, 'lexml_provedor')
LexmlPublicadorCrud = CrudAux.build(LexmlPublicador, 'lexml_publicador')