refactor: 页面优化
parent
ab1beec959
commit
303284fd96
|
|
@ -26,6 +26,8 @@ export const initRankAreaEchart = ({
|
|||
show: false,
|
||||
},
|
||||
grid: {
|
||||
left: '16',
|
||||
right: '16',
|
||||
containLabel: false,
|
||||
},
|
||||
series: [
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</route>
|
||||
|
||||
<template>
|
||||
<scroll-view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||
<view class="flex flex-col h-screen relative custom-bg">
|
||||
<Navbar
|
||||
safeAreaInsetTop
|
||||
:bordered="false"
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</route>
|
||||
|
||||
<template>
|
||||
<scroll-view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||
<view class="flex flex-col h-screen relative custom-bg">
|
||||
<Navbar
|
||||
safeAreaInsetTop
|
||||
:bordered="false"
|
||||
|
|
@ -42,7 +42,7 @@
|
|||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</route>
|
||||
|
||||
<template>
|
||||
<scroll-view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||
<view class="flex flex-col h-screen relative custom-bg">
|
||||
<Navbar
|
||||
safeAreaInsetTop
|
||||
:bordered="false"
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</route>
|
||||
|
||||
<template>
|
||||
<scroll-view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||
<view :scroll-y="true" class="flex flex-col h-screen relative custom-bg">
|
||||
<Navbar
|
||||
safeAreaInsetTop
|
||||
:bordered="false"
|
||||
|
|
@ -35,7 +35,7 @@
|
|||
<text class="text-[#117CFC] text-[26rpx]">智能AI顾问</text>
|
||||
</view> -->
|
||||
</view>
|
||||
</scroll-view>
|
||||
</view>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import Navbar from '@/pages-evaluation-sub/components/navbar/Navbar.vue'
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
</view>
|
||||
|
||||
<view
|
||||
:class="`flex py-[15rpx] px-[36rpx] ${index % 2 === 0 ? 'bg-[#fff]' : 'bg-[#F5FAFF]'}`"
|
||||
:class="`flex py-[15rpx] text-[#333] text-[24rpx] px-[36rpx] ${index % 2 === 0 ? 'bg-[#fff]' : 'bg-[#F5FAFF]'}`"
|
||||
v-for="(major, index) in majorList"
|
||||
:key="index"
|
||||
>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<view class="py-[12rpx] text-center bg-color flex-1">性格特点</view>
|
||||
</view>
|
||||
<view class="flex gap-[10rpx] w-full" v-for="(item, index) in reportItems" :key="index">
|
||||
<view class="w-[94rpx] py-[12rpx] bg-color text-center">
|
||||
<view
|
||||
class="w-[94rpx] py-[12rpx] bg-color text-center flex flex-col justify-center items-center"
|
||||
>
|
||||
<view>{{ item.tag }}</view>
|
||||
<view>{{ item.title }}</view>
|
||||
</view>
|
||||
|
|
|
|||
|
|
@ -145,6 +145,12 @@ const searchParams = ref({
|
|||
})
|
||||
|
||||
const handleConfirm = () => {
|
||||
let maxSCore = betweenScores.value.split('到').map((item) => item.replace(/分/g, ''))
|
||||
if (+searchParams.value.Score > +maxSCore[1]) {
|
||||
searchParams.value.Score = maxSCore[1]
|
||||
} else if (+searchParams.value.Score < +maxSCore[0]) {
|
||||
searchParams.value.Score = maxSCore[0]
|
||||
}
|
||||
getScoreSectionData()
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@ const handleClose = () => {
|
|||
}
|
||||
|
||||
&-content {
|
||||
max-height: 75vh;
|
||||
max-height: 55vh;
|
||||
min-height: 500rpx;
|
||||
}
|
||||
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -15,10 +15,10 @@
|
|||
</Navbar>
|
||||
|
||||
<view class="flex-1 bg-[#F8F8F8] px-[32rpx] pb-safe">
|
||||
<view class="mt-[84rpx] h-[754rpx] radius-[16rpx] bg-[#fff]">
|
||||
<view class="mt-[84rpx] h-[754rpx] rounded-[16rpx] bg-[#fff]">
|
||||
<view class="py-[48rpx] mx-[48rpx] avatar-border flex justify-center items-center">
|
||||
<image
|
||||
class="w-[144rpx] h-[144rpx] rounded-full"
|
||||
class="min-w-[144rpx] min-h-[144rpx] w-[144rpx] h-[144rpx] rounded-full"
|
||||
src="https://api.static.ycymedu.com/sub/images/customerService/avatar.jpg"
|
||||
></image>
|
||||
<view class="flex flex-col text-[#000] ml-[32rpx]">
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@
|
|||
</view>
|
||||
</view>
|
||||
|
||||
<MessageBox v-model:show="show" title="" :defaultPadding="false">
|
||||
<MessageBox v-model:show="show" title="" :defaultPadding="false" defaultWidth="85%">
|
||||
<template>
|
||||
<view class="custom-background">
|
||||
<view class="px-[32rpx] pt-[48rpx]">
|
||||
|
|
@ -70,10 +70,12 @@
|
|||
<view
|
||||
class="bg-[rgba(21,128,255,0.1)] flex items-center gap-[10rpx] text-[24rpx] text-[#444] px-[24rpx] py-[6rpx] w-max rounded-[10rpx] mt-[10rpx]"
|
||||
>
|
||||
<view class="i-carbon-time-filled text-[#1580FF]"></view>
|
||||
<view class="i-carbon-time-filled text-[#1580FF] w-[24rpx] h-[24rpx]"></view>
|
||||
<view>{{ useTime }}</view>
|
||||
</view>
|
||||
<view class="text-[30rpx] my-[40rpx]">{{ quesApplication }}</view>
|
||||
<view class="text-[30rpx] my-[40rpx] text-[#333] text-[28rpx]">
|
||||
{{ quesApplication }}
|
||||
</view>
|
||||
</view>
|
||||
<view
|
||||
class="text-center py-[26rpx] text-[#1580FF] text-[36rpx] font-medium start-border"
|
||||
|
|
@ -317,4 +319,9 @@ const handleSubmit = () => {
|
|||
transform: translate3d(0, 0, 0);
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
wx-button[disabled]:not([type]) {
|
||||
background-color: rgba(255, 255, 255, 0.4);
|
||||
color: #fff;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
</Badge>
|
||||
|
||||
<image
|
||||
class="w-[286rpx] h-[286rpx] mt-[134rpx] mix-blend-multiply bg-[#f8f8f8]"
|
||||
class="w-[286rpx] h-[286rpx] mt-[134rpx]"
|
||||
src="https://api.static.ycymedu.com/sub/images/autoFill/auto-fill.jpg"
|
||||
mode="widthFix"
|
||||
@click="show = true"
|
||||
|
|
@ -66,10 +66,6 @@ import { useUserStore } from '@/store/user'
|
|||
|
||||
const userStore = useUserStore()
|
||||
|
||||
const navigatorBack = () => {
|
||||
uni.navigateBack()
|
||||
}
|
||||
|
||||
const show = ref(false)
|
||||
const badgeValue = ref(1)
|
||||
|
||||
|
|
|
|||
|
|
@ -2,14 +2,14 @@
|
|||
<view class="flex flex-col">
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">简介</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ careerInfo.intro }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="h-[16rpx] bg-[#f8f8f8] mt-[36rpx] mb-[40rpx]"></view>
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">职业定义</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ careerInfo.definition }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
|
|||
|
|
@ -4,19 +4,19 @@
|
|||
<text class="text-[32rpx] text-[#333] font-semibold mb-[23rpx]">发展前景</text>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">行业发展前景</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ prospect.industry }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">个人发展路径</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ prospect.person }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">职业的就业趋势</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ prospect.career }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
@ -26,19 +26,19 @@
|
|||
<text class="text-[32rpx] text-[#333] font-semibold mb-[23rpx]">薪资待遇</text>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">薪资结构</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ salary.structure }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">满意度</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ salary.satisfaction }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">福利制度</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ salary.welfare }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
|
|||
|
|
@ -2,28 +2,28 @@
|
|||
<view class="flex flex-col">
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">学历要求</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ knowledgeInfo.diplomas }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="h-[16rpx] bg-[#f8f8f8] mt-[36rpx] mb-[40rpx]"></view>
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">行业知识</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ knowledgeInfo.trade }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="h-[16rpx] bg-[#f8f8f8] mt-[36rpx] mb-[40rpx]"></view>
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">专业知识</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ knowledgeInfo.pro }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="h-[16rpx] bg-[#f8f8f8] mt-[36rpx] mb-[40rpx]"></view>
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">大学课程</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ jsonCurriculum.important }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
<template>
|
||||
<view class="bg-white flex w-full flex-1">
|
||||
<view class="w-[260rpx] bg-[#F7F8FA] flex flex-col items-center">
|
||||
<view class="bg-white flex h-full">
|
||||
<view class="w-[260rpx] bg-[#F7F8FA] flex flex-col items-center overflow-y-auto h-full">
|
||||
<view
|
||||
v-for="item in menus"
|
||||
:key="item._id"
|
||||
:class="[
|
||||
'flex items-center view-block pl-[32rpx] h-[96rpx] text-[28rpx] font-semibold',
|
||||
'flex items-center view-block pl-[32rpx] min-h-[96rpx]! text-[28rpx] text-[#666]',
|
||||
currentMenuObj?._id === item._id ? 'active' : '',
|
||||
]"
|
||||
@click="changeMenu(item)"
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
{{ item.rootName }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="flex-1 mt-[40rpx] flex flex-col">
|
||||
<view class="flex-1 mt-[40rpx] flex flex-col overflow-y-auto h-full">
|
||||
<MajorTreeList v-if="currentMenuObj" :sub-major-list="currentMenuObj" />
|
||||
</view>
|
||||
</view>
|
||||
|
|
|
|||
|
|
@ -3,14 +3,14 @@
|
|||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[23rpx]">职业技能</text>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">专业技能</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<view class="text-[26rpx] text-[#333] font-semibold">专业技能</view>
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ proSkill.skill_pro }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">通用技能</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<view class="text-[26rpx] text-[#333] font-semibold">通用技能</view>
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ proSkill.skill_general }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
@ -19,14 +19,14 @@
|
|||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[23rpx]">从业资格</text>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">必须项</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<view class="text-[26rpx] text-[#333] font-semibold">必须项</view>
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ qualification.necessary }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="mb-[36rpx]">
|
||||
<view class="text-[24rpx] text-[#333] font-semibold">附加项</view>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<view class="text-[26rpx] text-[#333] font-semibold">附加项</view>
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ qualification.addition }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
@ -34,7 +34,7 @@
|
|||
<view class="h-[16rpx] bg-[#f8f8f8] mt-[36rpx] mb-[40rpx]"></view>
|
||||
<view class="flex flex-col px-[32rpx] mt-[40rpx]">
|
||||
<text class="text-[32rpx] text-[#333] font-semibold mb-[22rpx]">职业道德</text>
|
||||
<text class="text-[22rpx] text-[#636363]">
|
||||
<text class="text-[24rpx] text-[#636363]">
|
||||
{{ ethics }}
|
||||
</text>
|
||||
</view>
|
||||
|
|
|
|||
|
|
@ -21,8 +21,8 @@
|
|||
<view class="custom-background h-[200rpx] w-full absolute top-0 left-0 z-[-1]"></view>
|
||||
</view>
|
||||
|
||||
<view class="flex-1 h-[0] overflow-auto pb-safe">
|
||||
<LeftMenu />
|
||||
<view class="flex-1 pb-safe flex flex-col overflow-y-auto">
|
||||
<LeftMenu class="h-full" />
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
</button>
|
||||
|
||||
<ActionSheet v-model:show="show" title="院校简介" :show-close="true">
|
||||
<view class="text-[22rpx] text-[#636363] px-[32rpx] pt-[32rpx]">
|
||||
<view class="text-[24rpx] text-[#636363] px-[32rpx] pt-[32rpx]">
|
||||
{{ universityResult?.detail }}
|
||||
</view>
|
||||
</ActionSheet>
|
||||
|
|
|
|||
|
|
@ -41,9 +41,9 @@
|
|||
{{ universityBaseInfo?.universityResult.features.slice(0, 4).join('/ ') }}
|
||||
</text>
|
||||
</view>
|
||||
<button class="collect-btn" plain @click="handleStar">
|
||||
<view class="i-carbon-star-filled" v-if="startFlag"></view>
|
||||
<view class="i-carbon-star" v-else></view>
|
||||
<button class="collect-btn whitespace-nowrap" plain @click="handleStar">
|
||||
<view class="i-carbon-star-filled min-w-[24rpx] min-h-[24rxp]" v-if="startFlag"></view>
|
||||
<view class="i-carbon-star min-w-[24rpx] min-h-[24rxp]" v-else></view>
|
||||
收藏
|
||||
</button>
|
||||
</view>
|
||||
|
|
@ -203,8 +203,7 @@ const handleStar = () => {
|
|||
border: 2rpx solid #eee !important;
|
||||
color: #636363 !important;
|
||||
|
||||
width: unset !important;
|
||||
min-width: unset !important;
|
||||
min-width: max-content !important;
|
||||
border-radius: 12rpx !important;
|
||||
margin-right: 0 !important;
|
||||
padding: 12rpx !important;
|
||||
|
|
@ -215,5 +214,6 @@ const handleStar = () => {
|
|||
align-items: center !important;
|
||||
|
||||
font-size: 24rpx !important;
|
||||
width: max-content !important;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ import { getBatchDynamicData, getWxUserInfo } from '@/service/index/api'
|
|||
import RadioGroup from '@/pages-sub/components/radio-group/RadioGroup.vue'
|
||||
import Radio from '@/pages-sub/components/radio-group/Radio.vue'
|
||||
import { useUserStore } from '@/store/user'
|
||||
import { useRules } from '@/pages-sub/home/inputScore/useRules'
|
||||
|
||||
const userStore = useUserStore()
|
||||
|
||||
|
|
@ -52,7 +53,8 @@ const fetchBatchData = () => {
|
|||
}
|
||||
|
||||
onLoad(() => {
|
||||
fetchBatchData()
|
||||
useRules(fetchBatchData)
|
||||
|
||||
// if (userStore.userInfo.batchDataUrl) {
|
||||
// fetchBatchData()
|
||||
// } else {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -15,6 +15,7 @@
|
|||
@virtualListChange="virtualListChange"
|
||||
@query="queryList"
|
||||
:auto-show-system-loading="true"
|
||||
:safe-area-inset-bottom="true"
|
||||
>
|
||||
<template #top>
|
||||
<view class="relative">
|
||||
|
|
@ -30,7 +31,7 @@
|
|||
</view>
|
||||
<drop-menu>
|
||||
<drop-menu-item :key="1" :title="'省份'" custom-class="flex items-center">
|
||||
<view class="pl-[32rpx] pb-[32rpx]">
|
||||
<view class="pl-[32rpx] pb-[32rpx] pt-[16rpx]">
|
||||
<Region
|
||||
:defaultValue="searchParams.locationCode"
|
||||
@changeName="handleRegionChange"
|
||||
|
|
@ -39,12 +40,12 @@
|
|||
</view>
|
||||
</drop-menu-item>
|
||||
<drop-menu-item :key="2" :title="'层次'" custom-class="flex items-center">
|
||||
<view class="pl-[32rpx] pb-[32rpx]">
|
||||
<view class="pl-[32rpx] pb-[32rpx] pt-[16rpx]">
|
||||
<Nature @changeName="handleNatureChange" />
|
||||
</view>
|
||||
</drop-menu-item>
|
||||
<drop-menu-item :key="3" title="类别" custom-class="flex items-center">
|
||||
<view class="pl-[32rpx] pb-[32rpx]">
|
||||
<view class="pl-[32rpx] pb-[32rpx] pt-[16rpx]">
|
||||
<UniType @change-name="handleUniTypeChange" />
|
||||
</view>
|
||||
</drop-menu-item>
|
||||
|
|
@ -68,10 +69,14 @@
|
|||
<view
|
||||
class="bg-[#F7F7F7] flex items-center justify-between text-[20rpx] text-[#333] px-[28rpx] py-[16rpx] sticky top-0"
|
||||
>
|
||||
<view class="flex-auto">院校</view>
|
||||
<view class="w-[80rpx] text-center px-[25rpx]">招生专业</view>
|
||||
<view class="w-[86rpx] text-center px-[25rpx]">{{ tModel.year }}计划</view>
|
||||
<view class="w-[66rpx] text-center pl-[25rpx]">较{{ tModel.year - 1 }}</view>
|
||||
<view class="flex-auto text-[24rpx] font-semibold">院校</view>
|
||||
<view class="w-[96rpx] text-center px-[16rpx] text-[24rpx] font-semibold">招生专业</view>
|
||||
<view class="w-[116rpx] text-center px-[16rpx] text-[24rpx] font-semibold">
|
||||
{{ tModel.year }}计划
|
||||
</view>
|
||||
<view class="w-[86rpx] text-center pl-[16rpx] text-[24rpx] font-semibold">
|
||||
较{{ tModel.year - 1 }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view
|
||||
|
|
@ -84,7 +89,7 @@
|
|||
<view class="flex-1 flex items-center">
|
||||
<image :src="item.logo" mode="scaleToFill" class="w-[72rpx] h-[72rpx] mr-[6rpx]" />
|
||||
<view class="ml-[6rpx]">
|
||||
<view class="text-[32rpx] font-semibold">
|
||||
<view class="text-[32rpx] font-semibold truncate max-w-[200rpx]">
|
||||
{{ item.name }}
|
||||
</view>
|
||||
<view class="mt-[6rpx] text-[22rpx]">
|
||||
|
|
@ -93,9 +98,9 @@
|
|||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="w-[80rpx] text-center px-[25rpx]">{{ item.planCount }}</view>
|
||||
<view class="w-[86rpx] text-center px-[25rpx]">{{ item.newPlan }}人</view>
|
||||
<view class="w-[66rpx] text-center pl-[25rpx] pr-[28rpx]">
|
||||
<view class="w-[96rpx] text-center px-[16rpx] text-[24rpx]">{{ item.planCount }}</view>
|
||||
<view class="w-[116rpx] text-center px-[16rpx] text-[24rpx]">{{ item.newPlan }}人</view>
|
||||
<view class="w-[86rpx] text-center pl-[16rpx] pr-[28rpx] text-[24rpx]">
|
||||
<text v-if="item.newPlan - item.oldPlan === 0">相同</text>
|
||||
<view v-else class="flex items-center justify-center gap-[10rpx]">
|
||||
<text>{{ item.newPlan - item.oldPlan }}</text>
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ export const requireSubject = ref('')
|
|||
// 任意选择科目
|
||||
export const optionalSubject = ref([])
|
||||
|
||||
export const useRules = () => {
|
||||
export const useRules = (callback?: any) => {
|
||||
getCountryRules().then((res) => {
|
||||
if (res.code === 200) {
|
||||
const results = res.result as RuleResult[]
|
||||
|
|
@ -26,6 +26,7 @@ export const useRules = () => {
|
|||
return
|
||||
}
|
||||
splitSubject(requireSubjectList.value, optionalSubjectList.value)
|
||||
callback()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
</view>
|
||||
<drop-menu>
|
||||
<drop-menu-item :key="1" :title="searchParams.locationName || '省份'">
|
||||
<view class="pl-[32rpx] pb-[32rpx]">
|
||||
<view class="pl-[32rpx] pb-[32rpx] pt-[16rpx]">
|
||||
<Region
|
||||
:defaultValue="searchParams.locationCode ? [searchParams.locationCode] : []"
|
||||
:max="1"
|
||||
|
|
@ -35,7 +35,7 @@
|
|||
:title="searchParams.year || '年份'"
|
||||
custom-class="flex items-center"
|
||||
>
|
||||
<view class="pl-[32rpx] pb-[32rpx]">
|
||||
<view class="pl-[32rpx] pb-[32rpx] pt-[16rpx]">
|
||||
<CheckGroup
|
||||
:list="checkYearList"
|
||||
:default-value="searchParams.year ? [searchParams.year] : []"
|
||||
|
|
@ -47,7 +47,7 @@
|
|||
</view>
|
||||
</drop-menu-item>
|
||||
<drop-menu-item :key="3" title="类别" custom-class="flex items-center">
|
||||
<view class="pl-[32rpx] pb-[32rpx]">
|
||||
<view class="pl-[32rpx] pb-[32rpx] pt-[16rpx]">
|
||||
<UniType
|
||||
@change="handleUniTypeChange"
|
||||
:max="1"
|
||||
|
|
@ -56,7 +56,7 @@
|
|||
</view>
|
||||
</drop-menu-item>
|
||||
</drop-menu>
|
||||
<WXXTable :data="lineList" class="px-[32rpx] mt-[16rpx] pb-safe">
|
||||
<WXXTable :data="lineList" class="px-[32rpx] mt-[16rpx] pb-safe flex-1">
|
||||
<WXXTableCol prop="province_name" label="地区" width="14%"></WXXTableCol>
|
||||
<WXXTableCol prop="year" label="年份" width="23%"></WXXTableCol>
|
||||
<WXXTableCol prop="subject_name" label="类别" width="23%"></WXXTableCol>
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@
|
|||
bg-color="transparent"
|
||||
:bordered="false"
|
||||
left-arrow
|
||||
title="查职业"
|
||||
@click-left="navigatorBack"
|
||||
content-class="justify-start"
|
||||
>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
.custom-background {
|
||||
background-image: linear-gradient(
|
||||
173deg,
|
||||
rgb(177, 221, 250) 0,
|
||||
rgb(228, 241, 247) 0,
|
||||
rgb(177, 221, 250) 13%,
|
||||
rgba(255, 255, 255, 1) 80%,
|
||||
rgba(255, 255, 255, 1) 100%
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
<view
|
||||
v-for="major in college.items"
|
||||
:key="major.planId"
|
||||
class="pt-[32rpx] pl-[58rpx] pr-[32rpx] pb-[30rpx] custom-background flex gap-[58rpx]"
|
||||
class="pt-[32rpx] px-[32rpx] pb-[30rpx] custom-background flex gap-[58rpx]"
|
||||
:style="`--background-color:${calcTypeName(major.type).style.backgroundColor}`"
|
||||
>
|
||||
<view class="flex flex-col gap-[16rpx]">
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<view
|
||||
v-for="(headItem, index) in columns"
|
||||
:key="index"
|
||||
class="text-[22rpx] text-[#505050]"
|
||||
class="text-[24rpx] text-[#505050]"
|
||||
:style="{ width: headItem.width }"
|
||||
>
|
||||
{{ headItem.label }}
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
>
|
||||
<view
|
||||
v-for="(col, colIndex) in columns"
|
||||
class="text-[22rpx] text-[#505050]"
|
||||
class="text-[24rpx] text-[#505050]"
|
||||
:style="{ width: col.width }"
|
||||
:key="colIndex"
|
||||
>
|
||||
|
|
|
|||
|
|
@ -15,8 +15,7 @@
|
|||
college.items.reduce((a, b) => a + Number(b.percentAge.replace('%', '')), 0) /
|
||||
college.items.length,
|
||||
)
|
||||
}}
|
||||
%
|
||||
}}%
|
||||
</text>
|
||||
</view>
|
||||
<view class="flex flex-col ml-[24rpx] justify-between flex-1">
|
||||
|
|
@ -40,9 +39,9 @@
|
|||
</view>
|
||||
</view>
|
||||
|
||||
<view class="flex flex-col gap-[8rpx] items-center">
|
||||
<view class="flex flex-col gap-[8rpx] items-center whitespace-nowrap">
|
||||
<view
|
||||
class="text-[24rpx] px-[16rpx] py-[12rpx] rounded-[8rpx] border-[2rpx] border-[#1580FF] border-solid"
|
||||
class="text-[24rpx] px-[16rpx] py-[12rpx] rounded-[8rpx] border-[2rpx] border-[#1580FF] border-solid whitespace-nowrap"
|
||||
@click.stop="handleShow"
|
||||
>
|
||||
专业{{ college.items.length }}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
{{ college?.city }}·{{ college?.educationCategory }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="flex flex-col items-end gap-[40rpx]">
|
||||
<view class="flex flex-col items-end gap-[40rpx] whitespace-nowrap">
|
||||
<view class="i-carbon-close-large w-[40rpx] h-[40rpx]" @click.stop="handleConfirm"></view>
|
||||
<view class="text-[22rpx]">
|
||||
<text>已填</text>
|
||||
|
|
@ -18,7 +18,6 @@
|
|||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<CollegeMajor :college="college" v-bind="$attrs" v-if="college" />
|
||||
|
||||
<template #footer>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<route lang="json5" type="page">
|
||||
{
|
||||
style: {
|
||||
navigationBarTitleText: '我的志愿表',
|
||||
navigationStyle: 'custom',
|
||||
},
|
||||
}
|
||||
</route>
|
||||
|
|
@ -17,6 +17,14 @@
|
|||
:auto-show-system-loading="true"
|
||||
>
|
||||
<template #top>
|
||||
<Navbar
|
||||
safeAreaInsetTop
|
||||
bg-color="transparent"
|
||||
:bordered="false"
|
||||
left-arrow
|
||||
:title="`我的志愿表`"
|
||||
@click-left="navigatorBack"
|
||||
/>
|
||||
<HeaderTip :user-info="userStore.userInfo" />
|
||||
<view class="flex justify-between items-center px-[32rpx] py-[16rpx]">
|
||||
<view class="flex items-center gap-[24rpx] text-[#303030]">
|
||||
|
|
@ -135,6 +143,8 @@ import ScrollListItemAction from './components/ScrollListItemAction.vue'
|
|||
import ScrollListItem from './components/ScrollListItem.vue'
|
||||
import HeaderTip from './components/HeaderTip.vue'
|
||||
|
||||
import Navbar from '@/pages-sub/components/navbar/Navbar.vue'
|
||||
|
||||
import { getPlanProListByFilter } from '@/service/index/api'
|
||||
|
||||
import { useUserStore } from '@/store/user'
|
||||
|
|
@ -142,6 +152,10 @@ import { coverTypeModel, useScore } from './composable/useWishesList'
|
|||
|
||||
const userStore = useUserStore()
|
||||
|
||||
const navigatorBack = () => {
|
||||
uni.navigateBack()
|
||||
}
|
||||
|
||||
const schoolList = ref([])
|
||||
const paging = ref(null)
|
||||
const filterMenuRef = ref(null)
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</route>
|
||||
|
||||
<template>
|
||||
<view class="h-screen flex flex-col">
|
||||
<view class="h-screen flex flex-col bg-[#f8f8f8] relative z-[-1]">
|
||||
<view class="relative">
|
||||
<Navbar
|
||||
safeAreaInsetTop
|
||||
|
|
@ -18,7 +18,7 @@
|
|||
@click-left="navigatorBack"
|
||||
content-class="justify-between"
|
||||
></Navbar>
|
||||
<view class="bg-[#fff] rounded-[8rpx] px-[46rpx] pt-[40rpx] pb-[60rpx] mx-[30rpx] mt-[40rpx]">
|
||||
<view class="bg-[#fff] rounded-[8rpx] px-[46rpx] pt-[40rpx] pb-[30rpx] mx-[30rpx] mt-[40rpx]">
|
||||
<view class="flex items-center gap-[12rpx]">
|
||||
<image
|
||||
:src="userStore.userInfo?.avatar"
|
||||
|
|
@ -71,17 +71,16 @@
|
|||
<button class="submit-button" @click="handleActive" :disabled="isVIP">
|
||||
{{ isVIP ? '已开通' : '立即兑换' }}
|
||||
</button>
|
||||
<view
|
||||
class="text-[#999] text-[24rpx] text-center mt-[20rpx] mb-[30rpx] text-center"
|
||||
v-show="isVIP"
|
||||
>
|
||||
<view class="text-[#999] text-[24rpx] text-center mt-[20rpx] text-center" v-show="isVIP">
|
||||
到期时间:{{ endTime }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="custom-background h-[780rpx] w-full absolute top-0 left-0 z-[-1]"></view>
|
||||
</view>
|
||||
|
||||
<view class="flex flex-col items-start justify-center text-[#999] text-[28rpx] px-[46rpx]">
|
||||
<view
|
||||
class="flex flex-col items-start justify-center text-[#999] text-[28rpx] px-[46rpx] mt-[60rpx]"
|
||||
>
|
||||
<text class="text-[#333] text-[30rpx] font-semibold mb-[20rpx]">兑换规则</text>
|
||||
<text class="mb-[20rpx]">
|
||||
1.适用对象:普通类文理科考生、新高考选科类考生 (提前批次及艺术体育类考生暂不适用)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
@query="queryList"
|
||||
:auto-show-system-loading="true"
|
||||
>
|
||||
<template #top>
|
||||
<!-- <template #top>
|
||||
<z-tabs
|
||||
:current="currentTab"
|
||||
:list="tabsList"
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
@change="handleTabChange"
|
||||
v-bind="{} as any"
|
||||
/>
|
||||
</template>
|
||||
</template> -->
|
||||
<view
|
||||
class="item-wrapper"
|
||||
:id="`zp-id-${item.zp_index}`"
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@
|
|||
"path": "home/wishesList/index",
|
||||
"type": "page",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的志愿表"
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
}
|
||||
</route>
|
||||
<template>
|
||||
<view class="h-screen flex flex-col bg-[#F9F9F9]">
|
||||
<view class="h-screen flex flex-col bg-[#F9F9F9] overflow-y-auto">
|
||||
<view class="flex-1 m-[32rpx] rounded-t-[32rpx] gap-[30rpx] flex flex-col">
|
||||
<view
|
||||
class="flex items-start gap-[24rpx] pl-[24rpx] pr-[38rpx] pt-[24rpx] pb-[12rpx] bg-[#fff]"
|
||||
|
|
@ -89,34 +89,43 @@ const handleAppointment = (
|
|||
item: { id: number; isAppointment: boolean; appointId: number },
|
||||
index: number,
|
||||
) => {
|
||||
if (item.isAppointment) {
|
||||
deleteMyAppointment({ id: item.appointId }).then((res) => {
|
||||
if (res.code === 200) {
|
||||
list.value[index].isAppointment = !item.isAppointment
|
||||
delete list.value[index].appointId
|
||||
uni.showModal({
|
||||
title: '预约',
|
||||
content: item.isAppointment ? '是否取消预约' : '是否预约',
|
||||
success: (res) => {
|
||||
if (res.confirm) {
|
||||
if (item.isAppointment) {
|
||||
deleteMyAppointment({ id: item.appointId }).then((res) => {
|
||||
if (res.code === 200) {
|
||||
list.value[index].isAppointment = !item.isAppointment
|
||||
delete list.value[index].appointId
|
||||
}
|
||||
})
|
||||
} else {
|
||||
addSpecial({
|
||||
sId: item.id,
|
||||
openId: userStore.userInfo?.estimatedAchievement.wxId.toString(),
|
||||
appointmentTime: '2025-07-31',
|
||||
isDelete: item.isAppointment,
|
||||
}).then((res) => {
|
||||
if (res.code === 200) {
|
||||
list.value[index].isAppointment = !item.isAppointment
|
||||
list.value[index].appointId = res.result
|
||||
uni.showToast({
|
||||
title: item.isAppointment ? '预约成功' : '取消预约成功',
|
||||
})
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.message,
|
||||
icon: 'none',
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
} else if (res.cancel) {
|
||||
}
|
||||
})
|
||||
} else {
|
||||
addSpecial({
|
||||
sId: item.id,
|
||||
openId: userStore.userInfo?.estimatedAchievement.wxId.toString(),
|
||||
appointmentTime: '2025-07-31',
|
||||
isDelete: item.isAppointment,
|
||||
}).then((res) => {
|
||||
if (res.code === 200) {
|
||||
list.value[index].isAppointment = !item.isAppointment
|
||||
list.value[index].appointId = res.result
|
||||
uni.showToast({
|
||||
title: item.isAppointment ? '预约成功' : '取消预约成功',
|
||||
})
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: res.message,
|
||||
icon: 'none',
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -76,9 +76,13 @@ onShow(() => {
|
|||
getWxUserInfo().then((resp) => {
|
||||
const infoData = resp.result as unknown as {
|
||||
userExtend: { provinceCode: string }
|
||||
batchName: string
|
||||
batchDataUrl: string
|
||||
}
|
||||
if (userStore.userInfo.city.code === infoData.userExtend.provinceCode) {
|
||||
userStore.setEstimatedAchievement(infoData.userExtend)
|
||||
userStore.setBatchName(infoData.batchName)
|
||||
userStore.setBatchDataUrl(infoData.batchDataUrl)
|
||||
return
|
||||
}
|
||||
})
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
</route>
|
||||
<template>
|
||||
<view class="bg-[#F8F8F8] h-screen flex flex-col gap-[32rpx]">
|
||||
<view class="background">
|
||||
<view class="background-wrapper">
|
||||
<Navbar safeAreaInsetTop bg-color="transparent" placeholder :bordered="false"></Navbar>
|
||||
<view class="flex px-[32rpx] gap-[24rpx] custom-user-info">
|
||||
<image
|
||||
|
|
@ -29,7 +29,6 @@
|
|||
|
||||
<view
|
||||
class="absolute bottom-0 py-[16rpx] pl-[32rpx] pr-[24rpx] left-[50%] translate-x-[-50%] flex items-center w-max custom-vip-bg"
|
||||
v-if="!userStore.userInfo.estimatedAchievement.isVIP"
|
||||
>
|
||||
<image
|
||||
src="https://api.static.ycymedu.com/src/images/ucenter/vip.png"
|
||||
|
|
@ -40,6 +39,7 @@
|
|||
<text class="text-white text-[24rpx]">诸多分析特权免费查看</text>
|
||||
|
||||
<button
|
||||
v-if="!userStore.userInfo.estimatedAchievement.isVIP"
|
||||
class="w-[136rpx]! h-[52rpx]! text-[#803D00]! text-[24rpx]! custom-button-bg font-normal flex! items-center! justify-center! rounded-[80rpx]! p-[0]! ml-[70rpx]!"
|
||||
@click="goVip"
|
||||
>
|
||||
|
|
@ -173,7 +173,7 @@ const toSetting = () => {
|
|||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.background {
|
||||
.background-wrapper {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 420rpx;
|
||||
|
|
@ -182,12 +182,12 @@ const toSetting = () => {
|
|||
}
|
||||
|
||||
/* 左下角大圆 */
|
||||
.background::before {
|
||||
.background-wrapper::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 400rpx;
|
||||
height: 400rpx;
|
||||
bottom: -200rpx;
|
||||
width: 300rpx;
|
||||
height: 300rpx;
|
||||
bottom: -150rpx;
|
||||
left: -100rpx;
|
||||
border-radius: 50%;
|
||||
background-color: rgba(150, 230, 255, 0.4);
|
||||
|
|
@ -195,7 +195,7 @@ const toSetting = () => {
|
|||
}
|
||||
|
||||
/* 左上角中等圆 */
|
||||
.background::after {
|
||||
.background-wrapper::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 300rpx;
|
||||
|
|
|
|||
Loading…
Reference in New Issue