From 930c89979e3ee8bdef22320d64e631d3df21d8d1 Mon Sep 17 00:00:00 2001 From: LeandroJatai Date: Mon, 10 Oct 2022 14:43:01 -0300 Subject: [PATCH] =?UTF-8?q?feat:=20add=20edi=C3=A7=C3=A3o=20de=20parte=20d?= =?UTF-8?q?e=20tipo=20de=20dispositivos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sapl/compilacao/urls.py | 4 ++ sapl/compilacao/views.py | 31 +++++++++++++++- sapl/rules/group_geral.py | 2 +- sapl/templates/compilacao/layouts.yaml | 41 ++++++++++++++------- sapl/templates/menu_tabelas_auxiliares.yaml | 3 ++ 5 files changed, 64 insertions(+), 17 deletions(-) diff --git a/sapl/compilacao/urls.py b/sapl/compilacao/urls.py index 9364985aa..7ca2ad463 100644 --- a/sapl/compilacao/urls.py +++ b/sapl/compilacao/urls.py @@ -116,5 +116,9 @@ urlpatterns = [ include(VeiculoPublicacaoCrud.get_urls())), url(r'^sistema/ta/config/tipo/', include(TipoTextoArticuladoCrud.get_urls())), + url(r'^sistema/ta/config/tipodispositivo/', + include(TipoDispositivoCrud.get_urls())), + + ] diff --git a/sapl/compilacao/views.py b/sapl/compilacao/views.py index c6939a5fe..931db7cfd 100644 --- a/sapl/compilacao/views.py +++ b/sapl/compilacao/views.py @@ -59,8 +59,35 @@ TipoNotaCrud = CrudAux.build(TipoNota, 'tipo_nota') TipoVideCrud = CrudAux.build(TipoVide, 'tipo_vide') TipoPublicacaoCrud = CrudAux.build(TipoPublicacao, 'tipo_publicacao') VeiculoPublicacaoCrud = CrudAux.build(VeiculoPublicacao, 'veiculo_publicacao') -TipoDispositivoCrud = CrudAux.build( - TipoDispositivo, 'tipo_dispositivo') + + +class TipoDispositivoCrud(CrudAux): + model = TipoDispositivo + + class BaseMixin(CrudAux.BaseMixin): + list_field_names = ('nome', ) + + @property + def delete_url(self): + return '' + + @property + def create_url(self): + return '' + + class CreateView(CrudAux.CreateView): + def has_permission(self): + return False + + class DeleteView(CrudAux.DeleteView): + def has_permission(self): + return False + + class UpdateView(CrudAux.UpdateView): + layout_key = 'TipoDispositivoUpdate' + + class ListView(CrudAux.ListView): + paginate_by = 100 def choice_models_in_extenal_views(): diff --git a/sapl/rules/group_geral.py b/sapl/rules/group_geral.py index 5e9545d7b..d12b94152 100644 --- a/sapl/rules/group_geral.py +++ b/sapl/rules/group_geral.py @@ -110,7 +110,7 @@ rules_group_geral = { __base__ + ['lock_unlock_textoarticulado'], set()), # estes tres models são complexos e a principio apenas o admin tem perm - (compilacao.TipoDispositivo, [], set()), + (compilacao.TipoDispositivo, __listdetailchange__, __perms_publicas__), (compilacao.TipoDispositivoRelationship, [], set()), (compilacao.PerfilEstruturalTextoArticulado, [], set()), diff --git a/sapl/templates/compilacao/layouts.yaml b/sapl/templates/compilacao/layouts.yaml index a92c8627b..3ceba4988 100644 --- a/sapl/templates/compilacao/layouts.yaml +++ b/sapl/templates/compilacao/layouts.yaml @@ -21,24 +21,37 @@ PerfilEstruturalTextoArticulado: - sigla:2 nome TipoDispositivo: - {% trans 'Dados Básicos' %}: - - nome:8 class_css - {% trans 'Configurações para Edição do Rótulo' %}: - - rotulo_prefixo_texto rotulo_sufixo_texto rotulo_ordinal contagem_continua + {% trans 'Dados Básicos Fixos' %}: + - nome class_css:2 dispositivo_de_articulacao:4 dispositivo_de_alteracao + - contagem_continua:2 rotulo_prefixo_texto:3 rotulo_ordinal:4 rotulo_sufixo_texto {% trans 'Configurações para Renderização de Rótulo e Texto' %}: - - rotulo_prefixo_html rotulo_sufixo_html - - texto_prefixo_html dispositivo_de_articulacao dispositivo_de_alteracao texto_sufixo_html + - rotulo_prefixo_html rotulo_sufixo_html + - texto_prefixo_html texto_sufixo_html {% trans 'Configurações para Nota Automática' %}: - - nota_automatica_prefixo_html nota_automatica_sufixo_html + - nota_automatica_prefixo_html nota_automatica_sufixo_html {% trans 'Configurações para Variações Numéricas' %}: - formato_variacao0 - - rotulo_separador_variacao01:5 formato_variacao1 - - rotulo_separador_variacao12:5 formato_variacao2 - - rotulo_separador_variacao23:5 formato_variacao3 - - rotulo_separador_variacao34:5 formato_variacao4 - - rotulo_separador_variacao45:5 formato_variacao5 - - + - rotulo_separador_variacao01:5 formato_variacao1 + - rotulo_separador_variacao12:5 formato_variacao2 + - rotulo_separador_variacao23:5 formato_variacao3 + - rotulo_separador_variacao34:5 formato_variacao4 + - rotulo_separador_variacao45:5 formato_variacao5 + +TipoDispositivoUpdate: + {% trans 'Configurações para Variações Numéricas' %}: + - rotulo_ordinal formato_variacao0 + - rotulo_separador_variacao01:5 formato_variacao1 + - rotulo_separador_variacao12:5 formato_variacao2 + - rotulo_separador_variacao23:5 formato_variacao3 + - rotulo_separador_variacao34:5 formato_variacao4 + - rotulo_separador_variacao45:5 formato_variacao5 + + {% trans 'Configurações para Renderização de Rótulo e Texto' %}: + - rotulo_prefixo_html rotulo_sufixo_html + - texto_prefixo_html texto_sufixo_html + {% trans 'Configurações para Nota Automática' %}: + - nota_automatica_prefixo_html nota_automatica_sufixo_html + TipoTextoArticulado: {% trans 'Identificação Básica' %}: - sigla:3 descricao:5 content_type:4 diff --git a/sapl/templates/menu_tabelas_auxiliares.yaml b/sapl/templates/menu_tabelas_auxiliares.yaml index 7241509cb..cf64082a1 100644 --- a/sapl/templates/menu_tabelas_auxiliares.yaml +++ b/sapl/templates/menu_tabelas_auxiliares.yaml @@ -208,6 +208,9 @@ - title: {% trans 'Tipos de Vides' %} url: sapl.compilacao:tipovide_list css_class: btn btn-link + - title: {% trans 'Tipos de Dispositivos' %} + url: sapl.compilacao:tipodispositivo_list + css_class: btn btn-link - title: {% trans 'Módulo LexML' %} css_class: head_title children: