clinicalUpdate method

Future<AdmissionResponse?> clinicalUpdate({
  1. required String admissionId,
  2. required String principalDiagnosis,
  3. required String medicalHistory,
  4. required PatientPreviewResponse patient,
  5. String? allergies,
  6. String? chronicTreatment,
  7. int? basalBarthel,
})

Actualiza los datos clínicos de un ingreso (diagnóstico, historial, escalas).

Devuelve el AdmissionResponse actualizado o null si falla.

Implementation

Future<AdmissionResponse?> clinicalUpdate({
  required String admissionId,
  required String principalDiagnosis,
  required String medicalHistory,
  required PatientPreviewResponse patient,
  String? allergies,
  String? chronicTreatment,
  int? basalBarthel,
}) async {
  _isLoading = true;
  _errorMessage = null;
  notifyListeners();

  try {
    final updated = await _repository.clinicalUpdate(
      admissionId: admissionId,
      principalDiagnosis: principalDiagnosis,
      medicalHistory: medicalHistory,
      patient: patient,
      allergies: allergies,
      chronicTreatment: chronicTreatment,
      basalBarthel: basalBarthel,
    );
    return updated;
  } catch (e) {
    if (e is AuthException) {
      _errorMessage = e.message;
    } else {
      _errorMessage = "Error inesperado de conexión";
    }
    return null;
  } finally {
    _isLoading = false;
    notifyListeners();
  }
}