<!-- START admin/Button/finish_button.html.twig -->
{% if object.id and is_granted('ROLE_SUPER_ADMIN') and object.estado.key|default('') == constant('App\\Enum\\EstadoOperacionEnum::ESTADO_CONFIRMADA') and object.tipo == constant('App\\Enum\\TipoOperacionEnum::OPERACION_GESTION') %}
{% set enabled = true %}
{% for detalle in object.compra.detalle %}
{% if (detalle.fechaCancelacion is empty and detalle.reloj is not empty and not (detalle.reloj.fechaCompra is not empty or detalle.reloj.fechaVenta is not empty)) %}
{% set enabled = false %}
{% endif %}
{% endfor %}
<li id="action-finish" class="action action-finish" style="grid-area: finish_button">
<a class="sonata-action-element{% if not enabled %} disabled {% endif %}" href="{{ admin.generateUrl('finish', admin.getEntitySubClass is defined ? {'id': object.id, 'subclass': admin.getEntitySubClass} : {'id': object.id}) }}"
title="{{ 'link_action_finish'|trans({}, 'SonataAdminBundle') }}">
<i class="fi fi-sr-after-list-check"></i>
</a>
</li>
<script type="application/javascript">
$(document).on("click", "#navbar-prometeo #action-finish a", function (event) {
event.preventDefault();
AlertUtils.warning(i18n.titleModalFinalizarOperacion, i18n.messageModalFinalizarOperacion, {
onshown: function(dialog)
{
const date = new Date();
const dateStr = ("0" + date.getDate()).slice(-2) + "-" + ("0"+(date.getMonth()+1)).slice(-2) + "-" + date.getFullYear();
dialog.$modalBody.find("#fecha-finalizada").val(dateStr);
}
}, AlertUtils.Buttons.doble, {
onAccept: function (dialog) {
const fechaInput = dialog.$modalBody.find("#fecha-finalizada").val(); // DD-MM-YYYY
let fechaFinalizada;
if(fechaInput) {
const parts = fechaInput.split("-");
fechaFinalizada = `${parts[2]}-${parts[1]}-${parts[0]} ` + "00:00:00";
}
const form = $("section.content form");
const currentAction = form.attr("action");
form.attr("action", currentAction + `&action=finish&fecha_finalizada=${fechaFinalizada}`).trigger("submit");
}
});
});
</script>
{% endif %}
<!-- END admin/Button/finish_button.html.twig -->