97 lines
2.8 KiB
JavaScript
97 lines
2.8 KiB
JavaScript
$(document).ready(function () {
|
|
// carga las fechas por defecto
|
|
CargaFechas();
|
|
});
|
|
|
|
function Report() {
|
|
// form data
|
|
const formData = $("#report_form").serialize();
|
|
$.ajax({
|
|
url: "/report/get",
|
|
type: "POST",
|
|
data: formData,
|
|
headers: {
|
|
'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content')
|
|
},
|
|
xhrFields: {
|
|
// make sure the response knows we're expecting a binary type in return.
|
|
// this is important, without it the excel file is marked corrupted.
|
|
responseType: 'arraybuffer'
|
|
}
|
|
}).done(function (data, status, xmlHeaderRequest) {
|
|
var downloadLink = document.createElement('a');
|
|
var blob = new Blob([data],
|
|
{
|
|
type: xmlHeaderRequest.getResponseHeader('Content-Type')
|
|
});
|
|
var url = window.URL || window.webkitURL;
|
|
var downloadUrl = url.createObjectURL(blob);
|
|
var fileName = 'mediciones' + '.xls';
|
|
|
|
if (typeof window.navigator.msSaveBlob !== 'undefined') {
|
|
window.navigator.msSaveBlob(blob, fileName);
|
|
} else {
|
|
if (fileName) {
|
|
if (typeof downloadLink.download === 'undefined') {
|
|
window.location = downloadUrl;
|
|
} else {
|
|
downloadLink.href = downloadUrl;
|
|
downloadLink.download = fileName;
|
|
document.body.appendChild(downloadLink);
|
|
downloadLink.click();
|
|
}
|
|
} else {
|
|
window.location = downloadUrl;
|
|
}
|
|
|
|
setTimeout(function () {
|
|
url.revokeObjectURL(downloadUrl);
|
|
},
|
|
100);
|
|
}
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
function CargaFechas() {
|
|
// Calcula la fecha del día actual a las 6:00:00 de la mañana
|
|
var today = new Date();
|
|
today.setHours(6);
|
|
today.setMinutes(0);
|
|
today.setSeconds(0);
|
|
var dateTime1 = today;
|
|
|
|
// Calcula la fecha del día anterior a las 6:00:00 de la mañana
|
|
var yesterday = new Date();
|
|
yesterday.setDate(yesterday.getDate() - 1);
|
|
yesterday.setHours(6);
|
|
yesterday.setMinutes(0);
|
|
yesterday.setSeconds(0);
|
|
var dateTime2 = yesterday;
|
|
|
|
// Selecciona los campos input de tipo datetime-local
|
|
var dateTimeInput1 = $("#fecha-inicio");
|
|
var dateTimeInput2 = $("#fecha-final");
|
|
|
|
// Rellena el primer campo con la fecha del día actual a las 6:00:00 de la mañana
|
|
dateTimeInput2.val(dateTime1.toISOString().split("T")[0] + "T" + dateTime1.toTimeString().split(" ")[0]);
|
|
|
|
// Rellena el segundo campo con la fecha del día anterior a las 6:00:00 de la mañana
|
|
dateTimeInput1.val(dateTime2.toISOString().split("T")[0] + "T" + dateTime2.toTimeString().split(" ")[0]);
|
|
} |