add index for better usability
This commit is contained in:
parent
d23da4722d
commit
9291018b3e
@ -144,6 +144,8 @@ class APIHandler:
|
|||||||
for phone_time in doctor_information.telefonzeiten:
|
for phone_time in doctor_information.telefonzeiten:
|
||||||
doctor_phone_time_dict = {
|
doctor_phone_time_dict = {
|
||||||
"phone_time": phone_time,
|
"phone_time": phone_time,
|
||||||
|
# workaround until properly assigned in sort
|
||||||
|
"doctor_nr": 0,
|
||||||
"doctor_name": doctor_information.name,
|
"doctor_name": doctor_information.name,
|
||||||
"doctor_address": f"{doctor_information.plz} {doctor_information.ort} "
|
"doctor_address": f"{doctor_information.plz} {doctor_information.ort} "
|
||||||
f"{doctor_information.strasse} {doctor_information.hausnummer}",
|
f"{doctor_information.strasse} {doctor_information.hausnummer}",
|
||||||
@ -151,7 +153,20 @@ class APIHandler:
|
|||||||
}
|
}
|
||||||
doctor_phone_time = DoctorPhoneTime(**doctor_phone_time_dict)
|
doctor_phone_time = DoctorPhoneTime(**doctor_phone_time_dict)
|
||||||
doctor_phone_times.append(doctor_phone_time)
|
doctor_phone_times.append(doctor_phone_time)
|
||||||
return sorted(doctor_phone_times, key=lambda dpt: dpt.phone_time.start)
|
|
||||||
|
doctor_phone_times.sort(key=lambda dpt: dpt.phone_time.start)
|
||||||
|
known_doctor_names_with_nr= {}
|
||||||
|
doctor_count = 1
|
||||||
|
for doctor_phone_time in doctor_phone_times:
|
||||||
|
if doctor_phone_time.doctor_name not in known_doctor_names_with_nr:
|
||||||
|
doctor_phone_time.doctor_nr = doctor_count
|
||||||
|
known_doctor_names_with_nr[doctor_phone_time.doctor_name] = doctor_count
|
||||||
|
doctor_count += 1
|
||||||
|
else:
|
||||||
|
known_doctor_count = known_doctor_names_with_nr[doctor_phone_time.doctor_name]
|
||||||
|
doctor_phone_time.doctor_nr = known_doctor_count
|
||||||
|
|
||||||
|
return doctor_phone_times
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def calculate_req_value_base64(lat, lon):
|
def calculate_req_value_base64(lat, lon):
|
||||||
|
@ -10,6 +10,7 @@ class PhoneTime(BaseModel):
|
|||||||
|
|
||||||
|
|
||||||
class DoctorInformation(BaseModel):
|
class DoctorInformation(BaseModel):
|
||||||
|
nr: Optional[int] = 0
|
||||||
name: str
|
name: str
|
||||||
tel: str
|
tel: str
|
||||||
fax: Optional[str] = None
|
fax: Optional[str] = None
|
||||||
|
@ -4,6 +4,7 @@ from arztapi.DoctorInformation import PhoneTime
|
|||||||
|
|
||||||
class DoctorPhoneTime(BaseModel):
|
class DoctorPhoneTime(BaseModel):
|
||||||
phone_time: PhoneTime
|
phone_time: PhoneTime
|
||||||
|
doctor_nr: int
|
||||||
doctor_name: str
|
doctor_name: str
|
||||||
doctor_address: str
|
doctor_address: str
|
||||||
doctor_phone_number: str
|
doctor_phone_number: str
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
<legend>Suche</legend>
|
<legend>Suche</legend>
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label for="locationInput" class="form-label mt-4">{{ form.location.label }}</label>
|
<label for="locationInput" class="form-label mt-4">{{ form.location.label }}</label>
|
||||||
{{ form.location(class="form-control", id="locationInput", placeholder="Standort eingeben") }}
|
{{ form.location(class="form-control", id="locationInput", placeholder="Standort/PLZ eingeben") }}
|
||||||
{% if form.location.errors %}
|
{% if form.location.errors %}
|
||||||
<div class="text-danger">
|
<div class="text-danger">
|
||||||
{{ form.location.errors[0] }}
|
{{ form.location.errors[0] }}
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
<table class="table table-hover">
|
<table class="table table-hover">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
<th scope="col">Index</th>
|
||||||
<th scope="col">Name</th>
|
<th scope="col">Name</th>
|
||||||
<th scope="col">Nächster Telefontag</th>
|
<th scope="col">Nächster Telefontag</th>
|
||||||
<th scope="col">Nächste Telefonzeit</th>
|
<th scope="col">Nächste Telefonzeit</th>
|
||||||
@ -18,6 +19,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
{% for doctor in doctors %}
|
{% for doctor in doctors %}
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
|
<th scope="row">{{ doctor.doctor_nr }}</th>
|
||||||
<th scope="row">{{ doctor.doctor_name }}</th>
|
<th scope="row">{{ doctor.doctor_name }}</th>
|
||||||
<td>{{ doctor.phone_time.start.strftime("%A %d.%m") }}</td>
|
<td>{{ doctor.phone_time.start.strftime("%A %d.%m") }}</td>
|
||||||
<td>{{ doctor.phone_time.start.strftime("%H:%M") }} bis {{ doctor.phone_time.end.strftime("%H:%M") }}</td>
|
<td>{{ doctor.phone_time.start.strftime("%H:%M") }} bis {{ doctor.phone_time.end.strftime("%H:%M") }}</td>
|
||||||
|
Loading…
Reference in New Issue
Block a user