b790e0e8 by 杨炀

no message

1 parent f9f418f2
......@@ -252,6 +252,13 @@ export function getMyGroupForCptFilter(groupId, cptId, query) {
data: query
})
}
//todo
export function bindWdsf(perId,card) {
return request({
url: `/systemj/personInfo/bindWdsf/${perId}?card=${card}`,
method: 'post'
})
}
export function getGroupPersonList(query,groupId) {
return request({
url: `/systemj/personInfo/getPersonInfoListByGroupIdNoLabel/${groupId}`,
......
......@@ -182,13 +182,14 @@ aside {
margin-bottom: 10px;
}
}
.flexCenter{display: flex;align-items: center;justify-content: center;}
.primary-kx{border:1px solid var(--el-color-primary)!important;color: var(--el-color-primary)!important;}
.primary-kx:hover{}
.border-info{background: rgba(69,61,234,0.04);
border: 1px solid #D3D1F6;
border-radius: 5px;padding: 10px;margin-bottom: 20px;
&.inline{display: inline-block;border-radius: 50px;padding: 10px 20px;
margin: 0 40% 20px;min-width: 200px;}
margin: 0 auto 20px;min-width: 280px;}
&.gray{background: #FAFBFD;
border: 1px solid #EEEFF0;}
label{margin-right: 10px;}
......
......@@ -241,7 +241,7 @@ img{display: block;}
}
.text-success {
color: #13B5B1;
color: #32B16C;
}
.text-info {
......@@ -1356,7 +1356,7 @@ img{display: block;}
.liveImgbox{height: 100%;position: relative;width: 100%;aspect-ratio: 16/9;cursor: pointer;
overflow: hidden;
.ii{position: absolute;top: 0;left: 0;color: #fff;font-size: 14px;padding: 4px 6px 4px 30px;
font-style: normal;z-index: 1;
font-style: normal;z-index: 1;height: 28px;
background: url("@/assets/dance/live.gif") no-repeat 10px #F04035;
background-size: 14px;
&::after{content: ''; width: 0;
......@@ -1381,7 +1381,7 @@ img{display: block;}
img{width: 100%;height: 100%;object-fit: cover;object-position: center;
transform: scale(1);transition: all 0.2s;}
}
.languageBtn{
.languageBtn{white-space: nowrap;
font-size: 16px;
span{padding: 0 5px;cursor: pointer;}
span:hover{font-weight: bold;}
......
......@@ -4,7 +4,7 @@
<img class="logo" src="@/assets/v1/nav_logo.png">
</router-link>
<div class="home-menu forPc">
<div class="home-menu forPc" style="margin: 0 20px">
<el-menu
v-if="language==0"
router :default-active="activeIndex" :mode="mode" :ellipsis="true"
......@@ -66,8 +66,8 @@
&nbsp;&nbsp;<span @click="logout()">退出</span>
</el-button>
<el-button v-if="language==1&&isLogin" style="border-radius: 20px;" class="loginBtn">
<span @click="router.push('/center/myInfo')">个人中心</span>
&nbsp;&nbsp;<span @click="logout()">退出</span>
<span @click="router.push('/center/myInfo')">Personal</span>
&nbsp;&nbsp;<span @click="logout()">Exit</span>
</el-button>
</div>
</div>
......@@ -318,7 +318,7 @@ function getCode() {
:deep(.el-menu-item.is-active){color: var(--el-color-primary);}
}
.weiHead{display: flex;justify-content: end;padding: 15px;align-items: center;
.languageBtn{font-size: 20px;margin-right: 20px;line-height: 30px;}
.languageBtn{font-size: 20px;margin-right: 20px;line-height: 30px;white-space: nowrap;}
}
.weiMenu{
.el-menu-item{font-size: 20px}
......
......@@ -6,6 +6,11 @@ import {
/* Layout */
import Layout from '@/layoutPc'
import Empty from '@/layoutPc/empty'
import NProgress from "nprogress";
import {getToken} from "@/utils/auth";
import useUserStore from "@/store/modules/user";
import {isRelogin} from "@/utils/request";
import {ElMessage} from "element-plus";
// import useUserStore from '@/store/modules/user'
/**
......@@ -348,6 +353,34 @@ export const constantRoutes = [
]
},
{
path: 'register',
component: Empty,
redirect: '/register',
children: [
{
path: '0',
component: () => import('@/viewsPc/register/personal'),
name: 'personalRegister',
meta: { title: 'Register' }
},{
path: '1',
component: () => import('@/viewsPc/register/team/team'),
name: 'teamRegister',
meta: { title: 'Register' }
},{
path: 'userAgreement',
component: () => import('@/viewsPc/register/userAgreement'),
name: 'userAgreement',
meta: { title: 'Register' }
},{
path: 'policy',
component: () => import('@/viewsPc/register/policy'),
name: 'policy',
meta: { title: 'Register' }
}
]
},
{
path: 'center',
component: () => import('@/viewsPc/center/index'),
children: [
......@@ -393,5 +426,33 @@ const router = createRouter({
}
}
})
NProgress.configure({ showSpinner: false })
router.beforeEach((to, from, next) => {
NProgress.start()
if (getToken()) {
// 判断当前用户是否已拉取完user_info信息
if (!useUserStore().user) {
isRelogin.show = true
useUserStore().getInfo().then(() => {
isRelogin.show = false
next() // hack方法 确保addRoutes已完成
}).catch(err => {
useUserStore().logOut().then(() => {
ElMessage.error(err)
next({ path: '/' })
})
})
} else {
next()
}
} else {
// 没有token
next()
}
})
router.afterEach((to) => {
NProgress.done()
})
export default router
......
......@@ -4,14 +4,14 @@
destroy-on-close :show-close="showClose" :close-on-click-modal="false" @close="close"
>
<el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form" v-if="loginStatus==0">
<el-form ref="loginRef" :model="loginForm" :rules="language==0?loginRules:loginRules_en" class="login-form" v-if="loginStatus==0">
<el-form-item prop="username">
<el-input
v-model.trim="loginForm.username"
size="large"
auto-complete="off"
placeholder="账号(注册时使用的邮箱/手机号码)"
:placeholder="language==0?'账号(注册时使用的邮箱/手机号码)':'Account (e-mail/ cell-phone number)'"
>
</el-input>
......@@ -22,7 +22,7 @@
type="password"
size="large" show-password
auto-complete="off"
placeholder="密码"
:placeholder="language==0?'密码':'Password'"
@keyup.enter="handleLogin"
>
</el-input>
......@@ -32,7 +32,7 @@
v-model.trim="loginForm.code"
size="large"
auto-complete="off"
placeholder="验证码"
:placeholder="language==0?'验证码':'Code'"
@keyup.enter="handleLogin"
>
<template #append>
......@@ -53,43 +53,48 @@
style="width:100%;"
@click.prevent="handleLogin"
>
<span v-if="!loading">登 录</span>
<span v-else>登 录 中...</span>
<span v-if="!loading">{{language==0?'登 录':'Login'}}</span>
<span v-else>{{language==0?'登 录 中...':'Logging in'}}</span>
</el-button>
</el-form-item>
<el-form-item>
<!-- <span style="color: #999;font-size: 12px;">*默认密码是会员号+证件号后四位+)*%</span>-->
<div style="display: flex;justify-content: space-between;width: 100%;">
<a class="text-primary" @click="showChangePassword">忘记密码?</a>
<a @click="showRegister" class="text-primary">账号注册></a>
<a class="text-primary" @click="showChangePassword">{{language==0?'忘记密码':'Retrieve password'}}?</a>
<a @click="showRegister" class="text-primary">{{language==0?'账号注册':'Register'}}></a>
</div>
</el-form-item>
<el-form-item>
<div class="agreeLine">
<div class="agreeLine" v-if="language==0">
登录或注册即代表同意
<a>《用户协议》</a>
<a>《隐私政策》</a>
</div>
<div class="agreeLine" v-else>
Registering and logging in means agreeing to the User
<a>Agreement</a> and
<a>Privacy Policy</a>
</div>
</el-form-item>
</el-form>
<div v-if="loginStatus==1">
<div class="rItem r1" @click="goRegister(1)">
<h3>机构用户</h3>
<h3>{{language==0?'机构用户':'Organization'}}</h3>
</div>
<div class="rItem r2" @click="goRegister(0)">
<h3>个人用户</h3>
<h3>{{language==0?'个人用户':'Individual'}}</h3>
</div>
</div>
<div v-if="loginStatus==2">
<el-form ref="changePasswordRef" :model="changePasswordForm" :rules="changePasswordRules" class="login-form">
<el-form ref="changePasswordRef" :model="changePasswordForm" :rules="language==0?changePasswordRules:changePasswordRules_en" class="login-form">
<el-form-item prop="username">
<el-input
v-model.trim="changePasswordForm.username"
size="large"
auto-complete="off" @change="changePasswordFormUsername"
placeholder="注册时使用的邮箱/手机号码"
:placeholder="language==0?'注册时使用的邮箱/手机号码':'E-mail/ Phone number'"
>
</el-input>
......@@ -99,16 +104,17 @@
v-model.trim="changePasswordForm.code"
size="large"
auto-complete="off"
placeholder="邮箱/手机验证码"
:placeholder="language==0?'邮箱/手机验证码':'Code'"
@keyup.enter="handleLogin"
>
<template #append>
<el-button type="primary" plain style="width: 110px" @click="sendsmsMsg">
<count-down v-if="counting" v-slot="{ totalSeconds }" :time="60000" @end="counting=false">
{{ totalSeconds }}
{{ totalSeconds }} {{ language==0?'秒':'s' }}
</count-down>
<span v-else>
发送验证码
<!-- Send verification code-->
{{language==0?'发送验证码':'Send'}}
</span>
</el-button>
</template>
......@@ -124,7 +130,7 @@
type="password"
size="large" show-password
auto-complete="off"
placeholder="新密码"
:placeholder="language==0?'新密码':'New password'"
@keyup.enter="handleLogin"
>
</el-input>
......@@ -135,7 +141,7 @@
type="password"
size="large" show-password
auto-complete="off"
placeholder="确认密码"
:placeholder="language==0?'确认密码':'Confirm password'"
>
</el-input>
</el-form-item>
......@@ -148,7 +154,8 @@
style="width:100%;"
@click.prevent="handleChangePassword"
>
<span>确定</span>
<span v-if="language==0">确定</span>
<span v-else>Submit</span>
</el-button>
</el-form-item>
</el-form>
......@@ -163,9 +170,11 @@ import {forgetPassword, getCodeImg} from '@/api/login'
import * as match from '@/apiPc/match'
import Cookies from 'js-cookie'
import useUserStore from '@/store/modules/user'
const language = ref(cache.local.get('language') || 0)
import { useRouter } from 'vue-router'
import { getCurrentInstance, ref, watch } from 'vue'
import { ElMessage,ElMessageBox} from 'element-plus'
import cache from "@/plugins/cache";
const emit = defineEmits(['submitForm'])
const userStore = useUserStore()
const router = useRouter()
......@@ -189,10 +198,21 @@ const changePasswordRules = {
confirmPassword: [{ required: true, trigger: 'change', message: '请再次输入您的密码' }],
code: [{ required: true, trigger: 'change', message: '请输入验证码' }]
}
const loginRules_en = {
username: [{ required: true, trigger: 'change', message: 'Please enter ' }],
password: [{ required: true, trigger: 'change', message: 'Please enter ' }],
code: [{ required: true, trigger: 'change', message: 'Please enter ' }]
}
const changePasswordRules_en = {
username: [{ required: true, trigger: 'change', message: 'Please enter ' }],
password: [{ required: true, trigger: 'change', message: 'Please enter ' }],
confirmPassword: [{ required: true, trigger: 'change', message: 'Please enter ' }],
code: [{ required: true, trigger: 'change', message: 'Please enter ' }]
}
const show = ref(false)
const loginStatus = ref(0)
const title = ref('用户登录')
const title = ref('')
const showClose = ref(true)
const codeUrl = ref('')
const loading = ref(false)
......@@ -212,6 +232,11 @@ const changePasswordForm = ref({
const open = (params) => {
show.value = true
showClose.value = !(params?.notShowClose || false)
if(language.value==0){
title.value = '用户登录'
} else {
title.value = 'LOGIN'
}
getCode()
getCookie()
}
......@@ -252,11 +277,19 @@ function close() {
}
function showChangePassword() {
loginStatus.value=2
if(language.value==0){
title.value = '忘记密码/密码重置'
} else {
title.value = 'FORGET PASSWORD'
}
}
function showRegister() {
loginStatus.value=1
if(language.value==0){
title.value = '账号注册'
} else {
title.value = 'REGISTER'
}
}
function goRegister(n) {
if(n==0){
......@@ -291,7 +324,11 @@ function getCookie() {
}
function sendsmsMsg() {
if(!changePasswordForm.value.username){
if(language.value==0){
ElMessage.error('请填写手机/邮箱')
} else {
ElMessage.error('Please fill in your phone/email address')
}
return
}
if(counting.value){
......
......@@ -4,10 +4,10 @@
<div class="box ph-30">
<el-card>
<el-steps :active="activeStep" align-center>
<el-step title="团队信息"/>
<el-step title="教练/领队/其他"/>
<el-step title="选手报名"/>
<el-step title="提交审核"/>
<el-step :title="language==0?'团队信息':'Team Information'" />
<el-step :title="language==0?'教练/领队/其他':'Coach/Team Leader/Other'" />
<el-step :title="language==0?'选手报名':'Participant Registration'" />
<el-step :title="language==0?'提交审核':'Submit for review'" />
</el-steps>
</el-card>
......@@ -171,12 +171,13 @@ import {ref, reactive} from 'vue'
import {getCurrentInstance, onMounted} from '@vue/runtime-core'
import * as match from '@/apiPc/match'
import dialogAddCoach from './components/addCoach'
import cache from '@/utils/cache'
const {proxy} = getCurrentInstance()
const router = useRouter()
const route = useRoute()
import {ElMessage} from 'element-plus'
import {useRoute, useRouter} from 'vue-router'
const language = ref(cache.local.get('language') || 0)
const data = reactive({
form: {
......
<template>
<div style="padding: 0 20px 20px">
<div style="padding: 0 20px 20px" v-if="language==0">
<!--赛事详情-->
<div class="indexTitle"><h3 class="leftboderTT">组织机构</h3></div>
<div class="xzbox">
1.各单位限报1支队伍,每队需报领队1名(运动员可兼任),运动员限报4名<br>
2.参赛运动员必须是参赛企业的员工(包括劳务派遣和外籍员工)<br>
3.参赛运动员必须年满18至50周岁,50周岁以上者不建议参加此次比赛<br>
4.参赛运动员必须身体健康
<div class="indexTitle">
<h3 class="leftboderTT">组织机构</h3>
</div>
<div class="xzbox" v-html="form.ocOrganizer">
</div>
<div class="indexTitle"><h3 class="leftboderTT">报名须知</h3></div>
<div class="xzbox" v-html="form.signKnow">
......@@ -103,9 +101,115 @@
<el-empty image="@/assets/img/order_no.png" image-size="228" v-if="form.cptProjectList?.length == 0" description=" "/>
</div>
</div>
<div style="padding: 0 20px 20px" v-else>
<!--赛事详情-->
<div class="indexTitle">
<h3 class="leftboderTT">Organization</h3>
</div>
<div class="xzbox" v-html="form.ocOrganizer">
</div>
<div class="indexTitle"><h3 class="leftboderTT">Notes</h3></div>
<div class="xzbox" v-html="form.signKnow">
</div>
<div class="indexTitle" v-if="form.type==0"><h3 class="leftboderTT">Competition Regulations</h3></div>
<div class="xzbox" v-if="form.type==0" v-html="form.ruleUrl"></div>
<div class="indexTitle" v-if="form.type==1"><h3 class="leftboderTT">Event settings</h3></div>
<div class="collapsebox" v-if="form.type==1">
<el-collapse v-if="form.cptProjectList?.length > 0">
<el-collapse-item :title="p.name" :name="index" :key="index" v-for="(p,index) in form.cptProjectList">
<div class="pd20">
<table class="table">
<tr>
<td>日期</td>
<td>单元</td>
<td>组别</td>
<td>时间</td>
<td>阶段</td>
</tr>
<tr>
<td rowspan="4">2023/10/6(星期五)</td>
<td rowspan="4">BRK01</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>资格赛</td>
</tr>
<tr>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>资格赛</td>
</tr>
<tr>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>循环赛</td>
</tr>
<tr>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>循环赛</td>
</tr>
<tr>
<td rowspan="8">2023/10/7(星期六)</td>
<td rowspan="8">BRK02</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>四分之一决赛</td>
</tr>
<tr>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>四分之一决赛</td>
</tr>
<tr>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>半决赛</td>
</tr>
<tr>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>半决赛</td>
</tr>
<tr>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>季军赛</td>
</tr>
<tr>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>季军赛</td>
</tr>
<tr>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>决赛</td>
</tr>
<tr>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>决赛</td>
</tr>
<tr>
<td colspan="5" style="text-align: left">
注:竞赛日程将根据最终参赛人数和电视转播的要求进行调整
</td>
</tr>
</table>
</div>
</el-collapse-item>
</el-collapse>
<el-empty image="@/assets/img/order_no.png" image-size="228" v-if="form.cptProjectList?.length == 0" description=" "/>
</div>
</div>
</template>
<script setup>
import {ref} from "vue";
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
const props = defineProps({
form:{
type:Object,
......
......@@ -2,13 +2,13 @@
<el-card :body-style="{padding: '10px'}" class="mb20">
<div>
<div class="liveImgbox" @click="goDetail(newsList[0])">
<i class="ii">直播中</i>
<i class="ii">{{ language==0?'直播中':'Live' }}</i>
<img :src="fillImgUrl_webSite(newsList[0]?.picUrl)">
</div>
</div>
<div class="indexTitle">
<h3 class="leftboderTT">赛事报道</h3>
<h3 class="leftboderTT">{{ language==0?'赛事报道':'Special reports' }}</h3>
<a class="more" @click="goList(query2.sortId,'专题报道')">MORE</a>
</div>
<div>
......@@ -17,7 +17,7 @@
</div>
</div>
<div class="indexTitle"><h3 class="leftboderTT">赛事视频</h3>
<div class="indexTitle"><h3 class="leftboderTT">{{ language==0?'赛事视频':'Event Videos' }}</h3>
<a class="more" @click="goList(10000006,'赛事视频')">MORE</a>
</div>
<div>
......@@ -25,7 +25,7 @@
<img :src="fillImgUrl_webSite(newsList[1]?.picUrl)">
</div>
</div>
<div class="indexTitle"><h3 class="leftboderTT">赛事图片</h3>
<div class="indexTitle"><h3 class="leftboderTT">{{ language==0?'赛事图片':'Event Photos' }}</h3>
<a class="more" @click="goList(10000007,'赛事图片')">MORE</a>
</div>
<div>
......@@ -37,6 +37,9 @@
<script setup>
import {getNewsListById} from "@/apiPc/webSite";
import {onMounted, ref} from "vue";
import cache from '@/plugins/cache'
const language = ref(cache.local.get('language') || 0)
const newsList = ref([])
const newsList2 = ref([])
const query1 = ref({
......
......@@ -5,18 +5,18 @@
<el-card class="mb20">
<el-row :gutter="20">
<el-col :lg="7" :md="24" :xl="6" >
<img class="mauto" src="@/assets/dance/fm.jpg">
<img class="mauto" :src="(matchData.enCpt.bgImgUrl)" >
</el-col>
<el-col :lg="9" :md="12" :xl="10">
<h3>
WDSF ASIAN DANCESPORT FESTIVAL .WUXI 2024
{{ matchData.enCpt.name }}
</h3>
<p class="ppl"><label class="bm1">Playing Time:</label>2024.07.21-2024.07.23</p>
<p class="ppl"><label class="bm2">Event Level:</label>league</p>
<p class="ppl"><label class="bm3">Location:</label>201 201, Zone A, Sports Center, Binhu District, Wuxi City, Jiangsu Province </p>
<p class="ppl"><label class="bm4">Registration Deadline:</label>2024-06-30 13:00</p>
<p class="ppl"><label class="bm1">Playing Time:</label>{{matchData.enCpt.beginTime?.slice(0,10)}} ~ {{ matchData.enCpt.endTime?.slice(0,10) }}</p>
<p class="ppl"><label class="bm2">Event Level:</label>{{ matchData.enCpt.level }}</p>
<p class="ppl"><label class="bm3">Location:</label>{{ matchData.enCpt.address }}</p>
<p class="ppl"><label class="bm4">Registration Deadline:</label>{{ matchData.enCpt.signEndTime?.slice(0,10) }}</p>
</el-col>
<el-col :lg="8" :md="12" :xl="8">
<el-col :lg="8" :md="12" :xl="8" v-if="matchData.type=='0'">
<p class="countDownTitle"><span>Registration deadline countdown</span></p>
<van-count-down :time="time" format="DD 天 HH 时 mm 分 ss 秒">
<template #default="timeData">
......@@ -31,312 +31,240 @@
</template>
</van-count-down>
<div class="funcBtns">
<div>
<a class="btn-lineG mb20" @click="choseSignType" style="display: block;text-align: center;">Application</a>
</div>
</el-col>
</el-row>
</el-card>
<el-row gutter="14">
<el-col :lg="4">
<div class="funcBtn" @click="building">
<img src="@/assets/dance/btn04.png"/>
<h4>Booking</h4>
</div>
</el-col>
<el-col :lg="4">
<div class="funcBtn" @click="building">
<img src="@/assets/dance/btn01.png"/>
<h4>酒店预约</h4>
<h4>Hotel</h4>
</div>
<div>
</el-col>
<el-col :lg="4">
<div class="funcBtn" @click="building">
<img src="@/assets/dance/btn02.png"/>
<h4>接送预约</h4>
<h4>Taxi</h4>
</div>
<div>
</el-col>
<el-col :lg="4">
<div class="funcBtn" @click="building">
<img src="@/assets/dance/btn03.png"/>
<h4>餐饮预约</h4>
<h4>Order food</h4>
</div>
</el-col>
<el-col :lg="4">
<div class="funcBtn" @click="building">
<img src="@/assets/dance/btn05.png"/>
<h4>Makeup appointment</h4>
</div>
</el-col>
<el-col :lg="4">
<div class="funcBtn" @click="building">
<img src="@/assets/dance/btn06.png"/>
<h4>Photo appointment</h4>
</div>
</el-col>
</el-row>
</el-card>
<el-row :gutter="20">
<el-row :gutter="20" v-if="matchData.type=='0'">
<el-col :lg="18">
<el-card :body-style="{'padding':'0'}">
<div class="lineHead">
<ul>
<li class="active">Event Details</li>
<li>Schedule</li>
<li>Participating Teams</li>
<li>Achievement</li>
<li>Notes</li>
<li v-for="l in menu" :key="l.name" @click="changeMenu(menu,l)" :class="l.active==1?'active':''">{{l.name}}</li>
</ul>
</div>
<div style="padding: 0 20px 20px">
<!-- 赛事详情-->
<div class="indexTitle"><h3 class="leftboderTT">Organization</h3></div>
<div class="xzbox"></div>
<div class="indexTitle"><h3 class="leftboderTT">Notes</h3></div>
<div class="xzbox">
1. Each unit is limited to reporting one team, each team needs to report one leader (athletes can also serve), and athletes are limited to reporting four<br>
2. Participating athletes must be employees of the participating companies (including labor dispatch and foreign employees)<br>
3. Contestants must be between the ages of 18 and 50, and those over 50 are not recommended to participate in this competition
<br>
4.Contestants must be physically healthy
</div>
<div class="indexTitle"><h3 class="leftboderTT">Competition projects</h3></div>
<matchInfo :form="matchData" v-if="menu[0].active==1"/>
<div v-if="menu[1].active==1">
<div class="collapsebox">
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="Breaking" name="1">
<el-collapse v-if="matchData.cptProjectList?.length > 0">
<el-collapse-item :title="p.name" :name="index" :key="index" v-for="(p,index) in matchData.cptProjectList">
<div class="pd20">
<div class="tablebody">
<table class="table">
<tr>
<td>date</td>
<td>unit</td>
<td>group</td>
<td>time</td>
<td>stage</td>
<td>日期</td>
<td>单元</td>
<td>组别</td>
<td>时间</td>
<td>阶段</td>
</tr>
<tr>
<td rowspan="4">2023/10/6(Friday)</td>
<td rowspan="4">2023/10/6(星期五)</td>
<td rowspan="4">BRK01</td>
<td>man</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>Qualification Tournament</td>
<td>资格赛</td>
</tr>
<tr>
<td>woman</td>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>Qualification Tournament</td>
<td>资格赛</td>
</tr>
<tr>
<td>man</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>round robin </td>
<td>循环赛</td>
</tr>
<tr>
<td>woman</td>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>round robin </td>
<td>循环赛</td>
</tr>
<tr>
<td rowspan="8">2023/10/7(Saturday)</td>
<td rowspan="8">2023/10/7(星期六)</td>
<td rowspan="8">BRK02</td>
<td>man</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>quarter final </td>
<td>四分之一决赛</td>
</tr>
<tr>
<td>man</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>quarter final </td>
<td>四分之一决赛</td>
</tr>
<tr>
<td>woman</td>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>semifinal</td>
<td>半决赛</td>
</tr>
<tr>
<td>woman</td>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>semifinal</td>
<td>半决赛</td>
</tr>
<tr>
<td>man</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>LPL</td>
<td>季军赛</td>
</tr>
<tr>
<td>woman</td>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>LPL</td>
<td>季军赛</td>
</tr>
<tr>
<td>man</td>
<td>男子</td>
<td>14:30 - 15:30</td>
<td>decider</td>
<td>决赛</td>
</tr>
<tr>
<td>woman</td>
<td>女子</td>
<td>14:30 - 15:30</td>
<td>decider</td>
<td>决赛</td>
</tr>
<tr>
<td colspan="5" style="text-align: left">
Note: The competition schedule will be adjusted based on the final number of participants and the requirements for television broadcasting
注:竞赛日程将根据最终参赛人数和电视转播的要求进行调整
</td>
</tr>
</table>
</div>
</div>
</el-collapse-item>
<el-collapse-item title="Latin " name="2">
<div class="pd20">
<table class="table">
<tr>
<td>date</td>
<td>unit</td>
<td>group</td>
<td>time</td>
<td>stage</td>
</tr>
<tr>
<td rowspan="4">2023/10/6(Friday )</td>
<td rowspan="4">BRK01</td>
<td>man</td>
<td>14:30 - 15:30</td>
<td>Qualification Tournament</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>Qualification Tournament</td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>round robin </td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>round robin </td>
</tr>
<tr>
<td rowspan="8">2023/10/7(Saturday )</td>
<td rowspan="8">BRK02</td>
<td>man</td>
<td>14:30 - 15:30</td>
<td>quarter final </td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>quarter final </td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>semifinal</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>semifinal</td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>LPL</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>LPL</td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>decider</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>decider</td>
</tr>
</table>
</el-collapse>
<el-empty image="@/assets/img/order_no.png" image-size="228" v-if="matchData.cptProjectList?.length == 0" description=" "/>
</div>
</el-collapse-item>
<el-collapse-item title="Standard " name="3">
<div class="pd20">
<table class="table">
<tr>
<td>date</td>
<td>unit</td>
<td>group</td>
<td>time</td>
<td>stage</td>
</tr>
<tr>
<td rowspan="4">2023/10/6(Friday )</td>
<td rowspan="4">BRK01</td>
<td>man</td>
<td>14:30 - 15:30</td>
<td>Qualification Tournament</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>Qualification Tournament</td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>round robin </td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>round robin </td>
</tr>
<tr>
<td rowspan="8">2023/10/7(Saturday )</td>
<td rowspan="8">BRK02</td>
<td>man</td>
<td>14:30 - 15:30</td>
<td>quarter final </td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>quarter final </td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>semifinal</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>semifinal</td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>LPL</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>LPL</td>
</tr>
<tr>
<td>man</td>
<td>14:30 - 15:30</td>
<td>decider</td>
</tr>
<tr>
<td>woman</td>
<td>14:30 - 15:30</td>
<td>decider</td>
</tr>
</table>
</div>
</el-collapse-item>
</el-collapse>
<match-schedule-list :match-data="matchData" v-if="menu[2].active==1"/>
<div v-if="menu[3].active==1">
<el-row :gutter="20" v-if="matchData.signType == '0'">
<el-col v-for="t in signDoneGroupList" :key="t.id" :span="8">
<div class="teamItem">
<el-avatar :size="60" :src="t.imgUrl||t.avatar" />
<span class="name">{{ t.name }}</span>
</div>
</el-col>
</el-row>
<el-row :gutter="20" v-else>
<el-col :span="24" v-for="(t,index) in signDoneGroupList" :key="t.id">
<div class="nowteamItem">
<span>{{index+1}}.</span>
<el-avatar :size="80" :src="t.imgUrl||t.avatar" :fit="cover"/>
<div class="info">
<h3 class="name">{{ t.name }}</h3>
<p v-if="t.extraInfo">
<span v-for="(ee,index) in JSON.parse(t.extraInfo)" :key="index" v-show="(ee?.type == '0'||ee?.type == '4')&&index<2">
{{ee.value}}&ensp;&ensp;
</span>
</p>
</div>
<p class="rr"><span>{{t.renCi}}</span> registrants</p>
</div>
</el-col>
</el-row>
<el-empty image="@/assets/img/order_no.png" image-size="228" v-if="(signDoneGroupList==null)||(signDoneGroupList.length==0)" description="" />
</div>
<div v-if="menu[4].active==1">
<!-- 成绩-->
<el-empty image="@/assets/img/order_no.png" image-size="228" description="" />
</div>
<div v-if="menu[5].active==1" class="pd20">
<div class="xzbox" v-html="matchData.signKnow">
</div>
</div>
</el-card>
<div style="height: 20px"></div>
</el-col>
<el-col :lg="6">
<a class="btn-lineG mb20" style="display: block;text-align: center;">Application</a>
<el-card :body-style="{padding: 0}">
<el-tabs v-model="activeName2" class="match-tabs" @tab-click="handleClick">
<el-tab-pane label="Registration Time" name="first">
<div class="gg">
<p><label>Registration Time:</label>2023-03-23 ~ 2023-05-09</p>
<p><label>Playing Time:</label>2023-05-14 ~ 2023-05-14</p>
<p><label>Contact Information:</label>13915234567</p>
<match-news/>
</el-col>
</el-row>
<el-row v-if="matchData.type=='1'" class="mb20">
<el-col :lg="24">
<el-card :body-style="{'padding':'0'}">
<div class="lineHead">
<ul>
<li v-for="l in menu1" :key="l.name" @click="changeMenu(menu1,l)" :class="l.active==1?'active':''">{{l.name}}</li>
</ul>
</div>
<!-- 分站赛-->
<div v-if="menu1[0].active==1">
<div class="matchItem" v-for="n in matchData.cpts" :key="n.id" @click="goDetail(n.id)">
<el-avatar alt="logo" :size="100" :src="n.logoUrl" />
<div class="info">
<h3>{{ n.name }}</h3>
<p>
Registration deadline:{{ n.signEndTime?.substring(0, 10) }}
<el-tag v-if="n.progressStatusCode==3" type="warning">About to begin</el-tag>
<el-tag v-if="n.progressStatusCode==2" type="success">Registration in progress</el-tag>
<el-tag v-if="n.progressStatusCode==4">In play</el-tag>
<el-tag v-if="n.progressStatusCode==5" type="info">Ended</el-tag>
<el-tag v-if="n.progressStatusCode==1" type="info">Not started</el-tag>
</p>
<p>
Playing time:{{ n.beginTime?.substring(0, 10) }}-{{ n.endTime?.substring(0, 10) }}
</p>
<p>
Location:{{ n.address }}
</p>
</div>
<div class="pobtns">
<el-button v-if="n.progressStatusCode==2" round type="success" @click="goDetail(n.id)">
Application
</el-button>
<el-button v-else-if="n.progressStatusCode==5" round type="info" @click="goDetail(n.id)">
Registration ended
</el-button>
<el-button v-else round type="warning" @click="goDetail(n.id)">Detail</el-button>
</div>
</div>
</el-tab-pane>
</el-tabs>
<el-empty image="@/assets/img/order_no.png" image-size="228" v-if="matchData.cpts?.length == 0" description=" "/>
</div>
<matchInfo :form="matchData" v-if="menu1[1].active==1"/>
<match-schedule-list :match-data="matchData" v-if="menu1[2].active==1"/>
</el-card>
</el-col>
</el-row>
......@@ -347,6 +275,11 @@
</template>
<script setup>
import groupDetail from '@/viewsPc/center/component/teamInfo_form'
import matchInfo from '@/viewsPc/match/components/matchInfo'
import MatchScheduleList from "@/viewsPc/match/components/matchScheduleList";
import MatchNews from "@/viewsPc/match/components/matchNews";
import { getCurrentInstance, ref } from 'vue'
import { reactive, onMounted } from '@vue/runtime-core'
import { useRoute, useRouter } from 'vue-router'
......@@ -357,38 +290,90 @@ const { proxy } = getCurrentInstance()
import * as match from '@/apiPc/match'
import { toRefs } from '@vueuse/shared'
import { ElMessage } from 'element-plus'
import groupDetail from '../center/component/teamInfo_form'
const data = reactive({
activeName: 'tab1',
matchData: {},
activeName2: 'first',
projectList: [],
groupList: [],
levelList: [],
levelListGirl: [],
levelListBoy: [],
popup: false,
popupGroupList: false,
groupListArr: [],
matchData: {
enCpt:{}
},
matchId: 0,
groups: [],
time: 0,
groupId: '',
signDoneGroupList: [],
cptLabelsList: [],
secondTabName: '参赛队',
collapseActive: '0',
activeNames: '1'
activeName2:'first',
popupGroupList:false,
menu:[{name:'Event details',active:1},{name:'Event settings',active:0},{name:'Schedule',active:0},{name:'Participating teams',active:0},
{name:'Achievement',active:0},{name:'Notes',active:0}],
menu1:[{name:'Station race',active:1},{name:'Event details',active:0},{name:'Schedule',active:0}],
signDoneGroupList: []
})
const {
activeName, activeName2, matchData, projectList, groupList, levelList, popup, popupGroupList, time,
groupListArr, matchId, groups, groupId, signDoneGroupList, levelListGirl, levelListBoy, cptLabelsList, secondTabName,
collapseActive, activeNames
} = toRefs(data)
const {matchData,matchId,groupId,activeName2,popupGroupList,menu,menu1,signDoneGroupList} = toRefs(data)
onMounted(() => {
// matchId.value = route.params.id
matchId.value = '1759477811976183809'
getMatch(matchId.value)
getGroupListByCptId(matchId.value)
})
function building() {
ElMessage.warning('Building!')
}
function getMatch(id) {
if(id!=0)
match.getMatchById({ id: id }).then(res => {
matchData.value = res.data
})
}
function getGroupListByCptId(id) {
match.getGroupListByCptId(id).then(res => {
signDoneGroupList.value = res.data
})
}
function changeMenu(menu,l){
for(const n of menu){
if(n==l){
n.active = 1
} else {
n.active = 0
}
}
}
function choseSignType() {
if (matchData.value.signType == '0') {
// 个人报名
checkIsSign(matchData.value.signType).then((res) => {
router.push({
path: `${route.params.id}/singleSign`
})
})
} else {
// 团队报名 团体-队伍报名
match.getMyGroupList().then(res => {
checkIsSign(matchData.value.signType,res.data[0].id).then(() => {
goSignType2(res.data[0].id)
})
})
}
}
function goSignType2(groupId) {
router.push({
path: `${route.params.id}/teamSign`,
query: {
matchId: matchId.value,
groupId: groupId,
signType: matchData.value.signType
}
})
}
// 获取已报信息
function checkIsSign(signType,groupId) {
var obj = {
cptId: matchId.value,
groupId: groupId
}
return match.getMySignInfo(obj).then(res => {
if (res.data.type == '1') {
ElMessage.error('已报名,不能重复报名')
return Promise.reject('rejected message')
}
})
}
</script>
<style scoped lang="scss">
......
<template>
<div>
<div class="box">
<el-card :body-style="{ padding: '0px' }" class="mt20 mb60">
<el-card :body-style="{ padding: '0px' }" class="mt20">
<div slot="header">
<div class="bg-lineg">报名缴费清单</div>
</div>
......@@ -115,6 +115,100 @@
</el-card>
<el-card class="mt20 mb20">
<el-row class="result">
<el-col :lg="12">
<div class="text-success flex" v-if="approved">
<img src="@/assets/img/r.png">
报名信息审核通过</div>
<div class="text-danger flex" v-else>
<img src="@/assets/img/w.png">报名信息审核拒绝</div>
</el-col>
<el-col :lg="12">
<div class="priceb">待支付金额:<span class="price">¥1840.00</span></div>
</el-col>
</el-row>
</el-card>
<el-card class="mb60" v-if="approved">
<div class="leftboderTT">选择支付方式</div>
<div class="mt20">
<el-radio-group v-model="payType">
<!-- <el-radio label="1" border>-->
<!-- <svg t="1709003181386" class="icon" viewBox="0 0 3283 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="31015" width="100" height="40"><path d="M1163.122759 94.631724H593.92A133.826207 133.826207 0 0 0 459.034483 228.457931v567.084138a133.473103 133.473103 0 0 0 133.826207 133.826207h570.262069a133.826207 133.826207 0 0 0 134.17931-133.826207v-5.296552s-217.864828-90.394483-328.033103-143.36c-73.445517 90.747586-168.783448 145.478621-267.652414 145.478621-167.017931 0-223.514483-145.831724-144.419311-241.875862a169.136552 169.136552 0 0 1 92.16-51.906207c70.62069-17.302069 184.32 10.946207 290.604138 45.903448A587.211034 587.211034 0 0 0 988.689655 429.373793h-328.73931v-32.838621h168.783448V337.213793h-204.446896v-33.191724h204.446896V219.630345a14.124138 14.124138 0 0 1 14.477241-14.477242h82.273104v98.868966h202.328276v33.191724h-202.328276v59.321379h165.252414a677.605517 677.605517 0 0 1-70.62069 176.551725c50.14069 18.008276 94.984828 35.310345 128.529655 46.256551a930.427586 930.427586 0 0 0 147.950345 42.725518V228.457931a133.826207 133.826207 0 0 0-133.473103-133.826207z" fill="#089fe8" p-id="31016"></path><path d="M663.481379 548.016552a162.78069 162.78069 0 0 0-81.566896 30.366896c-64.617931 55.790345-26.129655 158.190345 104.165517 158.190345 75.917241 0 151.481379-48.375172 211.862069-125.704827-85.804138-40.96-156.424828-70.267586-234.46069-62.852414zM2488.673103 225.28h239.757242v47.668966h85.804138V216.805517a22.951724 22.951724 0 0 0-21.892414-23.304827h-139.122759V149.009655h-89.335172v44.137931h-160.662069v79.80138h85.451034zM1882.394483 360.518621h67.442758v247.172413h73.798621V280.011034h-26.835862l55.437241-126.764137H1970.317241l-87.922758 207.271724zM2824.827586 596.391724l-26.835862-90.747586a13.771034 13.771034 0 0 0-13.064827-10.24h-70.62069l20.48 70.62069H2648.275862v-135.944828h164.546207v-32.132414H2648.275862v-63.55862h164.546207v-32.132414h-409.6v32.132414h164.546207v63.55862h-164.546207v32.132414h164.546207V564.965517h-164.546207v32.132414H2824.827586zM2158.521379 323.442759a16.595862 16.595862 0 0 0-15.183448-9.886897h-63.558621l49.434483 156.424828h75.564138z" fill="#089fe8" p-id="31017"></path><path d="M2319.889655 156.777931h-76.623448v80.154483h-188.557241v32.132414h188.557241v287.426206a13.064828 13.064828 0 0 1-12.358621 12.005518h-38.841379v31.77931h99.222069a30.013793 30.013793 0 0 0 28.601379-29.66069V269.064828h31.073104v-32.132414h-31.073104zM1871.448276 577.677241a913.831724 913.831724 0 0 1-168.783448-80.507586 357.34069 357.34069 0 0 0 141.241379-194.56H1694.896552V249.997241h170.195862v-32.83862H1694.896552V150.422069h-75.211035a15.536552 15.536552 0 0 0-15.183448 15.536552v51.2h-169.136552v32.83862h169.136552v52.612414h-141.241379v32.838621h284.248276a278.951724 278.951724 0 0 1-93.572414 127.470345 360.871724 360.871724 0 0 1-93.572414-94.984828H1483.034483a423.724138 423.724138 0 0 0 122.173793 130.295173 662.775172 662.775172 0 0 1-172.667586 77.329655v39.194482A773.296552 773.296552 0 0 0 1653.230345 529.655172 781.771034 781.771034 0 0 0 1871.448276 614.753103zM1553.655172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.188966-79.095172 26.482758 79.095172zM1796.237241 674.78069h-34.251034v190.675862h115.464827v-26.129655h-81.213793v-164.546207zM2003.155862 674.78069h34.251035v190.322758h-34.251035zM2250.328276 674.78069h-74.151724v190.675862h35.310345v-73.445518h39.900689a58.615172 58.615172 0 1 0 0-117.230344z m-2.118621 91.100689H2210.427586v-64.971034h37.782069a31.073103 31.073103 0 0 1 30.366897 32.485517 30.72 30.72 0 0 1-30.366897 32.485517zM2465.015172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.542069-79.095172 27.188966 79.095172zM2716.071724 755.994483l-38.135172-81.213793H2641.213793l57.555862 112.286896v78.388966h33.897931v-78.388966l0.353104-0.353103 57.555862-111.933793h-37.075862l-37.428966 81.213793z" fill="#089fe8" p-id="31018"></path></svg>-->
<!-- </el-radio>-->
<el-radio label="2" border>
<svg t="1709002960407" class="icon" viewBox="0 0 3152 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="24747" width="94" height="40"><path d="M381.998922 630.960647c-4.416173 2.208086-8.832345 3.312129-14.352561 3.312129-12.144474 0-22.080863-7.17628-28.1531-17.66469l-2.208086-4.968194-87.771428-204.247978c-1.104043-2.208086-1.104043-4.416173-1.104043-6.624259 0-9.384367 6.624259-16.560647 15.456603-16.560647 3.312129 0 6.624259 1.104043 9.936388 3.312129l103.780054 78.387062c7.728302 4.968194 16.560647 8.280323 26.497035 8.280324 5.520216 0 11.040431-1.104043 16.560647-3.312129l486.330998-230.192992C819.752022 131.381132 676.226415 60.17035 513.380054 60.17035 248.409704 59.618329 32.017251 250.61779 32.017251 486.883019c0 128.069003 64.586523 244.545553 166.15849 322.932614 7.728302 6.072237 13.248518 16.560647 13.248518 27.601079 0 3.312129-1.104043 7.17628-2.208086 10.488409-7.728302 32.017251-20.976819 84.459299-20.97682 86.667386-1.104043 3.312129-2.208086 8.280323-2.208086 13.248517 0 9.384367 6.624259 16.560647 15.456604 16.560647 3.312129 0 6.624259-1.104043 8.832345-3.312129l104.884097-65.138545c7.728302-4.968194 16.560647-8.280323 25.392992-8.280323 4.416173 0 9.936388 1.104043 14.35256 2.208086 49.129919 15.456604 102.676011 23.736927 157.326146 23.736927 265.522372 0 481.362803-191.551482 481.362803-427.816711 0-71.210782-19.872776-139.109434-54.650135-198.175741L385.863073 628.752561l-3.864151 2.208086z" fill="#09BB07" p-id="24748"></path><path d="M1398.822642 381.998922c-9.384367 19.320755-20.424798 38.641509-32.017251 57.962264v263.866307h-31.465229V485.226954c-13.248518 18.216712-27.049057 34.225337-40.297574 48.025876-3.864151-7.17628-14.352561-23.736927-20.424798-30.361186 34.777358-33.673315 71.210782-82.803235 93.843666-131.933153l30.361186 11.040431z m-8.280324-91.63558c-22.632884 36.985445-59.066307 78.939084-91.635579 105.98814-4.416173-7.17628-13.248518-19.320755-19.320755-25.945013 29.809164-23.736927 62.378437-61.274394 78.939083-92.187601l32.017251 12.144474z m181.615094 289.811321c1.656065 7.728302 6.072237 19.320755 8.832345 24.84097-55.754178 37.537466-66.242588 46.369811-72.866846 54.650135-1.656065-7.728302-8.280323-22.080863-12.696496-28.705121 4.968194-3.312129 12.696496-10.48841 12.696496-28.705121v-54.098114h-60.17035v27.049057c0 38.641509-7.728302 91.083558-42.505661 128.069003-4.416173-7.17628-16.560647-19.320755-22.632884-23.184906 29.809164-31.465229 34.225337-72.866846 34.225337-105.436119v-54.098113h118.684636v82.251213l36.433423-22.632884z m123.100809-176.094879c-9.384367 73.970889-23.184906 136.349326-48.025876 187.687332 16.560647 36.433423 39.193531 66.242588 67.346631 83.355256-7.17628 6.072237-17.112668 18.216712-22.632884 27.049057-25.945013-18.216712-46.369811-45.265768-62.930459-78.939084-20.424798 32.017251-45.81779 59.066307-78.939083 81.699191-3.864151-6.624259-13.248518-19.872776-19.872776-25.392992 36.985445-22.632884 64.034501-52.99407 83.907277-89.979514-12.696496-34.777358-22.080863-73.418868-28.705121-115.372507-4.968194 11.040431-10.48841 22.632884-16.560647 31.465229-3.864151-4.416173-10.48841-13.248518-17.112668-20.424798v5.520216h-154.014017v-29.809165h154.014017v9.384367c24.84097-49.129919 37.537466-118.684636 44.713746-191.551483l31.465229 4.968195c-3.864151 31.465229-8.280323 61.274394-13.800539 90.531536h96.051752v29.809164h-14.904582z m-142.973585 22.632884h-145.181671v-110.404312h24.84097v82.251213h35.32938V278.770889h26.497035v119.78868h33.673316V316.308356h25.392992v110.404312z m55.202156-22.632884c-1.656065 6.624259-3.312129 12.696496-4.416172 18.768734 6.072237 46.369811 14.904582 91.083558 28.1531 130.277088 16.560647-43.057682 26.497035-91.63558 32.569272-149.045822h-56.3062zM1882.393531 289.259299c-10.48841 31.465229-24.288949 62.378437-39.193531 91.63558v324.036657h-32.017251V437.201078c-13.800539 22.632884-29.257143 42.50566-44.161725 60.170351-3.312129-7.728302-13.248518-24.288949-19.320754-32.017251 41.953639-45.265768 80.043127-114.820485 103.780053-184.927224l30.913208 8.832345z m288.707278 65.690566v29.257143h-294.779515v-29.257143h294.779515z m-267.730459 199.831806h235.713208v147.941779h-30.913208v-16.560647h-174.438814v18.216712h-30.361186v-149.597844z m231.297035-104.332075H1909.994609v-28.1531h224.672776v28.1531zM1909.994609 486.883019h224.672776v28.1531H1909.994609v-28.1531z m23.736927 96.603773V656.90566h174.438814v-73.418868h-174.438814z m81.699192-231.297035c-6.072237-16.560647-20.424798-43.057682-32.017251-61.826415l29.257143-12.144474c13.248518 19.320755 27.601078 44.161725 34.225337 60.722372l-31.465229 13.248517zM2586.221024 468.114286c-26.497035 63.48248-69.002695 111.508356-122.548787 147.941779 50.785984 25.945013 110.956334 43.609704 180.511051 52.442048-7.728302 8.280323-16.560647 23.184906-21.528841 33.673316-75.074933-11.592453-139.661456-32.569272-192.655525-64.034502-57.962264 32.017251-125.308895 52.99407-195.415634 66.794609-3.312129-9.384367-12.696496-25.392992-19.320754-33.121293 66.242588-10.48841 129.173046-28.1531 183.271159-55.202157-44.161725-32.017251-78.939084-72.866846-103.780054-123.65283l10.48841-3.864151h-49.12992v-34.225337h155.670081V383.654987h-176.6469v-34.225337h176.6469V278.770889h35.32938v70.658761h177.750944v34.225337h-177.750944v71.210781H2555.859838l7.176281-1.656064 23.184905 14.904582z m-255.033962 20.976819c23.184906 43.609704 56.858221 80.043127 100.467925 108.748248 44.161725-28.1531 80.043127-63.48248 104.332075-108.748248h-204.8zM2834.630728 292.571429c-13.800539 34.777358-30.361186 69.554717-49.129919 101.571967v308.580054h-34.225337V447.689488c-14.904582 20.976819-31.465229 40.297574-46.921833 56.306199-4.416173-7.728302-14.904582-25.945013-21.528841-34.225337 47.473854-45.265768 91.63558-115.924528 118.132614-188.239353l33.673316 11.040432z m270.490566 123.65283h-58.514286v240.12938c0 25.945013-7.728302 36.985445-24.84097 41.953639-18.216712 5.520216-49.129919 6.072237-99.915903 5.520215-1.656065-8.832345-8.280323-24.84097-13.248518-34.225337 39.193531 1.656065 77.283019 1.656065 88.32345 1.104043 10.48841-1.104043 14.352561-3.864151 14.352561-14.35256V416.224259h-187.687332v-34.225337h187.687332V283.739084h34.777359v97.707816h58.514285v34.777359z m-184.375202 178.854986c-13.800539-28.705121-43.609704-78.939084-67.346631-115.924528l29.809164-13.800539c24.288949 35.881402 55.202156 84.459299 70.106739 112.612399l-32.569272 17.112668z" fill="#595757" p-id="24749"></path></svg>
</el-radio>
<el-radio label="3" border>
<svg t="1709003441012" class="icon" viewBox="0 0 3527 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="32905" width="90" height="40"><path d="M316.703858 1.763556h392.789333c54.840889 0 88.917333 45.966222 76.145778 102.542222l-182.897778 807.452444c-12.885333 56.405333-67.783111 102.4-122.652444 102.4H87.327858c-54.755556 0-88.917333-45.994667-76.145778-102.4L194.136747 104.305778C206.936747 47.729778 261.80608 1.763556 316.703858 1.763556" fill="#E0002B" p-id="32906"></path><path d="M679.569636 1.763556H1120.515413c53.532444 0 29.383111 45.966222 16.782223 102.542222l-178.460445 807.452444c-12.515556 56.405333-8.618667 102.4-62.264889 102.4H455.626524c-53.617778 0-86.812444-45.994667-74.211555-102.4L559.903858 104.305778C572.59008 47.729778 626.037191 1.763556 679.569636 1.763556" fill="#004380" p-id="32907"></path><path d="M1106.748302 1.763556h388.096c54.243556 0 87.921778 45.966222 75.178667 102.542222l-180.622222 807.452444c-12.771556 56.405333-67.043556 102.4-121.287111 102.4H880.245191c-54.272 0-87.921778-45.994667-75.235555-102.4L985.688747 104.305778C998.31808 47.729778 1052.504747 1.763556 1106.776747 1.763556" fill="#007A8A" p-id="32908"></path><path d="M1135.192747 604.416l-42.410667 173.568h11.434667l-8.874667 35.84h-11.320889l-2.673778 11.064889h-40.391111l2.759111-11.064889h-81.92l8.192-33.166222h8.334223l42.979555-176.241778 8.590222-35.527111h41.130667l-4.323556 17.92s10.979556-9.756444 21.361778-13.084445c10.382222-3.413333 70.001778-4.636444 70.001778-4.636444l-8.817778 35.328h-14.051555z m-72.533334 0l-10.894222 44.373333s12.231111-6.855111 18.858667-9.102222c6.741333-2.218667 16.839111-2.958222 16.839111-2.958222l7.879111-32.312889H1062.687858z m-16.327111 66.304l-11.264 46.193778s12.515556-7.879111 19.143111-10.382222a188.586667 188.586667 0 0 1 17.038223-3.470223l7.964444-32.341333h-32.881778z m-26.168889 107.690667h32.768l9.386667-38.968889H1029.692302l-9.500444 38.968889zM1186.108302 568.888889h40.704l0.398222 19.541333c-0.284444 3.328 1.934222 4.864 6.684445 4.864h8.277333l-7.566222 32.284445h-21.987556c-19.000889 1.763556-26.225778-8.789333-25.742222-20.650667L1186.108302 568.888889z" fill="#FEFEFE" p-id="32909"></path><path d="M1174.844302 721.635556h-46.08l7.907556-31.516445h52.650666l7.480889-28.814222h-51.968L1153.71008 625.777778h144.583111l-8.988444 35.555555H1240.75008l-7.566222 28.785778h48.64l-8.106667 31.516445h-52.508444l-9.386667 13.255111h21.333333l5.233778 39.708444c0.568889 3.953778 0.568889 6.542222 1.678222 8.248889 1.080889 1.393778 7.480889 2.133333 11.207111 2.133333h6.456889l-9.841777 38.599111h-16.440889c-2.503111 0-6.286222-0.199111-11.52-0.455111-4.892444-0.540444-8.362667-3.982222-11.690667-5.973333a18.403556 18.403556 0 0 1-8.590222-13.425778l-5.12-39.623111-23.950222 38.997333c-7.566222 12.373333-17.834667 21.788444-35.185778 21.788445h-33.422222l8.760888-34.503111h12.8c3.697778 0 6.912-1.706667 9.329778-3.214222a15.189333 15.189333 0 0 0 7.082667-7.025778l34.872889-58.510222zM677.635413 625.777778H793.603413l-8.590222 36.380444h-46.336l-7.224889 31.061334h47.416889l-8.675555 37.546666h-47.36l-11.52 50.517334c-1.393778 5.546667 11.264 6.257778 15.843555 6.257777l23.665778-4.266666L741.29408 824.888889h-53.418667c-4.323556 0-7.509333-0.824889-12.145777-2.190222-4.494222-1.507556-6.485333-4.152889-8.476445-8.135111-1.934222-4.124444-4.977778-7.480889-2.901333-16.327112l15.36-66.816h-26.339556l8.760889-38.200888h26.396445l7.025777-31.061334h-26.311111L677.635413 625.777778zM770.648747 583.822222h50.972444l-9.244444 27.363556h-69.632l-7.537778 5.745778c-3.242667 2.787556-4.352 1.649778-8.590222 3.640888a55.779556 55.779556 0 0 1-22.897778 5.205334h-22.300445l8.988445-26.282667h6.712889c5.632 0 9.528889-0.455111 11.491555-1.536 2.218667-1.28 4.721778-4.039111 7.452445-8.533333l12.885333-20.536889h50.602667l-8.903111 14.933333zM837.606969 569.088h48.355555l-7.082666 24.120889s15.303111-12.117333 25.998222-16.469333c10.638222-3.868444 34.730667-7.395556 34.730667-7.395556L1017.887858 568.888889l-26.652445 87.950222c-4.522667 15.018667-9.756444 24.746667-13.027555 29.212445a33.792 33.792 0 0 1-13.198222 12.032 49.806222 49.806222 0 0 1-18.119112 6.058666c-5.176889 0.369778-13.084444 0.483556-24.092444 0.654222H847.363413l-21.191111 69.461334c-2.019556 6.940444-2.986667 10.24-1.649778 12.117333a8.732444 8.732444 0 0 0 7.168 3.470222l33.28-3.100444L853.564302 824.888889h-37.148444c-11.861333 0-20.48-0.284444-26.510222-0.739556-5.745778-0.483556-11.719111 0-15.786667-3.015111-3.413333-3.043556-8.704-7.054222-8.590222-11.093333 0.369778-3.754667 1.991111-10.040889 4.380444-18.659556l67.697778-222.293333z m102.684444 88.746667H861.016747l-4.892445 15.815111h68.608c8.078222-0.938667 9.756444 0.199111 10.467556-0.170667l5.034666-15.644444z m-74.951111-14.279111s15.502222-14.023111 42.040889-18.545778c6.030222-1.137778 43.662222-0.739556 43.662222-0.739556l5.745778-18.830222H876.945636l-11.576889 38.115556z" fill="#FEFEFE" p-id="32910"></path><path d="M961.795413 711.111111l-4.494222 21.219556c-1.877333 6.656-3.555556 11.576889-8.561778 15.872-5.290667 4.465778-11.491556 9.159111-25.969777 9.159111l-26.823112 1.137778-0.199111 23.950222c-0.284444 6.741333 1.536 6.087111 2.588445 7.168 1.251556 1.223111 2.360889 1.678222 3.498666 2.161778l8.533334-0.483556 25.571555-1.422222L925.301191 824.888889h-29.383111c-20.536889 0-35.811556-0.483556-40.760889-4.408889-4.949333-3.128889-5.603556-7.025778-5.518222-13.767111l1.877333-93.496889h46.876445l-0.654223 19.114667h11.264c3.868444 0 6.485333-0.369778 8.078223-1.422223a8.448 8.448 0 0 0 3.128889-4.835555l4.721777-14.961778h36.835556zM368.529636 256c-1.564444 7.509333-30.976 142.933333-31.061334 143.075556-6.314667 27.392-10.922667 46.933333-26.567111 59.534222a47.388444 47.388444 0 0 1-31.288889 10.894222c-19.285333 0-30.549333-9.585778-32.426666-27.761778l-0.398223-6.257778s5.888-36.693333 5.888-36.892444c0 0 30.862222-123.448889 36.408889-139.776 0.284444-0.910222 0.341333-1.422222 0.426667-1.848889-60.046222 0.540444-70.712889 0-71.424-0.967111-0.398222 1.336889-1.905778 8.988444-1.905778 8.988444l-31.516444 139.093334-2.673778 11.832889-5.262222 38.599111c0 11.434667 2.275556 20.764444 6.741333 28.672C197.834524 508.245333 238.76608 512 261.919858 512c29.866667 0 57.856-6.314667 76.771555-17.891556 32.824889-19.370667 41.415111-49.664 49.095111-76.600888l3.527112-13.795556s31.800889-128.199111 37.205333-144.896c0.199111-0.910222 0.284444-1.422222 0.568889-1.848889-43.576889 0.455111-56.433778 0-60.558222-0.967111M548.042524 482.645333a453.518222 453.518222 0 0 0-45.397333 0.910223l-0.796444-1.763556c1.820444-8.846222 3.811556-17.521778 5.603555-26.453333l2.588445-12.060445c3.896889-18.716444 7.68-40.476444 8.106666-47.160889 0.426667-3.982222 1.706667-13.937778-8.732444-13.937777-4.352 0-8.903111 2.304-13.539556 4.693333-2.56 9.955556-7.651556 37.973333-10.097777 50.716444-5.205333 26.88-5.546667 29.980444-7.879112 43.264l-1.507555 1.792c-18.545778-0.341333-25.031111-0.341333-46.364445 0.910223l-0.938666-2.019556c3.527111-15.928889 7.111111-32.056889 10.496-48.042667 8.96-43.349333 11.093333-59.904 13.539555-81.948444l1.706667-1.28c20.849778-3.242667 25.884444-3.896889 48.440889-8.931556l1.905778 2.332445-3.470223 13.795555c3.84-2.503111 7.480889-5.034667 11.320889-7.196444 10.638222-5.745778 22.471111-7.452444 28.956445-7.452445 9.927111 0 20.736 3.015111 25.230222 15.587556 4.266667 11.207111 1.422222 24.974222-4.181333 52.110222l-2.901334 13.880889a1275.761778 1275.761778 0 0 0-9.955555 56.462222l-2.133334 1.792zM607.206969 482.645333c-8.362667-0.085333-13.767111-0.341333-18.972445-0.085333-5.205333 0.085333-10.296889 0.455111-18.062222 0.995556l-0.398222-0.995556-0.512-1.052444c2.133333-11.605333 3.271111-15.616 4.323556-19.740445 1.080889-4.152889 2.048-8.248889 3.925333-20.024889 2.446222-15.36 3.953778-26.083556 4.920889-35.498666 1.137778-9.102222 1.735111-16.867556 2.616889-25.827556l0.568889-0.682667 0.682666-0.881777c8.305778-1.678222 13.568-2.816 18.972445-4.067556 5.461333-1.024 10.922667-2.616889 19.512889-5.006222l0.312888 1.052444 0.256 1.137778c-1.592889 9.500444-3.242667 19.000889-4.807111 28.643556-1.507556 9.671111-3.128889 19.143111-4.608 28.643555-3.100444 20.195556-4.352 27.761778-5.091555 33.223111-0.711111 5.091556-0.910222 7.907556-2.104889 18.346667l-0.796445 0.938667-0.739555 0.853333zM790.474524 412.216889c6.684444-30.492444 1.450667-44.743111-5.12-53.418667-9.955556-13.226667-27.562667-17.464889-45.795555-17.464889-10.979556 0-37.148444 1.137778-57.571556 20.650667-14.677333 14.108444-21.447111 33.223111-25.543111 51.541333-4.124444 18.688-8.874667 52.309333 20.935111 64.796445 9.216 4.096 22.471111 5.233778 31.004445 5.233778 21.845333 0 44.259556-6.257778 61.098666-24.746667 12.970667-15.047111 18.887111-37.376 20.963556-46.592m-50.119111-2.190222c-0.967111 5.176889-5.319111 24.291556-11.178667 32.426666-4.096 6.030222-8.931556 9.671111-14.307555 9.671111-1.592889 0-11.093333 0-11.235556-14.620444-0.056889-7.224889 1.336889-14.592 3.100445-22.584889 5.034667-23.096889 10.951111-42.496 26.140444-42.496 11.889778 0 12.743111 14.449778 7.480889 37.603556M1249.653191 482.787556c-15.644444-0.170667-20.138667-0.170667-34.616889 0.768l-0.881778-1.820445c3.896889-23.011556 7.822222-45.937778 11.320889-69.205333 4.551111-30.179556 5.575111-43.008 7.054223-60.672l1.166222-1.479111c15.559111-3.413333 19.911111-4.408889 36.067555-9.045334l0.455111 2.076445c-2.958222 19.000889-5.859556 37.859556-8.760888 56.917333-5.944889 39.793778-8.106667 59.989333-10.382223 80.782222l-1.422222 1.706667z" fill="#FEFEFE" p-id="32911"></path><path d="M1231.078969 400.497778c-5.916444-15.644444-2.275556-47.217778-26.140445-57.827556-9.187556-4.181333-30.72 1.194667-49.265777 20.650667-13.056 13.880889-19.313778 32.938667-22.840889 51.2-3.754667 18.403556-8.049778 51.996444 18.631111 64 8.504889 4.152889 16.128 5.404444 23.893333 4.949333 26.794667-1.649778 47.217778-48.384 62.378667-66.844444 11.662222-14.620444-2.816-6.144-6.656-16.128z m-18.887111 10.439111c-1.052444 4.949333-5.006222 24.234667-10.268445 32.312889-3.527111 5.745778-11.889778 9.301333-16.725333 9.301333-1.365333 0-9.784889 0-10.097778-14.336-0.056889-7.139556 1.223111-14.506667 2.816-22.584889 4.579556-22.670222 9.870222-41.870222 23.552-41.870222 10.723556 0 15.303111 13.966222 10.723556 37.176889M912.472747 482.645333a452.408889 452.408889 0 0 0-45.368889 0.910223l-0.796445-1.763556c1.820444-8.846222 3.868444-17.521778 5.745778-26.453333l2.446222-12.060445c3.982222-18.716444 7.736889-40.476444 8.135111-47.160889 0.398222-3.982222 1.649778-13.937778-8.675555-13.937777-4.494222 0-8.988444 2.304-13.653333 4.693333-2.446222 9.955556-7.68 37.973333-10.183112 50.716444-5.063111 26.88-5.404444 29.980444-7.708444 43.264l-1.592889 1.792a469.788444 469.788444 0 0 0-46.307555 0.910223l-0.938667-2.019556c3.555556-15.928889 7.111111-32.056889 10.524444-48.042667 8.931556-43.349333 11.008-59.904 13.511111-81.948444l1.592889-1.28c20.821333-3.242667 25.969778-3.896889 48.526223-8.931556l1.706666 2.332445-3.214222 13.795555c3.697778-2.503111 7.509333-5.034667 11.292444-7.196444 10.552889-5.745778 22.471111-7.452444 28.956445-7.452445 9.784889 0 20.650667 3.015111 25.315555 15.587556 4.181333 11.207111 1.308444 24.974222-4.352 52.110222l-2.844444 13.880889a992.568889 992.568889 0 0 0-9.955556 56.462222l-2.161777 1.792zM1102.538524 335.815111c-3.043556 16.952889-12.032 31.175111-23.580444 38.087111-9.500444 5.831111-21.134222 6.314667-33.137778 6.314667h-7.765333l0.568889-3.811556 14.250666-75.918222 0.455112-3.896889 0.199111-2.986666 5.717333 0.739555 30.208 3.157333c11.662222 5.518222 16.440889 19.740444 13.084444 38.314667m-18.773333-79.445333l-14.478222 0.142222c-37.546667 0.568889-52.622222 0.426667-58.794667-0.512l-1.507555 9.301333-13.454223 76.458667-33.735111 169.955556c32.796444-0.483556 46.250667-0.483556 51.911111 0.284444 1.28-7.651556 8.874667-52.992 8.96-52.992 0 0 6.456889-33.251556 6.855112-34.474667 0 0 2.048-3.470222 4.067555-4.835555h3.015111c28.273778 0 60.216889 0 85.248-22.528 17.038222-15.473778 28.672-38.286222 33.848889-66.048 1.393778-6.798222 2.360889-14.876444 2.360889-22.983111 0-10.638222-1.735111-21.134222-6.769778-29.354667-12.771556-21.845333-38.200889-22.272-67.527111-22.414222M1438.438969 315.022222L1436.447858 312.888889c-25.429333 4.835556-30.037333 5.603556-53.447111 8.561778l-1.706667 1.621333c-0.085333 0.256-0.142222 0.654222-0.284444 1.024l-0.056889-0.369778c-17.436444 37.660444-16.924444 29.525333-31.089778 59.164445-0.085333-1.336889-0.085333-2.161778-0.142222-3.612445l-3.555556-64.284444-2.247111-2.104889c-26.652444 4.835556-27.306667 5.603556-51.911111 8.561778l-1.905778 1.621333c-0.284444 0.768-0.284444 1.592889-0.426667 2.531556l0.142223 0.312888c3.072 14.762667 2.332444 11.463111 5.404444 34.730667 1.479111 11.434667 3.384889 22.926222 4.835556 34.190222 2.417778 18.887111 3.783111 28.16 6.741333 57.002667-16.64 25.713778-20.565333 35.470222-36.579556 58.026667l1.024 2.133333c24.007111-0.853333 29.582222-0.853333 47.388445-0.853333l3.868444-4.124445c13.454222-27.192889 115.939556-192 115.939556-192M615.398969 363.832889c11.832889-6.4 13.312-15.217778 3.384889-19.797333-10.069333-4.636444-27.733333-3.128889-39.623111 3.242666-11.861333 6.257778-13.226667 15.160889-3.185778 19.854222 9.898667 4.494222 27.648 3.157333 39.424-3.299555M1298.264747 568.888889l-12.686223 35.555555c-3.982222 12.174222-11.434667 21.248-23.239111 21.333334l-20.167111-0.568889 5.888-32h3.953778c2.048 0 3.527111-0.170667 4.664889-1.109333 1.024-0.568889 1.763556-1.877333 2.588444-3.84l7.480889-19.370667h31.516445z" fill="#FEFEFE" p-id="32912"></path><path d="M3499.95008 747.576889c-5.148444-1.706667-10.524444-2.56-15.957333-2.503111a40.334222 40.334222 0 0 0-35.413334 30.151111v91.619555h-39.879111v-153.6h32.910222l2.730667 27.164445h0.995556a53.134222 53.134222 0 0 1 43.633777-31.004445c6.257778-0.170667 12.430222 0.938667 18.204445 3.328l-7.224889 34.844445z m-59.591111-179.114667h-63.800889a1286.144 1286.144 0 0 1-42.666667-204.231111h-14.193777v164.067556a16.184889 16.184889 0 0 0 15.957333 16.298666h17.720889v23.438223h-69.319111a27.676444 27.676444 0 0 1-28.16-27.619556v-176.184889h-27.676445v-23.836444h27.676445v-169.528889h63.800889v169.528889h121.656888v23.893333h-43.121777a1378.104889 1378.104889 0 0 0 42.126222 204.174222z m-104.675556-243.2a742.542222 742.542222 0 0 0 35.640889-143.530666h63.317334a835.811556 835.811556 0 0 1-34.673778 143.530666h-64.284445z m-106.467555 353.991111a50.062222 50.062222 0 0 0-16.213334-3.271111c-11.946667 0-18.688 7.111111-18.688 24.149334v13.169777h28.928v31.800889H3194.314524v121.770667h-40.135111v-121.742222h-20.679111v-29.952l20.679111-1.621334v-12.629333a49.863111 49.863111 0 0 1 53.361778-56.775111c9.955556 0 19.854222 1.848889 29.155556 5.461333l-7.480889 29.639111z m-59.335111-461.169777a12.458667 12.458667 0 0 0-13.454223-11.690667h-54.613333a11.946667 11.946667 0 0 0-12.686222 11.662222v217.656889h-49.379556v-225.564444a28.956444 28.956444 0 0 1 30.435556-28.046223h117.902222a29.098667 29.098667 0 0 1 30.919111 28.046223v225.564444h-49.123555V218.083556z m42.638222 351.488h-54.840889l-19.456-68.209778c-8.078222 23.893333-18.858667 46.791111-32.142222 68.209778h-62.577778a323.271111 323.271111 0 0 0 57.827556-195.413334V241.976889h55.580444v115.541333a583.964444 583.964444 0 0 1-6.968889 93.297778h28.444445l34.133333 118.727111z m-98.474667 158.663111l-17.948444 24.405333a59.192889 59.192889 0 0 0-33.393778-13.169778 16.327111 16.327111 0 0 0-20.195556 14.791111c0 11.264 15.189333 15.36 31.146667 21.418667 20.451556 7.68 42.894222 17.806222 42.894222 46.336 0 26.88-21.191111 48.554667-61.098666 48.554667a97.223111 97.223111 0 0 1-58.595556-21.674667l18.488889-25.230222c11.377778 10.097778 25.884444 15.985778 41.102222 16.725333 15.473778 0 22.186667-6.599111 22.186667-16.213333 0-11.491556-15.928889-16.696889-31.886222-23.011556a52.053333 52.053333 0 0 1-42.126223-44.686222 50.005333 50.005333 0 0 1 57.088-47.160889 85.589333 85.589333 0 0 1 52.337778 19.057778v-0.142222z m-249.031111-338.631111h106.183111a14.791111 14.791111 0 0 1 12.970667 6.712888c3.356444 4.266667 4.039111 10.040889 1.735111 14.961778l-75.292444 127.658667 16.952888 30.151111h-64.568888L2796.234524 449.422222h64.568889l16.952889 31.004445 41.870222-66.986667h-104.96a14.961778 14.961778 0 0 1-12.231111-6.286222 14.421333 14.421333 0 0 1-3.214222-12.970667l10.979556-51.854222h-41.159111v-24.32h46.648888l15.928889-73.671111H2781.016747v-24.263111h55.836444l10.979556-49.379556h64.568889l-10.979556 49.379556h80.014222v24.263111h-84.992l-16.213333 73.671111h112.440889v24.32h-117.418667l-10.24 47.274667z m-131.896889 179.086222H2670.083413v-74.922667l-78.279111 5.859556v-23.836445l78.279111-5.888v-61.098666h-59.818666a15.644444 15.644444 0 0 1-11.946667-4.977778 16.241778 16.241778 0 0 1-3.527111-12.970667l19.968-152.32h-22.698667v-23.893333h25.685334l5.973333-43.776h59.079111l-5.717333 43.918222h90.225777v23.864889h-93.724444l-18.204444 137.671111a7.480889 7.480889 0 0 0 1.991111 5.888 7.082667 7.082667 0 0 0 5.973333 2.929778h10.24V278.812444h59.562667v106.439112h29.667555v23.836444h-29.667555v56.092444l34.161777-2.503111v23.864889l-34.133333 2.503111v79.900445-0.284445z m-98.702222 140.629333c6.229333-0.199111 12.430222 0.910222 18.204444 3.271111l-7.224888 34.901334a47.616 47.616 0 0 0-15.729778-2.474667 40.106667 40.106667 0 0 0-35.384889 30.151111v91.591111h-40.135111v-153.571555h32.910222l2.730667 27.164444h0.995555a53.788444 53.788444 0 0 1 43.633778-30.890667v-0.142222z m-149.589333-168.618667a27.875556 27.875556 0 0 1-27.904 27.591112h-99.214223v-23.836445h46.848a15.815111 15.815111 0 0 0 15.957334-15.928889V333.653333h-128.853334v-23.808h252.501334v23.808h-59.335111v207.189334-0.142223z m-182.215111-349.013333h230.115555v24.064h-230.115555v-24.064z m-64.056889 151.523556h18.944v225.564444h-64.853334V398.506667h-48.839111a818.346667 818.346667 0 0 0 43.377778-90.823111h-43.377778a664.974222 664.974222 0 0 0 57.344-136.448h64.824889c-6.741333 26.026667-15.502222 51.484444-26.168889 76.174222h32.881778a569.685333 569.685333 0 0 1-34.133333 95.914666v-0.085333zM2169.233636 866.702222h-40.391112v-90.794666c0-23.580444-6.485333-32.085333-21.674666-32.085334a44.430222 44.430222 0 0 0-32.142222 17.294222v105.585778h-39.907556v-153.6h32.910222l2.730667 20.309334h0.995555a70.997333 70.997333 0 0 1 49.863112-24.120889c33.166222 0 47.616 23.04 47.616 61.696v95.715555z m-123.648-451.640889h49.863111a451.982222 451.982222 0 0 1-34.133334 87.893334c9.955556 21.390222 20.679111 42.752 32.398223 64.056889h-68.835556a747.861333 747.861333 0 0 1-72.760889-179.086223h-21.191111v140.202667c0.483556 8.96 7.964444 15.928889 16.952889 15.872l19.427555 0.426667v23.836444h-75.52a29.383111 29.383111 0 0 1-30.663111-27.619555V210.204444a29.098667 29.098667 0 0 1 30.663111-27.619555h166.769778a29.098667 29.098667 0 0 1 30.663111 27.619555v150.272a29.383111 29.383111 0 0 1-30.663111 27.619556h-38.4c4.750222 18.830222 10.723556 37.205333 16.952889 55.608889 3.584-9.272889 6.428444-18.801778 8.476445-28.529778v-0.113778z m-43.861334-209.635555H1947.878969a16.554667 16.554667 0 0 0-16.952889 15.900444v54.840889h88.462222V222.208a17.578667 17.578667 0 0 0-17.664-16.611556v-0.170666z m17.692445 94.606222h-88.490667v64.426667h70.798222a16.896 16.896 0 0 0 17.692445-15.872v-48.554667zM1761.909191 866.702222H1689.603413v-202.979555h67.072c41.614222 0 73.528889 12.088889 73.528889 49.863111a46.108444 46.108444 0 0 1-27.676444 43.889778v1.706666c23.04 4.039111 39.424 24.661333 38.144 47.985778 0 40.760889-33.905778 59.733333-78.791111 59.733333v-0.199111z m-7.736889-172.003555h-23.921778v51.541333h23.409778c25.941333 0 37.148444-10.410667 37.148445-26.595556 0-17.578667-12.231111-24.746667-36.636445-24.746666v-0.199111z m4.238222 81.720889h-28.16v58.965333h28.16c27.676444 0 42.638222-9.984 42.638223-31.004445 0-19.512889-14.734222-27.733333-42.666667-27.733333v-0.227555z m-13.454222-215.864889a28.586667 28.586667 0 0 1-8.476444-19.939556v-89.543111h-37.148445v-23.864889h37.148445v-76.856889h-37.148445v-24.291555h138.097778v24.291555H1802.527858v76.999111h34.901333v23.893334H1802.527858v77.368889a16.184889 16.184889 0 0 0 16.469333 16.327111h18.432v23.836444h-72.277333a28.785778 28.785778 0 0 1-20.195556-7.992889v-0.227555z m17.436445-247.608889h-66.048c14.506667-46.307556 24.092444-93.980444 28.672-142.279111h65.536c-1.991111 19.456-4.977778 38.855111-8.476445 58.168889h55.352889v23.836444h-59.818667a696.32 696.32 0 0 1-15.217777 60.501333v-0.227555z m191.203555 455.480889a23.921778 23.921778 0 0 0-25.912889-26.624 86.442667 86.442667 0 0 0-42.382222 14.535111l-14.478222-26.595556a121.742222 121.742222 0 0 1 64.085333-20.280889c38.883556 0 59.079111 23.324444 59.079111 67.726223v89.742222h-32.910222l-2.986667-16.497778h-0.995555a72.021333 72.021333 0 0 1-46.364445 20.337778 43.52 43.52 0 0 1-45.368888-45.539556c0-32.967111 26.652444-50.232889 88.234666-56.803555z m-29.667555 70.741333a40.675556 40.675556 0 0 0 29.667555-15.075556v-31.004444c-37.376 4.977778-49.863111 15.075556-49.863111 28.785778a17.152 17.152 0 0 0 20.195556 17.294222z m326.087111-59.505778h1.223111l53.105778-66.360889h43.889777l-53.105777 62.776889 58.083555 90.794667h-43.633778l-37.376-63.630222-22.186666 25.230222v38.4h-39.139556v-218.88h39.139556v131.669333z m201.415111-107.52h33.649778v41.159111h37.888v31.800889h-37.888v67.982222a20.707556 20.707556 0 0 0 20.707555 25.799112c5.205333-0.227556 10.353778-1.336889 15.189334-3.299556l6.485333 29.383111c-10.325333 3.697778-21.191111 5.632-32.142222 5.745778-36.664889 0-50.631111-23.04-50.631111-57.6v-67.982222h-21.674667v-29.952l23.694222-1.905778 4.721778-41.130667z m302.876444 96.284445a23.921778 23.921778 0 0 0-25.912889-26.624 86.442667 86.442667 0 0 0-42.382222 14.535111l-14.449778-26.595556a121.742222 121.742222 0 0 1 64.056889-20.280889c38.883556 0 59.079111 23.324444 59.079111 67.726223v89.742222h-32.910222l-2.986666-16.497778h-0.995556a72.021333 72.021333 0 0 1-46.364444 20.337778 43.52 43.52 0 0 1-45.368889-45.539556c0-32.967111 26.424889-50.232889 88.234666-56.803555z m-29.667555 70.741333a40.675556 40.675556 0 0 0 29.667555-15.075556v-31.004444c-37.376 4.977778-49.834667 15.075556-49.834666 28.785778a17.152 17.152 0 0 0 20.195555 17.294222z m146.858666-105.585778h0.995556a70.997333 70.997333 0 0 1 49.834667-24.120889c33.166222 0 47.616 23.04 47.616 61.696v95.715556h-40.391111v-90.794667c0-23.580444-6.456889-32.056889-21.674667-32.056889a44.430222 44.430222 0 0 0-32.142222 17.265778v105.585778h-39.907556v-153.6h32.910222l2.759111 20.309333z m439.751112-24.120889c42.382222 0 64.284444 31.004444 64.284444 73.472 0.056889 6.200889-0.597333 12.373333-1.991111 18.375111h-94.72a40.334222 40.334222 0 0 0 42.638222 38.4 63.203556 63.203556 0 0 0 34.417778-10.695111l13.681778 24.689778a96.113778 96.113778 0 0 1-53.589334 17.009778 74.410667 74.410667 0 0 1-76.288-80.355556 75.207111 75.207111 0 0 1 71.537778-80.896z m29.639111 65.251556a28.757333 28.757333 0 0 0-29.155556-33.991111 34.56 34.56 0 0 0-33.393778 33.991111h62.577778z" fill="#4D4D4D" p-id="32913"></path></svg>
</el-radio>
<el-radio label="4" border>
<svg t="1709002828937" class="icon" viewBox="0 0 4220 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="22654" width="94" height="40"><path d="M3249.722604 229.409369h-232.537679c-15.641548 0-29.197556 11.470468-32.325865 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h118.875764c11.470468 0 20.855397-8.342159 21.898167-18.769858l27.112016-168.928717c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641547c41.710794 0 81.336049 0 102.191447 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731z" fill="#009CDE" p-id="22655"></path><path d="M1594.84684 229.409369h-232.537678c-15.641548 0-29.197556 11.470468-32.325866 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h110.533605c15.641548 0 29.197556-11.470468 32.325866-27.112017l25.026476-160.586558c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641548c41.710794 0 81.336049 0 102.191446 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731zM2288.288795 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.213849 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710794 171.014257 34.411405 39.625255 82.378819 56.309572 139.731161 56.309572 99.063136 0 153.287169-63.608961 153.287169-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480652-380.610998c2.08554-10.427699-6.256619-21.898167-18.769858-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.079429-30.240326-16.684318-19.812627-22.940937-46.924644-17.727088-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z" fill="#003087" p-id="22656"></path><path d="M3943.164559 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.21385 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710795 171.014257 34.411405 39.625255 82.378819 56.309572 139.73116 56.309572 99.063136 0 153.287169-63.608961 153.28717-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480651-380.610998c2.08554-10.427699-6.256619-21.898167-18.769857-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.07943-30.240326-16.684318-19.812627-22.940937-46.924644-17.727087-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z" fill="#009CDE" p-id="22657"></path><path d="M2880.582074 443.177189h-111.576375c-10.427699 0-20.855397 5.213849-27.112016 14.598778l-154.329939 227.323829-65.694501-217.9389c-4.171079-13.556008-16.684318-22.940937-31.283096-22.940937h-109.490835c-13.556008 0-22.940937 13.556008-18.769857 26.069247l123.046843 360.79837-115.747454 162.672098c-9.384929 12.513238 0 30.240326 15.641548 30.240326h111.576375c10.427699 0 20.855397-5.213849 26.069246-13.556008l371.226069-535.983707c11.470468-13.556008 2.08554-31.283096-13.556008-31.283096z" fill="#003087" p-id="22658"></path><path d="M4074.553561 245.050916l-94.892057 605.849288c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h95.934827c15.641548 0 29.197556-11.470468 32.325866-27.112017l93.849287-595.421588c2.08554-11.470468-7.299389-21.898167-18.769857-21.898167h-107.405296c-10.427699 1.04277-18.769857 7.299389-19.812627 16.684317z" fill="#009CDE" p-id="22659"></path><path d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l-13.556008 85.507128c-2.08554 14.598778 9.384929 27.112016 23.983707 27.112016h165.800407c19.812627 0 36.496945-14.598778 39.625255-33.368635l2.08554-8.342159 31.283095-198.126273 2.08554-10.427699c3.12831-19.812627 19.812627-33.368635 39.625255-33.368635h25.026476c160.586558 0 285.718941-64.651731 322.215886-253.393075 15.641548-79.250509 7.299389-144.94501-33.368635-190.826884-12.513238-13.556008-28.154786-26.069246-45.881874-35.454175" fill="#009CDE" p-id="22660"></path><path d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958-1.04277 9.384929c3.12831-21.898167 21.898167-38.582485 44.839104-38.582485h93.849287c183.527495 0 327.429735-74.03666 369.140529-289.89002l3.12831-18.769857" fill="#012169" p-id="22661"></path><path d="M326.838693 260.692464c2.08554-13.556008 10.427699-23.983707 21.898167-30.240326 5.213849-2.08554 11.470468-4.171079 16.684318-4.171079h250.264766c29.197556 0 57.352342 2.08554 82.378819 6.256619 7.299389 1.04277 14.598778 2.08554 20.855397 4.17108 7.299389 1.04277 13.556008 3.12831 19.812627 5.213849l9.384929 3.128309c12.513238 4.171079 23.983707 9.384929 34.411405 14.598779 12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958L326.838693 260.692464z" fill="#003087" p-id="22662"></path></svg>
</el-radio>
</el-radio-group>
<div v-if="payType == '3'">
<table class="table-border table" cellpadding="0" cellspacing="0">
<tr>
<th colspan="2" class="head">线下缴费的收款信息</th>
</tr>
<tr>
<th>付款金额</th>
<td>
¥1840
<div class="text-gray">请按照指定金额进行打款</div>
</td>
</tr>
<tr>
<th>收款账号</th>
<td>
7665 5278 8829 9377 7888 8888 88 <span class="text-primary size12">复制25位账号</span>
<div class="text-gray">请勿重复打款</div>
</td>
</tr>
<tr>
<th>收款公司名</th>
<td>无锡吉金体育有限公司</td>
</tr>
<tr>
<th>开户银行</th>
<td>招商银行无锡分行</td>
</tr>
<tr>
<th>备注信息</th>
<td>
体育舞蹈报名费保险费
</td>
</tr>
<tr>
<th>联系人</th>
<td>
张译文
</td>
</tr>
<tr>
<th>联系电话</th>
<td>16882846767</td>
</tr>
<tr>
<th>操作</th>
<td>
<el-link class="mr10" type="primary"><el-icon><Upload /></el-icon>上传汇款单</el-link>
<span class="text-danger size12">*您可以在上传汇款单完成后,与联系人进行电话确认。具体缴费结果,可以在个人中心-我的报名中查看进度</span>
</td>
</tr>
</table>
<div class="text-center">
<el-button type="primary" round class="btn-lineG w200px">保存</el-button>
</div>
</div>
<div class="text-center mt20" v-else>
<el-button type="primary" round class="btn-lineG w200px">保存</el-button>
</div>
</div>
</el-card>
</div>
</div>
......@@ -124,11 +218,14 @@
import {ref} from 'vue'
const matchInfo = ref({})
const approved = ref(true)
const tableData = ref([])
const payType = ref('2')
</script>
<style scoped lang="scss">
.el-radio.is-bordered{height: 40px;}
.leftboderTT{font-weight: 600;
font-size: 16px;
color: #453DEA;}
......@@ -138,4 +235,28 @@ const tableData = ref([])
font-size: 18px;
text-align: center;
}
.table{width: 100%;max-width: 1000px;margin:20px auto;
.head{background: #EFF2F7;height: 50px;font-size: 16px;font-weight: 400;}
th{background: #FAFBFD;font-size: 14px;
border-bottom: 1px solid #E5E5E5;border-right: 1px solid #E5E5E5;}
td{border-bottom: 1px solid #E5E5E5;border-right: 1px solid #E5E5E5;
padding: 10px;
}
&.table-border{border-top: 1px solid #E5E5E5;border-left: 1px solid #E5E5E5;}
}
.text-gray{font-weight: 400;
font-size: 12px;
color: #929AA0;}
.size12{font-size: 12px;}
.result{font-size: 22px;
.flex{display: flex;align-items: center;font-weight: 500;
img{margin-right: 10px}
}
.priceb{color: #7B7F83;font-size: 16px;text-align: right;
line-height: 50px;
span{font-weight: bold;
font-size: 22px;font-family: DIN Alternate;
color: #EB6100;}
}
}
</style>
......
......@@ -37,6 +37,7 @@
<div class="border-info gray mt20">
<el-row>
<el-col :lg="8">
<img/>
<div class="item"><label>团队名称</label>{{ matchInfo.signFee }}</div>
<div class="item"><label>团队类型</label>{{ matchInfo.signFee }}</div>
</el-col>
......@@ -117,21 +118,21 @@
</el-card>
<el-card class="mt20">
<el-row>
<el-col :lg="16">
<div>
<div class="item"><label>报名费:</label><span>¥{{ matchInfo.signFee }}</span></div>
<div class="item"><label>保险费:</label><span>¥{{ matchInfo.signFee }}</span></div>
<div class="item"><label>费用总计:</label><span>¥{{ matchInfo.signFee }}</span></div>
<el-card class="mt20" :body-style="{padding: '0px'}">
<el-row class="priceBar">
<el-col :lg="16" :xs="24" class="pd20">
<div class="flex">
<div class="item"><label>报名费:</label><span>¥3000</span></div>
<div class="item"><label>保险费:</label><span>¥3000</span></div>
<div class="item"><label>费用总计:</label><span>¥6000</span></div>
</div>
</el-col>
<el-col :lg="8">
<el-col :lg="8" :xs="24" class="text-right pd20">
<el-link type="primary"><el-icon><Upload /></el-icon>导出参赛人员清单</el-link>
<el-link type="primary"><el-icon><Upload /></el-icon>导出设项报名清单</el-link>
</el-col>
</el-row>
<div class="text-center">
<div class="text-center pd20">
<el-button type="primary" class="" plain round @click="goPrev()">上一步</el-button>
<el-button type="primary" class="" plain round @click="submitForm()">保存暂不提交审核</el-button>
<el-button type="primary" class="btn-lineG w200px" round @click="submitForm()">提交审核</el-button>
......@@ -157,4 +158,15 @@ const matchInfo = ref({})
font-size: 18px;
text-align: center;
}
.priceBar{
background: #FAFBFD;
.flex{display: flex;
.item{font-size: 16px;margin-right: 15px;
label{color: #95A1A6;}
}
}
}
.text-right{text-align: right;
a{margin-left: 20px;}
}
</style>
......
......@@ -4,23 +4,29 @@
<div class="box ph-30">
<el-card>
<el-steps active="1" align-center>
<el-step title="团队信息" />
<el-step title="教练/领队/其他" />
<el-step title="选手报名" />
<el-step title="提交审核" />
<el-step :title="language==0?'团队信息':'Team Information'" />
<el-step :title="language==0?'教练/领队/其他':'Coach/Team Leader/Other'" />
<el-step :title="language==0?'选手报名':'Participant Registration'" />
<el-step :title="language==0?'提交审核':'Submit for review'" />
</el-steps>
</el-card>
<div class="h20"></div>
<div class="panel" style="box-shadow: var(--el-box-shadow)">
<div class="border-info" style="margin: 20px">
<el-row>
<el-col :lg="8">
<div class="item"><label>赛事名称</label>{{matchInfo.name}}</div></el-col>
<el-row v-if="language==0">
<el-col :lg="8"><div class="item"><label>赛事名称</label>{{matchInfo.name}}</div></el-col>
<el-col :lg="8"><div class="item"><label>赛事类型</label>{{matchInfo.name}}</div></el-col>
<el-col :lg="8"><div class="item"><label>赛事时间</label>{{matchInfo.beginTime?.slice(0,10)}}{{ matchInfo.endTime?.slice(0,10) }}</div></el-col>
<el-col :lg="8"><div class="item"><label>报名时间</label>{{ matchInfo.signBeginTime?.slice(0,10) }}{{ matchInfo.signEndTime?.slice(0,10) }}</div></el-col>
<el-col :lg="16"><div class="item"><label>比赛地址</label>{{matchInfo.address}}</div></el-col>
</el-row>
<el-row v-else>
<el-col :lg="8"><div class="item"><label>Event Name</label>{{matchInfo.name}}</div></el-col>
<el-col :lg="8"><div class="item"><label>Event Type</label>{{matchInfo.name}}</div></el-col>
<el-col :lg="8"><div class="item"><label>Event Date</label>{{matchInfo.beginTime?.slice(0,10)}} ~ {{ matchInfo.endTime?.slice(0,10) }}</div></el-col>
<el-col :lg="8"><div class="item"><label>Registration Period</label>{{ matchInfo.signBeginTime?.slice(0,10) }} ~{{ matchInfo.signEndTime?.slice(0,10) }}</div></el-col>
<el-col :lg="16"><div class="item"><label>Event Address</label>{{matchInfo.address}}</div></el-col>
</el-row>
</div>
<div class="h20"></div>
......@@ -83,7 +89,9 @@
<div class="panel-footer text-center">
<el-button type="primary" class="btn-lineG w200px" round @click="submitForm()">下一步</el-button>
<el-button type="primary" class="btn-lineG w200px" round @click="submitForm()">
{{ language==0?'下一步':'NEXT' }}
</el-button>
</div>
</div>
</div>
......@@ -96,6 +104,8 @@ import { reactive, ref } from 'vue'
import { getCurrentInstance, onMounted } from '@vue/runtime-core'
import { useRoute, useRouter } from 'vue-router'
import { toRefs } from '@vueuse/shared'
import cache from "@/plugins/cache"
const language = ref(cache.local.get('language') || 0)
const { proxy } = getCurrentInstance()
const router = useRouter()
......@@ -107,7 +117,9 @@ import {saveMyGroupForCpt} from "@/apiPc/match";
const data = reactive({
isRanks: false,
matchData:{},
matchData:{
enBo:{}
},
form: {},
groupId: 0,
cptId: 0,
......
......@@ -3,13 +3,13 @@
<div class="box">
<div class="indexTitle">
<h3 class="leftboderTT">Event Video</h3>
<a class="more" @click="goList(query1.sortId,'Event Video')">MORE</a>
<a class="more" @click="goList(query1.sortId,'Event Videos')">MORE</a>
</div>
<el-row :gutter="20">
<el-col :lg="12" :sm="24" :md="12">
<div class="liveImgbox" @click="goDetail(newsList[0])">
<i class="ii">LIVE</i>
<i class="ii">Live Broadcast</i>
<img :src="fillImgUrl_webSite(newsList[0]?.picUrl)">
<h3 class="esp">{{ newsList[0]?.name }}
</h3>
......@@ -44,8 +44,8 @@
<div class="indexTitle">
<h3 class="leftboderTT">Exciting Pictures</h3>
<a class="more" @click="goList(query2.sortId,'Exciting Pictures')">MORE</a>
<h3 class="leftboderTT">Exciting Photos</h3>
<a class="more" @click="goList(query2.sortId,'Exciting Photos')">MORE</a>
</div>
<el-row class="mb20" :gutter="20">
<el-col :lg="9">
......
<template>
<el-card style="min-height: 50vh">
<div class="pt30">
<el-form class="d-form" size="large" label-width="120" style="max-width: 500px;margin: auto">
<el-form-item label="手机/邮箱" required>
<el-form class="d-form" size="large" :label-width="language==0?120:200" style="max-width: 500px;margin: auto">
<el-form-item :label="language==0?'手机/邮箱':'E-mail / Phone number'" required>
<el-input type="text" v-model="form.account" @change="resetCode" @blur="verifyCode"/>
</el-form-item>
<el-form-item label="验证码" required>
<el-form-item :label="language==0?'验证码':'Code'" required>
<el-input v-model="form.code">
<template #append>
<el-button type="primary" plain style="width: 110px" @click="sendsmsMsg">
......@@ -13,20 +13,21 @@
{{ totalSeconds }}
</count-down>
<span v-else>
发送验证码
{{ language==0?'发送验证码':'Send code' }}
</span>
</el-button>
</template>
</el-input>
<div class="vcodeBox" :style="isShow?'height:240px':'height:0'">
<Vcode :show="isShow" type="inside" @success="codeSuccess" @close="codeClose" @fail='codeFail'></Vcode>
<Vcode :show="isShow" :successText="successVcode" :failText="failVcode" :slider-text="sliderText"
type="inside" @success="codeSuccess" @close="codeClose" @fail='codeFail'></Vcode>
</div>
</el-form-item>
</el-form>
</div>
<div class="text-center">
<!-- <el-button class="primary-kx" round @click="goBack">取消</el-button>-->
<el-button type="primary" class="btn-lineG w200px" round @click="next">下一步</el-button>
<el-button type="primary" class="btn-lineG w200px" round @click="next">{{language==0?'下一步':'NEXT' }}</el-button>
</div>
</el-card>
</template>
......@@ -37,18 +38,36 @@ import Vcode from "vue3-puzzle-vcode"
import { ElMessage } from 'element-plus'
import CountDown from '@chenfengyuan/vue-countdown'
import {getCaptchaSms,checkRegisterCode} from "@/apiPc/match";
import cache from '@/plugins/cache'
import {onMounted} from "@vue/runtime-core";
const language = ref(cache.local.get('language') || 0)
const data = reactive({
isShow:false,
isCodeTrue:false,
counting:false,
form:{},
activeStep: 0
activeStep: 0,
failVcode:'验证失败,请重试',
successVcode:'验证通过!',
sliderText: '拖动滑块完成拼图',
})
const {isShow,isCodeTrue,counting,form,activeStep} = toRefs(data)
const {isShow,isCodeTrue,counting,form,activeStep,failVcode,successVcode,sliderText} = toRefs(data)
const emit = defineEmits(['submit','userName'])
onMounted(()=>{
if(language.value==1){
failVcode.value = 'Error!'
successVcode.value = 'Success!'
sliderText.value = 'Drag the slider to complete the puzzle'
}
})
function sendsmsMsg() {
if(!form.value.account){
if(language.value==0){
ElMessage.error('请填写手机/邮箱')
} else {
ElMessage.error('Please fill in your phone/email address')
}
return
}
if(counting.value){
......@@ -88,11 +107,19 @@ const goBack = () => {
}
const next = () => {
if(!form.value.account){
if(language.value==0){
ElMessage.error('请填写手机/邮箱')
} else {
ElMessage.error('Please fill in your phone/email address')
}
return
}
if(!form.value.code){
if(language.value==0){
ElMessage.error('请填写验证码')
} else {
ElMessage.error('Please fill in Code')
}
return
}
if(!isCodeTrue.value){
......
<template>
<el-card>
<div class="flexCenter">
<div class="border-info text-center inline">
<label>登录账号</label> {{ accont }}
<label>{{ language == 0 ? '登录账号' : 'Account' }}</label> {{ accont }}
</div>
<div class="leftboderTT">登录密码 <span>(登录时需要验证,保护账户信息)</span></div>
</div>
<div class="leftboderTT">{{ language == 0 ? '登录密码' : 'Password' }} <span
v-if="language==0">(登录时需要验证,保护账户信息)</span></div>
<div class="d-form-border">
<el-form class="d-form" size="large" label-width="120" style="max-width: 500px;margin: auto">
<el-form-item label="密码" required>
<el-input type="password" show-password v-model="form.password" placeholder="6-16位密码。区分大小写"/>
<el-form class="d-form" size="large" label-width="120"
:label-position="language==0?'left':'top'" style="max-width: 500px;margin: auto">
<el-form-item :label="language==0?'密码':'Password'" required>
<el-input type="password" show-password v-model="form.password"
:placeholder="language==0?'6-16位密码。区分大小写':''"/>
</el-form-item>
<el-form-item label="确认密码" required>
<el-input type="password" show-password v-model="form.confirmPassword" @blur="vconfirmPassword" placeholder="再次输入密码"/>
<el-form-item :label="language==0?'确认密码':'Confirm Password'" required>
<el-input type="password" show-password v-model="form.confirmPassword" @blur="vconfirmPassword"
placeholder="再次输入密码"/>
</el-form-item>
</el-form>
</div>
<div class="leftboderTT">机构信息</div>
<div class="leftboderTT">{{ language == 0 ? '机构信息' : 'Institutional information' }}</div>
<div class="d-form-border">
<el-form class="d-form" size="large" :model="form" ref="registerRef" :rules="registerRules" label-width="120" style="max-width: 500px;margin: auto">
<el-form-item label="所属国家" required>
<el-form class="d-form" size="large" :model="form" ref="registerRef"
:rules="registerRules" label-width="120" :label-position="language==0?'left':'top'"
style="max-width: 500px;margin: auto">
<el-form-item :label="language==0?'所属国家':'Nationality'" required>
<el-select filterable v-model="form.countryId">
<el-option v-for="item in countryList" :key="item.id" :label="item.name" :value="item.id" />
<el-option v-for="item in countryList" :key="item.id" :label="item.name" :value="item.id"/>
</el-select>
</el-form-item>
<el-form-item label="详细地址" required prop="address">
<el-form-item :label="language==0?'详细地址':'Address'" required prop="address">
<el-cascader v-if="form.countryId == 240"
v-model="regionArr"
style="width: 100%;"
:options="regionsList"
:props="{ label:'text' }"
/>
<el-input type="textarea" v-model="form.address" class="mt10" placeholder="请输入详细地址"/>
<el-input type="textarea" v-model="form.address" class="mt10"/>
</el-form-item>
<el-form-item label="机构名称" required prop="teamName">
<el-input type="text" v-model="form.teamName" placeholder="请输入内容"/>
<el-form-item :label="language==0?'机构名称':'Institution name'" required prop="teamName">
<el-input type="text" v-model="form.teamName" :placeholder="language==0?'请输入内容':''"/>
</el-form-item>
<el-form-item label="联系人姓名" required prop="contactName">
<el-input type="text" v-model="form.contactName" placeholder="请输入内容"/>
<el-form-item :label="language==0?'联系人姓名':'Contact Name'" required prop="contactName">
<el-input type="text" v-model="form.contactName" :placeholder="language==0?'请输入内容':''"/>
</el-form-item>
<el-form-item label="联系人电话" required prop="contactTel">
<el-input v-model="form.contactTel" type="phone" placeholder="请输入内容"/>
<el-form-item :label="language==0?'联系人电话':'Contact Phone'" required prop="contactTel">
<el-input v-model="form.contactTel" type="phone" :placeholder="language==0?'请输入内容':''"/>
</el-form-item>
<el-form-item label="联系人邮箱" required prop="contactEmail">
<el-input v-model="form.contactEmail" type="email" placeholder="请输入内容"/>
<el-form-item :label="language==0?'联系人邮箱':'Contact Email'" required prop="contactEmail">
<el-input v-model="form.contactEmail" type="email" :placeholder="language==0?'请输入内容':''"/>
</el-form-item>
<el-form-item prop="photo" required label="机构LOGO">
<el-form-item prop="photo" required :label="language==0?'机构LOGO':'Organizational photos'">
<ImageUpload2
v-model="form.photo" :crop-height="200" :crop-width="200" :limit="1"
:is-show-tip="false"
......@@ -53,69 +59,84 @@
</el-form-item>
<el-form-item>
<div @click="isAgree = !isAgree" class="flexAgree">
<el-icon v-if="isAgree" color="#453DEA" size="20"><CircleCheckFilled /></el-icon>
<el-icon v-else color="#999" size="20"><CircleCheck /></el-icon>
<div>
<el-icon v-if="isAgree" color="#453DEA" size="20">
<CircleCheckFilled/>
</el-icon>
<el-icon v-else color="#999" size="20">
<CircleCheck/>
</el-icon>
<div v-if="language==0">
我已阅读并接受<a class="text-primary" @click.stop="showAgreeMent">《注册协议》</a>
<a class="text-primary" @click.stop="showAgreeMent">《个人信息保护政策》</a>
</div>
<div v-else style="white-space: nowrap">
I have read and accepted the Registration
<a class="text-primary" @click.stop="showAgreeMent">Agreement</a>
and
<a class="text-primary" @click.stop="showAgreeMent">Personal Information Protection Policy
</a>
</div>
</div>
</el-form-item>
</el-form>
</div>
<div class="text-center">
<!-- <el-button class="primary-kx" @click="goStep1">上一步</el-button>-->
<el-button type="primary" round class="btn-lineG w200px" @click.prevent="goStep3" :loading="loading">立即注册</el-button>
<!-- <el-button class="primary-kx" @click="goStep1">上一步</el-button>-->
<el-button type="primary" round class="btn-lineG w200px" @click.prevent="goStep3" :loading="loading">
{{ language == 0 ? '立即注册' : 'Register Now!' }}
</el-button>
</div>
</el-card>
</template>
<script setup>
import {getCurrentInstance} from "@vue/runtime-core"
import {onMounted,toRefs,reactive} from "vue"
import {onMounted, toRefs, reactive} from "vue"
import * as match from "@/apiPc/match";
import {ElMessage} from "element-plus";
import {setToken} from "@/utils/auth";
const { proxy } = getCurrentInstance()
const emit = defineEmits(['submit','prev'])
import cache from "@/plugins/cache";
const {proxy} = getCurrentInstance()
const emit = defineEmits(['submit', 'prev'])
const language = ref(cache.local.get('language') || 0)
const props = defineProps({
accont:{
type:String,
required:true
accont: {
type: String,
required: true
}
})
const data = reactive({
form: {
},
loading:false,
form: {},
loading: false,
countryList: [],
regionsList: [],
regionArr: [],
isAgree:false
isAgree: false
})
const {form,countryList,regionsList,isAgree,loading,regionArr} = toRefs(data)
const {form, countryList, regionsList, isAgree, loading, regionArr} = toRefs(data)
const registerRules = ref(
{
password:[
{ required: true, trigger: 'blur', message: '请输入您的密码' },
{ min: 6, max: 16, message: '用户密码长度必须介于 6 和 16 之间', trigger: 'blur' }
{
password: [
{required: true, trigger: 'blur', message: '请输入您的密码'},
{min: 6, max: 16, message: '用户密码长度必须介于 6 和 16 之间', trigger: 'blur'}
],
confirmPassword: [{ required: true, trigger: 'blur', message: '请再次输入您的密码' },],
countryId: [{ required: true, trigger: 'blur', message: '请选择所属国家' },],
address: [{ required: true, trigger: 'blur', message: '请输入地址' },],
teamName: [{ required: true, trigger: 'blur', message: '请输入' },],
contactName: [{ required: true, trigger: 'blur', message: '请输入' },],
contactTel: [{ required: true, trigger: 'blur', message: '请输入' },],
contactEmail: [{ required: true, trigger: 'blur', message: '请输入' },],
photo: [{ required: true, trigger: 'blur', message: '请上传' },],
})
confirmPassword: [{required: true, trigger: 'blur', message: '请再次输入您的密码'},],
countryId: [{required: true, trigger: 'blur', message: '请选择所属国家'},],
address: [{required: true, trigger: 'blur', message: '请输入地址'},],
teamName: [{required: true, trigger: 'blur', message: '请输入'},],
contactName: [{required: true, trigger: 'blur', message: '请输入'},],
contactTel: [{required: true, trigger: 'blur', message: '请输入'},],
contactEmail: [{required: true, trigger: 'blur', message: '请输入'},],
photo: [{required: true, trigger: 'blur', message: '请上传'},],
})
const vconfirmPassword = () => {
if (form.value.password !== form.value.confirmPassword) {
ElMessage.error('两次输入的密码不一致')
}
}
onMounted(()=>{
onMounted(() => {
getCountryList()
getRegionsList()
})
......@@ -125,18 +146,20 @@ function getCountryList() {
countryList.value = res.data
})
}
function getRegionsList() {
match.regionsList().then(res => {
regionsList.value = res.data
})
}
const goStep1 = () => {
emit('prev')
}
const goStep3 = () => {
proxy.$refs.registerRef.validate(valid => {
if (valid) {
if(!isAgree.value){
if (!isAgree.value) {
ElMessage.error('请勾选接受')
return
}
......@@ -144,7 +167,7 @@ const goStep3 = () => {
loading.value = true
delete form.value.confirmPassword
form.value.regionId = regionArr.value.pop()
match.pcRegisterTeam(form.value).then(res=>{
match.pcRegisterTeam(form.value).then(res => {
setToken(res.data.token)
emit('submit')
})
......@@ -156,20 +179,36 @@ const goStep3 = () => {
const showAgreeMent = () => {
console.log('111')
}
onMounted(()=>{
onMounted(() => {
console.log(props)
})
</script>
<style scoped lang="scss">
.d-form-border{
border: 1px solid #E5E5E5;margin: 20px 0;padding: 20px}
.leftboderTT{color: var(--el-color-primary);
.d-form-border {
border: 1px solid #E5E5E5;
margin: 20px 0;
padding: 20px
}
.leftboderTT {
color: var(--el-color-primary);
font-size: 16px;
font-weight: 600;
span{color: #929AA0;font-size: 14px;}
span {
color: #929AA0;
font-size: 14px;
}
}
.flexAgree{display: flex;align-items: center;
div{margin-left: 8px;font-size: 14px}
.flexAgree {
display: flex;
align-items: center;
div {
margin-left: 8px;
font-size: 14px
}
}
</style>
......
<template>
<el-card style="min-height: 50vh">
<div>
<img src="@/assets/dance/ok.png"/>
<h3>注册成功</h3>
<div class="text-center">
<img class="mauto" src="@/assets/dance/ok.png"/>
<h3 class="text-primary">{{ language == 0 ? '注册成功' : 'Stered Successfully !' }}</h3>
</div>
<div>
<div class="flexCenter">
<div class="border-info text-center inline">
<label>登录账号</label> 321
<label>{{ language == 0 ? '登录账号' : 'Account' }}:</label> {{accont}}
</div>
</div>
<div class="text-center">
<el-button class="primary-kx" @click="goHome">返回首页</el-button>
<el-button type="primary" @click="goSign">去报名</el-button>
<div class="text-center mt30 mb20">
<el-button class="primary-kx w200px" round @click="goHome">{{ language == 0 ? '返回首页' : 'Homepage' }}</el-button>
<el-button type="primary" class="btn-lineG w200px" round @click="goSign">{{ language == 0 ? '去报名' : 'Sign Up' }}</el-button>
</div>
</el-card>
</template>
......@@ -23,7 +23,12 @@ import Vcode from "vue3-puzzle-vcode"
import {ElMessage} from 'element-plus'
import CountDown from '@chenfengyuan/vue-countdown'
import {getCaptchaSms, checkRegisterCode} from "@/apiPc/match";
const props = defineProps({
accont:{
type:String,
required:true
}
})
const data = reactive({
isShow: false,
isCodeTrue: false,
......@@ -34,19 +39,6 @@ const data = reactive({
const {isShow, isCodeTrue, counting, form, activeStep} = toRefs(data)
const emit = defineEmits(['submit', 'userName'])
function sendsmsMsg() {
if (!form.value.account) {
ElMessage.error('请填写手机/邮箱')
return
}
if (counting.value) {
return
} else {
isShow.value = true
}
}
const goHome = () => {
}
......@@ -57,6 +49,7 @@ const goSign = () => {
</script>
<style scoped lang="scss">
.el-input-group__append button.el-button, .el-input-group__append button.el-button:hover {
color: var(--el-color-primary);
background: #efefff;
......
......@@ -2,18 +2,18 @@
<div>
<div class="mt30 mb60">
<div class="box">
<!-- 国内-机构注册-->
<!--机构注册-->
<el-card>
<el-steps :active="activeStep" align-center>
<el-step title="创建账号" />
<el-step title="账号信息" />
<el-step title="注册完成" />
<el-step :title="language==0?'创建账号':'create an account'" />
<el-step :title="language==0?'账号信息':'account information'" />
<el-step :title="language==0?'注册完成':'stered successfully'" />
</el-steps>
</el-card>
<div class="mt20"></div>
<Step1 v-if="activeStep==0" @submit="toStep2" @userName="getUserName" />
<Step2 v-if="activeStep==1" @submit="toStep3" @prev="toStep1" :accont="form.userName"/>
<Step3 v-if="activeStep==2"/>
<Step3 v-if="activeStep==2" :accont="form.userName"/>
</div>
</div>
</div>
......@@ -24,8 +24,11 @@ import {reactive} from "@vue/runtime-core";
import Step1 from "./step1";
import Step2 from "./step2";
import Step3 from "./step3";
import * as match from "@/apiPc/match";
import {onMounted,toRefs} from "vue";
import * as match from "@/apiPc/match"
import {onMounted,toRefs} from "vue"
import cache from '@/plugins/cache'
const language = ref(cache.local.get('language') || 0)
const data = reactive({
isShow:false,
isCodeTrue:false,
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!