Oui et on manque d'infos :
Combien peut-on avoir de patients en même temps ? Un seul je suppose. Mais dans la salle d'attente il peut y en avoir plusieurs. Et chaque patient revient tous les X jours (en vrai, on comptera en minutes ou heures dans un jeu). Si j'ai un foutu cancer du poumon je vais passer mes journées à l'hosto donc je serai là tous les jours. Si j'ai une bronchite chronique je vais passer une fois par mois pour un petit check. Si je me suis cassé une jambe, je viens un nombre fini de fois : une pour mettre un plâtre, une pour l'enlever, et ensuite X dates de rééduc.
Ensuite tu as une table dans laquelle tu as mis des patients manuellement. Est-ce que ce sont des modèles de patients (genre "Homme, 45 ans, jambe pétée) que tu vas copier pour générer un patient, ou bien des patiens précis (genre Mr Michel, 45 ans, jambe pétée).
Une fois que tu sais ça, tu peux implémenter ta salle d'attente. Quand tu ouvres la salle d'attente, il faut regarder quels patients il pourrait bien y avoir.
Par exemple, si tu as vu Marie Bidule il y a 5 minutes avec son allergie aux endives, il y a peu de chances qu'elle soit encore là. Il te faut donc te rappeler qui le joueur à vu dernièrement pour ne pas les représenter.
Donc, pour chaque patient il faut noter la périodicité : celui-ci revient tous les jours, celui-ci tous les mois. Il faut noter quand tu les a vus pour la dernière fois, et regarder si, quand tu ouvres la salle d'attente, leur dernière visite date depuis plus longtemps que la périodicité. Dans ce cas, ils sont là.
Ensuite, tu peux ajouter la notion de nombre de visites pour le patient. Et n'afficher dans la salle d'attente que ceux qui n'ont pas encore fait toutes leurs visites.
Avec des visites finies, il vaut mieux avoir des modèles de patients pour pouvoir en générer de nouveaux à l'infini.
Ensuite tu peux ajouter la notion de périodicité : entre la mise d'un platre et son retrait il y a plusieurs mois. Mais ensuite la rééduc c'est tous les jours. Mais à mon avis cette étape n'est pas forcément intéressante. Mieux vaut s'arrêter avant et améliorer autre chose avant de complexifier. Par exemple, tu peux générer un patient de type mise-platre/retrait-platre, et ensuite le transformer en patient type rééduc-jambe. Le patient à le même nom, donc pour le joueur ça semble logique (et tu peux avoir un champ dossier_medical dans lequel tu stockes les antécédents afin de lire l'historique du type), mais pour le code c'est deux patients à gérer de façon plus simple.
Reste à ne pas avoir les deux en même temps. Donc avant d'ajouter dans la salle d'attente, il faut aussi ajouter les patients dans une réserve de gens disponibles, ou marquer le patient "rééduc" comme non-disponible tant qu'on n'a pas géré le platre. Là il y a plein de solutions, je passe la main
Combien peut-on avoir de patients en même temps ? Un seul je suppose. Mais dans la salle d'attente il peut y en avoir plusieurs. Et chaque patient revient tous les X jours (en vrai, on comptera en minutes ou heures dans un jeu). Si j'ai un foutu cancer du poumon je vais passer mes journées à l'hosto donc je serai là tous les jours. Si j'ai une bronchite chronique je vais passer une fois par mois pour un petit check. Si je me suis cassé une jambe, je viens un nombre fini de fois : une pour mettre un plâtre, une pour l'enlever, et ensuite X dates de rééduc.
Ensuite tu as une table dans laquelle tu as mis des patients manuellement. Est-ce que ce sont des modèles de patients (genre "Homme, 45 ans, jambe pétée) que tu vas copier pour générer un patient, ou bien des patiens précis (genre Mr Michel, 45 ans, jambe pétée).
Une fois que tu sais ça, tu peux implémenter ta salle d'attente. Quand tu ouvres la salle d'attente, il faut regarder quels patients il pourrait bien y avoir.
Par exemple, si tu as vu Marie Bidule il y a 5 minutes avec son allergie aux endives, il y a peu de chances qu'elle soit encore là. Il te faut donc te rappeler qui le joueur à vu dernièrement pour ne pas les représenter.
table visite_patient(joueur_id, patient_id, date_visite)
.Donc, pour chaque patient il faut noter la périodicité : celui-ci revient tous les jours, celui-ci tous les mois. Il faut noter quand tu les a vus pour la dernière fois, et regarder si, quand tu ouvres la salle d'attente, leur dernière visite date depuis plus longtemps que la périodicité. Dans ce cas, ils sont là.
Ensuite, tu peux ajouter la notion de nombre de visites pour le patient. Et n'afficher dans la salle d'attente que ceux qui n'ont pas encore fait toutes leurs visites.
table visite_patient(joueur_id, patient_id, date_visite, num_visite)
.Avec des visites finies, il vaut mieux avoir des modèles de patients pour pouvoir en générer de nouveaux à l'infini.
Ensuite tu peux ajouter la notion de périodicité : entre la mise d'un platre et son retrait il y a plusieurs mois. Mais ensuite la rééduc c'est tous les jours. Mais à mon avis cette étape n'est pas forcément intéressante. Mieux vaut s'arrêter avant et améliorer autre chose avant de complexifier. Par exemple, tu peux générer un patient de type mise-platre/retrait-platre, et ensuite le transformer en patient type rééduc-jambe. Le patient à le même nom, donc pour le joueur ça semble logique (et tu peux avoir un champ dossier_medical dans lequel tu stockes les antécédents afin de lire l'historique du type), mais pour le code c'est deux patients à gérer de façon plus simple.
Reste à ne pas avoir les deux en même temps. Donc avant d'ajouter dans la salle d'attente, il faut aussi ajouter les patients dans une réserve de gens disponibles, ou marquer le patient "rééduc" comme non-disponible tant qu'on n'a pas géré le platre. Là il y a plein de solutions, je passe la main