refactor(Survey/Analysis):优化题目分析组件

- 添加 parentIndex 属性,用于接收上级组件传递的题目编号
- 优化题目标题显示逻辑,增加编号并考虑上级传递的编号
-调整标签显示逻辑,仅在 questionTypeMap 中存在对应类型时显示
This commit is contained in:
陈昱达
2025-05-26 14:45:58 +08:00
parent 345c80acbc
commit b938f48c50
2 changed files with 13 additions and 10 deletions

View File

@@ -41,8 +41,8 @@ const disableInsight = ref(true);
:space-between="0" :space-between="0"
:allow-touch-move="false" :allow-touch-move="false"
> >
<swiper-slide v-for="analysis in questionAnalysis" :key="analysis.stem"> <swiper-slide v-for="(analysis, index) in questionAnalysis" :key="analysis.stem">
<analysis-info :sn="survey?.sn" :questionAnalysis="[analysis]" /> <analysis-info :sn="survey?.sn" :questionAnalysis="[analysis]" :parentIndex="index + 1" />
</swiper-slide> </swiper-slide>
<div class="empty-container" v-if="questionAnalysis?.length === 0"> <div class="empty-container" v-if="questionAnalysis?.length === 0">
<empty-container :error-msg="'本问卷暂无有效答题数据'" :img-src="emptyImg" /> <empty-container :error-msg="'本问卷暂无有效答题数据'" :img-src="emptyImg" />

View File

@@ -1,18 +1,20 @@
<template> <template>
<div style="width: 100%"> <div style="width: 100%">
<!-- 优先去上级传递的数值 --> <!-- 优先去上级传递的数值 -->
<section v-for="analysis in questionAnalysis" :key="analysis.stem" class="mt10"> <section v-for="(analysis, index) in questionAnalysis" :key="analysis.stem" class="mt10">
<!-- {{ analysis }} --> <!-- {{ analysis }} -->
<!-- 问题标题 --> <!-- 问题标题 -->
<div class="flex align-center"> <div class="flex align-center">
<el-tag type="success" size="small"> <el-tag
{{ type="success"
questionTypeMap.get(analysis.question_type as number) size="small"
? questionTypeMap.get(analysis.question_type as number) v-if="questionTypeMap.get(analysis.question_type as number)"
: analysis.title >
}} {{ questionTypeMap.get(analysis.question_type as number) }}
</el-tag> </el-tag>
<el-text class="ml10">{{ analysis.stem }}</el-text> <el-text class="ml10"
>{{ parentIndex ? parentIndex : index + 1 }}. {{ analysis.stem }}</el-text
>
</div> </div>
<!-- 问题图表部分 --> <!-- 问题图表部分 -->
@@ -64,6 +66,7 @@ const showChart = ref([1, 2, 5, 106, 9, 10]);
// 接受上级传递的 questionAnalysis 数据 // 接受上级传递的 questionAnalysis 数据
const questionAnalysis = defineModel<any[]>('questionAnalysis'); const questionAnalysis = defineModel<any[]>('questionAnalysis');
const parentIndex = defineModel<any[]>('parentIndex');
const { width } = screenLayout(); const { width } = screenLayout();