diff --git a/backend/app/api/dashboard.py b/backend/app/api/dashboard.py index af4cc25e..915f1b53 100644 --- a/backend/app/api/dashboard.py +++ b/backend/app/api/dashboard.py @@ -441,10 +441,11 @@ def my_dashboard( target = kpi_target_by_frequency(k) level = "gray" if actual is not None and target: - # 反向指标(越低越好):费用率/渠补率/应收天数/返利率/成本率 + # 反向指标(越低越好):费用率/渠补率/应收天数/返利率/成本率/存货天数 REVERSE_INDICATORS = { "F_COST_RATIO", "C_REBATE_RATE", "F_AR_DAYS", "F_REBATE_RATE", "F_FACTORY_REBATE_RATE", "F_COST_CONTROL_RATE", + "F_INV_DAYS", "F_DEBT_RATIO", "P_BUG_RATE", "P_REWORK_PCT", } if k.kpi_code in REVERSE_INDICATORS: # 反向:实际≤目标=绿;实际≤目标*1.1=黄;否则红 diff --git a/backend/app/api/kpis.py b/backend/app/api/kpis.py index 3645fb5a..58b08d35 100644 --- a/backend/app/api/kpis.py +++ b/backend/app/api/kpis.py @@ -107,7 +107,8 @@ def get_kpi_categories(current_user = Depends(require_auth), db: Session = Depen # ============================================================ REVERSE_INDICATORS = ['C_REBATE_RATE', 'P_BUG_RATE', 'P_REWORK_PCT', 'F_DEBT_RATIO', - 'P_QUALITY_RATE', 'F_COST_RATIO', 'F_INTEREST_COVER', 'F_QUICK_RATIO'] + 'F_COST_RATIO', 'F_AR_DAYS', 'F_REBATE_RATE', + 'F_FACTORY_REBATE_RATE', 'F_COST_CONTROL_RATE', 'F_INV_DAYS'] def _calc_five_tier_score(current_value, target_value, is_reverse=False):