From 0e82320710639fafe540bb370b4baad14edddc22 Mon Sep 17 00:00:00 2001 From: Aleksandr Tcitlionok <803797+terghalin@users.noreply.github.com> Date: Fri, 6 Dec 2024 08:11:20 +0000 Subject: [PATCH] fix --- app/extras/pseudographic.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/extras/pseudographic.py b/app/extras/pseudographic.py index 1b49bea..a0ab94b 100644 --- a/app/extras/pseudographic.py +++ b/app/extras/pseudographic.py @@ -31,6 +31,12 @@ def calculate_time_on_duty_hours(hours): """ Convert hours into a human-readable time format (days, hours, or minutes). """ + try: + # Ensure hours is a float + hours = float(hours) + except (ValueError, TypeError): + return "Invalid time data" + if hours < 1: minutes = round(hours * 60) return f"{minutes} minutes" if minutes > 1 else "less than a minute" @@ -84,7 +90,8 @@ def display_metal_nodes(): nodes = fetch_all("metal_nodes") for node in nodes: - time_on_duty = calculate_time_on_duty_hours(node[7]) + # Convert time_on_duty to a human-readable format + time_on_duty = calculate_time_on_duty_hours(node[7]) # Ensure index 7 corresponds to time_on_duty table.add_row( f"{node[0]}", node[1], @@ -111,7 +118,8 @@ def display_virtual_machines(): vms = fetch_all("virtual_machines") for vm in vms: - time_on_duty = calculate_time_on_duty_hours(vm[7]) + # Convert time_on_duty to a human-readable format + time_on_duty = calculate_time_on_duty_hours(vm[7]) # Ensure index 7 corresponds to time_on_duty table.add_row( f"{vm[0]}", vm[1],