feat: Добавлены технические DEV-кнопки для быстрой навигации по шагам
🔧 Технические панели на всех шагах:
- Step 1: Кнопка пропуска валидации полиса → Step 2
- Step 2: Кнопки навигации Назад/Вперёд без валидации полей
- Step 3: Автоподтверждение телефона + быстрая отправка заявки
Теперь можно тестировать весь флоу без заполнения обязательных полей.
This commit is contained in:
@@ -621,6 +621,37 @@ export default function Step1Policy({ formData, updateFormData, onNext, addDebug
|
|||||||
</div>
|
</div>
|
||||||
) : null}
|
) : null}
|
||||||
</Modal>
|
</Modal>
|
||||||
|
|
||||||
|
{/* 🔧 Технические кнопки для разработки */}
|
||||||
|
<div style={{
|
||||||
|
marginTop: 24,
|
||||||
|
padding: 16,
|
||||||
|
background: '#f0f0f0',
|
||||||
|
borderRadius: 8,
|
||||||
|
border: '2px dashed #999'
|
||||||
|
}}>
|
||||||
|
<div style={{ marginBottom: 8, fontSize: 12, color: '#666', fontWeight: 'bold' }}>
|
||||||
|
🔧 DEV MODE - Быстрая навигация (без валидации)
|
||||||
|
</div>
|
||||||
|
<div style={{ display: 'flex', gap: 8 }}>
|
||||||
|
<Button
|
||||||
|
type="dashed"
|
||||||
|
onClick={() => {
|
||||||
|
// Пропускаем валидацию, заполняем минимальные данные
|
||||||
|
const devData = {
|
||||||
|
voucher: 'E1000-123456789',
|
||||||
|
claim_id: `CLM-DEV-${Math.random().toString(36).substr(2, 6).toUpperCase()}`,
|
||||||
|
};
|
||||||
|
updateFormData(devData);
|
||||||
|
onNext();
|
||||||
|
}}
|
||||||
|
size="small"
|
||||||
|
style={{ flex: 1 }}
|
||||||
|
>
|
||||||
|
Далее → (Step 2) [пропустить]
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</Form>
|
</Form>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -358,6 +358,45 @@ export default function Step2Details({ formData, updateFormData, onNext, onPrev,
|
|||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
|
||||||
|
{/* 🔧 Технические кнопки для разработки */}
|
||||||
|
<div style={{
|
||||||
|
marginTop: 24,
|
||||||
|
padding: 16,
|
||||||
|
background: '#f0f0f0',
|
||||||
|
borderRadius: 8,
|
||||||
|
border: '2px dashed #999'
|
||||||
|
}}>
|
||||||
|
<div style={{ marginBottom: 8, fontSize: 12, color: '#666', fontWeight: 'bold' }}>
|
||||||
|
🔧 DEV MODE - Быстрая навигация (без валидации)
|
||||||
|
</div>
|
||||||
|
<div style={{ display: 'flex', gap: 8 }}>
|
||||||
|
<Button
|
||||||
|
onClick={onPrev}
|
||||||
|
size="small"
|
||||||
|
disabled={uploading}
|
||||||
|
>
|
||||||
|
← Назад (Step 1)
|
||||||
|
</Button>
|
||||||
|
<Button
|
||||||
|
type="dashed"
|
||||||
|
onClick={() => {
|
||||||
|
// Пропускаем валидацию, заполняем минимальные данные
|
||||||
|
const devData = {
|
||||||
|
eventType: 'delay_flight',
|
||||||
|
incidentDate: dayjs(),
|
||||||
|
transportNumber: 'TEST123',
|
||||||
|
};
|
||||||
|
updateFormData(devData);
|
||||||
|
onNext();
|
||||||
|
}}
|
||||||
|
size="small"
|
||||||
|
style={{ flex: 1 }}
|
||||||
|
>
|
||||||
|
Далее → (Step 3) [пропустить]
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</Form>
|
</Form>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -314,6 +314,66 @@ export default function Step3Payment({
|
|||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
|
||||||
|
{/* 🔧 Технические кнопки для разработки */}
|
||||||
|
<div style={{
|
||||||
|
marginTop: 24,
|
||||||
|
padding: 16,
|
||||||
|
background: '#f0f0f0',
|
||||||
|
borderRadius: 8,
|
||||||
|
border: '2px dashed #999'
|
||||||
|
}}>
|
||||||
|
<div style={{ marginBottom: 8, fontSize: 12, color: '#666', fontWeight: 'bold' }}>
|
||||||
|
🔧 DEV MODE - Быстрая навигация (без валидации)
|
||||||
|
</div>
|
||||||
|
<div style={{ display: 'flex', gap: 8 }}>
|
||||||
|
<Button
|
||||||
|
onClick={onPrev}
|
||||||
|
size="small"
|
||||||
|
>
|
||||||
|
← Назад (Step 2)
|
||||||
|
</Button>
|
||||||
|
<Button
|
||||||
|
type="dashed"
|
||||||
|
onClick={() => {
|
||||||
|
// Пропускаем валидацию телефона
|
||||||
|
setIsPhoneVerified(true);
|
||||||
|
const devData = {
|
||||||
|
fullName: 'Тест Тестов',
|
||||||
|
email: 'test@test.ru',
|
||||||
|
phone: '+79991234567',
|
||||||
|
paymentMethod: 'sbp',
|
||||||
|
bankName: 'sberbank',
|
||||||
|
};
|
||||||
|
updateFormData(devData);
|
||||||
|
message.success('DEV: Телефон автоматически подтверждён');
|
||||||
|
}}
|
||||||
|
size="small"
|
||||||
|
style={{ flex: 1 }}
|
||||||
|
>
|
||||||
|
✅ Автоподтверждение телефона [dev]
|
||||||
|
</Button>
|
||||||
|
<Button
|
||||||
|
type="primary"
|
||||||
|
onClick={() => {
|
||||||
|
// Автоматически отправляем заявку
|
||||||
|
setIsPhoneVerified(true);
|
||||||
|
const devData = {
|
||||||
|
fullName: 'Тест Тестов',
|
||||||
|
email: 'test@test.ru',
|
||||||
|
phone: '+79991234567',
|
||||||
|
paymentMethod: 'sbp',
|
||||||
|
bankName: 'sberbank',
|
||||||
|
};
|
||||||
|
updateFormData(devData);
|
||||||
|
onSubmit();
|
||||||
|
}}
|
||||||
|
size="small"
|
||||||
|
>
|
||||||
|
🚀 Отправить [пропустить]
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
</Form>
|
</Form>
|
||||||
|
|||||||
Reference in New Issue
Block a user