diff --git a/frontend/src/pages/ClaimForm.tsx b/frontend/src/pages/ClaimForm.tsx index 220863b..2ef0578 100644 --- a/frontend/src/pages/ClaimForm.tsx +++ b/frontend/src/pages/ClaimForm.tsx @@ -417,7 +417,15 @@ export default function ClaimForm() { // ✅ Извлекаем данные из body (telegram) или напрямую из payload (web_form) const wizardPlanRaw = body.wizard_plan || payload.wizard_plan; const answersRaw = body.answers || payload.answers; - const problemDescription = body.problem_description || payload.problem_description || body.description || payload.description; + // Ищем problem_description в разных местах (может быть в разных форматах) + const problemDescription = + body.problem_description || + payload.problem_description || + body.description || + payload.description || + payload.body?.problem_description || // Для вложенных структур + payload.body?.description || + null; const documentsMeta = body.documents_meta || payload.documents_meta || []; // ✅ Парсим wizard_plan и answers, если они строки (JSON) @@ -440,7 +448,9 @@ export default function ClaimForm() { } // ✅ Проверяем, заполнены ли все шаги - const hasDescription = !!problemDescription; + // Для problem_description: если его нет в payload, но есть wizard_plan и answers, + // значит описание уже было введено ранее (wizard_plan генерируется на основе описания) + const hasDescription = !!problemDescription || (!!wizardPlan && !!answers); // Если есть план и ответы - описание было const hasWizardPlan = !!wizardPlan; const hasAnswers = !!answers && Object.keys(answers).length > 0; const hasDocuments = Array.isArray(documentsMeta) && documentsMeta.length > 0; @@ -457,9 +467,11 @@ export default function ClaimForm() { isDraft, allStepsFilled, isReadyForConfirmation, + problemDescriptionFound: !!problemDescription, + inferredFromPlan: !problemDescription && !!wizardPlan && !!answers, }); - console.log('🔍 problem_description:', problemDescription ? 'есть' : 'нет'); + console.log('🔍 problem_description:', problemDescription ? 'есть' : (wizardPlan && answers ? 'выведено из наличия плана и ответов' : 'нет')); console.log('🔍 wizard_plan:', wizardPlan ? 'есть' : 'нет'); console.log('🔍 answers:', answers ? 'есть' : 'нет'); console.log('🔍 documents_meta:', documentsMeta.length, 'документов');