File "FOR-E-CCI-11.js"
Full Path: C:/wamp64/www/CALIDADWEB/CALIDADWEB/FRONTED/CONTROLTABLAS.JS/FOR-E-CCI-11.js
File size: 20.54 KB
MIME-type: text/plain
Charset: utf-8
$(document).ready(function () {
$(".btnVerifiMari").click(function (e) {
e.preventDefault();
swal.fire({
title: "Cargando datos...",
allowOutsideClick: false,
didOpen: () => { swal.showLoading(); }
});
if ($.fn.DataTable.isDataTable('#tblVerifiMari')) {
$('#tblVerifiMari').DataTable().destroy();
}
let tabla333 = $("#tblVerifiMari").DataTable({
"ajax": {
"url": "../../BACKEND/controltablas/FOR-E-CCI-11.php",
"type": "POST",
"data": { opcion: 5 },
"dataSrc": ""
},
"columns": [
{ data: "id" },
{ data: "fecha" },
{ data: "horaVerifi" },
{ data: "areaVeri" },
{ data: "observaHalla" },
{ data: "despresProduc" },
{ data: "despresTempe" },
{ data: "despresTempe1" },
{ data: "despresTempe2" },
{ data: "despresTempe3" },
{ data: "despresTempe4" },
{ data: "despresTempe5" },
{ data: "despresTempe6" },
{ data: "despresTempe7" },
{ data: "despresTempe8" },
{ data: "despresTempe9" },
{ data: "despresTempe10" },
{ data: "despresTempe11" },
{ data: "despresTempe12" },
{ data: "despresTempe13" },
{ data: "despresTempe14" },
{ data: "despresTempe15" },
{ data: "despresTempe16" },
{ data: "trazabilidadD" },
{ data: "marinaProduc" },
{ data: "marinaTemp" },
{ data: "marinaTemp1" },
{ data: "marinaTemp2" },
{ data: "marinaTemp3" },
{ data: "marinaTemp4" },
{ data: "marinaTemp5" },
{ data: "marinaTemp6" },
{ data: "marinaTemp7" },
{ data: "marinaTemp8" },
{ data: "marinaTemp9" },
{ data: "marinaTemp10" },
{ data: "marinaTemp11" },
{ data: "marinaTemp12" },
{ data: "marinaTemp13" },
{ data: "marinaTemp14" },
{ data: "marinaTemp15" },
{ data: "marinaTemp16" },
{ data: "trazabilidadMA" },
{ data: "salmueTemp" },
{ data: "salmueTemp1" },
{ data: "salmueTemp2" },
{ data: "ambienTemp" },
{ data: "trazabiliLote" },
{ data: "trazabiliFV" },
{ data: "supervisor" },
{ data: "coordCalidad" },
{ data: "aprobo" },
{
"data": null,
"orderable": false,
"width": "80px",
"className": "text-center",
"render": function () {
return "<button class='btn btn-danger btn-sm btnBorrar'><i class='fas fa-trash-alt'></i></button>";
}
},
{
"data": null,
"orderable": false,
"width": "80px",
"className": "text-center",
"render": function (data, type, row) {
return "<button class='btn btn-primary btn-sm btnEditar' data-id='" + row.id + "'><i class='fas fa-edit'></i></button>";
}
}
],
"language": {
"decimal": "",
"emptyTable": "No hay información",
"info": "Mostrando _START_ a _END_ de _TOTAL_ registros",
"infoEmpty": "Mostrando 0 a 0 de 0 registros",
"infoFiltered": "(Filtrado de _MAX_ total registros)",
"thousands": ",",
"lengthMenu": "Mostrar _MENU_ registros",
"loadingRecords": "Cargando...",
"processing": "Procesando...",
"search": "Buscar:",
"zeroRecords": "Sin resultados encontrados",
"paginate": {
"first": "Primero",
"last": "Último",
"next": "Siguiente",
"previous": "Anterior"
}
},
"scrollX": true,
"scrollCollapse": true,
"autoWidth": false,
"dom": "Bfrtip",
"buttons": [
{
extend: "pageLength",
className: "btn btn-warning"
},
{
extend: "excelHtml5",
autoFilter: true,
sheetName: "CONTROL PROCESO DE MARINADO Y ADOBADO",
title: "CONTROL PROCESO DE MARINADO Y ADOBADO",
text: '<i class="fa-lg fa-solid fa-file-excel"></i> GENERAR EXCEL',
className: "btn btn-success",
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51]
}
}
],
"initComplete": function () {
swal.close();
}
});
// --- ELIMINAR ---
$('#tblVerifiMari tbody').off('click', '.btnBorrar').on('click', '.btnBorrar', function (e) {
e.preventDefault();
e.stopPropagation();
let data = tabla333.row($(this).parents('tr')).data();
swal.fire({
title: "¿Eliminar registro?",
text: "ID: " + data.id,
icon: "warning",
showCancelButton: true,
confirmButtonColor: "#d33",
cancelButtonColor: "#3085d6",
cancelButtonText: "Cancelar",
confirmButtonText: "Sí, borrar"
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
url: "../../BACKEND/controltablas/FOR-E-CCI-11.php",
type: "POST",
data: { opcion: 1, id: data.id },
success: function (response) {
tabla333.ajax.reload(null, false);
swal.fire({
icon: "success",
title: "¡Éxito!",
text: "Registro eliminado correctamente",
showConfirmButton: false,
timer: 1500
});
},
error: function () {
swal.fire({
icon: "error",
title: "Error",
text: "No se pudo eliminar el registro",
showConfirmButton: false,
timer: 1500
});
}
});
}
});
return false;
});
// --- EDITAR ---
$('#tblVerifiMari tbody').off('click', '.btnEditar').on('click', '.btnEditar', function (e) {
e.preventDefault();
e.stopPropagation();
let $row = $(this).closest('tr');
let data = tabla333.row($row).data();
$row.find('td').each(function (index) {
// Obtenemos la configuración de la columna para esa celda
let colConfig = tabla333.settings().init().columns[index];
// Solo editamos si tiene la propiedad "data" definida y no es el ID ni botones
if (index > 0 && index < 52) {
let valorActual = $(this).text();
let nombreColumna = colConfig.data;
// Agregamos un estilo inline "width: 100%" y un contenedor pequeño
$(this).html(`
<input type="text"
class="form-control form-control-sm"
style="min-width: 70px; width: 100%; padding: 2px;"
value="${valorActual}"
data-campo="${nombreColumna}">
`);
}
});
$(this).removeClass('btn-primary btnEditar').addClass('btn-success btnGuardar').html('<i class="fas fa-save"></i>');
$row.find('.btnBorrar').removeClass('btn-danger btnBorrar').addClass('btn-secondary btnCancelar').html('<i class="fas fa-times"></i>');
return false;
});
// --- GUARDAR ---
$('#tblVerifiMari tbody').off('click', '.btnGuardar').on('click', '.btnGuardar', function (e) {
e.preventDefault();
e.stopPropagation();
let $row = $(this).closest('tr');
let id = tabla333.row($row).data().id;
let datosActualizados = { opcion: 2, id: id };
$row.find('input').each(function () {
let campo = $(this).data('campo');
let valor = $(this).val();
datosActualizados[campo] = valor;
});
$.ajax({
url: "../../BACKEND/controltablas/FOR-E-CCI-11.php",
type: "POST",
data: datosActualizados,
success: function (response) {
tabla333.ajax.reload(null, false);
swal.fire({
icon: "success",
title: "¡Éxito!",
text: "Registro actualizado correctamente",
showConfirmButton: false,
timer: 1500
});
},
error: function () {
swal.fire({
icon: "error",
title: "Error",
text: "No se pudo actualizar el registro",
showConfirmButton: false,
timer: 1500
});
tabla333.ajax.reload(null, false);
}
});
return false;
});
// --- CANCELAR ---
$('#tblVerifiMari tbody').off('click', '.btnCancelar').on('click', '.btnCancelar', function (e) {
e.preventDefault();
e.stopPropagation();
tabla333.ajax.reload(null, false);
return false;
});
});
});
$(document).ready(function () {
$(".btnReporMari").click(function (e) {
e.preventDefault();
swal.fire({
title: "Cargando datos...",
allowOutsideClick: false,
didOpen: () => { swal.showLoading(); }
});
if ($.fn.DataTable.isDataTable('#tblReporMari')) {
$('#tblReporMari').DataTable().destroy();
}
let tabla333 = $("#tblReporMari").DataTable({
"ajax": {
"url": "../../BACKEND/controltablas/FOR-E-CCI-11.php",
"type": "POST",
"data": { opcion: 15 },
"dataSrc": ""
},
"columns": [
{ data: "id" },
{ data: "fecha" },
{ data: "hora" },
{ data: "area" },
{ data: "despresProduc" },
{ data: "despresTempe" },
{ data: "marinaProduc" },
{ data: "marinaTemp" },
{ data: "salmueTemp" },
{ data: "ambienTemp" },
{ data: "trazabiliLote" },
{ data: "trazabiliFV" },
{ data: "observacion" },
{ data: "accionCorrectiva" },
{ data: "responsable" },
{ data: "aprobo" },
{
"data": null,
"orderable": false,
"width": "80px",
"className": "text-center",
"render": function () {
return "<button class='btn btn-danger btn-sm btnBorrar'><i class='fas fa-trash-alt'></i></button>";
}
},
{
"data": null,
"orderable": false,
"width": "80px",
"className": "text-center",
"render": function (data, type, row) {
return "<button class='btn btn-primary btn-sm btnEditar' data-id='" + row.id + "'><i class='fas fa-edit'></i></button>";
}
}
],
"language": {
"decimal": "",
"emptyTable": "No hay información",
"info": "Mostrando _START_ a _END_ de _TOTAL_ registros",
"infoEmpty": "Mostrando 0 a 0 de 0 registros",
"infoFiltered": "(Filtrado de _MAX_ total registros)",
"thousands": ",",
"lengthMenu": "Mostrar _MENU_ registros",
"loadingRecords": "Cargando...",
"processing": "Procesando...",
"search": "Buscar:",
"zeroRecords": "Sin resultados encontrados",
"paginate": {
"first": "Primero",
"last": "Último",
"next": "Siguiente",
"previous": "Anterior"
}
},
"scrollX": true,
"scrollCollapse": true,
"autoWidth": false,
"dom": "Bfrtip",
"buttons": [
{
extend: "pageLength",
className: "btn btn-warning"
},
{
extend: "excelHtml5",
autoFilter: true,
sheetName: "CONTROL PROCESO DE MARINADO Y ADOBADO",
title: "CONTROL PROCESO DE MARINADO Y ADOBADO",
text: '<i class="fa-lg fa-solid fa-file-excel"></i> GENERAR EXCEL',
className: "btn btn-success",
exportOptions: {
columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15]
}
}
],
"initComplete": function () {
swal.close();
}
});
// --- ELIMINAR ---
$('#tblReporMari tbody').off('click', '.btnBorrar').on('click', '.btnBorrar', function (e) {
e.preventDefault();
e.stopPropagation();
let data = tabla333.row($(this).parents('tr')).data();
swal.fire({
title: "¿Eliminar registro?",
text: "ID: " + data.id,
icon: "warning",
showCancelButton: true,
confirmButtonColor: "#d33",
cancelButtonColor: "#3085d6",
cancelButtonText: "Cancelar",
confirmButtonText: "Sí, borrar"
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
url: "../../BACKEND/controltablas/FOR-E-CCI-11.php",
type: "POST",
data: { opcion: 16, id: data.id },
success: function (response) {
tabla333.ajax.reload(null, false);
swal.fire({
icon: "success",
title: "¡Éxito!",
text: "Registro eliminado correctamente",
showConfirmButton: false,
timer: 1500
});
},
error: function () {
swal.fire({
icon: "error",
title: "Error",
text: "No se pudo eliminar el registro",
showConfirmButton: false,
timer: 1500
});
}
});
}
});
return false;
});
// --- EDITAR ---
$('#tblReporMari tbody').off('click', '.btnEditar').on('click', '.btnEditar', function (e) {
e.preventDefault();
e.stopPropagation();
let $row = $(this).closest('tr');
let data = tabla333.row($row).data();
$row.find('td').each(function (index) {
// Obtenemos la configuración de la columna para esa celda
let colConfig = tabla333.settings().init().columns[index];
// Solo editamos si tiene la propiedad "data" definida y no es el ID ni botones
if (index > 0 && index < 15) {
let valorActual = $(this).text();
let nombreColumna = colConfig.data;
// Agregamos un estilo inline "width: 100%" y un contenedor pequeño
$(this).html(`
<input type="text"
class="form-control form-control-sm"
style="min-width: 70px; width: 100%; padding: 2px;"
value="${valorActual}"
data-campo="${nombreColumna}">
`);
}
});
$(this).removeClass('btn-primary btnEditar').addClass('btn-success btnGuardar').html('<i class="fas fa-save"></i>');
$row.find('.btnBorrar').removeClass('btn-danger btnBorrar').addClass('btn-secondary btnCancelar').html('<i class="fas fa-times"></i>');
return false;
});
// --- GUARDAR ---
$('#tblReporMari tbody').off('click', '.btnGuardar').on('click', '.btnGuardar', function (e) {
e.preventDefault();
e.stopPropagation();
let $row = $(this).closest('tr');
let id = tabla333.row($row).data().id;
let datosActualizados = { opcion: 17, id: id };
$row.find('input').each(function () {
let campo = $(this).data('campo');
let valor = $(this).val();
datosActualizados[campo] = valor;
});
$.ajax({
url: "../../BACKEND/controltablas/FOR-E-CCI-11.php",
type: "POST",
data: datosActualizados,
success: function (response) {
tabla333.ajax.reload(null, false);
swal.fire({
icon: "success",
title: "¡Éxito!",
text: "Registro actualizado correctamente",
showConfirmButton: false,
timer: 1500
});
},
error: function () {
swal.fire({
icon: "error",
title: "Error",
text: "No se pudo actualizar el registro",
showConfirmButton: false,
timer: 1500
});
tabla333.ajax.reload(null, false);
}
});
return false;
});
// --- CANCELAR ---
$('#tblReporMari tbody').off('click', '.btnCancelar').on('click', '.btnCancelar', function (e) {
e.preventDefault();
e.stopPropagation();
tabla333.ajax.reload(null, false);
return false;
});
});
});