feat: 增加报告解读
parent
a18be1e3be
commit
5d216ccf83
|
|
@ -33,7 +33,6 @@ const handleChildMessage = (event) => {
|
|||
}
|
||||
|
||||
onLoad((options) => {
|
||||
console.log(options)
|
||||
if (options.id) {
|
||||
url.value += `&reportId=${options.id}`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-[30rpx] relative mt-[40rpx]">
|
||||
<view class="flex-1 overflow-auto relative mt-[40rpx]">
|
||||
<!-- 顶部卡片 -->
|
||||
<view
|
||||
class="flex flex-col pt-[32rpx] mx-[24rpx] bg-[#fff] px-[30rpx] pt-[30rpx] border-class"
|
||||
|
|
@ -34,10 +34,7 @@
|
|||
<LineReport :echart-data="studyRecord.linChart" :description="studyRecord.description" />
|
||||
<AbilityDimension :report-items="studyRecord.reportItems" />
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<!-- <view class="ai-assistant mt-[20rpx] mb-[10rpx] flex items-center justify-center">
|
||||
<image src="" class="w-[32rpx] h-[32rpx] mr-[10rpx]"></image>
|
||||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -45,6 +42,7 @@
|
|||
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 { getAbilityDimension } from '@/service/index/api'
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-[30rpx] relative mt-[40rpx]">
|
||||
<view class="flex-1 overflow-auto relative mt-[40rpx]">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="flex flex-col pt-[32rpx] px-[84rpx] h-[244rpx] mb-[-116rpx] font-700">
|
||||
<image src="https://api.static.ycymedu.com/src/images/evaluate/bg.png" class="header-bg" />
|
||||
|
|
@ -37,10 +37,7 @@
|
|||
/>
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<!-- <view class="ai-assistant mt-[20rpx] mb-[10rpx] flex items-center justify-center">
|
||||
<image src="" class="w-[32rpx] h-[32rpx] mr-[10rpx]"></image>
|
||||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -48,7 +45,7 @@
|
|||
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'
|
||||
|
||||
const pageType = ref(0)
|
||||
|
|
|
|||
|
|
@ -38,20 +38,7 @@
|
|||
<InterestingThings :tag="studyRecord.hTag" :description="studyRecord.description" />
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<!-- <view
|
||||
class="pt-[16rpx] px-[32rpx] mt-[20rpx] flex items-center justify-center bg-[#fff] pb-safe"
|
||||
@click="toAiAssistant"
|
||||
>
|
||||
<view
|
||||
class="rounded-[8rpx] border-[#1580FF] border-[2rpx] border-solid w-full pt-[22rpx] pb-[20rpx] flex items-center justify-center"
|
||||
>
|
||||
<image
|
||||
src="https://api.static.ycymedu.com/images/btn-bottom.png"
|
||||
class="w-[52rpx] h-[52rpx] mr-[10rpx]"
|
||||
></image>
|
||||
<text class="text-[#1580FF] text-[32rpx] font-700">智能AI顾问</text>
|
||||
</view>
|
||||
</view> -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -63,6 +50,7 @@ import IntroMajor from '../components/IntroMajor.vue'
|
|||
|
||||
import { getHollandDimensionInfo } from '@/service/index/api'
|
||||
import InterestingThings from '../components/InterestingThings.vue'
|
||||
import AiFooter from '../components/AiFooter.vue'
|
||||
|
||||
const pageType = ref(0)
|
||||
const pageId = ref(0)
|
||||
|
|
@ -73,12 +61,6 @@ const handleBack = () => {
|
|||
|
||||
const studyRecord = ref({ description: '', title: '', picCharts: {}, reportItems: [], hTag: '' })
|
||||
|
||||
const toAiAssistant = () => {
|
||||
uni.navigateTo({
|
||||
url: `/aiService-sub/index/index?id=${pageId.value}&type=${pageType.value}`,
|
||||
})
|
||||
}
|
||||
|
||||
onLoad((options) => {
|
||||
pageType.value = +options.type
|
||||
pageId.value = options.id
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-[30rpx] relative mt-[40rpx]">
|
||||
<view class="flex-1 overflow-auto relative mt-[40rpx]">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="flex flex-col pt-[32rpx] px-[84rpx] h-[244rpx] mb-[-116rpx] font-700">
|
||||
<image src="https://api.static.ycymedu.com/src/images/evaluate/bg.png" class="header-bg" />
|
||||
|
|
@ -30,10 +30,7 @@
|
|||
<OpinionChart :pic-charts="studyRecord.picCharts" />
|
||||
<AbilityDimension :report-items="studyRecord.reportItems" />
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<!-- <view class="ai-assistant mt-[20rpx] mb-[10rpx] flex items-center justify-center">
|
||||
<image src="" class="w-[32rpx] h-[32rpx] mr-[10rpx]"></image>
|
||||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -41,6 +38,7 @@
|
|||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
import OpinionChart from '../components/interestChart/OpinionChart.vue'
|
||||
import AbilityDimension from '../components/AbilityDimension.vue'
|
||||
import AiFooter from '../components/AiFooter.vue'
|
||||
|
||||
import { getOpinionAbout } from '@/service/index/api'
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,36 @@
|
|||
<template>
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<view
|
||||
class="pt-[16rpx] px-[32rpx] mt-[20rpx] flex items-center justify-center bg-[#fff] pb-safe"
|
||||
@click="toAiAssistant"
|
||||
>
|
||||
<view
|
||||
class="rounded-[8rpx] border-[#1580FF] border-[2rpx] border-solid w-full pt-[22rpx] pb-[20rpx] flex items-center justify-center"
|
||||
>
|
||||
<image
|
||||
src="https://api.static.ycymedu.com/images/btn-bottom.png"
|
||||
class="w-[52rpx] h-[52rpx] mr-[10rpx]"
|
||||
></image>
|
||||
<text class="text-[#1580FF] text-[32rpx] font-700">智能AI顾问</text>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
const props = defineProps({
|
||||
pageId: {
|
||||
type: Number,
|
||||
default: 0,
|
||||
},
|
||||
pageType: {
|
||||
type: Number,
|
||||
default: 0,
|
||||
},
|
||||
})
|
||||
|
||||
const toAiAssistant = () => {
|
||||
uni.navigateTo({
|
||||
url: `/aiService-sub/index/index?id=${props.pageId}&type=${props.pageType}`,
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
|
@ -20,12 +20,11 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-safe relative mx-[24rpx]">
|
||||
<view class="flex-1 overflow-auto relative">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="mt-[30rpx]">
|
||||
<view class="mt-[30rpx] mx-[24rpx]">
|
||||
<StatusCard />
|
||||
</view>
|
||||
<view class="mt-[30rpx]"></view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -20,9 +20,9 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-safe relative mx-[24rpx]">
|
||||
<view class="flex-1 overflow-auto relative">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="mt-[30rpx]">
|
||||
<view class="mt-[30rpx] mx-[24rpx]">
|
||||
<StatusCard
|
||||
:score="score"
|
||||
:rules="anxietyRules"
|
||||
|
|
@ -32,9 +32,12 @@
|
|||
:tagName="studyRecord.tagName"
|
||||
/>
|
||||
</view>
|
||||
<view class="mt-[30rpx]">
|
||||
<view class="mt-[30rpx] mx-[24rpx]">
|
||||
<SuggestionCard />
|
||||
</view>
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -42,7 +45,7 @@
|
|||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
import StatusCard from '../components/StatusCard.vue'
|
||||
import SuggestionCard from '../components/SuggestionCard.vue'
|
||||
|
||||
import AiFooter from '../components/AiFooter.vue'
|
||||
import { getCustomScaleExplains } from '@/service/index/api'
|
||||
|
||||
const pageType = ref(0)
|
||||
|
|
|
|||
|
|
@ -20,9 +20,9 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-safe relative mx-[24rpx]">
|
||||
<view class="flex-1 overflow-auto relative">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="mt-[30rpx]">
|
||||
<view class="mt-[30rpx] mx-[24rpx]">
|
||||
<StatusCard
|
||||
:score="score"
|
||||
:rules="depressionRules"
|
||||
|
|
@ -32,9 +32,12 @@
|
|||
:tagName="studyRecord.tagName"
|
||||
/>
|
||||
</view>
|
||||
<view class="mt-[30rpx]">
|
||||
<view class="mt-[30rpx] mx-[24rpx]">
|
||||
<SuggestionCard />
|
||||
</view>
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -42,9 +45,8 @@
|
|||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
import StatusCard from '../components/StatusCard.vue'
|
||||
import SuggestionCard from '../components/SuggestionCard.vue'
|
||||
|
||||
import { getCustomScaleExplains } from '@/service/index/api'
|
||||
|
||||
import AiFooter from '../components/AiFooter.vue'
|
||||
const pageType = ref(0)
|
||||
const pageId = ref(0)
|
||||
|
||||
|
|
|
|||
|
|
@ -20,9 +20,9 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-safe relative mx-[24rpx]">
|
||||
<view class="flex-1 overflow-auto relative">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="mt-[60rpx]">
|
||||
<view class="mt-[60rpx] mx-[24rpx]">
|
||||
<StatusCard
|
||||
:score="score"
|
||||
:rules="anxietyRules"
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
:tagName="studyRecord.tagName"
|
||||
/>
|
||||
</view>
|
||||
<view>
|
||||
<view class="mx-[24rpx]">
|
||||
<LearnSkillSuggestion
|
||||
v-for="(item, index) in suggestions"
|
||||
:key="index"
|
||||
|
|
@ -40,6 +40,9 @@
|
|||
:title="item.title"
|
||||
></LearnSkillSuggestion>
|
||||
</view>
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -47,7 +50,7 @@
|
|||
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'
|
||||
|
||||
const pageType = ref(0)
|
||||
|
|
|
|||
|
|
@ -20,12 +20,12 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-safe relative mx-[24rpx]">
|
||||
<view class="flex-1 overflow-auto relative">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="mt-[60rpx]">
|
||||
<view class="mt-[60rpx] mx-[24rpx]">
|
||||
<LearnStyleChart :pic-data="chartData" :parsing="parsing" />
|
||||
</view>
|
||||
<view>
|
||||
<view class="mx-[24rpx]">
|
||||
<LearnStudySuggestion
|
||||
:title="item.name"
|
||||
:item="item"
|
||||
|
|
@ -33,6 +33,9 @@
|
|||
:key="index"
|
||||
/>
|
||||
</view>
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -40,7 +43,7 @@
|
|||
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'
|
||||
|
||||
const pageType = ref(0)
|
||||
|
|
|
|||
|
|
@ -20,9 +20,9 @@
|
|||
</template>
|
||||
</Navbar>
|
||||
|
||||
<view class="flex-1 overflow-auto pb-safe relative mx-[24rpx]">
|
||||
<view class="flex-1 overflow-auto relative">
|
||||
<!-- 顶部卡片 -->
|
||||
<view class="mt-[60rpx]">
|
||||
<view class="mt-[60rpx] mx-[24rpx]">
|
||||
<StatusCard
|
||||
:score="score"
|
||||
:rules="anxietyRules"
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
:tagName="studyRecord.tagName"
|
||||
/>
|
||||
</view>
|
||||
<view>
|
||||
<view class="mx-[24rpx]">
|
||||
<LearnSkillSuggestion
|
||||
v-for="(item, index) in suggestions"
|
||||
:key="index"
|
||||
|
|
@ -40,6 +40,9 @@
|
|||
:title="item.title"
|
||||
></LearnSkillSuggestion>
|
||||
</view>
|
||||
|
||||
<!-- 底部AI智能顾问 -->
|
||||
<AiFooter :pageId="pageId" :pageType="pageType" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
@ -47,7 +50,7 @@
|
|||
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'
|
||||
|
||||
const pageType = ref(0)
|
||||
|
|
|
|||
|
|
@ -248,14 +248,14 @@ const getNvueHwight = (type) => {
|
|||
// 组件挂载后初始化 - 注册部分的修改
|
||||
onMounted(() => {
|
||||
if (!collapseContext) {
|
||||
console.error('找不到折叠面板父组件上下文!')
|
||||
// console.error('找不到折叠面板父组件上下文!')
|
||||
return
|
||||
}
|
||||
|
||||
// 设置nameSync
|
||||
nameSync.value = props.name !== '' ? props.name.toString() : `${collapseContext.childrens.length}`
|
||||
|
||||
console.log('折叠项挂载:', nameSync.value)
|
||||
// console.log('折叠项挂载:', nameSync.value)
|
||||
|
||||
// 注册到父组件 - 确保传递所有必要的参数
|
||||
collapseContext.register({
|
||||
|
|
@ -277,9 +277,9 @@ onMounted(() => {
|
|||
nextTick(() => {
|
||||
if (collapseContext.getActiveNames) {
|
||||
const activeNames = collapseContext.getActiveNames()
|
||||
console.log('当前活动项:', activeNames, '本项:', nameSync.value)
|
||||
// console.log('当前活动项:', activeNames, '本项:', nameSync.value)
|
||||
if (activeNames.includes(nameSync.value.toString())) {
|
||||
console.log('默认展开:', nameSync.value)
|
||||
// console.log('默认展开:', nameSync.value)
|
||||
isOpen.value = true
|
||||
// 更新高度
|
||||
init()
|
||||
|
|
|
|||
|
|
@ -308,6 +308,7 @@ const handleSubmit = () => {
|
|||
position: relative;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding-bottom: calc(20rpx + constant(safe-area-inset-bottom));
|
||||
padding-bottom: calc(env(safe-area-inset-bottom) + 20rpx);
|
||||
|
||||
// 如果 safe-area-inset-bottom 为 0,则 padding-bottom 为 20rpx
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</route>
|
||||
|
||||
<template>
|
||||
<scroll-view scroll-y class="pb-safe bg-[#f8f8f8] h-screen">
|
||||
<scroll-view scroll-y class="bg-[#f8f8f8] h-screen">
|
||||
<view class="px-[32rpx] mt-[32rpx] flex flex-col gap-[16rpx]">
|
||||
<view
|
||||
v-for="(item, index) in list"
|
||||
|
|
|
|||
Loading…
Reference in New Issue