feat(zone): 三区标记M2——A区只读收口:Dashboard移除AI建议应用弹窗(收敛至/ai-suggestions)、客户/学习看板KPIListView只读模式(KPI维护收敛至/kpis) (three-zone P0-①)

This commit is contained in:
Hermes CI Fix
2026-09-03 17:48:46 +08:00
parent 377326eea2
commit 4c01f2bf21
4 changed files with 15 additions and 111 deletions
+9 -5
View File
@@ -12,7 +12,7 @@
<el-radio-button value="quarter">本季</el-radio-button>
<el-radio-button value="year">本年</el-radio-button>
</el-radio-group>
<el-dropdown v-if="templates && templates.length > 0" trigger="click" @command="selectTemplate">
<el-dropdown v-if="!readOnly && templates && templates.length > 0" trigger="click" @command="selectTemplate">
<el-button size="small" type="success">
<el-icon><Plus /></el-icon> 从模板创建
</el-button>
@@ -35,7 +35,7 @@
</el-dropdown-menu>
</template>
</el-dropdown>
<el-button type="primary" size="small" @click="openCreate">
<el-button v-if="!readOnly" type="primary" size="small" @click="openCreate">
+ 新建指标
</el-button>
<el-button size="small" @click="loadData" :loading="loading">
@@ -76,8 +76,10 @@
<!-- 空状态 -->
<div v-if="kpis.length === 0" class="empty-state">
<el-empty :description="'暂无' + statLabels.total + ',' + (templates && templates.length > 0 ? '点击「从模板创建」快速添加预设指标' : '点击「+ 新建指标」创建')">
<el-button type="primary" @click="openCreate">新建指标</el-button>
<el-empty :description="readOnly
? '暂无' + statLabels.total + ',请到「KPI字典」维护指标'
: '暂无' + statLabels.total + ',' + (templates && templates.length > 0 ? '点击「从模板创建」快速添加预设指标' : '点击「+ 新建指标」创建')">
<el-button v-if="!readOnly" type="primary" @click="openCreate">新建指标</el-button>
</el-empty>
</div>
@@ -190,7 +192,7 @@
<el-table-column label="频率" width="70" v-if="showFrequency">
<template #default="{ row }">{{ freqLabel(row.frequency) }}</template>
</el-table-column>
<el-table-column label="操作" width="120" fixed="right">
<el-table-column label="操作" width="120" fixed="right" v-if="!readOnly">
<template #default="{ row }">
<el-button size="small" text type="primary" @click.stop="editKPI(row)">编辑</el-button>
<el-button size="small" text type="danger" @click.stop="deleteKPI(row.id)">删除</el-button>
@@ -301,6 +303,7 @@ const props = withDefaults(defineProps<{
unitOptions?: string[]
formTitleCreate?: string
formTitleEdit?: string
readOnly?: boolean
}>(), {
icon: '📊',
statLabels: () => ({ total: '指标总数', green: '达标', yellow: '预警', red: '未达标', noData: '无数据' }),
@@ -312,6 +315,7 @@ const props = withDefaults(defineProps<{
unitOptions: () => ['%', '元', '家', '分', '小时', '次', '个'],
formTitleCreate: '',
formTitleEdit: '',
readOnly: false,
})
const formTitle = computed(() => {