// {} Librerías e importaciones

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

// {}
(() => {

  // ! Declaración de variables
  let
    peticion = { actual: null },
    campo = {
      mascara: {}
    }

	// !
	new Tabla({
		columna: {
			peticion: {
				ruta: `${window.aplicacion.enlace}/ejecutar`,
				parametro: { procedimiento: 'p_traer_encabezado_procesos' }
			}
		},
		datos: {
			peticion: {
				ruta: `${window.aplicacion.enlace}/ejecutar`,
				parametro: {
					procedimiento: 'p_traer_documentos_cuenta_banco',
					renglon: 'CONCILIAR',
					fecha: fecha.value,
					id_cuenta_banco: () => !id_cuenta_banco.value ? -1 : id_cuenta_banco.value,
					id_tipo_documento: () => !id_tipo_documento.value ? -1 : id_tipo_documento.value,
					origen: () => !origen.value ? -1 : origen.value
				}
			}
		},
		configuracion: { dom: `ft`, pageLength: -1 }
	}).inicializar();

	// !
	$(id_cuenta_banco).on('select2:select',function(evento) {

		// +
		if (!this.value)
			return formularioDocumentosBancariosRecibidos.reset()
		;

    // + Condición para verificar si la
    // + petición existe y cancelarla
    peticion.actual &&
    peticion.actual.abort();

    // + Petición hacía el
    // + controlador 'traerRegistros'
		peticion.actual = $.ajax({
			url: `${window.aplicacion.enlace}/ejecutar`,
			data: {
				procedimiento: 'p_traer_fechas',
				// renglon: 'CONCILIAR_CUENTA',
				// valor_filtro: this.value
			},
			success: function (respuesta) {

				respuesta = respuesta[0];

				$.each(respuesta, (indice, valor) => respuesta[indice] = respuesta[indice].split(' ')[0]);

				fecha.value = respuesta.hasta_fecha

			}
		});

	});


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


		$('#tablaRegistros').DataTable().ajax.reload()

	});

	// // !
  // $('#tablaRegistros tbody').on('click', 'tr', function(evento) {

  // })

})()
