createEpisode method

Future<bool> createEpisode({
  1. required String admissionId,
  2. required String doctorId,
  3. required String clinicalProgress,
  4. required String diagnosis,
  5. int? bradenScore,
  6. int? chads2Score,
  7. bool? camScore,
})

Crea un nuevo episodio vinculado al ingreso admissionId.

Devuelve true si la creación fue exitosa.

Implementation

Future<bool> createEpisode({
  required String admissionId,
  required String doctorId,
  required String clinicalProgress,
  required String diagnosis,
  int? bradenScore,
  int? chads2Score,
  bool? camScore,
}) async {
  _isLoading = true;
  _errorMessage = null;
  notifyListeners();

  try {
    await _repository.createEpisode(
      admissionId: admissionId,
      doctorId: doctorId,
      clinicalProgress: clinicalProgress,
      diagnosis: diagnosis,
      bradenScore: bradenScore,
      chads2Score: chads2Score,
      camScore: camScore,
    );
    return true;
  } catch (e) {
    if (e is AuthException) {
      _errorMessage = e.message;
    } else {
      _errorMessage = "Error inesperado de conexión";
    }
    return false;
  } finally {
    _isLoading = false;
    notifyListeners();
  }
}