📋 UC05: Demande Assistante Sociale
Use Case Uc05 Demande De Soins Introduite Par Une Assistante Sociale
NOM DU USE CASE : Creation d'une demande de soins par un Professionnel
ACTEUR PRINCIPAL : Assistante sociale ou autre professionnel du secteur social
Objectif Metier
Permettre a un(e) professionnel(le) du secteur social de creer une demande de
soins pour un patient dont elle s'occupe, tout en restant la personne de contact
pour les infirmieres.
Preconditions
- L'assistante sociale a un compte CareDeal (de type "patient")
- L'assistante sociale est connectee a l'application
- L'assistante sociale connait les informations du patient beneficiaire
SCENARIO NOMINAL (Happy Path)
- L'assistante sociale clique sur "Nouvelle demande"
- Le formulaire de creation s'affiche
(Identique a UC04)
- Elle selectionne les types de soins necessaires pour le patient
- Elle clique sur "Suivant"
(Identique a UC04)
- Elle indique la frequence quotidienne des soins
- Elle clique sur "Suivant"
(Identique a UC04)
- Elle saisit L'ADRESSE DU PATIENT (pas son bureau)
- L'adresse est geolocalisee
- Elle clique sur "Suivant"
- Elle renseigne les informations du patient :
- Prenom du patient
- Nom du patient
- Date de naissance du patient
- Email du patient (optionnel)
- Langues parlees par le patient
- Elle clique sur "Suivant"
- Elle selectionne "Professionnel"
- Ce choix indique que la personne de contact est un professionnel
(assistante sociale, aide familiale, etc.)
- Elle clique sur "Suivant"
[POINT CLE : ContactPersonType.professional]
Pour L'Assistante Sociale
- Son numero de telephone (compte) est automatiquement utilise comme
numero de contact principal
- C'est ce numero que les infirmieres appelleront
OPTIONNEL - Numero du patient :
- Si le patient a un telephone, elle peut l'ajouter dans le champ
"Numero du patient" (patientPhoneNumber)
- Ce numero permet aux infirmieres de contacter directement le patient
si necessaire
- Elle verifie toutes les informations
- Elle soumet la demande
(Identique a UC04)
- La demande est creee avec :
- contactPersonType : "professional"
- phoneNumber : numero de l'assistante sociale
- patientPhoneNumber : numero du patient (optionnel)
- L'ecran de succes s'affiche
Specificites Pour L'Assistante Sociale
1. Choix Du Type De Contact
L'assistante sociale doit OBLIGATOIREMENT selectionner "Professionnel"
dans l'ecran de type de contact. Cela permet :
- D'identifier clairement que ce n'est pas le patient qui fait la demande
- D'utiliser le bon numero de contact (celui de l'assistante sociale)
2. Numero De Contact
- phoneNumber = numero de l'assistante sociale (automatique)
- C'est ce numero que les infirmieres verront et appelleront
- L'assistante sociale peut ensuite coordonner avec le patient
3. Numero Du Patient (Optionnel)
- patientPhoneNumber = numero du patient
- Si fourni, les infirmieres peuvent contacter directement le patient
- Utile pour les rendez-vous ou urgences
4. Suivi Des Demandes
- Toutes les demandes creees apparaissent dans le compte de l'assistante sociale
- Elle peut suivre l'avancement de chaque demande
- Elle peut marquer les demandes comme "organisees" quand un soignant est trouve
Cas Particulier Plusieurs Patients
L'assistante sociale peut creer plusieurs demandes de soins :
- Une demande par patient
- Chaque demande est independante
- Elle peut gerer plusieurs demandes en parallele
Pour chaque nouvelle demande :
1. Creer une nouvelle demande
2. Renseigner les infos du nouveau patient
3. Selectionner "Professionnel" comme type de contact
4. Son numero reste le numero de contact pour toutes les demandes
L'entite CareRequestEntity creee contient :
- userUuid : UUID de l'assistante sociale (createur de la demande)
- contactPersonType : "professional"
- phoneNumber : numero de l'assistante sociale
- patientPhoneNumber : numero du patient (si fourni)
- firstNamePatient/lastNamePatient : infos du patient
- address : domicile du patient
Ce qui permet :
- Les infirmieres voient la demande
- Elles appellent l'assistante sociale (phoneNumber)
- L'assistante sociale coordonne les soins avec le patient
Type de contact professionnel :
- lib/core/domain/entities/contact_person_type.dart
ContactPersonType.professional
Gestion du numero de telephone :
- lib/modules/carerequest/presentation/controllers/carerequest_form_controller.dart
Lignes 238-259 : logique phoneToStore
Ecran de selection du contact :
- lib/modules/carerequest/presentation/screens/contact_person_screen.dart
Entite demande :
- lib/modules/carerequest/domain/entities/carerequest_entity.dart
- phoneNumber : String (obligatoire) - contact principal
- patientPhoneNumber : String? (optionnel) - contact patient