1012 lines
30 KiB
Vue
1012 lines
30 KiB
Vue
<!--智能填报-->
|
|
<script>
|
|
import {arrayIsNotEmpty, stringIsNotEmpty} from "@/common/util";
|
|
import StaticConstant from "@/common/StaticConstant";
|
|
import ApiConstant from "@/common/ApiConstant";
|
|
import Request from "@/common/request";
|
|
import ImagesConstant from "@/common/ImagesConstant";
|
|
|
|
let request = new Request()
|
|
export default {
|
|
name: "auto",
|
|
computed: {
|
|
ImagesConstant() {
|
|
return ImagesConstant
|
|
},
|
|
StaticConstant() {
|
|
return StaticConstant
|
|
}
|
|
},
|
|
data() {
|
|
return {
|
|
avatar: 'http://files.yitisheng.vip/yitisheng.png',
|
|
code: '',
|
|
max: 9999,
|
|
min: 1,
|
|
volunteerName: '',
|
|
//批次
|
|
batchIndex: 0,
|
|
batchArray: [],
|
|
batchVisible: false,
|
|
settingVisible: false,
|
|
majorBatch: {},
|
|
///专业列表
|
|
majorCodeArray: [],
|
|
majorArray: [
|
|
{majorCode: '130201', majorName: '音乐表演'},
|
|
{majorCode: '130202', majorName: '音乐学'},
|
|
{majorCode: '130203', majorName: '作曲与作曲技术理论'},
|
|
{majorCode: '130204', majorName: '舞蹈表演'},
|
|
{majorCode: '130205', majorName: '舞蹈学'},
|
|
{majorCode: '130206', majorName: '舞蹈编导'},
|
|
{majorCode: '130207', majorName: '舞蹈教育'},
|
|
{majorCode: '130208', majorName: '航空服务艺术与管理'},
|
|
{majorCode: '130209', majorName: '流行音乐'},
|
|
{majorCode: '130210', majorName: '音乐治疗'},
|
|
{majorCode: '130211', majorName: '流行舞蹈'},
|
|
{majorCode: '130212', majorName: '音乐教育'},
|
|
],//专业列表
|
|
majorVisible: false,
|
|
///偏好类型
|
|
schoolNatureSelectArray: [],
|
|
schoolNatureArray: StaticConstant.schoolNatureList,
|
|
schoolNatureVisible: false,
|
|
///地域
|
|
provinceSelectArray: [],
|
|
provinceArray: StaticConstant.provinceAllList,
|
|
provinceVisible: false,
|
|
scoreInfo: {
|
|
batch: "本科A段",
|
|
chineseScore: 0,
|
|
cognitioPolyclinic: "理科",
|
|
createBy: "1757686194965893121",
|
|
createTime: "2024-02-29 11:41:11",
|
|
culturalScore: 405,
|
|
educationalLevel: "2",
|
|
englishScore: 0,
|
|
fzby: 0,
|
|
id: "1763046730696069122",
|
|
isVip: 0,
|
|
professionalCategory: "音乐类",
|
|
professionalCategoryChildren: "音乐表演器乐,音乐教育",
|
|
professionalCategoryChildrenList: ['音乐表演器乐', '音乐教育'],
|
|
professionalScore: 200,
|
|
province: "河南",
|
|
ranking: 0,
|
|
state: "1",
|
|
subjects: null,
|
|
type: "2",
|
|
updateBy: null,
|
|
updateTime: null,
|
|
xjysby: 0,
|
|
xjysdy: 0,
|
|
yybyqy: 240,
|
|
yybysy: 11,
|
|
yyjy: 240
|
|
},
|
|
userInfo: {},
|
|
listFlag: false,
|
|
recommendMajor: {},
|
|
scrollLeft: 0,
|
|
currentTab: '提前批',
|
|
settingIndex: 0,
|
|
settingArray: [
|
|
{label: '我喜欢的专业', value: 0},
|
|
{label: '我喜欢的院校类型', value: 1},
|
|
{label: '我喜欢的地域', value: 2}
|
|
],
|
|
tabs: ['提前批', '本科A段', '本科B段', '高职高专']
|
|
}
|
|
},
|
|
methods: {
|
|
stringIsNotEmpty,
|
|
/*选择批次*/
|
|
selectBatch(e, index) {
|
|
this.batchIndex = index
|
|
this.getMajorList()
|
|
this.majorCodeArray = []
|
|
this.onBatchClose()
|
|
},
|
|
/*设置个性偏好*/
|
|
selectSetting(e) {
|
|
|
|
},
|
|
/*选择专业*/
|
|
selectMajor(e) {
|
|
//判断 是否已存在,如果存在则删除
|
|
var index = this.majorCodeArray.findIndex(item => {
|
|
if (e.majorCode === item) {
|
|
return true;
|
|
}
|
|
})
|
|
console.log(index)
|
|
if (index !== -1) {
|
|
this.majorCodeArray.splice(index, 1)
|
|
} else {
|
|
//添加
|
|
this.majorCodeArray.push(e.majorCode)
|
|
}
|
|
},
|
|
/*选择类别*/
|
|
selectSchoolNature(e) {
|
|
//判断 是否已存在,如果存在则删除
|
|
var index = this.schoolNatureSelectArray.findIndex(item => {
|
|
if (e.value === item) {
|
|
return true;
|
|
}
|
|
})
|
|
console.log(index)
|
|
if (index !== -1) {
|
|
this.schoolNatureSelectArray.splice(index, 1)
|
|
} else {
|
|
//添加
|
|
this.schoolNatureSelectArray.push(e.value)
|
|
}
|
|
},
|
|
/*选择地区*/
|
|
selectProvince(e) {
|
|
//判断 是否已存在,如果存在则删除
|
|
var index = this.provinceSelectArray.findIndex(item => {
|
|
if (e.value === item) {
|
|
return true;
|
|
}
|
|
})
|
|
console.log(index)
|
|
if (index !== -1) {
|
|
this.provinceSelectArray.splice(index, 1)
|
|
} else {
|
|
//添加
|
|
this.provinceSelectArray.push(e.value)
|
|
}
|
|
},
|
|
goto(url) {
|
|
uni.navigateTo({
|
|
url: url
|
|
})
|
|
},
|
|
save() {
|
|
console.log(this.recommendMajor)
|
|
let that = this
|
|
if (!this.userInfo.vipFlag) {
|
|
uni.showModal({
|
|
title: 'VIP专享',
|
|
// 提示文字
|
|
content: '该功能为增值内容,开通会员后即可免费查看!',
|
|
// 取消按钮的文字自定义
|
|
cancelText: "取消",
|
|
// 确认按钮的文字自定义
|
|
confirmText: "开通服务",
|
|
//删除字体的颜色
|
|
confirmColor: 'red',
|
|
//取消字体的颜色
|
|
cancelColor: '#dddddd',
|
|
success: function (res) {
|
|
if (res.confirm) {
|
|
// 执行确认后的操作
|
|
that.goto('/pages/zyb/vip/index')
|
|
}
|
|
}
|
|
})
|
|
return
|
|
}
|
|
//=================================参数判断
|
|
//专业编码
|
|
let majorCode = ''
|
|
if (arrayIsNotEmpty(this.majorCodeArray)) {
|
|
majorCode = this.majorCodeArray.join(',')
|
|
}
|
|
//院校类型
|
|
let schoolNature = ''
|
|
if (arrayIsNotEmpty(this.schoolNatureSelectArray)) {
|
|
schoolNature = this.schoolNatureSelectArray.join(',')
|
|
}
|
|
//地区
|
|
let province = ''
|
|
if (arrayIsNotEmpty(this.provinceSelectArray)) {
|
|
province = this.provinceSelectArray.join(',')
|
|
}
|
|
let batch = this.batchArray[this.batchIndex].value
|
|
this.currentTab = batch
|
|
this.scrollLeft =(batch === '本科B段' || batch === '高职高专')?600:0;
|
|
//获取填报信息
|
|
request.get(ApiConstant.Major.aiAuto, {
|
|
batch: batch,
|
|
majorCode: majorCode,
|
|
schoolNature: schoolNature,
|
|
province: province,
|
|
code: this.code
|
|
}).then(r => {
|
|
console.log(r)
|
|
if (r.success && r.result.pageList) {
|
|
this.recommendMajor[batch] = r.result.pageList.records
|
|
this.listFlag = true
|
|
}
|
|
}).catch(err => {
|
|
}).finally(() => {
|
|
});
|
|
},
|
|
/*关闭抽屉层*/
|
|
onBatchClose() {
|
|
this.batchVisible = false
|
|
},
|
|
onMajorClose() {
|
|
this.majorVisible = false
|
|
},
|
|
onSchoolNatureClose() {
|
|
this.schoolNatureVisible = false
|
|
},
|
|
onProvinceClose() {
|
|
this.provinceVisible = false
|
|
},
|
|
/*关闭个性偏好*/
|
|
onSettingClose() {
|
|
this.settingVisible = false
|
|
},
|
|
getMajorList() {
|
|
let batch = this.batchArray[this.batchIndex].value
|
|
console.log(batch)
|
|
if (this.majorBatch[batch] && arrayIsNotEmpty(this.majorBatch[batch].majorList)) {
|
|
this.majorArray = this.majorBatch[batch].majorList
|
|
return
|
|
}
|
|
request.get(ApiConstant.Major.schoolMajorListByBatchAndMajorType, {
|
|
batch: batch,
|
|
professionalCategory: this.scoreInfo.professionalCategory
|
|
}).then(r => {
|
|
console.log(r)
|
|
if (r.success) {
|
|
this.majorBatch[batch] = {}
|
|
this.majorBatch[batch].majorList = r.result
|
|
this.majorArray = r.result
|
|
}
|
|
}).catch(err => {
|
|
}).finally(() => {
|
|
});
|
|
},
|
|
|
|
checkBao(e) {
|
|
if (e >= 93) {
|
|
return ImagesConstant.bao.kebaodi;
|
|
} else if (e < 92 && e >= 74) {
|
|
return ImagesConstant.bao.jiaowentuo;
|
|
} else if (e < 73 && e >= 60) {
|
|
return ImagesConstant.bao.kechongji;
|
|
}
|
|
return ImagesConstant.bao.nanluqu;
|
|
},
|
|
checkColorText(e) {
|
|
if (e >= 93) {
|
|
return '#3e8e43';
|
|
} else if (e < 92 && e >= 74) {
|
|
return '#4975fd';
|
|
} else if (e < 73 && e >= 60) {
|
|
return '#F8880E';
|
|
}
|
|
return '#c83428';
|
|
},
|
|
/*切换专业列表 批次*/
|
|
swichMenu(e, index) {
|
|
this.currentTab = e.value
|
|
},
|
|
/*点击 另存为志愿单按钮*/
|
|
dialogInputConfirm() {
|
|
console.log('111')
|
|
console.log(this.volunteerName)
|
|
|
|
let volunteerRecordList = []
|
|
//遍历批次
|
|
for (let i = 0; i < this.batchArray.length; i++) {
|
|
let batch = this.batchArray[i].value
|
|
//获取对应批次推荐的专业志愿
|
|
let recommendMajorElement = this.recommendMajor[batch];
|
|
if (!arrayIsNotEmpty(recommendMajorElement)) {
|
|
continue
|
|
}
|
|
//遍历专业志愿,组合成保存对象
|
|
for (let j = 0; j < recommendMajorElement.length; j++) {
|
|
let r = recommendMajorElement[j]
|
|
let vr = {majorCode: r.majorCode, schoolCode: r.schoolCode, enrollmentCode: r.enrollmentCode,batch:batch,
|
|
enrollProbability:r.enrollProbability,studentConvertedScore:r.studentConvertedScore}
|
|
volunteerRecordList.push(vr)
|
|
}
|
|
}
|
|
let saveVolunteer = {
|
|
scoreId:this.scoreInfo.id,
|
|
category:this.scoreInfo.cognitioPolyclinic,
|
|
volunteerName:this.volunteerName,
|
|
volunteerRecordList:volunteerRecordList
|
|
}
|
|
request.post(ApiConstant.Volunteer.saveAs, saveVolunteer).then(r => {
|
|
console.log(r)
|
|
if (r.success) {
|
|
setTimeout(function () {
|
|
uni.showToast({title: '保存成功', icon: "none"});
|
|
//回到首页
|
|
uni.switchTab({
|
|
url: '/pages/zyb/fillVolunteer/my'
|
|
});
|
|
}, 500)
|
|
}else{
|
|
setTimeout(function () {
|
|
uni.showToast({title: r.message, icon: "none"});
|
|
}, 500)
|
|
}
|
|
}).catch(err => {
|
|
}).finally(() => {
|
|
});
|
|
}
|
|
},
|
|
onShow() {
|
|
},
|
|
onLoad() {
|
|
this.userInfo = uni.getStorageSync('userInfo')
|
|
let scoreInfo = uni.getStorageSync('scoreInfo')
|
|
this.scoreInfo = scoreInfo
|
|
console.log(scoreInfo)
|
|
//判断专业
|
|
let batchArray = []
|
|
if (scoreInfo.professionalCategory === '体育') {
|
|
if (scoreInfo.batch === '本科') {
|
|
batchArray.push({label: '体育类本科批', value: '本科'})
|
|
}
|
|
batchArray.push({label: '体育类专科批', value: '高职高专'})
|
|
} else {
|
|
if (scoreInfo.batch === '本科A段') {
|
|
batchArray.push({label: '艺术类本科提前批', value: '提前批'}, {
|
|
label: '艺术本科A段',
|
|
value: '本科A段'
|
|
}, {label: '艺术本科B段', value: '本科B段'})
|
|
} else if (scoreInfo.batch === '本科B段') {
|
|
batchArray.push({label: '艺术本科B段', value: '本科B段'})
|
|
}
|
|
batchArray.push({label: '艺术类专科批', value: '高职高专'})
|
|
}
|
|
this.batchArray = batchArray
|
|
|
|
|
|
this.code = new Date().getTime() + '' + Math.floor(Math.random() * (this.max - this.min + 1)) + this.min
|
|
console.log(this.code)
|
|
this.getMajorList()
|
|
},
|
|
}
|
|
</script>
|
|
|
|
<template>
|
|
<view class="body" v-if="!listFlag">
|
|
<view class="rightTop"></view>
|
|
<view class="leftBottom"></view>
|
|
<!--系统图标-->
|
|
<view class="systemIcon">
|
|
<view class="avatar-background"> </view>
|
|
<image :src="avatar" class="avatar" style=""/>
|
|
</view>
|
|
<view class="schoolTags">
|
|
<view class="schoolTag absolute1">
|
|
武汉大学
|
|
</view>
|
|
<view class="schoolTag absolute2">
|
|
清华大学
|
|
</view>
|
|
<view class="schoolTag absolute3">
|
|
复旦大学
|
|
</view>
|
|
<view class="schoolTag absolute4">
|
|
中国传媒大学
|
|
</view>
|
|
<view class="schoolTag absolute5">
|
|
四川大学
|
|
</view>
|
|
</view>
|
|
<!--成绩信息-->
|
|
<view class="scoreInfo">
|
|
<view class="master">
|
|
<text class="margin-right-10">{{ scoreInfo.professionalCategory }}</text>
|
|
<text class="font-weight-500">{{ scoreInfo.culturalScore }}</text>
|
|
<text class="margin-right-10">文化分</text>
|
|
<text class="font-weight-500">
|
|
{{ scoreInfo.professionalScore }}
|
|
</text>
|
|
<text class="margin-right-10">
|
|
{{
|
|
stringIsNotEmpty(scoreInfo.professionalCategory) && scoreInfo.professionalCategory === '音乐类' ? '主项分' : '专业分'
|
|
}}
|
|
</text>
|
|
</view>
|
|
<view class="children" v-if="stringIsNotEmpty(scoreInfo.professionalCategoryChildren)">
|
|
<view class="margin-right-10" v-if="scoreInfo.professionalCategoryChildren.includes('音乐表演声乐')">
|
|
音乐表演声乐
|
|
<text class="font-weight-500">{{ scoreInfo.yybysy }}</text>
|
|
分
|
|
</view>
|
|
<view class="margin-right-10" v-if="scoreInfo.professionalCategoryChildren.includes('音乐表演器乐')">
|
|
音乐表演器乐
|
|
<text class="font-weight-500">{{ scoreInfo.yybyqy }}</text>
|
|
分
|
|
</view>
|
|
<view class="margin-right-10" v-if="scoreInfo.professionalCategoryChildren.includes('音乐教育')">
|
|
音乐教育
|
|
<text class="font-weight-500">{{ scoreInfo.yyjy }}</text>
|
|
分
|
|
</view>
|
|
<view class="margin-right-10" v-if="scoreInfo.professionalCategoryChildren.includes('戏剧影视导演')">
|
|
戏剧影视导演
|
|
<text class="font-weight-500">{{ scoreInfo.xjysdy }}</text>
|
|
分
|
|
</view>
|
|
<view class="margin-right-10" v-if="scoreInfo.professionalCategoryChildren.includes('戏剧影视表演')">
|
|
戏剧影视表演
|
|
<text class="font-weight-500">{{ scoreInfo.xjysby }}</text>
|
|
分
|
|
</view>
|
|
<view class="margin-right-10" v-if="scoreInfo.professionalCategoryChildren.includes('服装表演')">
|
|
服装表演
|
|
<text class="font-weight-500">{{ scoreInfo.fzby }}</text>
|
|
分
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!--筛选菜单-->
|
|
<view class="switchMenu " style="text-align: center">
|
|
<text style="color: #667697;">设置偏好</text>
|
|
<view class="uni-flex uni-row"
|
|
style="margin: 10rpx 0;-webkit-justify-content: space-between;justify-content: space-between;">
|
|
<view class="tab4" @click="batchVisible=true">
|
|
<text v-if="batchArray.length>0">{{ batchArray[batchIndex].label }}</text>
|
|
</view>
|
|
<view class="tab4" @click="settingVisible=true">
|
|
<text>设置偏好</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view v-if="false">
|
|
<view class="flexWrap" style="margin: 0 auto">
|
|
<view class="white tab" @click="majorVisible=true">
|
|
<text class="font-size-mini4 flex text">偏好专业</text>
|
|
<text class="slateGray flex text">已选择{{ majorCodeArray.length }}个偏好专业</text>
|
|
</view>
|
|
<view class="white tab right" @click="schoolNatureVisible=true">
|
|
<text class="font-size-mini4 flex text">偏好类型</text>
|
|
<text class="slateGray flex text">已选择{{ schoolNatureSelectArray.length }}个偏好类型</text>
|
|
</view>
|
|
<!-- <view class="white tab right">
|
|
<text class="font-size-mini4 flex text">偏好层次</text>
|
|
<text class="slateGray flex text">已选择2个偏好专业</text>
|
|
</view>-->
|
|
<view class="white tab right" @click="provinceVisible=true">
|
|
<text class="font-size-mini4 flex text">偏好地区</text>
|
|
<text class="slateGray flex text">已选择{{ provinceSelectArray.length }}个偏好地区</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!--按钮-->
|
|
<view class="fontsize25" style="text-align: center;padding: 0 40rpx">
|
|
<button @click="save"
|
|
style="color:white;background: linear-gradient(rgba(52,145,212,0.83), #3658d0);border-radius: 50rpx">
|
|
一键智能填报
|
|
</button>
|
|
</view>
|
|
</view>
|
|
<view class="border-top listBody" v-if="listFlag" style="height: 98%">
|
|
<view class="head border-bottom">
|
|
<view class="flex">
|
|
<view class="flex-item-2">
|
|
<text class="backBtn" @click="this.listFlag = false">返回</text>
|
|
</view>
|
|
<view class="flex-item-6">
|
|
<text class="margin-right-10">文化分:{{ scoreInfo.culturalScore }}分</text>
|
|
<text>
|
|
{{ scoreInfo.professionalCategory === '音乐类' ? '主项成绩' : '专业分' }}:{{ scoreInfo.professionalScore }}分
|
|
</text>
|
|
</view>
|
|
<view class="flex-item-2">
|
|
<text class="saveAsBtn" @click="this.$refs.inputDialog.open()">另存为</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!-- 使用scroll-view实现tabs滑动切换 -->
|
|
<scroll-view class="top-menu-view" scroll-x scroll-with-animation :scroll-left="scrollLeft">
|
|
<view class="menu-topic-view" v-for="(item,index) in batchArray" :key="index"
|
|
@click="swichMenu(item,index)">
|
|
<view :class="currentTab===item.value ? 'menu-topic-act' : 'menu-topic'">
|
|
<text class="menu-topic-text">{{ item.label }}</text>
|
|
<view class="menu-topic-bottom">
|
|
<view class="menu-topic-bottom-color"></view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</scroll-view>
|
|
<scroll-view scroll-y="true" style="height: 88%">
|
|
<view class="volunteerItem radius8" v-if="batchArray[batchIndex]"
|
|
v-for="(item,index) in recommendMajor[currentTab]" :key="index">
|
|
<!--院校信息-->
|
|
<view class="flex" @click="goto('/pages/zyb/school/detail?schoolCode='+item.schoolCode)">
|
|
<!--院校图片-->
|
|
<view class="flex-item-22">
|
|
<image :src="item.schoolIcon||ImagesConstant.defaultIcon" class="icon128"/>
|
|
</view>
|
|
<!--院校代码-->
|
|
<view class="flex-item-77">
|
|
<view class="flex slateGray">
|
|
<text class="flex-item-4">院校代码[{{ item.schoolCode }}]</text>
|
|
<text class="flex-item-25">{{ item.province }}</text>
|
|
<view class="flex-item-35">
|
|
<view style="float: right;line-height: 50rpx;" class="font-weight-600">
|
|
<text class="font-size-mini" :style="'color:'+checkColorText(item.enrollProbability)">
|
|
{{ item.enrollProbability }}%
|
|
</text>
|
|
<image :src="checkBao(item.enrollProbability)" class="icon50"/>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="flex">
|
|
<text class="font-size-medium">{{ item.schoolName }}</text>
|
|
</view>
|
|
<view class="flex tags slateGray">
|
|
<text class="tag" v-for="t in item.tagsList" :key="t">
|
|
{{ t }}
|
|
</text>
|
|
</view>
|
|
<view class="flex">
|
|
<view class="flex-item-65 slateGray" style="line-height: 50rpx">
|
|
<text class="tag">[{{ item.enrollmentCode }}]{{ item.majorName }}</text>
|
|
</view>
|
|
<view class="flex-item-35">
|
|
<view style="float: right;line-height: 50rpx;" class="font-weight-600">
|
|
<text>
|
|
折合分:
|
|
</text>
|
|
<text class="font-size-mini" :style="'color:'+checkColorText(item.enrollProbability)">
|
|
{{item.studentConvertedScore}}
|
|
</text>
|
|
<text>
|
|
真实分:
|
|
</text>
|
|
<text class="font-size-mini" :style="'color:'+checkColorText(item.enrollProbability)">
|
|
{{item.studentScore}}
|
|
</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!---->
|
|
</view>
|
|
<!--招录信息-->
|
|
<view class="flex font-size-mini">
|
|
<view class="flex-item-5" style="line-height: 40rpx">
|
|
<view v-for="(history,h) in item.historyMajorEnrollList" :key="h">
|
|
<text>{{ history.year }}年录取最低分:</text>
|
|
<text class="red">{{ history.admissionLine }}分</text>
|
|
</view>
|
|
</view>
|
|
<view class="flex-item-5" style="line-height: 40rpx">
|
|
<view class="flex" style="float: right">
|
|
<text>{{ StaticConstant.year }}省内计划录取:</text>
|
|
<text v-if="item.planNum" class="green font-weight-600">{{ item.planNum }}人</text>
|
|
<text v-else class="green">暂未发布</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="flex" style="line-height: 50rpx">
|
|
<view class="flex-item-7">
|
|
<text>{{ StaticConstant.year }}录取方式:</text>
|
|
<text v-if="item.rulesEnrollProbability" class="blue">{{ item.rulesEnrollProbability }}</text>
|
|
<text v-else class="blue">暂未发布</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</scroll-view>
|
|
</view>
|
|
|
|
|
|
<!-- 输入框示例 -->
|
|
<uni-popup ref="inputDialog" type="dialog">
|
|
|
|
<uni-popup-dialog ref="inputClose" mode="input" title="输入志愿单名称"
|
|
placeholder="请输入内容" @confirm="dialogInputConfirm">
|
|
<view>
|
|
<view class="">
|
|
<uni-forms :modelValue="volunteerName">
|
|
<uni-easyinput type="text" v-model="volunteerName" placeholder="请输入名称"/>
|
|
</uni-forms>
|
|
</view>
|
|
</view>
|
|
</uni-popup-dialog>
|
|
</uni-popup>
|
|
|
|
<!--批次选择-->
|
|
<px-popup-bottom :background="'#24293c'" :color="'white'" :visible.sync="batchVisible" title="请选择批次"
|
|
maxHeight="800" radius="40" @close="onBatchClose">
|
|
<view class="majorList">
|
|
<view class="flex majorItem" @click="selectBatch(item,index)" :class="index===batchArray.length-1?'':'border-bot'"
|
|
v-for="(item,index) in batchArray" :key="index">
|
|
<text class="marginCenter" :class="batchIndex===index?'active':''">{{ item.label }}
|
|
</text>
|
|
</view>
|
|
</view>
|
|
</px-popup-bottom>
|
|
<!--个性偏好-->
|
|
<px-popup-bottom :background="'#24293c'" :color="'white'" :visible.sync="settingVisible" radius="40"
|
|
title="设置个性偏好,推荐更精准" maxHeight="800" @close="onSettingClose">
|
|
<view class="majorList">
|
|
<view class="flex settingItem" @click="majorVisible = true">
|
|
<view class="flex-item-5">
|
|
<text class="flex font-size-mini4">我喜欢的专业</text>
|
|
<text class="flex slateGray font-size-mini">已选中{{ majorCodeArray.length }}个偏好专业</text>
|
|
</view>
|
|
<view class="flex-item-5">
|
|
<text class="settingItemBtn">选择专业</text>
|
|
</view>
|
|
</view>
|
|
<view class="flex settingItem" @click="schoolNatureVisible = true">
|
|
<view class="flex-item-5">
|
|
<text class="font-size-mini4">我喜欢的院校类型</text>
|
|
<text class="flex slateGray font-size-mini">已选中{{ schoolNatureSelectArray.length }}个偏好类型</text>
|
|
</view>
|
|
<view class="flex-item-5">
|
|
<text class="settingItemBtn">选择院校</text>
|
|
</view>
|
|
</view>
|
|
<view class="flex settingItem" @click="provinceVisible = true">
|
|
<view class="flex-item-5">
|
|
<text class="font-size-mini4">我喜欢的地域</text>
|
|
<text class="flex slateGray font-size-mini">已选中{{ provinceSelectArray.length }}个偏好地区</text>
|
|
</view>
|
|
<view class="flex-item-5">
|
|
<text class="settingItemBtn">选择地域</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</px-popup-bottom>
|
|
|
|
<px-popup-bottom :background="'#24293c'" :color="'white'" :visible.sync="majorVisible" title="请选择专业"
|
|
maxHeight="800" radius="40" @close="onMajorClose">
|
|
<view class="majorList">
|
|
<view class="flex majorItem" @click="selectMajor(item)" :class="index===majorArray.length-1?'':'border-bot'"
|
|
v-for="(item,index) in majorArray" :key="index">
|
|
<text class="marginCenter" :class="majorCodeArray.includes(item.majorCode)?'active':''">{{ item.majorName }}
|
|
</text>
|
|
</view>
|
|
</view>
|
|
</px-popup-bottom>
|
|
|
|
<px-popup-bottom :background="'#24293c'" :color="'white'" :visible.sync="schoolNatureVisible" title="请选择类型"
|
|
maxHeight="800" radius="40" @close="onSchoolNatureClose">
|
|
<view class="majorList">
|
|
<view class="flex majorItem" @click="selectSchoolNature(item)"
|
|
:class="index===schoolNatureArray.length-1?'':'border-bot'"
|
|
v-for="(item,index) in schoolNatureArray" :key="index">
|
|
<text class="marginCenter" :class="schoolNatureSelectArray.includes(item.value)?'active':''">{{ item.label }}
|
|
</text>
|
|
</view>
|
|
</view>
|
|
</px-popup-bottom>
|
|
|
|
<px-popup-bottom :background="'#24293c'" :color="'white'" :visible.sync="provinceVisible" title="请选择地区"
|
|
maxHeight="800" radius="40" @close="onProvinceClose">
|
|
<view class="majorList">
|
|
<view class="flex majorItem" @click="selectProvince(item)" :class="index===provinceArray.length-1?'':'border-bot'"
|
|
v-for="(item,index) in provinceArray" :key="index">
|
|
<text class="marginCenter" :class="provinceSelectArray.includes(item.value)?'active':''">{{ item.label }}
|
|
</text>
|
|
</view>
|
|
</view>
|
|
</px-popup-bottom>
|
|
|
|
</template>
|
|
|
|
<style scoped lang="scss">
|
|
.body {
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: #1b1f37;
|
|
//background-color: white;
|
|
}
|
|
|
|
.systemIcon {
|
|
padding-top: 200rpx;
|
|
padding-bottom: 100rpx;
|
|
text-align: center;
|
|
}
|
|
|
|
.avatar-background {
|
|
background-color: #e6e2e2;
|
|
position: relative;
|
|
top: 155rpx;
|
|
margin: 0 auto;
|
|
border-radius: 50%;
|
|
width: 150rpx;
|
|
height: 148rpx;
|
|
filter: blur(15px);
|
|
-webkit-animation-name: animationScale; /*关键帧名称*/
|
|
-webkit-animation-timing-function: ease-in-out; /*动画的速度曲线*/
|
|
-webkit-animation-iteration-count: infinite; /*动画播放的次数*/
|
|
-webkit-animation-duration: 6s; /*动画所花费的时间*/
|
|
}
|
|
|
|
.avatar {
|
|
border-radius: 50%;
|
|
width: 150rpx;
|
|
height: 148rpx;
|
|
//filter: blur(1rpx);
|
|
/*添加模糊滤镜*/
|
|
-webkit-animation-name: animationScale; /*关键帧名称*/
|
|
-webkit-animation-timing-function: ease-in-out; /*动画的速度曲线*/
|
|
-webkit-animation-iteration-count: infinite; /*动画播放的次数*/
|
|
-webkit-animation-duration: 6s; /*动画所花费的时间*/
|
|
}
|
|
|
|
/*成绩信息 start*/
|
|
.scoreInfo {
|
|
text-align: center;
|
|
margin: 0 auto;
|
|
color: white;
|
|
font-size: 35rpx;
|
|
font-weight: 550;
|
|
}
|
|
|
|
/*成绩信息 end*/
|
|
|
|
|
|
/*院校标签 start*/
|
|
.schoolTags .schoolTag {
|
|
text-align: center;
|
|
padding: 5rpx 15rpx;
|
|
min-width: auto;
|
|
font-size: 25rpx;
|
|
color: #45495c;
|
|
background-color: #1e233c;
|
|
border-radius: 15rpx;
|
|
}
|
|
|
|
.absolute1 {
|
|
position: absolute;
|
|
top: 100rpx;
|
|
left: 100rpx;
|
|
animation: dong 1.5s infinite;
|
|
}
|
|
|
|
.absolute2 {
|
|
position: absolute;
|
|
top: 200rpx;
|
|
left: 500rpx;
|
|
animation: dong 1.8s infinite;
|
|
animation-delay: 0.3s;
|
|
}
|
|
|
|
.absolute3 {
|
|
position: absolute;
|
|
top: 400rpx;
|
|
left: 600rpx;
|
|
animation: dong 2s infinite;
|
|
animation-delay: 0.4s;
|
|
}
|
|
|
|
.absolute4 {
|
|
position: absolute;
|
|
top: 400rpx;
|
|
left: 30rpx;
|
|
font-size: 30rpx !important;
|
|
animation: dong 1.7s infinite;
|
|
animation-delay: 0.2s;
|
|
}
|
|
|
|
.absolute5 {
|
|
position: absolute;
|
|
top: 100rpx;
|
|
left: 300rpx;
|
|
animation: dong 1.9s infinite;
|
|
animation-delay: 0.3s;
|
|
}
|
|
|
|
.absolute6 {
|
|
position: absolute;
|
|
top: 200rpx;
|
|
left: 500rpx;
|
|
animation: dong 1.8s infinite;
|
|
animation-delay: 0.3s;
|
|
}
|
|
|
|
.absolute7 {
|
|
position: absolute;
|
|
top: 200rpx;
|
|
left: 500rpx;
|
|
animation: dong 1.8s infinite;
|
|
animation-delay: 0.3s;
|
|
}
|
|
|
|
|
|
.rightTop {
|
|
background-color: #2c304b;
|
|
width: 300rpx;
|
|
height: 500rpx;
|
|
border-radius: 60%;
|
|
position: fixed;
|
|
left: 600rpx;
|
|
top: -250rpx;
|
|
}
|
|
|
|
.leftBottom {
|
|
background-color: #2c304b;
|
|
width: 500rpx;
|
|
height: 330rpx;
|
|
border-radius: 60%;
|
|
position: fixed;
|
|
left: -230rpx;
|
|
bottom: -200rpx;
|
|
}
|
|
|
|
/*院校标签 end*/
|
|
|
|
|
|
.switchMenu {
|
|
margin: 20rpx;
|
|
padding: 20rpx 0;
|
|
background-color: #20243f;
|
|
border-radius: 30rpx;
|
|
border: 20rpx solid #181d33;
|
|
|
|
.tab {
|
|
width: 43%;
|
|
background-color: #2f324b;
|
|
border-radius: 30rpx;
|
|
padding: 10rpx;
|
|
margin: 10rpx;
|
|
|
|
.text {
|
|
margin-left: 15rpx;
|
|
}
|
|
}
|
|
|
|
.right {
|
|
}
|
|
|
|
.tab4 {
|
|
width: 40%;
|
|
background-color: #2f324b;
|
|
border-radius: 20rpx;
|
|
padding: 0 20rpx;
|
|
margin: 10rpx 20rpx;
|
|
line-height: 80rpx;
|
|
text-align: left;
|
|
color: #d8d9dd;
|
|
|
|
.text {
|
|
margin-left: 15rpx;
|
|
}
|
|
}
|
|
}
|
|
|
|
/*设置偏好 start*/
|
|
.settingItem {
|
|
margin: 20rpx 0;
|
|
padding: 40rpx;
|
|
background-color: #2f324b;
|
|
border-radius: 30rpx;
|
|
height: 80rpx;
|
|
position: relative;
|
|
}
|
|
|
|
.settingItemBtn {
|
|
background-color: #4e71f5;
|
|
border-radius: 10rpx;
|
|
color: white;
|
|
padding: 10rpx 10rpx;
|
|
line-height: 50rpx;
|
|
position: absolute;
|
|
right: 30rpx;
|
|
}
|
|
|
|
/*设置偏好 end*/
|
|
|
|
/*专业下拉 start*/
|
|
|
|
.majorList {
|
|
}
|
|
|
|
.majorList .majorItem {
|
|
color: white;
|
|
font-size: 30rpx;
|
|
line-height: 100rpx;
|
|
text-align: center;
|
|
}
|
|
|
|
.majorList .majorItem .active {
|
|
color: #4975fd;
|
|
}
|
|
|
|
.majorList .border-bot {
|
|
border-bottom: 1rpx solid #2f3249;
|
|
}
|
|
|
|
/*专业下拉 end*/
|
|
|
|
|
|
/*推荐志愿列表 start*/
|
|
.head {
|
|
background-color: white;
|
|
padding: 30rpx;
|
|
}
|
|
|
|
//返回上一页按钮
|
|
.backBtn {
|
|
background-color: white;
|
|
color: black;
|
|
padding: 10rpx;
|
|
border-radius: 15rpx;
|
|
}
|
|
|
|
//另存为按钮
|
|
.saveAsBtn {
|
|
background-color: #4975fd;
|
|
color: white;
|
|
padding: 10rpx;
|
|
border-radius: 15rpx;
|
|
margin-left: 30rpx;
|
|
}
|
|
|
|
.listBody {
|
|
|
|
}
|
|
|
|
.listBody .menu-topic-view {
|
|
width: 44%;
|
|
}
|
|
|
|
|
|
.volunteerItem {
|
|
background-color: white;
|
|
padding: 30rpx;
|
|
margin: 10rpx 0;
|
|
/*院校标签*/
|
|
.tags {
|
|
display: flex;
|
|
flex-direction: row;
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
.tags .tag {
|
|
margin-top: 10rpx;
|
|
margin-right: 10px;
|
|
font-size: 13px;
|
|
line-height: 30rpx;
|
|
color: #acadba;
|
|
border: 3rpx solid #acadba;
|
|
border-radius: 8rpx;
|
|
padding: 5rpx;
|
|
}
|
|
}
|
|
|
|
/*推荐志愿列表 end*/
|
|
|
|
|
|
// 动画
|
|
@keyframes animationScale {
|
|
0% {
|
|
transform: scale(1); /*开始为原始大小*/
|
|
}
|
|
25% {
|
|
transform: scale(1.05); /*放大1.1倍*/
|
|
}
|
|
50% {
|
|
transform: scale(1);
|
|
}
|
|
75% {
|
|
transform: scale(1.05);
|
|
}
|
|
}
|
|
|
|
@keyframes dong {
|
|
0% {
|
|
transform: translate(0px, 0px);
|
|
}
|
|
50% {
|
|
transform: translate(0px, -20px);
|
|
}
|
|
100% {
|
|
transform: translate(0px, 0px);
|
|
}
|
|
}
|
|
|
|
</style>
|
|
|