From 8151c3253dc287a79914bc08414af17dfb380c96 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期三, 14 十月 2026 14:34:33 +0800
Subject: [PATCH] refactor(首页): 展示模块改为跟随菜单权限自动隐藏
---
src/views/mes/home/modules/kpi-cards.vue | 55 +++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 47 insertions(+), 8 deletions(-)
diff --git a/src/views/mes/home/modules/kpi-cards.vue b/src/views/mes/home/modules/kpi-cards.vue
index f104479..e6b7c5f 100644
--- a/src/views/mes/home/modules/kpi-cards.vue
+++ b/src/views/mes/home/modules/kpi-cards.vue
@@ -8,6 +8,10 @@
import { Card, Col, Divider, Row } from 'ant-design-vue';
+import { useHomeAccess } from '#/utils/use-home-access';
+
+import { HOME_BLOCK_MENUS } from '../data';
+
defineOptions({ name: 'MesHomeKpiCards' });
const props = defineProps<{
@@ -17,6 +21,9 @@
const emit = defineEmits<{
navigate: [name: string];
}>();
+
+/** 鑿滃崟娌″紑鐨勬ā鍧楋紝瀵瑰簲 KPI 鍗′笉灞曠ず */
+const { canSeeMenu } = useHomeAccess();
/** 鏄惁鏈夎川閲忔暟鎹紙鍚堟牸鍝� + 涓嶈壇鍝� > 0锛� */
const hasQualityData = computed(
@@ -40,10 +47,18 @@
<template>
<Row :gutter="16">
- <Col :lg="6" :md="12" :sm="12" :xl="6" :xs="24" class="mb-4">
+ <Col
+ v-if="canSeeMenu(HOME_BLOCK_MENUS.workOrder)"
+ :lg="6"
+ :md="12"
+ :sm="12"
+ :xl="6"
+ :xs="24"
+ class="mb-4"
+ >
<Card
class="kpi-card cursor-pointer transition-all hover:-translate-y-1 hover:shadow-lg"
- @click="emit('navigate', 'MesProWorkOrder')"
+ @click="emit('navigate', HOME_BLOCK_MENUS.workOrder)"
>
<div class="flex items-center gap-4">
<div
@@ -71,10 +86,18 @@
</div>
</Card>
</Col>
- <Col :lg="6" :md="12" :sm="12" :xl="6" :xs="24" class="mb-4">
+ <Col
+ v-if="canSeeMenu(HOME_BLOCK_MENUS.feedback)"
+ :lg="6"
+ :md="12"
+ :sm="12"
+ :xl="6"
+ :xs="24"
+ class="mb-4"
+ >
<Card
class="kpi-card cursor-pointer transition-all hover:-translate-y-1 hover:shadow-lg"
- @click="emit('navigate', 'MesProFeedback')"
+ @click="emit('navigate', HOME_BLOCK_MENUS.feedback)"
>
<div class="flex items-center gap-4">
<div
@@ -100,10 +123,18 @@
</div>
</Card>
</Col>
- <Col :lg="6" :md="12" :sm="12" :xl="6" :xs="24" class="mb-4">
+ <Col
+ v-if="canSeeMenu(HOME_BLOCK_MENUS.feedback)"
+ :lg="6"
+ :md="12"
+ :sm="12"
+ :xl="6"
+ :xs="24"
+ class="mb-4"
+ >
<Card
class="kpi-card cursor-pointer transition-all hover:-translate-y-1 hover:shadow-lg"
- @click="emit('navigate', 'MesProFeedback')"
+ @click="emit('navigate', HOME_BLOCK_MENUS.feedback)"
>
<div class="flex items-center gap-4">
<div
@@ -135,10 +166,18 @@
</div>
</Card>
</Col>
- <Col :lg="6" :md="12" :sm="12" :xl="6" :xs="24" class="mb-4">
+ <Col
+ v-if="canSeeMenu(HOME_BLOCK_MENUS.machinery)"
+ :lg="6"
+ :md="12"
+ :sm="12"
+ :xl="6"
+ :xs="24"
+ class="mb-4"
+ >
<Card
class="kpi-card cursor-pointer transition-all hover:-translate-y-1 hover:shadow-lg"
- @click="emit('navigate', 'MesDvMachinery')"
+ @click="emit('navigate', HOME_BLOCK_MENUS.machinery)"
>
<div class="flex items-center gap-4">
<div
--
Gitblit v1.9.3