Revision fdb98b89
Added by Mikaël Ates about 11 years ago
calebasse/statistics/statistics.py | ||
---|---|---|
45 | 45 |
}, |
46 | 46 |
'active_patients_with_act' : |
47 | 47 |
{ |
48 |
'display_name': 'Dossiers actifs et inactifs avec un acte validé ou non sur une période', |
|
48 |
'display_name': 'Listes des dossiers avec un acte validé, ou un acte ' |
|
49 |
'proposé seulement, sur une période et triés par état du dossier ' |
|
50 |
'en fin de période', |
|
49 | 51 |
'category': 'Patients', |
50 |
'comment': """Listes des patients ayant eu au moins un acte proposé |
|
51 |
durant la période indiquée. Les patients sont scindés en quatre |
|
52 |
tableaux. |
|
53 |
Les patients dont au moins un acte a été |
|
54 |
validé ET dont le dossier est dans un état "actif". |
|
55 |
Les patients dont au moins un acte a été |
|
56 |
validé ET dont le dossier N'est PAS dans un état "actif". |
|
57 |
Les patients sans aucun acte validé ET dont le dossier est dans |
|
58 |
un état "actif". |
|
59 |
Les patients sans aucun acte validé ET dont le dossier N'est PAS |
|
60 |
dans un état "actif". |
|
61 |
Rappel des états actifs des dossiers : CMPP : diagnostic |
|
62 |
ou traitement, CAMSP : suivi, SESSAD: Traitement. |
|
52 |
'comment': """Listes des dossiers avec un acte validé ou un acte |
|
53 |
proposé seulement sur une période et triés par état du dossier en |
|
54 |
fin de période. |
|
63 | 55 |
La date de début de la plage par |
64 | 56 |
défaut est le 1er janvier de l'année en cours. La date de fin de |
65 | 57 |
la plage par défaut est aujourd'hui. |
... | ... | |
714 | 706 |
data_tables.append(data) |
715 | 707 |
data = [] |
716 | 708 |
data.append(['Nom', 'Prénom', 'N° Dossier']) |
717 |
patients_values = patients_list.\ |
|
718 |
values_list('last_name', 'first_name', 'paper_id') |
|
719 | 709 |
p_list = [] |
720 |
for ln, fn, pid in patients_values: |
|
710 |
for p in patients_list: |
|
711 |
ln, fn, pid = p.last_name, p.first_name, p.paper_id |
|
721 | 712 |
ln = ln or '' |
722 | 713 |
if len(ln) > 1: |
723 | 714 |
ln = ln[0].upper() + ln[1:].lower() |
... | ... | |
769 | 760 |
id__in=[patient[0] for patient in all_patients_ids |
770 | 761 |
if not patient in acts_valide_patients_ids]) |
771 | 762 |
|
772 |
|
|
773 |
patients_1 = acts_valide_patients.filter( |
|
774 |
last_state__status__type__in=active_states) |
|
775 |
patients_2 = acts_valide_patients.exclude( |
|
776 |
last_state__status__type__in=active_states) |
|
777 |
patients_3 = acts_not_valide_patients.filter( |
|
778 |
last_state__status__type__in=active_states) |
|
779 |
patients_4 = acts_not_valide_patients.exclude( |
|
780 |
last_state__status__type__in=active_states) |
|
781 |
|
|
782 |
data_tables_set.append(process(patients_1, 'Patients avec un acte validé et dans un état actif')) |
|
783 |
data_tables_set.append(process(patients_2, 'Patients avec un acte validé et dans un état non actif')) |
|
784 |
data_tables_set.append(process(patients_3, 'Patients sans acte validé et dans un état actif')) |
|
785 |
data_tables_set.append(process(patients_4, 'Patients sans acte validé et dans un état non actif')) |
|
763 |
p_val = dict() |
|
764 |
for p in acts_valide_patients: |
|
765 |
p_val.setdefault(p.get_state_at_day(statistic.in_end_date).status, []).append(p) |
|
766 |
for k, v in p_val.items(): |
|
767 |
data_tables_set.append(process(v, "Patients avec un acte validé et dans l'état '%s' en date du %s" % (k, formats.date_format(statistic.in_end_date, "SHORT_DATE_FORMAT")))) |
|
768 |
p_val = dict() |
|
769 |
for p in acts_not_valide_patients: |
|
770 |
p_val.setdefault(p.get_state_at_day(statistic.in_end_date).status, []).append(p) |
|
771 |
for k, v in p_val.items(): |
|
772 |
data_tables_set.append(process(v, "Patients avec sans acte validé et dans l'état '%s' en date du %s" % (k, formats.date_format(statistic.in_end_date, "SHORT_DATE_FORMAT")))) |
|
786 | 773 |
|
787 | 774 |
return data_tables_set |
788 | 775 |
|
... | ... | |
1643 | 1630 |
def get_file(self): |
1644 | 1631 |
self.get_data() |
1645 | 1632 |
return self.render_to_csv() |
1646 |
|
Also available in: Unified diff
statistics: new statistics with patients lists by state at a given date.