Browse Source

add exclusão automática de pai de filho excluido

pull/2755/head
Leandro Roberto 6 years ago
parent
commit
dd1f23d324
  1. 16
      sapl/compilacao/views.py
  2. 5
      sapl/templates/compilacao/text_list_bloco.html

16
sapl/compilacao/views.py

@ -1545,7 +1545,7 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
if not anterior: if not anterior:
self.logger.error("user=" + username + ". Não é possível excluir este Dispositivo (id={}) sem" self.logger.error("user=" + username + ". Não é possível excluir este Dispositivo (id={}) sem"
" excluir toda a sua estrutura!!!".format(base.ta_id)) " excluir toda a sua estrutura!!!".format(base.id))
raise Exception( raise Exception(
_('Não é possível excluir este Dispositivo sem' _('Não é possível excluir este Dispositivo sem'
' excluir toda a sua estrutura!!!')) ' excluir toda a sua estrutura!!!'))
@ -1566,8 +1566,8 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
for candidato in parents: for candidato in parents:
if candidato == base: if candidato == base:
self.logger.error("user=" + username + ". Não é possível excluir este " self.logger.error("user=" + username + ". Não é possível excluir este "
"Dispositivo ({}) sem " "Dispositivo (id={}) sem "
"excluir toda a sua estrutura!!!".format(candidato)) "excluir toda a sua estrutura!!!".format(candidato.id))
raise Exception( raise Exception(
_('Não é possível excluir este ' _('Não é possível excluir este '
'Dispositivo sem ' 'Dispositivo sem '
@ -1604,8 +1604,8 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
break break
else: else:
self.logger.error("user=" + username + ". Não é possível excluir este " self.logger.error("user=" + username + ". Não é possível excluir este "
"Dispositivo ({}) sem excluir toda " "Dispositivo (id={}) sem excluir toda "
"a sua estrutura!!!".format(candidato)) "a sua estrutura!!!".format(candidato.id))
raise Exception( raise Exception(
_('Não é possível excluir este ' _('Não é possível excluir este '
'Dispositivo sem ' 'Dispositivo sem '
@ -1643,6 +1643,7 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
# excluir e renumerar irmaos # excluir e renumerar irmaos
profundidade_base = base.get_profundidade() profundidade_base = base.get_profundidade()
auto_inserido_base = base.auto_inserido
base.delete() base.delete()
for irmao in irmaos_posteriores: for irmao in irmaos_posteriores:
@ -1666,6 +1667,11 @@ class ActionDeleteDispositivoMixin(ActionsCommonsMixin):
i.set_numero_completo([0, 0, 0, 0, 0, 0, ]) i.set_numero_completo([0, 0, 0, 0, 0, 0, ])
i.rotulo = i.rotulo_padrao(local_insert=1) i.rotulo = i.rotulo_padrao(local_insert=1)
i.save() i.save()
if not irmaos.exists() and \
auto_inserido_base and \
pai_base.nivel:
self.remover_dispositivo(pai_base, False)
else: else:
# Renumerar Dispostivos de Contagem Contínua # Renumerar Dispostivos de Contagem Contínua
# de dentro da base se pai # de dentro da base se pai

5
sapl/templates/compilacao/text_list_bloco.html

@ -20,7 +20,6 @@
<div class="{{ dpt.tipo_dispositivo.class_css }} {% dispositivo_desativado dpt view.inicio_vigencia view.fim_vigencia %} "> <div class="{{ dpt.tipo_dispositivo.class_css }} {% dispositivo_desativado dpt view.inicio_vigencia view.fim_vigencia %} ">
<div class="dptt {% dispositivo_desativado dpt view.inicio_vigencia view.fim_vigencia %}" id="dptt{{dpt.pk}}" > <div class="dptt {% dispositivo_desativado dpt view.inicio_vigencia view.fim_vigencia %}" id="dptt{{dpt.pk}}" >
{% if not dpt.tipo_dispositivo.dispositivo_de_articulacao or dpt.tipo_dispositivo.dispositivo_de_articulacao and dpt.dispositivo_subsequente %} {% if not dpt.tipo_dispositivo.dispositivo_de_articulacao or dpt.tipo_dispositivo.dispositivo_de_articulacao and dpt.dispositivo_subsequente %}
{% if dpt.auto_inserido %} {% if dpt.auto_inserido %}
{{ dpt.dispositivo_pai.tipo_dispositivo.rotulo_prefixo_html|safe }} {{ dpt.dispositivo_pai.tipo_dispositivo.rotulo_prefixo_html|safe }}
@ -31,6 +30,7 @@
<a class="dpt-link" name="{{dpt.pk}}" title="{{dpt.pk}}">{{ dpt.rotulo }}</a> <a class="dpt-link" name="{{dpt.pk}}" title="{{dpt.pk}}">{{ dpt.rotulo }}</a>
{{ dpt.tipo_dispositivo.rotulo_sufixo_html|safe }} {{ dpt.tipo_dispositivo.rotulo_sufixo_html|safe }}
{% endif %} {% endif %}
{% endif %} {% endif %}
<span class="dtxt" id="d{% if not dpt.dispositivo_subsequente_id and dpt.dispositivo_substituido_id %}a{% endif %}{{dpt.pk}}" pks="{{dpt.dispositivo_substituido_id|default:''}}" pk="{{dpt.pk}}">{{ dpt.tipo_dispositivo.texto_prefixo_html|safe }}{%if dpt.texto %}{{ dpt.texto|safe }}{%else%}{%if not dpt.tipo_dispositivo.dispositivo_de_articulacao %}&nbsp;{% endif %}{% endif %}</span> <span class="dtxt" id="d{% if not dpt.dispositivo_subsequente_id and dpt.dispositivo_substituido_id %}a{% endif %}{{dpt.pk}}" pks="{{dpt.dispositivo_substituido_id|default:''}}" pk="{{dpt.pk}}">{{ dpt.tipo_dispositivo.texto_prefixo_html|safe }}{%if dpt.texto %}{{ dpt.texto|safe }}{%else%}{%if not dpt.tipo_dispositivo.dispositivo_de_articulacao %}&nbsp;{% endif %}{% endif %}</span>
@ -43,8 +43,8 @@
&nbsp; &nbsp;
{% endif %} {% endif %}
</a> </a>
{% endif %} {% endif %}
{% if user.is_authenticated and not dpt.tipo_dispositivo.dispositivo_de_articulacao%} {% if user.is_authenticated and not dpt.tipo_dispositivo.dispositivo_de_articulacao%}
{% if perms.compilacao.add_nota or perms.compilacao.add_vide or perms.compilacao.change_dispositivo%} {% if perms.compilacao.add_nota or perms.compilacao.add_vide or perms.compilacao.change_dispositivo%}
<div class="dne" id="dne{{dpt.pk}}" pk="{{dpt.pk}}"> <div class="dne" id="dne{{dpt.pk}}" pk="{{dpt.pk}}">
@ -57,6 +57,7 @@
</div> </div>
{% endif %} {% endif %}
{% endif %} {% endif %}
</div> </div>
{% if not dpt.tipo_dispositivo.dispositivo_de_articulacao %} {% if not dpt.tipo_dispositivo.dispositivo_de_articulacao %}

Loading…
Cancel
Save