Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
jijin
/
dance-pc
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
f232b4f3
authored
2024-04-01 09:31:36 +0800
by
杨炀
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
no message
1 parent
2c092c1c
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
227 additions
and
111 deletions
index.html
src/assets/js/data.js
src/components/ImageUpload/index2.vue
src/layoutPc/components/AppBottom.vue
src/viewsPc/about/wudao.vue
src/viewsPc/about/wudao_en.vue
src/viewsPc/center/myInfo.vue
src/viewsPc/index.vue
src/viewsPc/index_en.vue
src/viewsPc/match/chooseCoach.vue
src/viewsPc/match/chooseProject.vue
src/viewsPc/match/chooseSportsman.vue
src/viewsPc/match/chooseSportsman2.vue
src/viewsPc/match/components/addAccompany.vue
src/viewsPc/match/components/addWdsf.vue
src/viewsPc/match/components/allSportsmanList.vue
src/viewsPc/match/components/extraForm.vue
src/viewsPc/match/components/substation-list.vue
src/viewsPc/match/detail.vue
src/viewsPc/match/detail_en.vue
src/viewsPc/match/index.vue
src/viewsPc/match/pay.vue
src/viewsPc/match/teamSign.vue
src/viewsPc/register/personal.vue
src/viewsPc/saiC/index.vue
vite.config.js
index.html
View file @
f232b4f
...
...
@@ -7,7 +7,7 @@
<meta
name=
"renderer"
content=
"webkit"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
>
<link
rel=
"icon"
href=
"/favicon.ico"
>
<title>
亚洲体育舞蹈
大赛
</title>
<title>
亚洲体育舞蹈
节
</title>
<!-- <script src="./browser.js"></script>-->
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
<style>
...
...
src/assets/js/data.js
View file @
f232b4f
This diff is collapsed.
Click to expand it.
src/components/ImageUpload/index2.vue
View file @
f232b4f
...
...
@@ -58,7 +58,7 @@
<!--裁剪-->
<el-dialog
v-model=
"open"
title=
"裁剪图片
"
:title=
"language=='0'?'裁剪图片':'Cropper'
"
width=
"600px"
append-to-body
@
opened=
"modalOpened"
...
...
@@ -91,7 +91,7 @@
:accept=
"accept"
>
<el-button>
选择
{{ language=='0'?'选择':'chose' }}
<el-icon
class=
"el-icon--right"
><Upload
/></el-icon>
</el-button>
</el-upload>
...
...
@@ -109,7 +109,7 @@
<el-button
icon=
"RefreshRight"
@
click=
"rotateRight()"
/>
</el-col>
<el-col
:lg=
"{ span: 1, offset: 5 }"
:md=
"2"
>
<el-button
type=
"primary"
@
click=
"uploadImg()"
>
提 交
</el-button>
<el-button
type=
"primary"
@
click=
"uploadImg()"
>
{{ language=='0'?'提 交':'submit' }}
</el-button>
</el-col>
</el-row>
</el-dialog>
...
...
@@ -123,6 +123,8 @@ import { computed, getCurrentInstance, ref, watch } from 'vue'
import
{
reactive
}
from
'@vue/runtime-core'
import
request
from
'@/utils/request'
import
_
from
'lodash'
import
{
useStorage
}
from
"@vueuse/core/index"
;
const
language
=
useStorage
(
'language'
,
0
)
const
props
=
defineProps
({
modelValue
:
[
String
,
Object
,
Array
],
...
...
@@ -286,7 +288,7 @@ function uploadImg() {
}).
then
((
res
)
=>
{
open
.
value
=
false
options
.
img
=
res
.
msg
proxy
.
$modal
.
msgSuccess
(
'上传成功
'
)
proxy
.
$modal
.
msgSuccess
(
language
.
value
==
0
?
'上传成功'
:
'Upload Success
'
)
visible
.
value
=
false
fileList
.
value
.
push
({
url
:
options
.
img
...
...
src/layoutPc/components/AppBottom.vue
View file @
f232b4f
...
...
@@ -14,7 +14,7 @@
<el-col
:lg=
"10"
:md=
"12"
:xs=
"24"
>
<ul
style=
"text-align: right"
>
<li>
客服及报障电话:15606190026
</li>
<li>
客服及报障邮箱: info@
jinsports
.com
</li>
<li>
客服及报障邮箱: info@
wdsfwuxicenter
.com
</li>
<li>
<!--
<a
class=
"ffoot"
target=
"_blank"
href=
"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11010102004192"
>
-->
...
...
@@ -30,8 +30,8 @@
<p
class=
"text-center mt10"
>
微博关注
</p>
</div>
</el-col>
<el-col
:span=
"24"
>
<div
class=
"text-center copyright"
>
版权所有@无锡和畅赛事运营有限公司
<el-col
:span=
"24"
style=
"border-top: 1px solid #fff"
>
<div
class=
"text-center copyright
pd10
"
>
版权所有@无锡和畅赛事运营有限公司
  
<a
target=
"_blank"
href=
"https://beian.miit.gov.cn/"
>
ICP备案号:苏ICP备2023054420号-2
</a></div>
</el-col>
...
...
@@ -41,21 +41,35 @@
<el-row
style=
"align-items: center;"
v-if=
"language==1"
>
<el-col
:lg=
"12"
:md=
"12"
:xs=
"24"
>
<ul>
<li>
<router-link
to=
"/about"
>
All rights reserved WDSF ASIAN DANCESPORT FESTIVAL .WUXI 2024
</router-link>
</li>
<li>
Phone: Miss Chang +86 18888888888
</li>
<li>
Postal code:214000
</li>
<li>
100 meters northeast of the intersection of Hefeng Road and Qingshu, the Taihu Lake New Town, Wuxi, Jiangsu
</li>
</ul>
</el-col>
<el-col
:lg=
"1
2
"
:md=
"12"
:xs=
"24"
>
<el-col
:lg=
"1
8
"
:md=
"12"
:xs=
"24"
>
<ul
style=
"text-align: right"
>
<li>
Address:No.88 Qingshu Road,Economic and Development District, Wuxi City,Jiangsu Province,China
<li>
telephone:15606190026
</li>
<li>
e-mail:info@wdsfwuxicenter.com
</li>
<li>
<!--
<a
class=
"ffoot"
target=
"_blank"
href=
"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11010102004192"
>
-->
<!--
<img
src=
"@/assets/v1/beian.png"
>
-->
<!-- 京公网安备 11010102004192号
</a>
-->
</li>
<li>
Email: 8888989@163.com
</li>
</ul>
</el-col>
<el-col
:lg=
"4"
:md=
"12"
:xs=
"24"
>
<div>
<img
class=
"mauto"
src=
"/img/wb2.jpg"
/>
<p
class=
"text-center mt10"
>
Weibo
</p>
</div>
</el-col>
<el-col
:span=
"24"
style=
"border-top: 1px solid #fff"
>
<div
class=
"text-center copyright pd10"
>
Copyright@Wuxi Hechang Sports Operations Co., Ltd
  
<a
target=
"_blank"
href=
"https://beian.miit.gov.cn/"
>
ICP:苏ICP备2023054420号-2
</a></div>
</el-col>
</el-row>
</div>
</div>
...
...
@@ -72,7 +86,7 @@ const language = useStorage('language', 0)
.copyright
{
font-size
:
14px
;
opacity
:
0.88
;
color
:
#4C5359
;}
.footAll
{
background
:
#E0E3E5
;
;
padding
:
36px
0
1
5px
;
.footAll
{
background
:
#E0E3E5
;
;
padding
:
36px
0
5px
;
p{
font-size
:
14px
;
opacity
:
0.88
;
color
:
#4C5359
;}
...
...
src/viewsPc/about/wudao.vue
View file @
f232b4f
...
...
@@ -45,7 +45,7 @@
<div
class=
"content"
>
<div
class=
"phone"
>
<h4>
电话
</h4>
<p>
张小姐:18888888888
</p>
<p>
武先生:15606190026
</p>
</div>
<div
class=
"address"
>
<h4>
地址
</h4>
...
...
src/viewsPc/about/wudao_en.vue
View file @
f232b4f
...
...
@@ -40,7 +40,7 @@
<div
class=
"content"
>
<div
class=
"phone"
>
<h4>
Phone
</h4>
<p>
M
iss Chang:+86 18888888888
</p>
<p>
M
r.WU:15606190026
</p>
</div>
<div
class=
"address"
>
<h4>
Address
</h4>
...
...
src/viewsPc/center/myInfo.vue
View file @
f232b4f
...
...
@@ -48,7 +48,7 @@
<el-form-item
label=
"Passport"
required
>
<el-input
v-model=
"myform.passportNumber"
/>
</el-form-item>
<el-form-item
label=
"Passport File"
>
<el-form-item
label=
"Passport File"
required
>
<file-upload
v-model=
"myform.passportUrl"
:limit=
"1"
:is-show-tip=
"false"
:button-text=
"'Upload'"
/>
</el-form-item>
<el-form-item
:label=
"language==0?'WDSF会员号':'WDSF code'"
prop=
"wdsfMin"
>
...
...
src/viewsPc/index.vue
View file @
f232b4f
...
...
@@ -8,10 +8,8 @@
<img
v-if=
"n.bgImgUrl"
class=
"bannerImg"
:src=
"fillImgUrl(n.bgImgUrl)"
>
<img
v-else
class=
"bannerImg"
src=
"@/assets/dance/banner.png"
>
<div
class=
"box forPc"
style=
"position: absolute;top: 0;left: 0;right: 0;margin: auto;"
>
<div
v-if=
"n.progressStatusCode=='2'"
style=
"position: absolute;bottom: 50%;right: 5%"
>
<el-button
class=
"btn-lineG w200px"
style=
"font-size: 17px;height: 40px"
round
@
click=
"goMatch(n)"
type=
"primary"
>
开始报名
</el-button>
</div>
<div
class=
"banner-count"
v-else-if=
"n.time>0"
>
<div
class=
"banner-count"
v-if=
"n.time>0"
@
click=
"goMatch(n)"
>
距离开始还有
<van-count-down
:time=
"n.time"
format=
"DD 天 HH 时 mm 分 ss 秒"
>
<template
#
default=
"timeData"
>
...
...
@@ -33,6 +31,10 @@
</
template
>
</van-count-down>
</div>
<div
class=
"banner-count"
style=
"width: 580px;justify-content: center;height: 100px;font-size: 30px"
v-else
@
click=
"goMatch(n)"
>
开始报名
<!-- <el-button class="btn-lineG" style="font-size: 17px;height: 40px" round type="primary">开始报名</el-button>-->
</div>
</div>
</div>
</div>
...
...
@@ -141,7 +143,7 @@
</
template
>
</el-table-column>
<el-table-column
label=
"国家
/地区
"
prop=
"name"
>
<el-table-column
label=
"国家"
prop=
"name"
>
<
template
#
default=
"scope"
>
<div>
<span
:class=
"`flag-icon flag-icon-$
{scope.row.code}`">
</span>
...
...
@@ -149,7 +151,7 @@
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"
队伍名称
"
align=
"center"
>
<el-table-column
label=
"
组合
"
align=
"center"
>
<
template
#
default=
"scope"
>
<div
class=
"text-primary esp"
>
{{
scope
.
row
.
name
}}
</div>
</
template
>
...
...
@@ -318,15 +320,15 @@
<div
class=
"content"
>
<div
class=
"phone"
>
<h4>
电话
</h4>
<p>
张小姐:18888888888
</p>
<p>
武先生:15606190026
</p>
</div>
<div
class=
"address"
>
<h4>
地址
</h4>
<p>
无锡市经开区清舒道88号
</p>
<p>
江苏省 无锡市太湖新城和风路与清舒交叉口东北100米
</p>
</div>
<div
class=
"email"
>
<h4>
邮箱
</h4>
<p>
8888989@163
.com
</p>
<p>
info@wdsfwuxicenter
.com
</p>
</div>
</div>
</div>
...
...
src/viewsPc/index_en.vue
View file @
f232b4f
...
...
@@ -8,10 +8,8 @@
<img
v-if=
"n.bgImgUrl"
class=
"bannerImg"
:src=
"fillImgUrl(n.bgImgUrl)"
>
<img
v-else
class=
"bannerImg"
src=
"@/assets/dance/banner.png"
>
<div
class=
"box"
style=
"position: absolute;top: 0;left: 0;right: 0;margin: auto;"
>
<div
v-if=
"n.progressStatusCode=='2'"
style=
"position: absolute;bottom: 50%;right: 5%"
>
<el-button
class=
"btn-lineG"
style=
"font-size: 17px;height: 40px"
round
@
click=
"goMatch(n)"
type=
"primary"
>
开始报名
</el-button>
</div>
<div
class=
"banner-count"
v-else-if=
"n.time>0"
>
<div
class=
"banner-count"
v-if=
"n.time>0"
@
click=
"goMatch(n)"
>
Countdown
<van-count-down
:time=
"n.time"
format=
"DD 天 HH 时 mm 分 ss 秒"
>
<template
#
default=
"timeData"
>
...
...
@@ -30,6 +28,10 @@
</
template
>
</van-count-down>
</div>
<div
class=
"banner-count"
style=
"width: 580px;justify-content: center;height: 100px;font-size: 30px"
v-else
@
click=
"goMatch(n)"
>
Register Now
<!-- <el-button class="btn-lineG" style="font-size: 17px;height: 40px" round type="primary">开始报名</el-button>-->
</div>
</div>
</div>
</div>
...
...
@@ -135,7 +137,7 @@
<!--历史排名-->
<el-card
:body-style=
"{'padding':'10px 20px 18px'}"
>
<el-table
stripe
:data=
"rankList"
>
<el-table-column
label=
"R
anking
"
align=
"center"
width=
"80"
type=
"index"
>
<el-table-column
label=
"R
ANK
"
align=
"center"
width=
"80"
type=
"index"
>
<
template
#
default=
"scope"
>
<span
v-if=
"scope.row.index == 1"
style=
"color:#F8A617"
>
{{
scope
.
row
.
index
}}
</span>
<span
v-else-if=
"scope.row.index == 2"
style=
"color:#778B92"
>
{{
scope
.
row
.
index
}}
</span>
...
...
@@ -143,7 +145,7 @@
<span
v-else
>
{{
scope
.
row
.
index
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"C
ountry/Region
"
>
<el-table-column
label=
"C
OUNTRY
"
>
<
template
#
default=
"scope"
>
<div>
<span
:class=
"`flag-icon flag-icon-$
{scope.row.code}`">
</span>
...
...
@@ -321,7 +323,7 @@
<div
class=
"content"
>
<div
class=
"phone"
>
<h4>
Phone
</h4>
<p>
M
iss Chang:+86 18888888888
</p>
<p>
M
r.WU:15606190026
</p>
</div>
<div
class=
"address"
>
<h4>
Address
</h4>
...
...
@@ -329,7 +331,7 @@
</div>
<div
class=
"email"
>
<h4>
Email
</h4>
<p>
8888989@163
.com
</p>
<p>
info@wdsfwuxicenter
.com
</p>
</div>
</div>
</div>
...
...
src/viewsPc/match/chooseCoach.vue
View file @
f232b4f
...
...
@@ -21,7 +21,7 @@
<div
class=
"chooseForm"
>
<el-checkbox-group
v-model=
"form.coachs"
@
change=
"changecoachs"
>
<div
class=
"addBttn"
@
click=
"addCoach('1')"
>
+
</div>
<el-checkbox
v-for=
"c in personAllList?.coaches"
:
label
=
"c.id"
>
<el-checkbox
v-for=
"c in personAllList?.coaches"
:
value
=
"c.id"
>
<el-avatar
fit=
"cover"
v-if=
"c.picUrl"
:size=
"60"
:src=
"fillImgUrl(c.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
...
...
@@ -49,7 +49,7 @@
<div
class=
"chooseForm"
>
<el-checkbox-group
v-model=
"form.leader"
>
<div
class=
"addBttn"
@
click=
"addCoach('2')"
>
+
</div>
<el-checkbox
v-for=
"c in personAllList?.leaders"
:
label
=
"c.id"
>
<el-checkbox
v-for=
"c in personAllList?.leaders"
:
value
=
"c.id"
>
<el-avatar
fit=
"cover"
v-if=
"c.picUrl"
:size=
"60"
:src=
"fillImgUrl(c.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
...
...
@@ -74,7 +74,7 @@
<div
class=
"chooseForm"
>
<el-checkbox-group
v-model=
"form.doctor"
>
<div
class=
"addBttn"
@
click=
"addCoach('4')"
>
+
</div>
<el-checkbox
v-for=
"c in personAllList?.teamDoctors"
:
label
=
"c.id"
>
<el-checkbox
v-for=
"c in personAllList?.teamDoctors"
:
value
=
"c.id"
>
<el-avatar
fit=
"cover"
v-if=
"c.picUrl"
:size=
"60"
:src=
"fillImgUrl(c.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
...
...
@@ -99,7 +99,7 @@
<div
class=
"chooseForm"
>
<el-checkbox-group
v-model=
"form.translator"
>
<div
class=
"addBttn"
@
click=
"addCoach('5')"
>
+
</div>
<el-checkbox
v-for=
"c in personAllList?.translators"
:
label
=
"c.id"
>
<el-checkbox
v-for=
"c in personAllList?.translators"
:
value
=
"c.id"
>
<el-avatar
fit=
"cover"
v-if=
"c.picUrl"
:size=
"60"
:src=
"fillImgUrl(c.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
...
...
@@ -124,7 +124,7 @@
<div
class=
"chooseForm"
>
<el-checkbox-group
v-model=
"form.official"
>
<div
class=
"addBttn"
@
click=
"addCoach('6')"
>
+
</div>
<el-checkbox
v-for=
"c in personAllList?.officials"
:
label
=
"c.id"
>
<el-checkbox
v-for=
"c in personAllList?.officials"
:
value
=
"c.id"
>
<el-avatar
fit=
"cover"
v-if=
"c.picUrl"
:size=
"60"
:src=
"fillImgUrl(c.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
...
...
@@ -149,7 +149,7 @@
<div
class=
"chooseForm"
>
<el-checkbox-group
v-model=
"form.other"
>
<div
class=
"addBttn"
@
click=
"addCoach('3')"
>
+
</div>
<el-checkbox
v-for=
"c in personAllList?.others"
:
label
=
"c.id"
>
<el-checkbox
v-for=
"c in personAllList?.others"
:
value
=
"c.id"
>
<el-avatar
fit=
"cover"
v-if=
"c.picUrl"
:size=
"60"
:src=
"fillImgUrl(c.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-else-if=
"c.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
...
...
src/viewsPc/match/chooseProject.vue
View file @
f232b4f
...
...
@@ -36,9 +36,11 @@
<el-checkbox-group
v-model=
"mateChosed"
@
change=
"changeMate"
>
<el-checkbox
:label=
"form.danceMate.id"
>
<div>
<el-avatar
fit=
"cover"
v-if=
"form.danceMate.sex == 0"
:size=
"60"
<el-avatar
fit=
"cover"
v-if=
"form.danceMate.picUrl"
:size=
"60"
:src=
"fillImgUrl(form.danceMate.picUrl)"
/>
<el-avatar
fit=
"cover"
v-else-if=
"form.danceMate.sex == 0"
:size=
"60"
src=
"/img/head1.png"
/>
<el-avatar
fit=
"cover"
v-if=
"form.danceMate.sex == 1"
:size=
"60"
<el-avatar
fit=
"cover"
v-
else-
if=
"form.danceMate.sex == 1"
:size=
"60"
src=
"/img/head0.png"
/>
<div
class=
"text-center mt10"
@
click=
"editMate(form.danceMate)"
>
<span>
{{
form
.
danceMate
.
realName
}}
</span>
...
...
@@ -76,7 +78,7 @@
clearable
/>
</div>
</div>
<div
v-loading=
"loadingProject"
style=
"height: 55vh"
>
<div
v-loading=
"loadingProject"
style=
"height: 55vh
;overflow: auto;
"
>
<el-checkbox-group
v-model=
"projectIds"
>
<el-checkbox
class=
"flexBetweenBox"
v-for=
"c in projectList"
:label=
"c.id"
:key=
"c.id"
>
<div
class=
"flexBetween w100"
>
...
...
@@ -690,7 +692,7 @@ function switchTabletype() {
}
.flexBetweenBox
{
width
:
100%
;
width
:
100%
;
margin-right
:
0
;
height
:
auto
;
border-bottom
:
1px
solid
#eee
;
padding
:
0
10px
;
...
...
src/viewsPc/match/chooseSportsman.vue
View file @
f232b4f
...
...
@@ -78,7 +78,7 @@
clearable
/>
</div>
</div>
<div
v-loading=
"loadingProject"
id=
"projectbox"
style=
"height: 60vh"
>
<div
v-loading=
"loadingProject"
id=
"projectbox"
style=
"height: 60vh
;overflow: auto;
"
>
<el-checkbox-group
v-model=
"projectIds"
@
change=
"changeProject"
>
<el-checkbox
class=
"flexBetweenBox"
v-for=
"c in projectList"
:value=
"c.id"
:key=
"c.id"
>
<div
class=
"flexBetween w100"
>
...
...
@@ -617,7 +617,7 @@ watch(choosedchoosed, (newVal, oldVal) => {
.flexBetweenBox
{
width
:
100%
;
height
:
auto
;
height
:
auto
;
margin-right
:
0
;
border-bottom
:
1px
solid
#eee
;
padding
:
0
10px
;
}
...
...
@@ -626,7 +626,7 @@ watch(choosedchoosed, (newVal, oldVal) => {
background
:
#FAFBFD
;
}
.flexBetween
{
.flexBetween
{
white-space
:
normal
;
padding
:
10px
;
border-left
:
1px
solid
#eee
;
...
...
src/viewsPc/match/chooseSportsman2.vue
View file @
f232b4f
...
...
@@ -13,13 +13,17 @@
<h3
class=
"panel-title"
v-if=
"language==0"
>
选择参赛运动员清单
</h3>
<h3
class=
"panel-title"
v-else
>
Select list of participating athletes
</h3>
<!--
<a
class=
"fr"
@
click=
"emptyChoosed"
>
{{
language
==
0
?
'清空'
:
'Empty'
}}
</a>
-->
<el-button
type=
"primary"
style=
"color: #fff"
class=
"fr"
@
click=
"chooseSportman"
>
选手管理
</el-button>
</div>
<div
class=
"panel-body"
style=
"padding: 10px"
>
<div
style=
"margin: 0 4px 10px"
>
<el-select
multiple
v-model=
"choosedchoosed"
collapse-tags-tooltip
filterable
@
change=
"getProjectList"
>
<el-option
v-for=
"c in athletesList"
:key=
"c.id"
:label=
"c.realName"
:value=
"c.id"
></el-option>
<el-option
v-for=
"c in athletesList"
:key=
"c.id"
:label=
"c.realName"
:value=
"c.id"
>
{{
c
.
realName
}}
(
{{
c
.
sexStr
}}
)-
{{
c
.
age
}}
</el-option>
</el-select>
<el-button
type=
"primary"
@
change=
"emptychoosedchoosed"
>
重选
</el-button>
</div>
<div
class=
"noPicChooseForm"
id=
"chooseArr"
>
<el-checkbox-group
v-model=
"choosedchoosed"
@
change=
"changechoosed"
>
...
...
@@ -303,7 +307,9 @@ function goPrev() {
}
})
}
function
emptychoosedchoosed
()
{
choosedchoosed
.
value
=
[]
}
function
chooseSportman
()
{
const
params
=
{
title
:
language
.
value
==
0
?
'选择运动员'
:
'Participating athletes'
,
...
...
src/viewsPc/match/components/addAccompany.vue
View file @
f232b4f
...
...
@@ -4,7 +4,8 @@
:close-on-click-modal=
"false"
class=
"pcloginpop"
destroy-on-close
>
<!-- 舞伴-->
<!-- 随性人员-->
<div
class=
"pd10"
></div>
<el-form
ref=
"dialogRef"
:model=
"form"
:rules=
"language==0?rules:rules_cn"
label-width=
"160px"
inline
>
<el-row
:gutter=
"30"
>
<el-col
:lg=
"24"
>
...
...
@@ -28,7 +29,9 @@
<el-form-item
:label=
"language==0?'护照号':'PassPort Number'"
prop=
"idcCode"
required
>
<el-input
v-model=
"form.idcCode"
/>
</el-form-item>
<el-form-item
:label=
"language==0?'护照文件':'Passport File'"
required
>
<file-upload
v-model=
"form.passportUrl"
:limit=
"1"
:is-show-tip=
"false"
:button-text=
"'Upload'"
/>
</el-form-item>
<el-form-item
:label=
"language==0?'出生日期':'birth'"
prop=
"birth"
required
>
<el-date-picker
v-model=
"form.birth"
...
...
@@ -165,6 +168,15 @@ watch(show, (value) => {
})
function
submitForm
()
{
if
(
!
form
.
value
.
passportUrl
)
{
ElMessage
.
error
(
'Please upload your passport file'
)
return
}
if
(
Array
.
isArray
(
form
.
value
.
passportUrl
)){
form
.
value
.
passportUrl
=
form
.
value
.
passportUrl
[
0
].
url
}
else
{
form
.
value
.
passportUrl
=
form
.
value
.
passportUrl
}
proxy
.
$refs
[
'dialogRef'
].
validate
((
valid
)
=>
{
if
(
valid
)
{
form
.
value
.
label
=
form
.
value
.
labelArr
.
toString
()
...
...
src/viewsPc/match/components/addWdsf.vue
View file @
f232b4f
...
...
@@ -4,7 +4,8 @@
:close-on-click-modal=
"false"
class=
"pcloginpop"
@
close=
"cancel"
destroy-on-close
>
<!-- 随行人员-->
<!-- wdsf 个人/舞伴-->
<div
class=
"pd10"
></div>
<el-form
ref=
"dialogRef"
:model=
"form"
:label-width=
"language==0?120:180"
inline
>
<el-form-item
:label=
"language==0?'WDSF卡号':'WDSF ID'"
v-if=
"form.id"
>
{{
form
.
wdsfMin
}}
...
...
@@ -51,6 +52,12 @@
{{ language == 0 ? '补充信息' : 'Supplementary Information' }}
</div>
<div
class=
"h20"
></div>
<el-form-item
prop=
"picUrl"
:label=
"language==0?'个人照片':'photo'"
required
>
<ImageUpload2
v-model=
"form.picUrl"
:crop-height=
"280"
:crop-width=
"200"
class=
"threeFour"
:limit=
"1"
:is-show-tip=
"false"
/>
</el-form-item>
<el-form-item
:label=
"language==0?'性别':'Sex'"
required
>
<el-radio-group
v-model=
"form.sex"
>
<el-radio
value=
"0"
>
{{ language == 0 ? '女' : 'female' }}
</el-radio>
...
...
@@ -68,7 +75,7 @@
<el-form-item
label=
"Passport number"
required
>
<el-input
v-model=
"form.passportNumber"
/>
</el-form-item>
<el-form-item
label=
"Passport File"
>
<el-form-item
label=
"Passport File"
required
>
<file-upload
v-model=
"form.passportUrl"
:limit=
"1"
:is-show-tip=
"false"
:button-text=
"'Upload'"
/>
</el-form-item>
</el-form>
...
...
@@ -178,8 +185,21 @@ watch(show, (value) => {
})
function
submitForm
()
{
if
(
!
form
.
value
.
passportNumber
)
{
ElMessage
.
error
(
'Please fill in your passport number'
)
return
}
if
(
!
form
.
value
.
picUrl
)
{
ElMessage
.
error
(
'Please upload your photo'
)
return
}
if
(
!
form
.
value
.
passportUrl
)
{
ElMessage
.
error
(
'Please upload your passport file'
)
return
}
if
(
editgay
)
{
// id不是0
form
.
value
.
cptId
=
cptId
.
value
if
(
Array
.
isArray
(
form
.
value
.
passportUrl
)){
form
.
value
.
passportUrl
=
form
.
value
.
passportUrl
[
0
].
url
...
...
@@ -192,10 +212,6 @@ function submitForm() {
emit
(
'submitForm'
)
})
}
else
{
if
(
!
form
.
value
.
passportNumber
)
{
ElMessage
.
error
(
'Please fill in your passport number'
)
return
}
if
(
!
form
.
value
.
birth
)
{
ElMessage
.
error
(
'Please fill in your birthday'
)
return
...
...
src/viewsPc/match/components/allSportsmanList.vue
View file @
f232b4f
...
...
@@ -38,6 +38,7 @@
<el-table
ref=
"allSportmenTable"
v-loading=
"loading"
:data=
"tableData"
height=
"60vh"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
:label=
"language==0?'选择':'Selection'"
:selectable=
"selectable"
/>
<!--
<el-table-column
type=
"index"
:label=
"language==0?'序号':'Index'"
:selectable=
"selectable"
/>
-->
<el-table-column
:label=
"language==0?'姓氏':'Last Name'"
prop=
"xing"
min-width=
"100"
/>
<el-table-column
:label=
"language==0?'名':'First Name'"
prop=
"ming"
min-width=
"100"
/>
<el-table-column
:label=
"language==0?'所属国家':'Nationality'"
prop=
"countryName"
min-width=
"100"
/>
...
...
src/viewsPc/match/components/extraForm.vue
View file @
f232b4f
...
...
@@ -33,7 +33,7 @@
:is-show-tip=
"false"
/>
<!-- 文件 2-->
<FileUpload
v-if=
"s.type == '2'"
v-model=
"s.fixWxFile"
:action=
"uploadUrl"
/>
<FileUpload
:button-text=
"language=='0'?'上传附件':'upload'"
:is-show-tip=
"false"
v-if=
"s.type == '2'"
v-model=
"s.fixWxFile"
:action=
"uploadUrl"
/>
</el-form-item>
</el-form>
</el-col>
...
...
@@ -41,8 +41,8 @@
<
template
#
footer
>
<div
class=
"dialog-footer text-center"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
保 存
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"submitForm"
>
{{
language
==
'0'
?
'保 存'
:
'Save'
}}
</el-button>
<el-button
@
click=
"cancel"
>
{{
language
==
'0'
?
'取 消'
:
'Cancel'
}}
</el-button>
</div>
</
template
>
</el-dialog>
...
...
@@ -138,7 +138,7 @@ function getCountryList() {
function
submitForm
()
{
let
fileInfo
=
{}
for
(
const
n
of
participantsInfoArr
.
value
)
{
if
(
n
.
status
==
0
&&
(
!
n
.
value
&&
(
!
n
.
fixWxFile
||
!
n
.
fixWxFile
.
length
==
0
)))
{
if
(
n
.
status
==
0
&&
(
!
n
.
value
&&
(
!
n
.
fixWxFile
||
n
.
fixWxFile
.
length
==
0
)))
{
ElMessage
.
error
(
`请完善
${
n
.
name
}
信息`
)
return
}
...
...
src/viewsPc/match/components/substation-list.vue
View file @
f232b4f
...
...
@@ -3,13 +3,13 @@
<div
class=
"matchItem"
v-for=
"n in list"
:key=
"n.id"
@
click=
"goDetail(n.id)"
>
<el-row
:gutter=
"15"
>
<el-col
:lg=
"7"
:md=
"24"
:xl=
"6"
>
<img
class=
"mauto w100 coverLimitHeight"
:src=
"fillImgUrl(n.coverUrl)"
>
<img
class=
"mauto
m
w100 coverLimitHeight"
:src=
"fillImgUrl(n.coverUrl)"
>
</el-col>
<el-col
:lg=
"9"
:md=
"12"
:xl=
"12"
>
<div
class=
"info"
>
<h3>
{{
n
.
name
}}
</h3>
<p
class=
"ppl"
><label>
{{
language
==
0
?
'比赛时间'
:
'Playing Time'
}}
:
</label>
{{
n
.
beginTime
?.
slice
(
0
,
10
)
}}
~
{{
n
.
endTime
?.
slice
(
0
,
10
)
}}
</p>
<p
class=
"ppl"
><label>
{{
language
==
0
?
'地    点'
:
'Location'
}}
:
</label>
{{
n
.
address
}}
</p
>
<!--
<p
class=
"ppl"
><label>
{{
language
==
0
?
'地    点'
:
'Location'
}}
:
</label>
{{
n
.
address
}}
</p>
--
>
<p
class=
"ppl"
><label>
{{
language
==
0
?
'报名截止'
:
'Registration Deadline'
}}
:
</label>
{{
n
.
signEndTime
?.
slice
(
0
,
10
)
}}
</p>
<p
class=
"ppl"
v-if=
"n.contactPerson"
><label>
{{
language
==
0
?
'联系人员'
:
'Contact Person'
}}
:
</label>
{{
n
.
contactPerson
}}
</p>
...
...
@@ -160,7 +160,7 @@ function goDetail(id) {
.colon
{
display
:
inline-block
;
font-size
:
1
6
px
;
font-size
:
1
4
px
;
margin
:
0
8px
;
color
:
#7B7F83
;
}
...
...
@@ -180,5 +180,5 @@ function goDetail(id) {
@media
(
max-width
:
1450px
)
{
.block
{
width
:
44px
;
font-size
:
20px
;}
}
.coverLimitHeight
{
max-height
:
16
5
px
;
object-fit
:
cover
;}
.coverLimitHeight
{
max-height
:
16
0
px
;
object-fit
:
cover
;}
</
style
>
...
...
src/viewsPc/match/detail.vue
View file @
f232b4f
...
...
@@ -16,7 +16,7 @@
<el-col
:lg=
"7"
:md=
"matchData.type=='0'?24:12"
:xl=
"matchData.type=='0'?6:6"
>
<img
class=
"mauto w100"
:src=
"fillImgUrl(matchData.coverUrl)"
>
</el-col>
<el-col
:lg=
"matchData.type=='0'?9:17"
:md=
"matchData.type=='0'?12:12"
:xl=
"matchData.type=='0'?10:10"
>
<el-col
style=
"position: relative"
:lg=
"matchData.type=='0'?9:17"
:md=
"matchData.type=='0'?12:12"
:xl=
"matchData.type=='0'?10:10"
>
<h3
class=
"mtitle"
>
{{ matchData.name }}
</h3>
...
...
@@ -25,7 +25,20 @@
<p
class=
"ppl"
><label
class=
"bm2"
>
赛事级别:
</label>
{{ matchData.level }}
</p>
<p
class=
"ppl"
v-if=
"matchData.address"
><label
class=
"bm3"
>
地
    
点:
</label>
{{ matchData.address }}
</p>
<p
class=
"ppl"
v-if=
"matchData.signEndTime"
><label
class=
"bm4"
>
报名截止:
</label>
{{ matchData.signEndTime?.slice(0, 10) }}
</p>
<div>
<p
class=
"ppl"
v-if=
"matchData.type=='1'"
>
<label>
<svg
style=
"position: relative;top: 2px;"
t=
"1711707785514"
class=
"icon"
viewBox=
"0 0 1024 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"6578"
width=
"18"
height=
"18"
>
<path
d=
"M780 68H256c-71.6 0-130.2 55.5-130.2 123.2v711.2c1.5 42.8 50 69.3 90.6 50.6l227.2-105c38.5-17.8 83.4-18.5 122.6-1.9l255.4 108.6c34.8 14.8 76.1-2.7 86.3-37.6 1.6-5.4 2.4-11 2.4-16.9v-709C910.2 123.5 851.6 68 780 68zM276.9 231.3h255.9c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41z m386.8 464H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z m0-191H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z"
p-id=
"6579"
fill=
"#d3d8d9"
></path></svg>
分站赛:
</label>
{{matchData.cpts.length}}
</p>
<p
class=
"ppl"
v-if=
"matchData.type=='1'"
>
<label>
<svg
style=
"position: relative;top: 2px;"
t=
"1711708779620"
class=
"icon"
viewBox=
"0 0 1024 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"7920"
width=
"20"
height=
"20"
><path
d=
"M398.652952 165.692952c-32.280381-46.006857-58.172952-61.318095-92.867047-54.808381-14.969905 2.80381-24.210286 7.850667-41.20381 22.528l-12.946285 11.361524-25.185524 20.894476-6.582857 5.753905c-3.705905 3.413333-6.38781 6.217143-9.825524 10.118095-64 72.46019-81.724952 185.782857-44.470857 292.327619 26.794667 76.55619 74.605714 152.624762 142.774857 228.644572 72.289524 80.62781 133.046857 131.364571 202.922666 168.374857 54.857143 29.013333 96.865524 41.74019 145.676191 43.227429 59.001905 1.828571 110.957714-11.50781 153.648762-39.15581a162.133333 162.133333 0 0 0 19.553524-15.189333l8.289523-7.558095 16.335239-15.213715 5.534476-4.924952 10.922666-9.435429c22.040381-19.651048 29.184-31.939048 30.646858-51.370666 2.194286-29.647238-11.215238-52.736-49.737143-85.699048l-26.063238-21.820952-12.117334-10.581334-11.459047-9.825524c-37.229714-30.744381-64.804571-40.69181-100.205715-35.35238-24.283429 3.632762-38.278095 12.141714-63.073523 38.107428l-10.947048 11.654095c-18.041905 19.017143-28.330667 26.258286-43.544381 29.305905-22.25981 4.461714-44.373333-7.046095-80.262095-36.205714-46.250667-37.546667-84.626286-80.676571-117.613715-131.949714-22.869333-35.766857-31.890286-62.902857-24.941714-87.600762 2.82819-9.99619 9.679238-17.042286 24.064-28.184381l14.994286-11.312762 2.413714-1.877334 22.747429-18.553904c20.114286-16.822857 28.281905-28.281905 32.572952-45.836191 8.899048-36.10819 0.487619-66.072381-32.426667-117.638095l-15.62819-24.234667-5.558857-8.533333-6.436572-9.435429z"
p-id=
"7921"
fill=
"#d3d8d9"
></path></svg>
联系电话:
</label>
{{matchData.contactTelno}}
</p>
<div
style=
"height: 30px"
></div>
<div
class=
"ppl_pb"
>
<el-link
class=
"mr20"
v-if=
"matchData.signKnowUrl"
type=
"primary"
:href=
"fillImgUrl(JSON.parse(matchData.signKnowUrl)[0]?.url)"
target=
"_blank"
>
<el-icon
:size=
"20"
>
<Download
/>
...
...
@@ -63,7 +76,7 @@
</
template
>
</van-count-down>
<div>
<div
class=
"mt30"
>
<a
class=
"btn-lineG mb20"
v-if=
"matchData.progressStatusCode=='2'"
@
click=
"choseSignType"
style=
"display: block;text-align: center;"
>
我要报名
</a>
<div
v-else-if=
"time<=0"
style=
"opacity: 0.5;"
class=
"btn-lineG mb20 mauto text-center"
>
报名已结束
</div>
</div>
...
...
@@ -421,7 +434,7 @@ function checkIsSign() {
.ppl
{
color
:
#29343C
;
color
:
#29343C
;
margin
:
10px
0
0
;
label
{
color
:
#929AA0
;
...
...
@@ -938,7 +951,12 @@ function checkIsSign() {
.table
{
white-space
:
nowrap
}
.ppl_pb
{
position
:
absolute
;
bottom
:
0
;}
@media
(
max-width
:
1650px
){
.ppl
{
color
:
#29343C
;
margin
:
5px
0
0
;
}
}
@media
(
max-width
:
800px
)
{
.van-count-down
{
.block
{
...
...
src/viewsPc/match/detail_en.vue
View file @
f232b4f
...
...
@@ -16,7 +16,7 @@
<el-col
:lg=
"7"
:md=
"12"
:xl=
"6"
>
<img
class=
"mauto w100"
:src=
"fillImgUrl(matchData.coverUrl)"
>
</el-col>
<el-col
:lg=
"9"
:md=
"12"
:xl=
"10"
>
<el-col
:lg=
"9"
:md=
"12"
:xl=
"10"
style=
"position: relative"
>
<h3
class=
"m0"
>
{{ matchData.name }}
</h3>
...
...
@@ -26,7 +26,21 @@
<p
class=
"ppl"
v-if=
"matchData.address"
><label
class=
"bm3"
>
Location:
</label>
{{ matchData.address }}
</p>
<p
class=
"ppl"
v-if=
"matchData.signEndTime"
><label
class=
"bm4"
>
Registration
Deadline:
</label>
{{ matchData.signEndTime?.slice(0, 10) }}
</p>
<div>
<p
class=
"ppl"
v-if=
"matchData.type=='1'"
>
<label>
<svg
style=
"position: relative;top: 2px;"
t=
"1711707785514"
class=
"icon"
viewBox=
"0 0 1024 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"6578"
width=
"18"
height=
"18"
>
<path
d=
"M780 68H256c-71.6 0-130.2 55.5-130.2 123.2v711.2c1.5 42.8 50 69.3 90.6 50.6l227.2-105c38.5-17.8 83.4-18.5 122.6-1.9l255.4 108.6c34.8 14.8 76.1-2.7 86.3-37.6 1.6-5.4 2.4-11 2.4-16.9v-709C910.2 123.5 851.6 68 780 68zM276.9 231.3h255.9c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41z m386.8 464H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z m0-191H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z"
p-id=
"6579"
fill=
"#d3d8d9"
></path></svg>
Station race:
</label>
{{matchData.cpts.length}}
</p>
<p
class=
"ppl"
v-if=
"matchData.type=='1'"
>
<label>
<svg
style=
"position: relative;top: 2px;"
t=
"1711708779620"
class=
"icon"
viewBox=
"0 0 1024 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"7920"
width=
"20"
height=
"20"
><path
d=
"M398.652952 165.692952c-32.280381-46.006857-58.172952-61.318095-92.867047-54.808381-14.969905 2.80381-24.210286 7.850667-41.20381 22.528l-12.946285 11.361524-25.185524 20.894476-6.582857 5.753905c-3.705905 3.413333-6.38781 6.217143-9.825524 10.118095-64 72.46019-81.724952 185.782857-44.470857 292.327619 26.794667 76.55619 74.605714 152.624762 142.774857 228.644572 72.289524 80.62781 133.046857 131.364571 202.922666 168.374857 54.857143 29.013333 96.865524 41.74019 145.676191 43.227429 59.001905 1.828571 110.957714-11.50781 153.648762-39.15581a162.133333 162.133333 0 0 0 19.553524-15.189333l8.289523-7.558095 16.335239-15.213715 5.534476-4.924952 10.922666-9.435429c22.040381-19.651048 29.184-31.939048 30.646858-51.370666 2.194286-29.647238-11.215238-52.736-49.737143-85.699048l-26.063238-21.820952-12.117334-10.581334-11.459047-9.825524c-37.229714-30.744381-64.804571-40.69181-100.205715-35.35238-24.283429 3.632762-38.278095 12.141714-63.073523 38.107428l-10.947048 11.654095c-18.041905 19.017143-28.330667 26.258286-43.544381 29.305905-22.25981 4.461714-44.373333-7.046095-80.262095-36.205714-46.250667-37.546667-84.626286-80.676571-117.613715-131.949714-22.869333-35.766857-31.890286-62.902857-24.941714-87.600762 2.82819-9.99619 9.679238-17.042286 24.064-28.184381l14.994286-11.312762 2.413714-1.877334 22.747429-18.553904c20.114286-16.822857 28.281905-28.281905 32.572952-45.836191 8.899048-36.10819 0.487619-66.072381-32.426667-117.638095l-15.62819-24.234667-5.558857-8.533333-6.436572-9.435429z"
p-id=
"7921"
fill=
"#d3d8d9"
></path></svg>
Phone:
</label>
{{matchData.contactTelno}}
</p>
<div
style=
"height: 30px"
></div>
<div
class=
"ppl_pb"
>
<el-link
class=
"mr20"
v-if=
"matchData.signKnowUrl"
type=
"primary"
:href=
"fillImgUrl(JSON.parse(matchData.signKnowUrl)[0]?.url)"
target=
"_blank"
>
<el-icon
:size=
"20"
>
<Download
/>
...
...
@@ -66,7 +80,7 @@
</van-count-down>
<div
class=
"flexCenter"
>
<el-button
v-if=
"matchData.progressStatusCode=='2'"
ref=
"RegisterRef"
type=
"primary"
round
size=
"large"
class=
"btn-lineG mb20 mt3
0 w100"
<el-button
v-if=
"matchData.progressStatusCode=='2'"
ref=
"RegisterRef"
type=
"primary"
round
class=
"btn-lineG mb20 mt2
0 w100"
@
click=
"choseSignType"
style=
"font-size: 16px"
>
Register
</el-button>
<div
v-else-if=
"time<=0"
style=
"opacity: 0.5;"
class=
"btn-lineG mb20 mauto text-center"
>
Registration has ended
</div>
...
...
@@ -485,13 +499,13 @@ function checkIsSign() {
}
.ppl
{
color
:
#29343C
;
color
:
#29343C
;
margin
:
10px
0
0
;
label
{
color
:
#929AA0
;
}
}
.ppl_pb
{
position
:
absolute
;
bottom
:
0
;}
.bm1
{
background
:
url("@/assets/dance/bm1.png")
no-repeat
left
;
background-size
:
contain
;
...
...
@@ -742,7 +756,7 @@ function checkIsSign() {
.colon
{
display
:
inline-block
;
font-size
:
1
6
px
;
font-size
:
1
4
px
;
margin
:
0
6px
;
color
:
#7B7F83
;
}
...
...
@@ -1005,6 +1019,12 @@ function checkIsSign() {
white-space
:
nowrap
}
@media
(
max-width
:
1650px
){
.ppl
{
color
:
#29343C
;
margin
:
5px
0
0
;
}
}
@media
(
max-width
:
800px
)
{
.van-count-down
{
.block
{
...
...
src/viewsPc/match/index.vue
View file @
f232b4f
...
...
@@ -10,8 +10,8 @@
<label>
{{
language
==
0
?
'类型'
:
'Type'
}}
:
</label>
<el-radio-group
v-model=
"query.type"
@
change=
"getList"
>
<el-radio-button
value=
"-1"
>
{{
language
==
0
?
'全部'
:
'All'
}}
</el-radio-button>
<el-radio-button
value=
"0"
>
{{
language
==
0
?
'
联赛'
:
'Leagu
e'
}}
</el-radio-button>
<el-radio-button
value=
"1"
>
{{
language
==
0
?
'
独立赛'
:
'Station rac
e'
}}
</el-radio-button>
<el-radio-button
value=
"0"
>
{{
language
==
0
?
'
独立赛'
:
'Station rac
e'
}}
</el-radio-button>
<el-radio-button
value=
"1"
>
{{
language
==
0
?
'
联赛'
:
'Leagu
e'
}}
</el-radio-button>
</el-radio-group>
</li>
<li>
...
...
@@ -21,9 +21,9 @@
@
change=
"getList"
>
<el-radio-button
value=
"-1"
>
{{
language
==
0
?
'全部'
:
'All'
}}
</el-radio-button>
<el-radio-button
value=
"2"
>
{{
language
==
0
?
'报名中'
:
'Registration in progress'
}}
</el-radio-button>
<el-radio-button
value=
"2"
>
{{
language
==
0
?
'报名中'
:
'Registering now'
}}
</el-radio-button>
<el-radio-button
value=
"3"
>
{{
language
==
0
?
'赛事即将开始'
:
'Begin in a minute'
}}
</el-radio-button>
<el-radio-button
value=
"4"
>
{{
language
==
0
?
'赛事进行中'
:
'In progress'
}}
</el-radio-button>
<el-radio-button
value=
"3"
>
{{
language
==
0
?
'即将开始'
:
'Begin in a minute'
}}
</el-radio-button>
<el-radio-button
value=
"5"
>
{{
language
==
0
?
'已结束'
:
'Ended'
}}
</el-radio-button>
</el-radio-group>
</li>
...
...
@@ -59,13 +59,14 @@
<div
class=
"matchItem"
v-for=
"n in list"
:key=
"n.id"
@
click=
"goDetail(n.id)"
>
<el-row
:gutter=
"15"
>
<el-col
:lg=
"7"
:md=
"24"
:xl=
"6"
>
<img
class=
"mauto w100 coverLimitHeight"
:src=
"fillImgUrl(n.coverUrl)"
>
<img
class=
"mauto
m
w100 coverLimitHeight"
:src=
"fillImgUrl(n.coverUrl)"
>
</el-col>
<el-col
:lg=
"9"
:md=
"12"
:xl=
"12"
>
<div
class=
"info"
>
<h3>
{{ n.name }}
</h3>
<p
class=
"ppl"
><label>
{{language==0?'赛事级别':'Level'}}:
</label>
{{n.level}}
</p>
<p
class=
"ppl"
><label>
{{ language==0?'比赛时间':'Playing Time' }}:
</label>
{{n.beginTime?.slice(0,10)}} ~ {{ n.endTime?.slice(0,10) }}
</p>
<p
class=
"ppl"
v-if=
"n.address"
><label>
{{ language==0?'地
    
点':'Location' }}:
</label>
{{ n.address }}
</p
>
<!-- <p class="ppl" v-if="n.address"><label>{{ language==0?'地    点':'Location' }}:</label>{{ n.address }}</p>--
>
<p
class=
"ppl"
><label>
{{ language==0?'报名截止':'Registration Deadline' }}:
</label>
{{ n.signEndTime?.slice(0,10) }}
</p>
<p
class=
"ppl"
v-if=
"n.contactPerson"
><label>
{{ language==0?'联系人员':'Contact Person' }}:
</label>
{{ n.contactPerson }}
</p>
...
...
@@ -269,7 +270,8 @@ function goDetail(id) {
width
:
100%
;
left
:
0
;
}
.info
.ppl
{
margin
:
5px
0
;}
.info
h3
{
margin
:
0
0
15px
}
.info
.ppl
{
margin
:
14px
0
;}
.ppl
{
color
:
#29343C
;
label{
color
:
#929AA0
;}
}
...
...
@@ -280,7 +282,7 @@ function goDetail(id) {
.colon
{
display
:
inline-block
;
font-size
:
1
6
px
;
font-size
:
1
4
px
;
margin
:
0
8px
;
color
:
#7B7F83
;
}
...
...
@@ -340,5 +342,6 @@ function goDetail(id) {
.el-button--primary
:hover
{
background
:
var
(
--el-color-primary
)
}
.coverLimitHeight
{
max-height
:
165px
;
object-fit
:
cover
;}
.coverLimitHeight
{
max-height
:
160px
;
object-fit
:
cover
;}
.mw100
{
max-width
:
100%
;}
</
style
>
...
...
src/viewsPc/match/pay.vue
View file @
f232b4f
...
...
@@ -15,13 +15,13 @@
</div>
<div>
<el-table
class=
"mt20"
:data=
"myMemberTable"
border
>
<el-table-column
type=
"index"
:label=
"language==
0?'Index':'序号
'"
width=
"70"
align=
"center"
/>
<el-table-column
:label=
"language==
0?'姓氏':'surname
'"
prop=
"xing"
min-width=
"100"
/>
<el-table-column
:label=
"language==
0
?'名':'name'"
prop=
"ming"
min-width=
"100"
/>
<el-table-column
:label=
"language==
0
?'Passport number':'护照号'"
prop=
"idcCode"
min-width=
"120"
/>
<el-table-column
:label=
"language==
0
?'Birthday':'生日'"
prop=
"birth"
/>
<el-table-column
:label=
"language==
0
?'Sex':'性别'"
prop=
"sexStr"
/>
<el-table-column
:label=
"language==
0
?'Role':'角色'"
min-width=
"160"
>
<el-table-column
type=
"index"
:label=
"language==
'0'?'序号':'Index
'"
width=
"70"
align=
"center"
/>
<el-table-column
:label=
"language==
'1'?'surname':'姓氏
'"
prop=
"xing"
min-width=
"100"
/>
<el-table-column
:label=
"language==
'0'
?'名':'name'"
prop=
"ming"
min-width=
"100"
/>
<el-table-column
:label=
"language==
'1'
?'Passport number':'护照号'"
prop=
"idcCode"
min-width=
"120"
/>
<el-table-column
:label=
"language==
'1'
?'Birthday':'生日'"
prop=
"birth"
/>
<el-table-column
:label=
"language==
'1'
?'Sex':'性别'"
prop=
"sexStr"
/>
<el-table-column
:label=
"language==
'1'
?'Role':'角色'"
min-width=
"160"
>
<template
#
default=
"scope"
>
<div
class=
"roletd"
>
<span
v-for=
"item in scope.row.label?.split(',')"
:key=
"item.id"
class=
"text-primary"
>
...
...
@@ -119,10 +119,11 @@
<div
class=
"leftboderTT"
>
{{ language==0?'选择支付方式':'Choose payment method' }}
</div>
<div
class=
"mt20"
>
<el-radio-group
v-model=
"payType"
@
change=
"changePaytype"
>
<!-- 0 线下 1 支付宝 2 微信 3 paypal-->
<!-- <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"
v-if=
"form.payTypeArr.indexOf('
1
')>-1"
border
>
<el-radio
label=
"2"
v-if=
"form.payTypeArr.indexOf('
0
')>-1"
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
...
...
src/viewsPc/match/teamSign.vue
View file @
f232b4f
...
...
@@ -241,7 +241,7 @@ function submitForm() {
if
(
valid
)
{
console
.
log
(
form
.
value
)
for
(
const
n
of
participantsInfoArr
.
value
)
{
if
(
n
.
status
==
0
&&
(
!
n
.
value
&&
(
!
n
.
fixWxFile
||
!
n
.
fixWxFile
.
length
==
0
)))
{
if
(
n
.
status
==
0
&&
(
!
n
.
value
&&
(
!
n
.
fixWxFile
||
n
.
fixWxFile
.
length
==
0
)))
{
ElMessage
.
error
(
language
.
value
==
0
?
`请完善
${
n
.
name
}
信息`
:
`Please complete
${
n
.
name
}
information`
)
return
}
...
...
src/viewsPc/register/personal.vue
View file @
f232b4f
...
...
@@ -50,6 +50,13 @@
{{ language == 0 ? '补充信息' : 'Supplementary Information' }}
</div>
<div
class=
"h20"
></div>
<el-form-item
prop=
"picUrl"
:label=
"language==0?'个人照片':'photo'"
required
>
<ImageUpload2
v-model=
"wdsfData.picUrl"
:crop-height=
"280"
:crop-width=
"200"
class=
"threeFour"
:limit=
"1"
:is-show-tip=
"false"
/>
</el-form-item>
<el-form-item
:label=
"language==0?'性别':'Sex'"
required
>
<el-radio-group
v-model=
"wdsfData.sex"
>
<el-radio
value=
"0"
>
{{ language == 0 ? '女' : 'female' }}
</el-radio>
...
...
@@ -67,7 +74,7 @@
<el-form-item
label=
"Passport number"
required
>
<el-input
v-model=
"wdsfData.passportNumber"
/>
</el-form-item>
<el-form-item
label=
"Passport File"
>
<el-form-item
label=
"Passport File"
required
>
<file-upload
v-model=
"wdsfData.passportUrl"
:limit=
"1"
:is-show-tip=
"false"
:button-text=
"'Upload'"
/>
</el-form-item>
...
...
@@ -234,6 +241,9 @@ function codeSuccess(msg) {
if
(
isCodeTrue
.
value
==
1
)
{
checkWdsf
({
card
:
form
.
value
.
card
}).
then
(
res
=>
{
wdsfData
.
value
=
res
.
data
if
(
wdsfData
.
value
.
passportUrl
){
}
if
(
!
wdsfData
.
value
.
sex
)
{
wdsfData
.
value
.
sex
=
'0'
}
...
...
@@ -253,6 +263,8 @@ function codeSuccess(msg) {
counting
.
value
=
true
getCaptchaSms
({
account
:
wdsfData
.
value
.
email
}).
then
(
res
=>
{
}).
catch
(
err
=>
{
isCodeTrue
.
value
=
1
})
}
...
...
@@ -285,10 +297,15 @@ function next() {
ElMessage
.
error
(
'Please fill in your birthday'
)
return
}
if
(
!
wdsfData
.
value
.
passportUrl
)
{
ElMessage
.
error
(
'Please upload your passport file'
)
return
}
if
(
wdsfData
.
value
.
personFlag
==
'0'
)
{
let
obj
=
{
card
:
form
.
value
.
card
,
account
:
wdsfData
.
value
.
email
,
picUrl
:
wdsfData
.
value
.
picUrl
,
code
:
form
.
value
.
code
,
password
:
form
.
value
.
password
,
sex
:
wdsfData
.
value
.
sex
,
...
...
@@ -296,7 +313,7 @@ function next() {
passportNumber
:
wdsfData
.
value
.
passportNumber
,
}
if
(
Array
.
isArray
(
wdsfData
.
value
.
passportUrl
)){
obj
.
passportUrl
=
form
.
value
.
passportUrl
[
0
].
url
obj
.
passportUrl
=
wdsfData
.
value
.
passportUrl
[
0
].
url
}
else
{
obj
.
passportUrl
=
wdsfData
.
value
.
passportUrl
||
''
}
...
...
@@ -321,7 +338,7 @@ function next() {
password
:
form
.
value
.
password
,
}
if
(
Array
.
isArray
(
wdsfData
.
value
.
passportUrl
)){
obj
.
passportUrl
=
form
.
value
.
passportUrl
[
0
].
url
obj
.
passportUrl
=
wdsfData
.
value
.
passportUrl
[
0
].
url
}
else
{
obj
.
passportUrl
=
wdsfData
.
value
.
passportUrl
}
...
...
@@ -337,7 +354,7 @@ function next() {
function
afterR
()
{
if
(
matchId
.
value
!=
'0'
)
{
router
.
push
({
name
:
'
chooseProject
'
,
name
:
'
matchDetail
'
,
params
:
{
id
:
matchId
.
value
},
...
...
@@ -349,7 +366,7 @@ function afterR() {
})
}
else
{
router
.
push
({
name
:
'match
Detail
'
,
name
:
'match
List
'
,
params
:
{
id
:
0
}
...
...
src/viewsPc/saiC/index.vue
View file @
f232b4f
...
...
@@ -53,12 +53,12 @@
<table
class=
"table table-striped"
>
<thead>
<tr
class=
"bg-lineg"
>
<td>
{{ language==0?'
编号
':'RANK' }}
</td>
<td>
{{ language==0?'
团体名称
':'COUPLE' }}
</td>
<td>
{{ language==0?'国家':'COUNTRY' }}
</td>
<td
class=
"text-center"
>
START #
</td>
<td
class=
"text-center"
v-if=
"index>0"
>
BASE
</td>
<td
class=
"text-center"
v-if=
"index>0"
>
POINTS
</td>
<td>
{{ language==0?'
名次
':'RANK' }}
</td>
<td>
{{ language==0?'
组合
':'COUPLE' }}
</td>
<td
width=
"100"
>
{{ language==0?'国家':'COUNTRY' }}
</td>
<td
width=
"120"
class=
"text-center"
>
START #
</td>
<td
width=
"120"
class=
"text-center"
v-if=
"index>0"
>
BASE
</td>
<td
width=
"120"
class=
"text-center"
v-if=
"index>0"
>
POINTS
</td>
</tr>
</thead>
<tbody>
...
...
vite.config.js
View file @
f232b4f
...
...
@@ -82,8 +82,8 @@ export default defineConfig(({ mode, command }) => {
rewrite
:
(
p
)
=>
p
.
replace
(
/^
\/
dev-api
\/
ztx-webSite/
,
''
)
},
'/dev-api'
:
{
target
:
'http://192.168.1.96:9
083/'
,
//
target: 'https://dance.itechtop.cn/stage-api',
// target: 'http://192.168.1.131:8
083/',
target
:
'https://dance.itechtop.cn/stage-api'
,
changeOrigin
:
true
,
rewrite
:
(
p
)
=>
p
.
replace
(
/^
\/
dev-api/
,
''
)
}
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment