This commit is contained in:
2026-05-14 16:54:32 +00:00
parent 5b2a2e7ddb
commit 15fcbcc9eb
212 changed files with 18586 additions and 10360 deletions
@@ -1,65 +1,65 @@
import 'package:flutter/material.dart';
import '../models/question.dart';
import '../services/diagnostic_service.dart';
class DiagnosticProvider with ChangeNotifier {
final DiagnosticService _service = DiagnosticService();
List<Question> _questions = [];
int _currentQuestionIndex = 0;
int _totalScore = 0;
bool _isFinished = false;
bool _isLoading = true;
List<Question> get questions => _questions;
int get currentQuestionIndex => _currentQuestionIndex;
int get totalScore => _totalScore;
bool get isFinished => _isFinished;
bool get isLoading => _isLoading;
DiagnosticProvider() {
loadQuestions();
}
Future<void> loadQuestions() async {
_isLoading = true;
notifyListeners();
_questions = await _service.fetchStressEvents();
_isLoading = false;
notifyListeners();
}
void answerQuestion(int points) {
_totalScore += points;
if (_currentQuestionIndex < _questions.length - 1) {
_currentQuestionIndex++;
} else {
_isFinished = true;
}
notifyListeners();
}
void reset() {
_currentQuestionIndex = 0;
_totalScore = 0;
_isFinished = false;
notifyListeners();
}
String get stressLevel {
if (_totalScore < 150) return "Risque Faible";
if (_totalScore < 300) return "Risque Modéré (50%)";
return "Risque Élevé (80%)";
}
String get advice {
if (_totalScore < 150) {
return "Votre niveau de changement de vie est gérable. Continuez à maintenir votre équilibre actuel.";
}
if (_totalScore < 300) {
return "Vous avez vécu beaucoup de changements. Il y a un risque modéré que cela affecte votre santé. Prenez du temps pour vous reposer.";
}
return "Attention : Votre score est très élevé. L'accumulation de stress lié à ces changements majeurs pourrait sérieusement impacter votre santé. Il est recommandé de consulter un professionnel.";
}
}
import 'package:flutter/material.dart';
import '../models/question.dart';
import '../services/diagnostic_service.dart';
class DiagnosticProvider with ChangeNotifier {
final DiagnosticService _service = DiagnosticService();
List<Question> _questions = [];
int _currentQuestionIndex = 0;
int _totalScore = 0;
bool _isFinished = false;
bool _isLoading = true;
List<Question> get questions => _questions;
int get currentQuestionIndex => _currentQuestionIndex;
int get totalScore => _totalScore;
bool get isFinished => _isFinished;
bool get isLoading => _isLoading;
DiagnosticProvider() {
loadQuestions();
}
Future<void> loadQuestions() async {
_isLoading = true;
notifyListeners();
_questions = await _service.fetchStressEvents();
_isLoading = false;
notifyListeners();
}
void answerQuestion(int points) {
_totalScore += points;
if (_currentQuestionIndex < _questions.length - 1) {
_currentQuestionIndex++;
} else {
_isFinished = true;
}
notifyListeners();
}
void reset() {
_currentQuestionIndex = 0;
_totalScore = 0;
_isFinished = false;
notifyListeners();
}
String get stressLevel {
if (_totalScore < 150) return "Risque Faible";
if (_totalScore < 300) return "Risque Modéré (50%)";
return "Risque Élevé (80%)";
}
String get advice {
if (_totalScore < 150) {
return "Votre niveau de changement de vie est gérable. Continuez à maintenir votre équilibre actuel.";
}
if (_totalScore < 300) {
return "Vous avez vécu beaucoup de changements. Il y a un risque modéré que cela affecte votre santé. Prenez du temps pour vous reposer.";
}
return "Attention : Votre score est très élevé. L'accumulation de stress lié à ces changements majeurs pourrait sérieusement impacter votre santé. Il est recommandé de consulter un professionnel.";
}
}