def select_date_for_patient_queue(request): """ """ from ocemr.forms import SelectDateForm import datetime form_valid=0 if request.method == 'POST': form = SelectDateForm(request.POST) if form.is_valid(): date_in = form.cleaned_data['date'] form_valid=1 else: form = SelectDateForm() if not form_valid: return render(request, 'popup_form.html', { 'title': 'Enter Date For Patient Queue', 'form_action': '/select_date_for_patient_queue/', 'form': form, }) days_offset=(datetime.date.today()-date_in).days *-1 return HttpResponseRedirect('/patient_queue/%d/'%(days_offset))
def select_date_for_patient_queue(request): """ """ from ocemr.forms import SelectDateForm import datetime form_valid = 0 if request.method == 'POST': form = SelectDateForm(request.POST) if form.is_valid(): date_in = form.cleaned_data['date'] form_valid = 1 else: form = SelectDateForm() if not form_valid: return render( request, 'popup_form.html', { 'title': 'Enter Date For Patient Queue', 'form_action': '/select_date_for_patient_queue/', 'form': form, }) days_offset = (datetime.date.today() - date_in).days * -1 return HttpResponseRedirect('/patient_queue/%d/' % (days_offset))
def legacy_patient_daily(request): """ """ from ocemr.forms import SelectDateForm form_valid=0 if request.method == 'POST': form = SelectDateForm(request.POST) if form.is_valid(): date_in = form.cleaned_data['date'] form_valid=1 else: form = SelectDateForm() if not form_valid: return render(request, 'popup_form.html', { 'title': 'Enter Date For Report', 'form_action': '/reports/legacy/patient/daily/', 'form': form, }) from ocemr.models import Visit, Diagnosis, Med, Referral field_names=[ 'pt_daily_index', 'pt_name', 'pt_monthly_index', 'sex', 'age', 'village', 'diagnosis', 'prescription', 'referral' ] headers={ 'pt_daily_index': 'Pt # of Day', 'pt_name': 'Patient Name', 'pt_monthly_index': 'Pt # of Month', 'sex': 'Sex', 'age': 'Age', 'village': 'Village', 'diagnosis': 'Diagnosis', 'prescription': 'Prescription', 'referral': 'Referral', } if date_in.month == 12: next_month=1 next_year=date_in.year+1 else: next_month=date_in.month+1 next_year=date_in.year dt_month_start = datetime(date_in.year,date_in.month,1,0,0,0) dt_month_end = datetime(next_year,next_month,1,0,0,0) dt_start = datetime(date_in.year,date_in.month,date_in.day,0,0,0) dt_end = datetime(date_in.year,date_in.month,date_in.day,23,59,59) q_this_month = ( Q(finishedDateTime__gte=dt_month_start) & Q(finishedDateTime__lt=dt_month_end ) & Q(finishedDateTime__lt=dt_start) ) & (Q(status="CHOT") | Q(status="RESO")) q_this_day = ( Q(finishedDateTime__gte=dt_start) & Q(finishedDateTime__lte=dt_end ) ) & (Q(status="CHOT") | Q(status="RESO")) months_visits = Visit.objects.filter(q_this_month) pt_monthly_index = len(months_visits) days_visits = Visit.objects.filter(q_this_day) q_dignosis_active = (Q(status="NEW") | Q(status="FOL")) daily_index=0 summary_rows=[] for v in days_visits: daily_index += 1 pt_monthly_index += 1 referral = "" for r in Referral.objects.filter(visit=v): referral += "%s - %s; "%(r.to,r.reason) summary_rows.append( { 'pt_daily_index': daily_index, 'pt_name': v.patient.fullName, 'pt_monthly_index': pt_monthly_index, 'sex': v.patient.gender, 'age': v.patient.age, 'village': v.patient.village.name, 'diagnosis': '', 'prescription': '', 'referral': referral, }) for d in Diagnosis.objects.filter(visit=v).filter(q_dignosis_active): diagnosis = d.type.title summary_rows.append( { 'pt_daily_index': '', 'pt_name': '', 'pt_monthly_index': '', 'sex': '', 'age': '', 'village': '', 'diagnosis': diagnosis, 'prescription': '', 'referral': '', }) for m in Med.objects.filter(diagnosis=d,status='DIS'): prescription = m.type.title summary_rows.append( { 'pt_daily_index': '', 'pt_name': '', 'pt_monthly_index': '', 'sex': '', 'age': '', 'village': '', 'diagnosis': diagnosis, 'prescription': prescription, 'referral': '', }) return dump_csv( "patient-daily-%s.csv"%(date_in.strftime("%Y%m%d")), field_names, headers, summary_rows )
def legacy_patient_daily(request): """ """ from ocemr.forms import SelectDateForm form_valid=0 if request.method == 'POST': form = SelectDateForm(request.POST) if form.is_valid(): date_in = form.cleaned_data['date'] form_valid=1 else: form = SelectDateForm() if not form_valid: return render_to_response('popup_form.html', { 'title': 'Enter Date For Report', 'form_action': '/reports/legacy/patient/daily/', 'form': form, },context_instance=RequestContext(request)) from ocemr.models import Visit, Diagnosis, Med, Referral field_names=[ 'pt_daily_index', 'pt_name', 'pt_monthly_index', 'sex', 'age', 'village', 'diagnosis', 'prescription', 'referral' ] headers={ 'pt_daily_index': 'Pt # of Day', 'pt_name': 'Patient Name', 'pt_monthly_index': 'Pt # of Month', 'sex': 'Sex', 'age': 'Age', 'village': 'Village', 'diagnosis': 'Diagnosis', 'prescription': 'Prescription', 'referral': 'Referral', } if date_in.month == 12: next_month=1 next_year=date_in.year+1 else: next_month=date_in.month+1 next_year=date_in.year dt_month_start = datetime(date_in.year,date_in.month,1,0,0,0) dt_month_end = datetime(next_year,next_month,1,0,0,0) dt_start = datetime(date_in.year,date_in.month,date_in.day,0,0,0) dt_end = datetime(date_in.year,date_in.month,date_in.day,23,59,59) q_this_month = ( Q(finishedDateTime__gte=dt_month_start) & Q(finishedDateTime__lt=dt_month_end ) & Q(finishedDateTime__lt=dt_start) ) & (Q(status="CHOT") | Q(status="RESO")) q_this_day = ( Q(finishedDateTime__gte=dt_start) & Q(finishedDateTime__lte=dt_end ) ) & (Q(status="CHOT") | Q(status="RESO")) months_visits = Visit.objects.filter(q_this_month) pt_monthly_index = len(months_visits) days_visits = Visit.objects.filter(q_this_day) q_dignosis_active = (Q(status="NEW") | Q(status="FOL")) daily_index=0 summary_rows=[] for v in days_visits: daily_index += 1 pt_monthly_index += 1 referral = "" for r in Referral.objects.filter(visit=v): referral += "%s - %s; "%(r.to,r.reason) summary_rows.append( { 'pt_daily_index': daily_index, 'pt_name': v.patient.fullName, 'pt_monthly_index': pt_monthly_index, 'sex': v.patient.gender, 'age': v.patient.age, 'village': v.patient.village.name, 'diagnosis': '', 'prescription': '', 'referral': referral, }) for d in Diagnosis.objects.filter(visit=v).filter(q_dignosis_active): diagnosis = d.type.title summary_rows.append( { 'pt_daily_index': '', 'pt_name': '', 'pt_monthly_index': '', 'sex': '', 'age': '', 'village': '', 'diagnosis': diagnosis, 'prescription': '', 'referral': '', }) for m in Med.objects.filter(diagnosis=d,status='DIS'): prescription = m.type.title summary_rows.append( { 'pt_daily_index': '', 'pt_name': '', 'pt_monthly_index': '', 'sex': '', 'age': '', 'village': '', 'diagnosis': diagnosis, 'prescription': prescription, 'referral': '', }) return dump_csv( "patient-daily-%s.csv"%(date_in.strftime("%Y%m%d")), field_names, headers, summary_rows )