[FIX] attendances
This commit is contained in:
parent
a4198f8e5d
commit
e0c19db88c
|
|
@ -178,14 +178,14 @@ class HrAttendanceTransactions(models.Model):
|
|||
mission_start = item.official_id.hour_from
|
||||
mission_end = mission_start + item.total_mission_hours
|
||||
if mission_start < adjusted_sign_in: # Mission overlaps with lateness
|
||||
lateness_covered_time += max(0.0, min(mission_end, adjusted_sign_in) - max(mission_start, full_sign_in))
|
||||
lateness_covered_time += max(0.0, abs(min(mission_end, adjusted_sign_in) - max(mission_start, full_sign_in)))
|
||||
|
||||
# Check coverage by personal permission
|
||||
if item.personal_permission_id:
|
||||
permission_start = start_permission_time_float
|
||||
permission_end = permission_start + item.total_permission_hours
|
||||
if permission_start < adjusted_sign_in: # Permission overlaps with lateness
|
||||
lateness_covered_time += max(0.0, min(permission_end, adjusted_sign_in) - max(permission_start, full_sign_in))
|
||||
lateness_covered_time += max(0.0, abs(min(permission_end, adjusted_sign_in) - max(permission_start, full_sign_in)))
|
||||
|
||||
# Determine remaining uncovered lateness
|
||||
uncovered_lateness = lateness_time - lateness_covered_time
|
||||
|
|
@ -205,14 +205,14 @@ class HrAttendanceTransactions(models.Model):
|
|||
mission_start = item.official_id.hour_from
|
||||
mission_end = mission_start + item.total_mission_hours
|
||||
if mission_start < full_sign_out: # Mission overlaps with early exit
|
||||
early_exit_covered_time += max(0.0, min(mission_end, full_sign_out) - max(mission_start, adjusted_sign_out))
|
||||
early_exit_covered_time += max(0.0, abs(min(mission_end, full_sign_out) - max(mission_start, adjusted_sign_out)))
|
||||
|
||||
# Check coverage by personal permission
|
||||
if item.personal_permission_id:
|
||||
permission_start = start_permission_time_float
|
||||
permission_end = permission_start + item.total_permission_hours
|
||||
if permission_start < full_sign_out: # Permission overlaps with early exit
|
||||
early_exit_covered_time += max(0.0, min(permission_end, full_sign_out) - max(permission_start, adjusted_sign_out))
|
||||
early_exit_covered_time += max(0.0, abs(min(permission_end, full_sign_out) - max(permission_start, adjusted_sign_out)))
|
||||
|
||||
# Determine remaining uncovered early exit
|
||||
uncovered_early_exit = remaining_work_time - early_exit_covered_time
|
||||
|
|
|
|||
Loading…
Reference in New Issue