# services/time_utils.py """ 时间辅助函数。 刻意不依赖 flask / db / models,避免被 services.db_ingest 和 routes.api 互相引用时产生循环导入。 """ from datetime import datetime def calculate_offset(latest_time_str): """ 计算时间滞后天数 用于前端展示设备数据是否过时 """ if not latest_time_str or latest_time_str == "N/A": return "从未同步" try: # 兼容处理 2026_01_13 和 2026-01-13 格式 clean = str(latest_time_str).split()[0].replace('_', '-') target = datetime.strptime(clean, "%Y-%m-%d").date() diff = (datetime.now().date() - target).days return "当天" if diff == 0 else f"滞后 {diff} 天" except: return "时间解析失败"