mirror of https://github.com/interlegis/sapl.git
Browse Source
* Adicionando função de apagar todos os protocolos Melhorando usabilidade Colocando privilegios de admin para acessar função de apagar protocolos Fix #2958 Filtrando anos a serem apagados #Fix 2958 Atualizando django mommy para aceitar ArrayField * Resolvendo problemas relatados no pr * Mudando sistema de auditoria de protocolos para o já existente * Removendo codigo desnecessario * Melhorando querys * Update sapl/templates/protocoloadm/deleta_todos_protocolos.html Co-authored-by: Edward <9326037+edwardoliveira@users.noreply.github.com>pull/3169/head
Ulysses Lara
5 years ago
committed by
GitHub
4 changed files with 186 additions and 2 deletions
@ -0,0 +1,127 @@ |
|||
{% extends "base.html" %} |
|||
{% load i18n crispy_forms_tags %} |
|||
|
|||
{% block base_content %} |
|||
|
|||
{% if intervalo_data %} |
|||
<h2 class="page-header">Selecione o ano dos registros a serem apagados e confirme com a sua senha.</h2> |
|||
|
|||
<div class="form-row"> |
|||
<label style="margin-top:20px">Ano</label> |
|||
<select id="id_ano" class="form-control"> |
|||
{% for ano in intervalo_data %} |
|||
<option>{{ano}}</option> |
|||
{% endfor %} |
|||
</select> |
|||
<label style="margin-top:20px">A partir do numero: (Opcional)</label> |
|||
<input type="number" class="form-control" id="numero_protocolo"> |
|||
<label style="margin-top:20px">Senha</label> |
|||
<input type="password" class="form-control" id="password" placeholder="Senha" required> |
|||
<div id="feedback" class="invalid-feedback"></div> |
|||
|
|||
</div> |
|||
<div style="margin-top:20px" class="form-group row justify-content-between"> |
|||
<a href="{% url 'sapl.base:sistema' %}" type="button" class="btn btn-secondary float-left" >Cancelar</a> |
|||
|
|||
<button type="button" data-toggle="modal" data-target="#exampleModal" class="btn btn-danger float-right">Apagar protocolos</button> |
|||
</div> |
|||
|
|||
|
|||
{% else %} |
|||
<h1>Não há registros de protocolos.</h1> |
|||
<a style="margin-top:5%" href="{% url 'sapl.base:sistema' %}" type="button" class="btn btn-secondary" >Voltar para tabelas auxiliares.</a> |
|||
{% endif %} |
|||
|
|||
<!-- Modal --> |
|||
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true"> |
|||
<div class="modal-dialog modal-dialog-centered" role="document"> |
|||
<div class="modal-content"> |
|||
<div id="content-block-1"> |
|||
<div class="modal-header bg-danger "> |
|||
<h5 class="modal-title" id="exampleModalLabel">ALERTA</h5> |
|||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> |
|||
<span aria-hidden="true">×</span> |
|||
</button> |
|||
</div> |
|||
|
|||
<div class="modal-body"> |
|||
Tem certeza que deseja apagar esses protocolos ? Essa operação é <b>irreversível</b>. |
|||
</div> |
|||
<div class="modal-footer"> |
|||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button> |
|||
<button type="button" class="btn btn-danger" id="apagar-protocolos">Apagar</button> |
|||
<div id="spinner-id" style="margin-left:20px" class="spinner-border text-danger" role="status"> |
|||
<span class="sr-only">Loading...</span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<div id="content-block-2"> |
|||
<div class="modal-header"> |
|||
<h5 class="modal-title" id="exampleModalLabel">Operação realizada com sucesso.</h5> |
|||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> |
|||
<span aria-hidden="true">×</span> |
|||
</button> |
|||
</div> |
|||
|
|||
|
|||
<div class="modal-body"> |
|||
Os protocolos foram apagados com sucesso. |
|||
</div> |
|||
<div class="modal-footer"> |
|||
<a href="{% url 'sapl.base:sistema' %}" class="btn btn-secondary">Voltar para tabelas auxiliares.</a> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
|
|||
{% endblock base_content %} |
|||
|
|||
{% block extra_js %} |
|||
|
|||
<script> |
|||
$('#content-block-2').hide(); |
|||
$('#spinner-id').hide(); |
|||
$('#apagar-protocolos').click( () => { |
|||
$('#spinner-id').show(); |
|||
$.ajax({ |
|||
data: {numero_protocolo:$('#numero_protocolo').val(),senha:$('#password').val(),ano:$("#id_ano").val()}, |
|||
type: 'POST', |
|||
url: "{% url 'sapl.protocoloadm:apaga_protocolos_view' %}", |
|||
traditional: true, |
|||
headers: { |
|||
'X-CSRFToken': getCookie('csrftoken') |
|||
}, |
|||
success: function(data){ |
|||
if (data['type'] == 'error'){ |
|||
$('#password').addClass('is-invalid') |
|||
$('#exampleModal').modal('hide') |
|||
$('#feedback').text(data['msg']) |
|||
} |
|||
else if(data['type'] == 'success'){ |
|||
$('#content-block-1').hide("", function() { |
|||
}); |
|||
$('#content-block-2').show("slow"); |
|||
} |
|||
$('#spinner-id').hide(); |
|||
}, |
|||
}); |
|||
}) |
|||
$('option').mousedown(function(e) { |
|||
e.preventDefault(); |
|||
var originalScrollTop = $(this).parent().scrollTop(); |
|||
$(this).prop('selected', $(this).prop('selected') ? false : true); |
|||
var self = this; |
|||
$(this).parent().focus(); |
|||
setTimeout(function() { |
|||
$(self).parent().scrollTop(originalScrollTop); |
|||
}, 0); |
|||
|
|||
return false; |
|||
}); |
|||
</script> |
|||
|
|||
{% endblock extra_js%} |
Loading…
Reference in new issue