diff --git a/nuxt4-app/app/pages/comparativa-cosechas.vue b/nuxt4-app/app/pages/comparativa-cosechas.vue index 751a94f..194e986 100644 --- a/nuxt4-app/app/pages/comparativa-cosechas.vue +++ b/nuxt4-app/app/pages/comparativa-cosechas.vue @@ -233,14 +233,42 @@ const hasPendingChanges = computed(() => { return cosechasChanged || anuladosChanged }) +// Debug computed para ver el estado de la condición v-if +const shouldShowComponents = computed(() => { + const result = !!(data.value && data.value.datosDiariosCompletos && data.value.datosDiariosCompletos.length > 0) + console.log('[DEBUG] shouldShowComponents computed:', { + hasData: !!data.value, + hasDatosDiarios: !!data.value?.datosDiariosCompletos, + length: data.value?.datosDiariosCompletos?.length, + result + }) + return result +}) + +// Watcher para ver cambios en data +watch(data, (newVal, oldVal) => { + console.log('[DEBUG] Data watcher triggered') + console.log('[DEBUG] Old value:', oldVal) + console.log('[DEBUG] New value:', newVal) + console.log('[DEBUG] New value datosDiariosCompletos:', newVal?.datosDiariosCompletos) + console.log('[DEBUG] New value datosDiariosCompletos length:', newVal?.datosDiariosCompletos?.length) +}, { deep: true }) + // Procesar datos de resumen para los componentes // Los componentes esperan el formato de vista_resumen_ingresos (que es lo que devuelve la query) const resumenIngresosProcesados = computed(() => { - if (!data.value || !data.value.datosDiariosCompletos) return [] + console.log('[DEBUG] resumenIngresosProcesados computed called') + console.log('[DEBUG] data.value:', !!data.value) + console.log('[DEBUG] data.value.datosDiariosCompletos:', !!data.value?.datosDiariosCompletos) + + if (!data.value || !data.value.datosDiariosCompletos) { + console.log('[DEBUG] resumenIngresosProcesados returning empty array') + return [] + } // La query ya devuelve los datos en el formato correcto con las métricas agregadas por día // Solo necesitamos mapear los nombres de campos si es necesario - return data.value.datosDiariosCompletos.map((row: any) => ({ + const processed = data.value.datosDiariosCompletos.map((row: any) => ({ fecha: row.fecha, created_at: row.fecha, // Algunos componentes esperan created_at cosecha_id: row.cosecha_id, @@ -253,6 +281,9 @@ const resumenIngresosProcesados = computed(() => { total_lempiras_verde: row.total_lempiras_verde || 0, total_lempiras_mojado_oreado: row.total_lempiras_mojado_oreado || 0 })) + + console.log('[DEBUG] resumenIngresosProcesados returning:', processed.length, 'records') + return processed }) // Methods @@ -280,8 +311,23 @@ async function loadData() { } }) + console.log('[DEBUG] Raw API result:', result) + console.log('[DEBUG] Result type:', typeof result) + console.log('[DEBUG] Result keys:', Object.keys(result || {})) + console.log('[DEBUG] datosDiariosCompletos:', result?.datosDiariosCompletos) + console.log('[DEBUG] datosDiariosCompletos length:', result?.datosDiariosCompletos?.length) + console.log('[DEBUG] Is array?:', Array.isArray(result?.datosDiariosCompletos)) + data.value = result + console.log('[DEBUG] Data set:', { + hasData: !!data.value, + hasDatosDiarios: !!data.value?.datosDiariosCompletos, + length: data.value?.datosDiariosCompletos?.length, + isArray: Array.isArray(data.value?.datosDiariosCompletos), + condition: !!(data.value && data.value.datosDiariosCompletos && data.value.datosDiariosCompletos.length > 0) + }) + // Guardar los filtros aplicados appliedFilters.value = { cosechasSeleccionadas: [...cosechasSeleccionadas.value],