From 6e3f39127fa0d1d9b42da15904cdf4217a3ae9d6 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期五, 11 七月 2025 09:53:12 +0800
Subject: [PATCH] refactor(web-antd): 重构预测性维护页面

---
 eims-ui/apps/web-antd/src/views/eims/predictive-maintenance/index.vue |   88 ++++++++++++++++++++++---------------------
 1 files changed, 45 insertions(+), 43 deletions(-)

diff --git a/eims-ui/apps/web-antd/src/views/eims/predictive-maintenance/index.vue b/eims-ui/apps/web-antd/src/views/eims/predictive-maintenance/index.vue
index 4a04417..fc523d1 100644
--- a/eims-ui/apps/web-antd/src/views/eims/predictive-maintenance/index.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/predictive-maintenance/index.vue
@@ -62,8 +62,8 @@
 
       <!-- 澶囦欢淇℃伅 -->
       <div class="grid grid-cols-2 gap-4 mb-6">
-        <!-- 澶囦欢瀵垮懡棰勬祴 -->
-        <Card title="澶囦欢瀵垮懡棰勬祴">
+        <!-- 璁惧閮ㄤ欢瀵垮懡棰勬祴 -->
+        <Card title="璁惧閮ㄤ欢瀵垮懡棰勬祴">
           <a-table :columns="lifePredictionColumns" :data-source="lifePredictionData" :pagination="false" class="w-full">
             <template #bodyCell="{ column, record }">
               <template v-if="column.key === 'lifeStatus'">
@@ -136,12 +136,12 @@
     key: '1',
     name: 'SMT璐寸墖鏈�',
     type: 'SMT鏈哄櫒',
-    component: '浼犻�佸甫',
-    indicator: '鎸姩骞呭害',
-    value: 0.8,
-    threshold: 0.5,
-    status: '楂橀闄�',
-    maintenanceSuggestion: '寤鸿鏇存崲浼犻�佸甫杞存壙',
+    component: '宸�3-Head',
+    indicator: '鐪熺┖鍘嬪姏',
+    value: 32,
+    threshold: 35,
+    status: '涓闄�',
+    maintenanceSuggestion: '鐪熺┖鍘嬪姏鍊间綆浜庤瀹氬�硷紝寤鸿妫�鏌ユ垨鏇存崲鍚稿槾',
     maintenanceType: '棰勯槻鎬х淮鎶�',
   },
   {
@@ -153,7 +153,7 @@
     value: 85,
     threshold: 80,
     status: '涓闄�',
-    maintenanceSuggestion: '寤鸿瀵逛富杞磋繘琛屾鼎婊戜繚鍏�',
+    maintenanceSuggestion: '寤鸿瀵逛富杞磋繘琛屾鼎婊戜繚鍏诲苟妫�鏌ュ喎鍗寸郴缁�',
     maintenanceType: '娑︽粦缁存姢',
   },
   {
@@ -161,25 +161,25 @@
     name: '娉ㄥ鏈�',
     type: '娉ㄥ璁惧',
     component: '娑插帇绯荤粺',
-    indicator: '鍘嬪姏',
-    value: 120,
-    threshold: 150,
+    indicator: '灏勫嚭鍘嬪姏涓嶇ǔ瀹�',
+    value: 28,
+    threshold: 30,
     status: '浣庨闄�',
     maintenanceSuggestion: '寤鸿妫�鏌ユ恫鍘嬬郴缁熷瘑灏佷欢',
     maintenanceType: '妫�鏌ョ淮鎶�',
   },
-  {
-    key: '4',
-    name: '绌哄帇鏈�',
-    type: '绌烘皵鍘嬬缉鏈�',
-    component: '鐢垫満',
-    indicator: '鐢垫祦',
-    value: 49,
-    threshold: 50,
-    status: '浣庨闄�',
-    maintenanceSuggestion: '鏆傛棤寤鸿',
-    maintenanceType: '鏃�',
-  },
+  // {
+  //   key: '4',
+  //   name: '绌哄帇鏈�',
+  //   type: '绌烘皵鍘嬬缉鏈�',
+  //   component: '鐢垫満',
+  //   indicator: '鐢垫祦',
+  //   value: 49,
+  //   threshold: 50,
+  //   status: '浣庨闄�',
+  //   maintenanceSuggestion: '鏆傛棤寤鸿',
+  //   maintenanceType: '鏃�',
+  // },
 ]);
 
 // 澶囦欢搴撳瓨鏁版嵁
@@ -197,8 +197,8 @@
     key: '1',
     name: '浼犻�佸甫杞存壙',
     currentStock: 10,
-    safetyStock: 5,
-    predictedDemand: 3,
+    safetyStock: 15,
+    predictedDemand: 8,
   },
   {
     key: '2',
@@ -211,7 +211,7 @@
     key: '3',
     name: '娑插帇绯荤粺瀵嗗皝浠�',
     currentStock: 20,
-    safetyStock: 10,
+    safetyStock: 25,
     predictedDemand: 5,
   },
   {
@@ -245,8 +245,8 @@
 
 const lifePredictionColumns = [
   { title: '璁惧鍚嶇О', dataIndex: 'deviceName', key: 'deviceName' },
-  { title: '閮ㄤ欢鍚嶇О', dataIndex: 'componentName', key: 'componentName' },
-  { title: '澶囦欢鍚嶇О', dataIndex: 'name', key: 'name' },
+  { title: '閮ㄤ綅鍚嶇О', dataIndex: 'componentName', key: 'componentName' },
+  { title: '閮ㄤ欢鍚嶇О', dataIndex: 'name', key: 'name' },
   { title: '棰勬祴瀵垮懡 (澶�)', dataIndex: 'predictedLife', key: 'predictedLife' },
   { title: '鍓╀綑瀵垮懡 (澶�)', dataIndex: 'remainingDays', key: 'remainingDays' },
   { title: '鐘舵��', dataIndex: 'lifeStatus', key: 'lifeStatus' },
@@ -254,11 +254,13 @@
 ];
 
 const lifePredictionData = ref([
-  { key: '1', deviceName: 'SMT璐寸墖鏈�', componentName: '浼犻�佸甫', name: '杞存壙A', predictedLife: 365, remainingDays: 120 },
-  { key: '2', deviceName: 'CNC鍔犲伐涓績', componentName: '涓昏酱', name: '榻胯疆B', predictedLife: 730, remainingDays: 30 },
-  { key: '3', deviceName: '娉ㄥ鏈�', componentName: '娑插帇绯荤粺', name: '婊よ姱C', predictedLife: 180, remainingDays: 90 },
-  { key: '4', deviceName: '绌哄帇鏈�', componentName: '鐢垫満', name: '浼犳劅鍣―', predictedLife: 500, remainingDays: 10 },
-  { key: '5', deviceName: '鐒婃帴鏈哄櫒浜�', componentName: '鐒婃灙', name: '鐒婂槾E', predictedLife: 240, remainingDays: 60 }
+    { key: '4', deviceName: '绌哄帇鏈�', componentName: '鐢垫満', name: '浼犳劅鍣�', predictedLife: 500, remainingDays: 10 },
+      { key: '2', deviceName: 'CNC鍔犲伐涓績', componentName: '涓昏酱', name: '榻胯疆', predictedLife: 730, remainingDays: 30 },
+  { key: '1', deviceName: 'SMT璐寸墖鏈�', componentName: '浼犻�佸甫', name: '杞存壙', predictedLife: 365, remainingDays: 50 },
+
+  { key: '3', deviceName: '娉ㄥ鏈�', componentName: '娑插帇绯荤粺', name: '婊よ姱', predictedLife: 180, remainingDays: 90 },
+
+  { key: '5', deviceName: '鐒婃帴鏈哄櫒浜�', componentName: '鐒婃灙', name: '鐒婂槾', predictedLife: 240, remainingDays: 60 }
 ]);
 
 const getLifeStatus = (remainingDays) => {
@@ -340,7 +342,7 @@
     console.log('璁惧ID111:', record.name)
     router.push({ path: '/predictive/smt-detail', query: { deviceId: record.key } });
   } else if (record.name === 'CNC鍔犲伐涓績') {
-    router.push({ path: '/predictive/predictive-detail', query: { deviceId: record.key } });
+    router.push({ path: '/predictive/cnc-detail', query: { deviceId: record.key } });
   } else if (record.name === '娉ㄥ鏈�') {
     router.push({ path: '/predictive/injection-detail', query: { deviceId: record.key } });
   } else {
@@ -376,14 +378,14 @@
           type: 'bar',
           barWidth: '60%',
           data: [
-            { value: 15, itemStyle: { color: '#52c41a' } },
-            { value: 20, itemStyle: { color: '#52c41a' } },
-            { value: 25, itemStyle: { color: '#faad14' } },
-            { value: 15, itemStyle: { color: '#faad14' } },
-            { value: 10, itemStyle: { color: '#faad14' } },
-            { value: 5, itemStyle: { color: '#ff4d4f' } },
-            { value: 5, itemStyle: { color: '#ff4d4f' } },
-            { value: 3, itemStyle: { color: '#ff4d4f' } },
+            { value: 48, itemStyle: { color: '#52c41a' } },
+            { value: 53, itemStyle: { color: '#52c41a' } },
+            { value: 37, itemStyle: { color: '#52c41a' } },
+            { value: 29, itemStyle: { color: '#52c41a' } },
+            { value: 21, itemStyle: { color: '#52c41a' } },
+            { value: 8, itemStyle: { color: '#faad14' } },
+            { value: 5, itemStyle: { color: '#faad14' } },
+            { value: 3, itemStyle: { color: '#faad14' } },
             { value: 1, itemStyle: { color: '#ff4d4f' } },
             { value: 1, itemStyle: { color: '#ff4d4f' } }
           ],

--
Gitblit v1.9.3