Ver Fonte

Fixed Generate Summary button not working on prior imports.

vtugulan há 1 mês atrás
pai
commit
7f16bc9384
1 ficheiros alterados com 18 adições e 7 exclusões
  1. 18 7
      app/cintas-calendar-summary/page.tsx

+ 18 - 7
app/cintas-calendar-summary/page.tsx

@@ -169,22 +169,31 @@ export default function CintasCalendarSummaryPage() {
   };
 
   const handleGenerateSummary = async () => {
-    if (!importRecord) return;
+    const activeImport = selectedImport || importRecord;
+    if (!activeImport) return;
 
     setIsProcessing(true);
     setError(null);
 
     try {
-      const result = await generateImportSummary(importRecord.id);
+      const result = await generateImportSummary(activeImport.id);
 
       if (result.success && result.data) {
-        const summaries = result.data.summary || [];
-        setSummaryData(Array.isArray(summaries) ? summaries : []);
-        setSummaryExists(summaries.length > 0);
+        const refreshed = await getImportSummary(activeImport.id);
+        const summaries = refreshed.success && refreshed.data
+          ? (refreshed.data.summary?.cintasSummaries || [])
+          : (result.data.summary || []);
 
-        if (result.data.summaryGenerated || summaries.length > 0) {
+        const normalizedSummaries = Array.isArray(summaries) ? summaries : [];
+        setSummaryData(normalizedSummaries);
+        setSummaryExists(normalizedSummaries.length > 0);
+        setSelectedImport(activeImport);
+
+        if (result.data.summaryGenerated || normalizedSummaries.length > 0) {
           setCurrentStep(4);
-          setViewMode('new-summary');
+          setViewMode(importRecord ? 'new-summary' : 'summary');
+        } else {
+          setError('Summary generation completed, but no summary rows were produced for this import.');
         }
       } else {
         throw new Error(result.error || 'Failed to generate summary');
@@ -200,6 +209,7 @@ export default function CintasCalendarSummaryPage() {
     try {
       setIsProcessing(true);
       setError(null);
+      setImportRecord(null);
 
       const result = await getImportSummary(importRecord.id);
 
@@ -233,6 +243,7 @@ export default function CintasCalendarSummaryPage() {
   const handleBackToImports = () => {
     setViewMode('imports');
     setSelectedImport(null);
+    setImportRecord(null);
     setSummaryData([]);
     loadPriorImports();
   };