fix: 文件名大小写错误
parent
f2b844f0a7
commit
1dee63af1b
|
|
@ -0,0 +1,128 @@
|
||||||
|
<route lang="json5" type="page">
|
||||||
|
{
|
||||||
|
style: {
|
||||||
|
navigationStyle: 'custom',
|
||||||
|
transparentTitle: 'always',
|
||||||
|
navigationBarTitleText: '',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</route>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<view class="flex flex-col h-screen relative custom-bg">
|
||||||
|
<Navbar
|
||||||
|
safeAreaInsetTop
|
||||||
|
:bordered="false"
|
||||||
|
leftArrow
|
||||||
|
@clickLeft="handleBack"
|
||||||
|
bg-color="transparent"
|
||||||
|
>
|
||||||
|
<template #title>
|
||||||
|
<text class="text-[#1F2329] text-[36rpx] font-medium text-[#fff]">能力测评报告</text>
|
||||||
|
</template>
|
||||||
|
</Navbar>
|
||||||
|
|
||||||
|
<view class="flex-1 overflow-auto relative mt-[40rpx] flex flex-col">
|
||||||
|
<view class="flex flex-col flex-1 overflow-auto pb-[20rpx]">
|
||||||
|
<!-- 顶部卡片 -->
|
||||||
|
<view
|
||||||
|
class="flex flex-col pt-[32rpx] mx-[24rpx] bg-[#fff] px-[30rpx] pt-[30rpx] border-class"
|
||||||
|
>
|
||||||
|
<text class="text-[#333] text-[28rpx] mb-[14rpx] z-2 font-700">你的弱势能力为</text>
|
||||||
|
<text class="text-[#117CFC] text-[36rpx] z-2">
|
||||||
|
{{ studyRecord.title.replace('你的弱势能力:', '') }}
|
||||||
|
</text>
|
||||||
|
</view>
|
||||||
|
<!-- 雷达图占位 -->
|
||||||
|
<LineReport :echart-data="studyRecord.linChart" :description="studyRecord.description" />
|
||||||
|
<AbilityDimension :report-items="studyRecord.reportItems" />
|
||||||
|
</view>
|
||||||
|
<!-- 底部AI智能顾问 -->
|
||||||
|
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||||
|
import LineReport from '../components/interestChart/LineReport.vue'
|
||||||
|
import AbilityDimension from '../components/AbilityDimension.vue'
|
||||||
|
import AiFooter from '../components/AiFooter.vue'
|
||||||
|
import { handleBack } from '../hooks/useEvaluateBack'
|
||||||
|
|
||||||
|
import { getAbilityDimension } from '@/service/index/api'
|
||||||
|
|
||||||
|
const pageType = ref(0)
|
||||||
|
const pageId = ref(0)
|
||||||
|
|
||||||
|
const studyRecord = ref({
|
||||||
|
description: '',
|
||||||
|
title: '',
|
||||||
|
linChart: [],
|
||||||
|
reportItems: [],
|
||||||
|
hTag: '',
|
||||||
|
})
|
||||||
|
|
||||||
|
onLoad((options) => {
|
||||||
|
pageType.value = +options.type
|
||||||
|
pageId.value = options.id
|
||||||
|
|
||||||
|
getAbilityDimension({ ScaleId: pageId.value }).then((resp) => {
|
||||||
|
if (resp.code === 200) {
|
||||||
|
studyRecord.value = resp.result as {
|
||||||
|
description: string
|
||||||
|
title: string
|
||||||
|
linChart: any[]
|
||||||
|
reportItems: any[]
|
||||||
|
hTag: string
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.custom-bg {
|
||||||
|
background: linear-gradient(184deg, #0d79fc 0%, #2186fc 100%);
|
||||||
|
}
|
||||||
|
:deep(.icon-class) {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-bg {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 40rpx;
|
||||||
|
z-index: 1;
|
||||||
|
width: calc(100% - 80rpx);
|
||||||
|
height: 244rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.type-tag {
|
||||||
|
min-width: 40rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.position-tag {
|
||||||
|
font-size: 26rpx;
|
||||||
|
text-align: center;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-row {
|
||||||
|
align-items: center;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar-item image {
|
||||||
|
border: 4rpx solid #fff;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
|
||||||
|
.border-class {
|
||||||
|
padding-bottom: 42rpx;
|
||||||
|
margin-bottom: -14rpx;
|
||||||
|
border-radius: 20rpx 20rpx 0 0;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,129 @@
|
||||||
|
<route lang="json5" type="page">
|
||||||
|
{
|
||||||
|
style: {
|
||||||
|
navigationStyle: 'custom',
|
||||||
|
transparentTitle: 'always',
|
||||||
|
navigationBarTitleText: '',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</route>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<view class="flex flex-col h-screen relative custom-bg">
|
||||||
|
<Navbar
|
||||||
|
safeAreaInsetTop
|
||||||
|
:bordered="false"
|
||||||
|
leftArrow
|
||||||
|
@clickLeft="handleBack"
|
||||||
|
bg-color="transparent"
|
||||||
|
>
|
||||||
|
<template #title>
|
||||||
|
<text class="text-[#1F2329] text-[36rpx] font-medium text-[#fff]">性格测评报告</text>
|
||||||
|
</template>
|
||||||
|
</Navbar>
|
||||||
|
|
||||||
|
<view class="flex-1 flex flex-col overflow-auto">
|
||||||
|
<view class="overflow-auto relative mt-[40rpx] flex-1 pb-[20rpx]">
|
||||||
|
<!-- 顶部卡片 -->
|
||||||
|
<view class="flex flex-col pt-[32rpx] px-[84rpx] h-[244rpx] mb-[-116rpx] font-700">
|
||||||
|
<view class="header-bg">
|
||||||
|
<image
|
||||||
|
src="https://api.static.ycymedu.com/src/images/evaluate/bg.png"
|
||||||
|
class="w-full h-full"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
<text class="text-[#333] text-[28rpx] mb-[14rpx] z-2">您的性格类型为</text>
|
||||||
|
<text class="text-[#117CFC] text-[36rpx] z-2">{{ studyRecord.title }}</text>
|
||||||
|
</view>
|
||||||
|
<!-- 雷达图占位 -->
|
||||||
|
<CharacterChart :linChart="studyRecord.linChart" :description="studyRecord.description" />
|
||||||
|
|
||||||
|
<DependenciesChart
|
||||||
|
:mainDomain="studyRecord.reportItem.mainDomain"
|
||||||
|
:major="studyRecord.reportItem.major"
|
||||||
|
:occupation="studyRecord.reportItem.occupation"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 底部AI智能顾问 -->
|
||||||
|
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||||
|
import CharacterChart from '../components/interestChart/CharacterChart.vue'
|
||||||
|
import DependenciesChart from '../components/interestChart/DependenciesChart.vue'
|
||||||
|
import AiFooter from '../components/AiFooter.vue'
|
||||||
|
import { getMBTIDimension } from '@/service/index/api'
|
||||||
|
import { handleBack } from '../hooks/useEvaluateBack'
|
||||||
|
|
||||||
|
const pageType = ref(0)
|
||||||
|
const pageId = ref(0)
|
||||||
|
|
||||||
|
const studyRecord = ref({
|
||||||
|
description: '',
|
||||||
|
title: '',
|
||||||
|
linChart: {},
|
||||||
|
reportItem: { mainDomain: '', major: '', occupation: '' },
|
||||||
|
hTag: '',
|
||||||
|
})
|
||||||
|
|
||||||
|
onLoad((options) => {
|
||||||
|
pageType.value = +options.type
|
||||||
|
pageId.value = options.id
|
||||||
|
|
||||||
|
getMBTIDimension({ ScaleId: pageId.value }).then((resp) => {
|
||||||
|
if (resp.code === 200) {
|
||||||
|
studyRecord.value = resp.result as {
|
||||||
|
description: string
|
||||||
|
title: string
|
||||||
|
linChart: any
|
||||||
|
reportItem: { mainDomain: string; major: string; occupation: string }
|
||||||
|
hTag: string
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.custom-bg {
|
||||||
|
background: linear-gradient(184deg, #0d79fc 0%, #2186fc 100%);
|
||||||
|
}
|
||||||
|
:deep(.icon-class) {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-bg {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 40rpx;
|
||||||
|
z-index: 1;
|
||||||
|
width: calc(100% - 80rpx);
|
||||||
|
height: 244rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.type-tag {
|
||||||
|
min-width: 40rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.position-tag {
|
||||||
|
font-size: 26rpx;
|
||||||
|
text-align: center;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-row {
|
||||||
|
align-items: center;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar-item image {
|
||||||
|
border: 4rpx solid #fff;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,113 @@
|
||||||
|
<route lang="json5" type="page">
|
||||||
|
{
|
||||||
|
style: {
|
||||||
|
navigationBarTitleText: '兴趣测评报告',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</route>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<view class="flex flex-col h-screen relative custom-bg">
|
||||||
|
<view class="flex-1 overflow-auto relative mt-[40rpx]">
|
||||||
|
<view class="overflow-auto relative mt-[40rpx] flex-1 pb-[20rpx]">
|
||||||
|
<!-- 顶部卡片 -->
|
||||||
|
<view class="flex flex-col pt-[32rpx] px-[84rpx] h-[244rpx] mb-[-116rpx] font-700">
|
||||||
|
<view class="header-bg">
|
||||||
|
<image
|
||||||
|
src="https://api.static.ycymedu.com/src/images/evaluate/bg.png"
|
||||||
|
class="w-full h-full"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
<text class="text-[#333] text-[28rpx] mb-[14rpx] z-2">您的兴趣类型为</text>
|
||||||
|
<text class="text-[#117CFC] text-[36rpx] z-2">{{ studyRecord.title }}</text>
|
||||||
|
</view>
|
||||||
|
<!-- 雷达图占位 -->
|
||||||
|
<InterestRadar :picData="studyRecord.picCharts" />
|
||||||
|
<!-- 类型说明 -->
|
||||||
|
<TypeDetail :reportItems="studyRecord.reportItems" />
|
||||||
|
|
||||||
|
<!-- 适合职业 -->
|
||||||
|
<IntroMajor :tag="studyRecord.hTag" />
|
||||||
|
<!-- 兴趣分析与代表人物 -->
|
||||||
|
<InterestingThings :tag="studyRecord.hTag" :description="studyRecord.description" />
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 底部AI智能顾问 -->
|
||||||
|
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||||
|
import TypeDetail from '../components/TypeDetail.vue'
|
||||||
|
import InterestRadar from '../components/interestChart/InterestRadar.vue'
|
||||||
|
import IntroMajor from '../components/IntroMajor.vue'
|
||||||
|
|
||||||
|
import { getHollandDimensionInfo } from '@/service/index/api'
|
||||||
|
import InterestingThings from '../components/InterestingThings.vue'
|
||||||
|
import AiFooter from '../components/AiFooter.vue'
|
||||||
|
import { handleBack } from '../hooks/useEvaluateBack'
|
||||||
|
|
||||||
|
const pageType = ref(0)
|
||||||
|
const pageId = ref(0)
|
||||||
|
|
||||||
|
const studyRecord = ref({ description: '', title: '', picCharts: {}, reportItems: [], hTag: '' })
|
||||||
|
|
||||||
|
onLoad((options) => {
|
||||||
|
pageType.value = +options.type
|
||||||
|
pageId.value = options.id
|
||||||
|
|
||||||
|
getHollandDimensionInfo({ ScaleId: pageId.value.toString() }).then((resp) => {
|
||||||
|
if (resp.code === 200) {
|
||||||
|
studyRecord.value = resp.result as {
|
||||||
|
description: string
|
||||||
|
title: string
|
||||||
|
picCharts: any
|
||||||
|
reportItems: any[]
|
||||||
|
hTag: string
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.custom-bg {
|
||||||
|
background: linear-gradient(184deg, #0d79fc 0%, #2186fc 100%);
|
||||||
|
}
|
||||||
|
:deep(.icon-class) {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-bg {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 40rpx;
|
||||||
|
z-index: 1;
|
||||||
|
width: calc(100% - 80rpx);
|
||||||
|
height: 244rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.type-tag {
|
||||||
|
min-width: 40rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.position-tag {
|
||||||
|
font-size: 26rpx;
|
||||||
|
text-align: center;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-row {
|
||||||
|
align-items: center;
|
||||||
|
font-size: 26rpx;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.avatar-item image {
|
||||||
|
border: 4rpx solid #fff;
|
||||||
|
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,155 @@
|
||||||
|
<route lang="json5" type="page">
|
||||||
|
{
|
||||||
|
style: {
|
||||||
|
navigationStyle: 'custom',
|
||||||
|
transparentTitle: 'always',
|
||||||
|
navigationBarTitleText: '',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</route>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||||
|
<Navbar
|
||||||
|
safeAreaInsetTop
|
||||||
|
:bordered="false"
|
||||||
|
leftArrow
|
||||||
|
@clickLeft="handleBack"
|
||||||
|
bg-color="transparent"
|
||||||
|
>
|
||||||
|
<template #title>
|
||||||
|
<text class="text-[#1F2329] text-[36rpx] font-medium text-[#fff]">学习技能报告</text>
|
||||||
|
</template>
|
||||||
|
</Navbar>
|
||||||
|
|
||||||
|
<view class="flex-1 overflow-auto relative">
|
||||||
|
<view class="flex flex-col flex-1 overflow-auto pb-[20rpx]">
|
||||||
|
<!-- 顶部卡片 -->
|
||||||
|
<view class="mt-[60rpx] mx-[24rpx]">
|
||||||
|
<StatusCard
|
||||||
|
:score="score"
|
||||||
|
:rules="anxietyRules"
|
||||||
|
tip="测评结果只做参考。"
|
||||||
|
:level="level"
|
||||||
|
:description="studyRecord.description"
|
||||||
|
:tagName="studyRecord.tagName"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
<view class="mx-[24rpx]">
|
||||||
|
<LearnSkillSuggestion
|
||||||
|
v-for="(item, index) in suggestions"
|
||||||
|
:key="index"
|
||||||
|
:items="item.items"
|
||||||
|
:title="item.title"
|
||||||
|
></LearnSkillSuggestion>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 底部AI智能顾问 -->
|
||||||
|
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||||
|
import StatusCard from '../components/StatusCard.vue'
|
||||||
|
import LearnSkillSuggestion from '../components/LearnSkillSuggestion.vue'
|
||||||
|
import AiFooter from '../components/AiFooter.vue'
|
||||||
|
import { getCustomScaleExplains } from '@/service/index/api'
|
||||||
|
import { handleBack } from '../hooks/useEvaluateBack'
|
||||||
|
|
||||||
|
const pageType = ref(0)
|
||||||
|
const pageId = ref(0)
|
||||||
|
const anxietyRules = [
|
||||||
|
{
|
||||||
|
label: '很差',
|
||||||
|
range: '≤80分',
|
||||||
|
color: '#F5663E',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '较差',
|
||||||
|
range: '81-104分',
|
||||||
|
color: '#F8B801',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '一般',
|
||||||
|
range: '105-136分',
|
||||||
|
color: '#F3A953',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '较好',
|
||||||
|
range: '137-160分',
|
||||||
|
color: '#55E5C5',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '优秀',
|
||||||
|
range: '≥161分',
|
||||||
|
color: '#00B281',
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
||||||
|
const score = ref(0)
|
||||||
|
const level = ref(0)
|
||||||
|
|
||||||
|
const studyRecord = ref({
|
||||||
|
description: '',
|
||||||
|
title: '',
|
||||||
|
result: '',
|
||||||
|
tagName: '',
|
||||||
|
suggestions: '',
|
||||||
|
})
|
||||||
|
|
||||||
|
const calcLevel = (val: string) => {
|
||||||
|
const _s = JSON.parse(val)
|
||||||
|
if (_s[0].Total >= 161) {
|
||||||
|
return 4
|
||||||
|
} else if (_s[0].Total >= 137) {
|
||||||
|
return 3
|
||||||
|
} else if (_s[0].Total >= 105) {
|
||||||
|
return 2
|
||||||
|
} else if (_s[0].Total >= 81) {
|
||||||
|
return 1
|
||||||
|
} else {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const suggestions = ref([])
|
||||||
|
|
||||||
|
onLoad((options) => {
|
||||||
|
pageType.value = +options.type
|
||||||
|
pageId.value = options.id
|
||||||
|
|
||||||
|
getCustomScaleExplains({ CustomScaleId: pageId.value }).then((resp) => {
|
||||||
|
if (resp.code === 200) {
|
||||||
|
studyRecord.value = resp.result as {
|
||||||
|
description: string
|
||||||
|
title: string
|
||||||
|
result: string
|
||||||
|
tagName: string
|
||||||
|
suggestions: string
|
||||||
|
}
|
||||||
|
level.value = calcLevel(studyRecord.value.result)
|
||||||
|
score.value = JSON.parse(studyRecord.value.result)[0].Total
|
||||||
|
suggestions.value = JSON.parse(studyRecord.value.suggestions).succestions
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.custom-bg {
|
||||||
|
background: linear-gradient(184deg, #0d79fc 0%, #2186fc 100%);
|
||||||
|
}
|
||||||
|
:deep(.icon-class) {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-border {
|
||||||
|
width: 162rpx;
|
||||||
|
height: 162rpx;
|
||||||
|
border: 6rpx dashed;
|
||||||
|
border-color: #05d69c transparent transparent transparent;
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,105 @@
|
||||||
|
<route lang="json5" type="page">
|
||||||
|
{
|
||||||
|
style: {
|
||||||
|
navigationStyle: 'custom',
|
||||||
|
transparentTitle: 'always',
|
||||||
|
navigationBarTitleText: '',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</route>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||||
|
<Navbar
|
||||||
|
safeAreaInsetTop
|
||||||
|
:bordered="false"
|
||||||
|
leftArrow
|
||||||
|
@clickLeft="handleBack"
|
||||||
|
bg-color="transparent"
|
||||||
|
>
|
||||||
|
<template #title>
|
||||||
|
<text class="text-[#1F2329] text-[36rpx] font-medium text-[#fff]">Solomon学习风格报告</text>
|
||||||
|
</template>
|
||||||
|
</Navbar>
|
||||||
|
|
||||||
|
<view class="flex-1 overflow-auto relative">
|
||||||
|
<view class="flex flex-col flex-1 overflow-auto pb-[20rpx]">
|
||||||
|
<!-- 顶部卡片 -->
|
||||||
|
<view class="mt-[60rpx] mx-[24rpx]">
|
||||||
|
<LearnStyleChart :pic-data="chartData" :parsing="parsing" />
|
||||||
|
</view>
|
||||||
|
<view class="mx-[24rpx]">
|
||||||
|
<LearnStudySuggestion
|
||||||
|
:title="item.name"
|
||||||
|
:item="item"
|
||||||
|
v-for="(item, index) in suggestions"
|
||||||
|
:key="index"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 底部AI智能顾问 -->
|
||||||
|
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||||
|
import LearnStyleChart from '../components/studyChart/LearnStyleChart.vue'
|
||||||
|
import LearnStudySuggestion from '../components/LearnStudySuggestion.vue'
|
||||||
|
import AiFooter from '../components/AiFooter.vue'
|
||||||
|
import { getCustomScaleExplains } from '@/service/index/api'
|
||||||
|
import { handleBack } from '../hooks/useEvaluateBack'
|
||||||
|
|
||||||
|
const pageType = ref(0)
|
||||||
|
const pageId = ref(0)
|
||||||
|
|
||||||
|
const studyRecord = ref({
|
||||||
|
description: '',
|
||||||
|
title: '',
|
||||||
|
result: '',
|
||||||
|
tagName: '',
|
||||||
|
suggestions: '',
|
||||||
|
})
|
||||||
|
|
||||||
|
const chartData = ref([])
|
||||||
|
const parsing = ref('')
|
||||||
|
const suggestions = ref([])
|
||||||
|
|
||||||
|
onLoad((options) => {
|
||||||
|
pageType.value = +options.type
|
||||||
|
pageId.value = options.id
|
||||||
|
|
||||||
|
getCustomScaleExplains({ CustomScaleId: pageId.value }).then((resp) => {
|
||||||
|
if (resp.code === 200) {
|
||||||
|
studyRecord.value = resp.result as {
|
||||||
|
description: string
|
||||||
|
title: string
|
||||||
|
result: string
|
||||||
|
tagName: string
|
||||||
|
suggestions: string
|
||||||
|
}
|
||||||
|
chartData.value = JSON.parse(studyRecord.value.result)
|
||||||
|
parsing.value = studyRecord.value.suggestions
|
||||||
|
suggestions.value = JSON.parse(studyRecord.value.description)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.custom-bg {
|
||||||
|
background: linear-gradient(184deg, #0d79fc 0%, #2186fc 100%);
|
||||||
|
}
|
||||||
|
:deep(.icon-class) {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-border {
|
||||||
|
width: 162rpx;
|
||||||
|
height: 162rpx;
|
||||||
|
border: 6rpx dashed;
|
||||||
|
border-color: #05d69c transparent transparent transparent;
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
Loading…
Reference in New Issue