1313)
1414from arike .patients .models import FamilyMember , Patient , PatientDisease , Treatment
1515from arike .facilities .models import Ward
16- from arike .visits .models import TreatmentNote , VisitDetails , VisitSchedule
16+ from arike .visits .models import TreatmentNote , VisitDetails
1717from arike .users .models import UserRoles
1818
1919
@@ -66,16 +66,24 @@ def delete(self, request: HttpRequest, *args: str, **kwargs):
6666class GenericFamilyMemberFormView (NurseAuthMixin ):
6767 form_class = FamilyMemberForm
6868 template_name = "family/form.html"
69- slug_field = "id "
69+ slug_field = "pk "
7070 slug_url_kwarg = "id"
7171
7272 def get_queryset (self ):
73- patient_pk = self .kwargs ["pk" ]
74- return FamilyMember .objects .filter (patient__pk = patient_pk , deleted = False )
73+ return FamilyMember .objects .all ()
74+
75+ def get_object (self ):
76+ return self .get_queryset ().get (pk = self .kwargs ["id" ])
7577
7678 def get_success_url (self ):
7779 return reverse_lazy ("patients:family" , kwargs = {"pk" : self .kwargs ["pk" ]})
7880
81+ def form_valid (self , form ):
82+ self .object = form .save (commit = False )
83+ self .object .patient = Patient .objects .get (pk = self .kwargs ["pk" ])
84+ self .object .save ()
85+ return HttpResponseRedirect (self .get_success_url ())
86+
7987
8088class MemberCreateView (GenericFamilyMemberFormView , CreateView ):
8189 pass
@@ -96,12 +104,14 @@ class GenericDiseaseFormView(NurseAuthMixin):
96104 slug_url_kwarg = "id"
97105
98106 def get_queryset (self ):
99- patient_pk = self .kwargs ["pk" ]
100- return PatientDisease .objects .filter (patient__pk = patient_pk )
107+ return PatientDisease .objects .all ()
101108
102109 def get_success_url (self ):
103110 return reverse_lazy ("patients:disease" , kwargs = {"pk" : self .kwargs ["pk" ]})
104111
112+ def get_object (self ):
113+ return self .get_queryset ().get (pk = self .kwargs ["id" ])
114+
105115 def form_valid (self , form ):
106116 self .object = form .save (commit = False )
107117 self .object .patient = Patient .objects .get (pk = self .kwargs ["pk" ])
@@ -128,12 +138,14 @@ class GenericTreatmentFormView(NurseAuthMixin):
128138 slug_url_kwarg = "id"
129139
130140 def get_queryset (self ):
131- patient_pk = self .kwargs ["pk" ]
132- return Treatment .objects .filter (patient__pk = patient_pk )
141+ return Treatment .objects .all ()
133142
134143 def get_success_url (self ):
135144 return reverse_lazy ("patients:treatments" , kwargs = {"pk" : self .kwargs ["pk" ]})
136145
146+ def get_object (self ):
147+ return self .get_queryset ().get (pk = self .kwargs ["id" ])
148+
137149 def form_valid (self , form ):
138150 self .object = form .save (commit = False )
139151 self .object .patient = Patient .objects .get (pk = self .kwargs ["pk" ])
0 commit comments