New alert system and panel de control page
This commit is contained in:
@@ -64,11 +64,45 @@ export const DemoPage: React.FC = () => {
|
||||
}
|
||||
|
||||
// Check if ready to redirect
|
||||
const hasUsableData = statusData.total_records_cloned > 100;
|
||||
// CRITICAL: Wait for inventory, recipes, AND suppliers to complete
|
||||
// to prevent dashboard from showing SetupWizardBlocker
|
||||
const progress = statusData.progress || {};
|
||||
const inventoryReady = progress.inventory?.status === 'completed';
|
||||
const recipesReady = progress.recipes?.status === 'completed';
|
||||
const suppliersReady = progress.suppliers?.status === 'completed';
|
||||
|
||||
const criticalServicesReady = inventoryReady && recipesReady && suppliersReady;
|
||||
|
||||
// Additionally verify that we have minimum required data to bypass SetupWizardBlocker
|
||||
// The SetupWizardBlocker requires: 3+ ingredients, 1+ suppliers, 1+ recipes
|
||||
|
||||
// Ensure progress data exists for all required services
|
||||
const hasInventoryProgress = !!progress.inventory;
|
||||
const hasSuppliersProgress = !!progress.suppliers;
|
||||
const hasRecipesProgress = !!progress.recipes;
|
||||
|
||||
// Extract counts with defensive checks
|
||||
const ingredientsCount = hasInventoryProgress ? (progress.inventory.details?.ingredients || 0) : 0;
|
||||
const suppliersCount = hasSuppliersProgress ? (progress.suppliers.details?.suppliers || 0) : 0;
|
||||
const recipesCount = hasRecipesProgress ? (progress.recipes.details?.recipes || 0) : 0;
|
||||
|
||||
// Verify we have the minimum required counts
|
||||
const hasMinimumIngredients = (typeof ingredientsCount === 'number' && ingredientsCount >= 3);
|
||||
const hasMinimumSuppliers = (typeof suppliersCount === 'number' && suppliersCount >= 1);
|
||||
const hasMinimumRecipes = (typeof recipesCount === 'number' && recipesCount >= 1);
|
||||
|
||||
// Ensure all required services have completed AND we have minimum data
|
||||
const hasMinimumRequiredData =
|
||||
hasInventoryProgress &&
|
||||
hasSuppliersProgress &&
|
||||
hasRecipesProgress &&
|
||||
hasMinimumIngredients &&
|
||||
hasMinimumSuppliers &&
|
||||
hasMinimumRecipes;
|
||||
|
||||
const shouldRedirect =
|
||||
statusData.status === 'ready' ||
|
||||
(statusData.status === 'partial' && hasUsableData) ||
|
||||
(statusData.status === 'failed' && hasUsableData);
|
||||
(statusData.status === 'ready' && hasMinimumRequiredData) || // Ready status AND minimum required data
|
||||
(criticalServicesReady && hasMinimumRequiredData); // Critical services done + minimum required data
|
||||
|
||||
if (shouldRedirect) {
|
||||
// Show 100% before redirect
|
||||
|
||||
Reference in New Issue
Block a user