From 86a55cf55c1da391043c2aa5ecaa462d59167cc1 Mon Sep 17 00:00:00 2001
From: zhang_nuo <zhang_12370@163.com>
Date: 星期二, 22 九月 2026 00:26:30 +0800
Subject: [PATCH] 员工流动200%的问题

---
 src/views/personnelManagement/analytics/index.vue |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/views/personnelManagement/analytics/index.vue b/src/views/personnelManagement/analytics/index.vue
index 6c5a1d6..faafda6 100644
--- a/src/views/personnelManagement/analytics/index.vue
+++ b/src/views/personnelManagement/analytics/index.vue
@@ -184,12 +184,18 @@
   }
 }
 
+// 闄愬埗鐧惧垎姣斿湪 0-100 鑼冨洿鍐�
+const clampPercent = val => {
+  const n = Number(val) || 0
+  return Math.max(0, Math.min(100, n))
+}
+
 const getStaffAnalysisTotalStatistic = async () => {
   try {
     const res = await findStaffAnalysisTotalStatistic()
     if (res && res.data) {
-      keyMetrics.value[0].value = res.data.totalFlowRate || 0
-      keyMetrics.value[1].value = res.data.totalTurnoverRate || 0
+      keyMetrics.value[0].value = clampPercent(res.data.totalFlowRate || 0)
+      keyMetrics.value[1].value = clampPercent(res.data.totalTurnoverRate || 0)
       keyMetrics.value[2].value = res.data.currentOnJobCount || 0
     }
   } catch (error) {
@@ -288,8 +294,8 @@
 
   // 浣跨敤API杩斿洖鐨勫疄闄呮暟鎹�
   const months = turnoverRateStatistics.value.map(item => item.month)
-  const turnoverData = turnoverRateStatistics.value.map(item => item.flowRate || 0)
-  const attritionData = turnoverRateStatistics.value.map(item => item.turnoverRate || 0)
+  const turnoverData = turnoverRateStatistics.value.map(item => clampPercent(item.flowRate || 0))
+  const attritionData = turnoverRateStatistics.value.map(item => clampPercent(item.turnoverRate || 0))
 
   const option = {
     title: {
@@ -319,6 +325,8 @@
     },
     yAxis: {
       type: 'value',
+      min: 0,
+      max: 100,
       axisLabel: { formatter: '{value}%' }
     },
     series: [

--
Gitblit v1.9.3