Skip to content
Snippets Groups Projects
Commit 832c2560 authored by Jacek Lebioda's avatar Jacek Lebioda
Browse files
parents 780fa5a5 c18500cb
No related branches found
No related tags found
No related merge requests found
......@@ -216,6 +216,16 @@ class AppointmentType (models.Model):
rest_time = models.IntegerField(
verbose_name='Suggested rest time'
)
REQ_ROLE_CHOICES = (
('DOCTOR', 'Doctor'),
('NURSE', 'Nurse'),
('PSYCHOLOGIST', 'Psychologist'),
('ANY', 'Any')
)
required_worker = models.CharField(max_length=20, choices=REQ_ROLE_CHOICES,
verbose_name='Type of worker required for assignment',
default='ANY'
)
def __str__(self):
return self.apCode
......@@ -363,7 +373,7 @@ class Appointment(models.Model):
)
datetime_when = models.DateTimeField(
verbose_name='Appointment on',
null=True
null=True, blank=True
)
length = models.IntegerField(
verbose_name='Appointment length (in minutes)'
......
......@@ -33,7 +33,7 @@
<th>Subject name</th>
<th>Full information</th>
<th>Suggested date</th>
<th>Details</th>
<th>Plan/Modify</th>
</tr>
</thead>
<tbody>
......@@ -47,7 +47,7 @@
{{ planned.datetime_when }}
</td>
<td>
<button type="button" class="btn btn-block btn-default">Details</button>
<button type="button" class="btn btn-block btn-default">Plan/Modify</button>
</td>
</tr>
{% endfor %}
......
......@@ -7,6 +7,7 @@ from .forms import *
from .auth import * # Own wrapper for django logging in/out
from django.forms import modelformset_factory
from django.shortcuts import render
from django.db.models import Q
import collections
import datetime
......@@ -228,9 +229,30 @@ def equipment_and_rooms(request):
def mail_templates(request):
return wrap_response(request, "mail_templates/index.html", {})
"""
#An initial draft of a function that was supposed to suggest date, room and worker for an assignment
def suggest_details(Appointment appoint):
avaibleWorkers = Worker.objects.get()
if appoint.appointment_type__required_worker == 'DOCTOR':
avaibleWorkers.filter(role='DOCTOR')
elif appoint.appointment_type__required_worker == 'NURSE':
avaibleWorkers.filter(role__in=['DOCTOR','NURSE'])
elif appoint.appointment_type__required_worker == 'PSYCHOLOGIST':
avaibleWorkers.filter(role__in=['DOCTOR','PSYCHOLOGIST'])
avaibleRooms = Room.objects.get
requireditems = appoint.appointment_type.required_equipment.filter(is_fixed=True)
reduce(operator.and_, (Q(equipment__contains=requireditems) for x in avaibleRooms))
"""
def assignments(request):
planning_list = Appointment.objects.none()
approaching_list = Appointment.objects.filter(datetime_when__gt=datetime.datetime.now())
futureDate = datetime.datetime.now()+datetime.timedelta(days=93)
planning_list = Appointment.objects.filter(datetime_when__isnull=True, visit__datetime_begin__lt = futureDate)
approaching_list = Appointment.objects.filter(datetime_when__gt = datetime.datetime.now())
context = {
'planning_list': planning_list,
......@@ -247,6 +269,7 @@ def assignment_details(request, id):
def assignment_add(request, id):
if request.method == 'POST':
form = AppointmentAddForm(request.POST, request.FILES)
form.fields['visit'].widget = forms.HiddenInput()
if form.is_valid():
form.save()
return redirect(visit_details, id=id)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment