// {} Librerías e importaciones

// ! Tabla
import Tabla from "../../elementos/tabla.js";

// {}
(async () => {

  // ! Declaración de variables
  let peticion = {
  actual: null,
  },
	tabla = {
		conceptos: {
			elemento: $(tabla_conceptos),
			clase: new Tabla({
				tabla: tabla_conceptos,
				datos: {
					peticion: {
						ruta: `${window.aplicacion.enlace}/ejecutar`,
						parametro: {
							procedimiento: 'p_traer_conceptos_fijos',
							id_concepto: () => id_concepto.value,
							id_tipo_nomina: () => id_tipo_nomina.value
						}
					}
				},
				configuracion: {
					dom: `t`,
					pageLength: -1,
					autoWidth: false
				}
			})
		}
	};

	// !
	$('table').on('draw.dt', function(evento) {

		evento.id = evento.tabla.id.replace('tabla_', '');

		if (!tabla[evento.id])
			return
		;

		evento.tabla.clase  = tabla[evento.id].clase;
		tabla[evento.id] = evento.tabla

	});

	// !
	await tabla.conceptos.clase.inicializar();


  $(botonBuscar).click(function (evento) {

		$('#id_concepto, #id_tipo_nomina, #botonBuscar').prop('disabled', true);

		tabla.conceptos.instancia.ajax.reload();

  });

	$('#id_tipo_nomina, #id_concepto').on('change', function (evento) {
		tabla.conceptos.instancia.ajax.reload();
	});


  $(botonGuardar).click(function (evento) {

		// +
		let formulario = {
			peticion: {
				parametro: parametros(formularioConceptosFijos)
			}
		}

		formulario.peticion.parametro.append(
			'json_detalle_conceptos',
			JSON.stringify($("#tablaRegistros").DataTable().data().toArray())
		);

		// +
		window.aplicacion.peticion.formulario.parametro = formulario.peticion.parametro

  });



})();
