|
|
|
@ -2,7 +2,7 @@ |
|
|
|
|
<template> |
|
|
|
|
<div class="fill"></div> |
|
|
|
|
<div class="banner"> |
|
|
|
|
<img src="../../assets/images/banner2.png" alt="" /> |
|
|
|
|
<img src="../../assets/images/banner.jpg" alt="" /> |
|
|
|
|
</div> |
|
|
|
|
<div class="competition" v-loading="loading"> |
|
|
|
|
<!-- 简介 --> |
|
|
|
@ -19,10 +19,12 @@ |
|
|
|
|
<div class="left"> |
|
|
|
|
<div class="text-box"> |
|
|
|
|
<div class="title">选择项目</div> |
|
|
|
|
<div class="small">300+竞赛登陆后请报名</div> |
|
|
|
|
<div class="small">选择下面的项目报名,参与比赛</div> |
|
|
|
|
<div class="back"><el-button type="primary" style="margin-top: 10px;" @click="$router.back()">返回</el-button></div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="card-list"> |
|
|
|
|
<div v-if="dataList.length == 0" style="font-size: 20px; color:#828282 ;">没有项目,请创建年度比赛项目</div> |
|
|
|
|
<template v-for="(o, i) in dataList" :key="o.id"> |
|
|
|
|
<div v-if="(i + 5) % 4 == 1" class="card" type="yellow"> |
|
|
|
|
<div class="top" :title="o.objName">{{ o.objName }}</div> |
|
|
|
@ -73,14 +75,14 @@ |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div class="game-list"> |
|
|
|
|
<div class="card-game" v-for="i in 5" :key="i"> |
|
|
|
|
<div class="pos">前往查看</div> |
|
|
|
|
<div class="top">2023年度</div> |
|
|
|
|
<div class="card-game" v-for="i in historyRaceList" :key="i.id"> |
|
|
|
|
<!-- <div class="pos">前往查看</div> --> |
|
|
|
|
<div class="top">2024年度</div> |
|
|
|
|
<div class="center"> |
|
|
|
|
<div class="text">河南省大学生创新创业大赛</div> |
|
|
|
|
<div class="text">{{ i.name }}</div> |
|
|
|
|
<img src="../../assets/images/编组.png" alt="" /> |
|
|
|
|
</div> |
|
|
|
|
<div class="bottom">报名时间:2023.08.23-2023.09.23</div> |
|
|
|
|
<div class="bottom">报名时间:{{ i.starttime }} - {{ i.endtime }}</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
@ -93,7 +95,7 @@ import { getCompetitionApi } from '@/api/person' |
|
|
|
|
import { ref, watch } from 'vue' |
|
|
|
|
import { useRoute, useRouter } from 'vue-router' |
|
|
|
|
import { ElMessage, ElLoading } from 'element-plus' |
|
|
|
|
import { getYearRaceInfo } from '@/api/race' |
|
|
|
|
import { getYearRaceInfo,getHistoryRaceList } from '@/api/race' |
|
|
|
|
const route = useRoute() |
|
|
|
|
const router = useRouter() |
|
|
|
|
|
|
|
|
@ -134,6 +136,14 @@ const getYearRaceInfoEvent = async () => { |
|
|
|
|
console.log(res, 'yearRaceInfo.value ') |
|
|
|
|
} |
|
|
|
|
getYearRaceInfoEvent() |
|
|
|
|
// 获取年度历史比赛 |
|
|
|
|
const historyRaceList = ref<any>([]) |
|
|
|
|
const getHistoryRaceListEvent = async () => { |
|
|
|
|
const res: any = await getHistoryRaceList({ id: route.query.raceId }) |
|
|
|
|
console.log(res) |
|
|
|
|
historyRaceList.value = res.result |
|
|
|
|
} |
|
|
|
|
getHistoryRaceListEvent() |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
@ -177,7 +187,8 @@ getYearRaceInfoEvent() |
|
|
|
|
font-weight: 400; |
|
|
|
|
font-size: 20px; |
|
|
|
|
color: #555555; |
|
|
|
|
line-height: 23px; |
|
|
|
|
line-height: 35px; |
|
|
|
|
text-indent: 2em; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.date { |
|
|
|
@ -207,12 +218,12 @@ getYearRaceInfoEvent() |
|
|
|
|
flex-wrap: wrap; |
|
|
|
|
column-gap: 20px; |
|
|
|
|
row-gap: 40px; |
|
|
|
|
|
|
|
|
|
.card { |
|
|
|
|
width: 260px; |
|
|
|
|
height: 160px; |
|
|
|
|
padding: 40px 0 0 30px; |
|
|
|
|
|
|
|
|
|
box-shadow: 3px 2px 18px -7px rgba(0, 0, 0, 0.45); |
|
|
|
|
transition: all 0.3s; |
|
|
|
|
&[type='yellow'] { |
|
|
|
|
background: url(../../assets/images/yellow.png) no-repeat; |
|
|
|
|
background-size: cover; |
|
|
|
@ -285,6 +296,9 @@ getYearRaceInfoEvent() |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.card:hover { |
|
|
|
|
transform: translateY(-5px); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|