fix: Praktikum mit 6h wird wie ganz normaler Tag gewertet und mit Pauschale versehen
This commit is contained in:
1 parent
0d5620ae89
commit
7d82aeb0f5
3 files changed
+47
-4
No files matched your search
+11
-1
@@ -59,6 +59,8 @@ def build_field_dict(
|
||||
datum_field: creation_date.strftime("%d.%m.%Y"),
|
||||
}
|
||||
|
||||
internship_hours = f"{plan_threshold:.2f}".replace(".", ",")
|
||||
qualifying_attendance_count: int = 0
|
||||
pauschale_5_count: int = 0
|
||||
|
||||
for idx, entry in enumerate(attendance.entries):
|
||||
@@ -68,12 +70,20 @@ def build_field_dict(
|
||||
if entry.is_present:
|
||||
fields[f"ist.{idx}"] = entry.hours_german()
|
||||
fields[f"plan.{idx}"] = plan_value
|
||||
if entry.hours is not None and entry.hours >= plan_threshold:
|
||||
qualifying_attendance_count += 1
|
||||
# Pauschale only if actual hours >= planned threshold
|
||||
if entry.hours is not None and entry.hours >= plan_threshold:
|
||||
fields[f"{pauschale_prefix}.{idx}"] = pauschale_present_value
|
||||
pauschale_5_count += 1
|
||||
else:
|
||||
fields[f"{pauschale_prefix}.{idx}"] = "0"
|
||||
elif entry.status == "P":
|
||||
fields[f"ist.{idx}"] = internship_hours
|
||||
fields[f"plan.{idx}"] = plan_value
|
||||
qualifying_attendance_count += 1
|
||||
fields[f"{pauschale_prefix}.{idx}"] = pauschale_present_value
|
||||
pauschale_5_count += 1
|
||||
else:
|
||||
fields[f"ist.{idx}"] = ""
|
||||
fields[f"plan.{idx}"] = ""
|
||||
@@ -86,7 +96,7 @@ def build_field_dict(
|
||||
fields["pauschale_5_sum"] = f"{pauschale_5_euro:.2f}"
|
||||
fields["pauschale_25_sum"] = "0.00"
|
||||
fields["pauschale_sum"] = f"{pauschale_5_euro:.2f}"
|
||||
fields["anwesend_sum"] = str(pauschale_5_count)
|
||||
fields["anwesend_sum"] = str(qualifying_attendance_count)
|
||||
|
||||
return fields
|
||||
|
||||
|
||||
Reference in new issue
Block a user