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
1c9d32e9
authored
2026-07-09 16:42:29 +0800
by
zhangmeng
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
成绩查询
1 parent
f53d9b64
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
329 additions
and
58 deletions
src/viewsPc/components/performance.vue
src/viewsPc/home.vue
src/viewsPc/index.vue
src/viewsPc/index_en.vue
src/viewsPc/components/performance.vue
0 → 100644
View file @
1c9d32e
<
template
>
<el-dialog
v-model=
"show"
:close-on-click-modal=
"false"
:title=
"language==0?'成绩查询':'RESULT QUERY'"
align-center
append-to-body
center
class=
"pcloginpop"
close-icon=
"CircleClose"
destroy-on-close
style=
"min-width:350px;max-width: 500px"
>
<div
v-loading=
"loading"
style=
"min-height: 500px;height: 50vh;"
>
<div>
<div
class=
"flex mt30"
>
<el-input
v-model=
"query"
:placeholder=
"language==0?'输入项目编号查询':'Enter project name or code to Query'"
clearable
@
blur=
"search"
@
empty=
"search"
@
enter=
"search"
/>
<el-button
class=
"btn-lineG"
style=
"color: #fff"
@
click=
"search"
>
{{
language
==
0
?
'查询'
:
'Search'
}}
</el-button>
</div>
<div
v-if=
"list.length>0"
class=
"mt30 rollY"
>
<div
v-for=
"val in list"
:key=
"val.id"
>
<el-image
v-for=
"obj in val.resultUrl"
:key=
"obj"
:src=
"fillImgUrl(obj)"
:preview-teleported=
"true"
:preview-src-list=
"[fillImgUrl(obj)]"
class=
"resultUrlImag"
/>
</div>
</div>
<div
v-else
>
<el-empty
/>
</div>
</div>
</div>
<div
v-if=
"list.length>0"
class=
"text-center"
>
{{
language
==
0
?
'下滑查看更多'
:
'Scroll down to view more'
}}
</div>
</el-dialog>
</
template
>
<
script
setup
>
import
{
ref
}
from
'vue'
import
{
ElMessage
}
from
'element-plus'
import
{
getqySchedule
}
from
'@/apiPc/common'
import
{
useStorage
}
from
'@vueuse/core/index'
import
{
fillImgUrl
}
from
'/@/utils/ruoyi'
const
language
=
useStorage
(
'language'
,
0
)
const
show
=
ref
(
false
)
const
list
=
ref
([])
const
loading
=
ref
(
false
)
const
groupList
=
ref
([])
const
teamlist
=
ref
([])
const
query
=
ref
(
''
)
const
type
=
ref
(
''
)
const
cptId
=
ref
()
const
search
=
()
=>
{
if
(
!
query
.
value
)
{
ElMessage
.
warning
(
language
.
value
==
0
?
'请输入项目编号'
:
'Please enter the project number'
)
return
}
getqySchedule
({
projectName
:
query
.
value
,
cptId
:
cptId
.
value
}).
then
(
res
=>
{
if
(
!
res
.
data
||
res
.
data
.
length
==
0
)
{
list
.
value
=
[]
// 提示 '未找到结果,请重新查询'
ElMessage
.
warning
(
language
.
value
==
0
?
'未找到结果,请重新查询'
:
'No result'
)
return
}
list
.
value
=
res
.
data
for
(
const
val
of
list
.
value
)
{
if
(
val
.
resultUrl
)
val
.
resultUrl
=
val
.
resultUrl
.
split
(
','
)
}
}).
catch
(
e
=>
{
loading
.
value
=
false
})
}
const
open
=
(
param
)
=>
{
cptId
.
value
=
param
.
cptId
show
.
value
=
true
list
.
value
=
[]
teamlist
.
value
=
[]
groupList
.
value
=
[]
query
.
value
=
''
type
.
value
=
''
loading
.
value
=
false
// search()
}
defineExpose
({
open
})
</
script
>
<
style
lang=
"scss"
scoped
>
.tname
{
font-size
:
14px
;
font-weight
:
bold
;
position
:
relative
;
top
:
-8px
}
.tip
{
font-size
:
12px
;
margin
:
4px
0
0
;
display
:
inline-block
;
}
.rItem
{
max-height
:
130px
;
cursor
:
pointer
;
border
:
1px
solid
#e1e1e1
;
border-radius
:
4px
;
max-width
:
350px
;
text-align
:
center
;
line-height
:
130px
;
padding
:
1px
;
font-size
:
30px
;
color
:
#fff
;
margin
:
20px
auto
;
background
:
linear-gradient
(
90deg
,
#8623FC
,
#453DEA
);
&:hover
{
background
:
linear-gradient
(
90deg
,
#453DEA
,
#8623FC
);
box-shadow
:
0
4px
10px
#453DEA
;
border
:
none
;
}
}
.nowteamItem
{
width
:
100%
;
border
:
1px
solid
#c8c5ff
;
margin-top
:
20px
;
position
:
relative
;
border-radius
:
4px
;
padding
:
0
0
20px
;
background
:
#FFFFFF
;
box-sizing
:
border-box
;
.info
{
.nowName
{
font-family
:
"DIN Alternate"
;
font-size
:
60px
;
font-weight
:
bold
;
overflow
:
hidden
;
display
:
block
;
margin
:
10px
;
}
label
{
text-align
:
right
;
font-size
:
14px
;
padding-left
:
7%
}
div
{
font-size
:
14px
;
color
:
#333
;
margin
:
6px
0
0
;
}
}
}
.temell
{
.nowteamItem
{
padding
:
10px
;
margin
:
0
0
10px
;
.nowName
{
font-size
:
15px
;
font-weight
:
bold
;
margin-right
:
10px
}
.text-bold
{
font-weight
:
bold
;
}
.fontsize14
{
font-size
:
14px
;
}
}
}
.groupList
{
max-height
:
70vh
;
overflow
:
auto
;
border
:
1px
solid
#e1e1e1
;
margin-top
:
10px
;
li
{
padding
:
10px
;
border-bottom
:
1px
solid
#e1e1e1
;
cursor
:
pointer
;
}
}
.searchBox
{
height
:
50vh
;
//
overflow-y
:
auto
;
}
.rollY
{
height
:
45vh
;
overflow-y
:
auto
;
}
.resultUrlImag
{
width
:
100%
;
margin-bottom
:
10px
;
}
</
style
>
src/viewsPc/home.vue
View file @
1c9d32e
...
...
@@ -2,9 +2,12 @@
<div>
<index-Ch
v-if=
"language ==0"
@
backNumber=
"openBackNumber"
@
pickup=
"openPickup"
@
pop=
"openMaster"
@
schSearch=
"openSchSearch"
@
reserveSearch=
"bookingSearchOpen"
@
schSearch=
"openSchSearch"
@
reserveSearch=
"bookingSearchOpen"
@
performance=
"openPerformance"
/>
<index-En
v-else
@
backNumber=
"openBackNumber"
@
pickup=
"openPickup"
@
pop=
"openMaster"
@
reserveSearch=
"bookingSearchOpen"
@
schSearch=
"openSchSearch"
@
performance=
"openPerformance"
/>
<index-En
v-else
@
backNumber=
"openBackNumber"
@
pickup=
"openPickup"
@
pop=
"openMaster"
@
reserveSearch=
"bookingSearchOpen"
@
schSearch=
"openSchSearch"
/>
<div
v-if=
"showgg"
class=
"fixed_gg"
>
<!--天气-->
<el-icon
class=
"cclose"
@
click
.
stop=
"showgg=false"
>
...
...
@@ -81,6 +84,8 @@
<back-number
ref=
"backNumberRef"
/>
<sch-search
ref=
"schSearchRef"
/>
<bookingSearch
ref=
"bookingSearchRef"
/>
<performance
ref=
"performanceRef"
/>
</div>
</
template
>
...
...
@@ -93,6 +98,7 @@ import DialogMasterClass from '@/viewsPc/components/masterClass'
import
PickUp
from
'@/viewsPc/components/pickup'
import
BackNumber
from
'@/viewsPc/components/querybackNumber'
import
SchSearch
from
'@/viewsPc/components/schSearch'
import
performance
from
'@/viewsPc/components/performance'
import
bookingSearch
from
'@/viewsPc/components/bookingSearch'
import
{
useStorage
}
from
'@vueuse/core/index'
import
{
ref
}
from
'vue'
...
...
@@ -154,7 +160,15 @@ const openSchSearch = (params) => {
}
proxy
.
$refs
[
'schSearchRef'
].
open
(
obj
)
}
const
bookingSearchOpen
=
(
params
)
=>
{
const
openPerformance
=
(
params
)
=>
{
const
obj
=
{
title
:
'成绩查询'
,
cptId
:
params
.
cptId
}
proxy
.
$refs
[
'performanceRef'
].
open
(
obj
)
}
const
bookingSearchOpen
=
(
params
)
=>
{
console
.
log
(
params
)
const
obj
=
{
title
:
'日程查询'
,
...
...
src/viewsPc/index.vue
View file @
1c9d32e
...
...
@@ -115,20 +115,22 @@
<div
class=
"bgbg btn-group"
>
<h1
style=
"color: #fff"
>
{{ matchData?.name }}
</h1>
<div
class=
"btn-group"
>
<a
class=
"zn-btn ml10"
target=
"_blank"
@
click=
"goGuide"
>
参赛指南
<el-icon>
<download
/>
<download
/>
</el-icon>
</a>
<a
class=
"zn-btn ml10 btn-q"
@
click=
"reserveSearch"
>
预订查询
</a>
<a
v-show=
"matchData?.id"
class=
"zn-btn ml10 btn-q "
@
click=
"backNumberSearch"
>
背号查询
</a>
<a
v-show=
"matchData?.id"
class=
"zn-btn ml10 btn-q"
@
click=
"schSearch"
>
日程查询
</a>
<a
v-show=
"matchData?.id"
class=
"zn-btn ml10 btn-q"
@
click=
"handelPerformance"
>
成绩查询
</a>
</div>
</div>
</el-col>
<el-col
:lg=
"14"
:sm=
"24"
>
<HomeQuick
:cpt-name=
"matchData?.name"
:match-id=
"matchData?.id"
/>
<HomeQuick
:cpt-name=
"matchData?.name"
:match-id=
"matchData?.id"
/>
</el-col>
</el-row>
</div>
...
...
@@ -144,7 +146,7 @@
</div>
<!--赛事日历-->
<el-card
:body-style=
"{ 'padding': '20px 20px' }"
>
<home-calendar
/>
<home-calendar/>
</el-card>
</el-col>
<el-col
:lg=
"12"
:sm=
"24"
>
...
...
@@ -155,12 +157,12 @@
<!--历史排名-->
<el-card
:body-style=
"{ 'padding': '10px 20px 18px' }"
>
<el-table
:data=
"rank"
height=
"495"
stripe
@
row-click=
"handleRowClick"
>
<el-table-column
align=
"center"
label=
"名次"
prop=
"index"
width=
"50"
/>
<el-table-column
align=
"center"
label=
"名次"
prop=
"index"
width=
"50"
/>
<el-table-column
label=
"国家"
prop=
"name"
>
<
template
#
default=
"scope"
>
<div>
<span
v-if=
"scope.row.code != 'tw'"
:class=
"`flag-icon flag-icon-$
{scope.row.code}`"
/>
<span
v-if=
"scope.row.code != 'tw'"
:class=
"`flag-icon flag-icon-$
{scope.row.code}`"/>
<span
v-else
class=
"flag-icon"
>
<img
:src=
"hkImage"
alt=
""
class=
"hkimg"
>
</span>
...
...
@@ -303,7 +305,7 @@
<el-col
v-for=
"(n, index) in livelist"
v-show=
"index > 0"
:lg=
"8"
>
<div
class=
"item"
style=
"padding: 0;margin: 20px 0 0"
@
click=
"goDetail(n)"
>
<div
class=
"imgbox"
>
<i
class=
"playIcon"
/>
<i
class=
"playIcon"
/>
<img
:src=
"fillImgUrl_webSite(n.picUrl)"
>
</div>
<div
class=
"info"
>
...
...
@@ -346,7 +348,7 @@
</div>
<div
class=
"aboutBox"
>
<div
class=
"content"
>
<div
v-html=
"aboutUsContent"
/>
<div
v-html=
"aboutUsContent"
/>
<!-- 无锡WDSF亚洲体育舞蹈节是由世界体育舞蹈(无锡)中心(世界体育舞蹈联合、亚洲体育舞蹈联合、中国体育舞蹈联合会和无锡市人民政府共建)打造面向全球的、长期落户的、城市自主的品牌赛事。-->
<!-- 2023年7月首次举办无锡2023年WDSF亚洲体育舞蹈节,包括2023年WDSF世界标准舞锦标赛、2023年WDSF世界体育舞蹈大奖赛(中国无锡)、2023年全国体育舞蹈公开系列赛(无锡站),共吸引来自全球39个国家及地区的1,716名顶级舞者参与。-->
<!-- 同时,并将世界体育舞蹈(无锡)中心成功落户中国无锡,以“节日有竞赛、竞赛节日化”为发展指导原则,“四方”共同努力服务全球舞者。 <div class="shadowbox"/>-->
...
...
@@ -403,7 +405,7 @@
<!-- && maList.invitationSw == '1' -->
<div
v-if=
"clubImage && matchData.visaSw == '1'"
style=
"padding-left: 7px;"
>
<el-image
:preview-src-list=
"[clubImage]"
:src=
"clubImage"
fit=
"cover"
preview-teleported
style=
"width: 120px"
/>
style=
"width: 120px"
/>
</div>
</div>
...
...
@@ -411,13 +413,13 @@
<!-- 群聊-->
<div
v-if=
"matchData.chatQrcode"
class=
"fixed_gg_l club"
>
<el-image
:preview-src-list=
"[fillImgUrl(matchData.chatQrcode)]"
:src=
"fillImgUrl(matchData.chatQrcode)"
fit=
"cover"
preview-teleported
style=
"width: 120px;height: 120px"
/>
fit=
"cover"
preview-teleported
style=
"width: 120px;height: 120px"
/>
</div>
<affix-invitation
ref=
"dialogInvitationRef"
/>
<affix-invitation
ref=
"dialogInvitationRef"
/>
<el-dialog
v-model=
"liveQrcodeShow"
:title=
"language == 0 ? '赛事直播' : 'Live QR Code'"
width=
"350px"
>
<div
v-if=
"matchData.liveQrcode"
style=
"display: flex;justify-content: space-between"
>
<el-image
:src=
"fillImgUrl(matchData.liveQrcode)"
fit=
"cover"
style=
"width: 350px;"
/>
<el-image
:src=
"fillImgUrl(matchData.liveQrcode)"
fit=
"cover"
style=
"width: 350px;"
/>
</div>
</el-dialog>
...
...
@@ -426,26 +428,26 @@
<
script
setup
>
import
HomeQuick
from
'@/viewsPc/components/homeQuick'
import
HomeCalendar
from
'@/viewsPc/components/homeCalendar'
import
{
ref
,
nextTick
,
onMounted
,
watch
}
from
'vue'
import
{
getCurrentInstance
}
from
'@vue/runtime-core'
import
{
getHomePage
,
getNewsListById
,
getNewsList
,
getRank
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
ref
,
nextTick
,
onMounted
,
watch
}
from
'vue'
import
{
getCurrentInstance
}
from
'@vue/runtime-core'
import
{
getHomePage
,
getNewsListById
,
getNewsList
,
getRank
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
clubImage
from
'@/assets/logo/club.png'
import
{
rankList
}
from
'@/assets/js/data'
import
{
rankList
}
from
'@/assets/js/data'
import
_
from
'lodash'
import
{
Swiper
,
SwiperSlide
}
from
'swiper/vue'
import
{
Autoplay
,
Navigation
}
from
'swiper'
import
{
Swiper
,
SwiperSlide
}
from
'swiper/vue'
import
{
Autoplay
,
Navigation
}
from
'swiper'
import
'swiper/css'
import
{
dayjs
}
from
'element-plus'
import
{
dayjs
}
from
'element-plus'
import
*
as
match
from
'@/apiPc/match'
import
{
getAboutUs
,
getppInfo
,
getZNList
}
from
'@/apiPc/match'
import
{
getAboutUs
,
getppInfo
,
getZNList
}
from
'@/apiPc/match'
import
hkImage
from
'@/assets/nationalFlag/hk.png'
import
AffixInvitation
from
'/@/viewsPc/match/components/affix-invitation.vue'
import
{
useStorage
}
from
'@vueuse/core/index'
import
{
useStorage
}
from
'@vueuse/core/index'
import
useUserStore
from
'@/store/modules/user'
import
{
fillImgUrl
}
from
'/@/utils/ruoyi'
import
{
fillImgUrl
}
from
'/@/utils/ruoyi'
const
language
=
useStorage
(
'language'
,
0
)
const
liveQrcodeShow
=
ref
(
false
)
...
...
@@ -455,17 +457,17 @@ const navigationPic = ref({
prevEl
:
'.picprev'
})
const
router
=
useRouter
()
const
{
proxy
}
=
getCurrentInstance
()
const
{
proxy
}
=
getCurrentInstance
()
const
emit
=
defineEmits
([
'pop'
,
'pickup'
,
'backNumber'
,
'schSearch'
,
'reserveSearch'
])
const
time
=
ref
(
0
)
const
etime
=
ref
(
0
)
const
personList
=
ref
([
{
name
:
'Wolfgang Eliasch'
,
pp
:
'拉丁舞裁判长 奥地利'
,
src
:
'/img/1.png'
},
{
name
:
'Nenad Jeftic'
,
pp
:
'标准舞裁判长 塞尔维亚'
,
src
:
'/img/2.png'
},
{
name
:
'Dorel Bagiu'
,
pp
:
'罗马尼亚'
,
src
:
'/img/3.png'
},
{
name
:
'Eduard Korotin'
,
pp
:
' 爱沙尼亚'
,
src
:
'/img/4.png'
},
{
name
:
'Ana Cristina Silva'
,
pp
:
'葡萄牙'
,
src
:
'/img/5.png'
},
{
name
:
'Dallas Leslie Williams'
,
pp
:
'记分长 澳大利亚'
,
src
:
'/img/6.png'
}
{
name
:
'Wolfgang Eliasch'
,
pp
:
'拉丁舞裁判长 奥地利'
,
src
:
'/img/1.png'
},
{
name
:
'Nenad Jeftic'
,
pp
:
'标准舞裁判长 塞尔维亚'
,
src
:
'/img/2.png'
},
{
name
:
'Dorel Bagiu'
,
pp
:
'罗马尼亚'
,
src
:
'/img/3.png'
},
{
name
:
'Eduard Korotin'
,
pp
:
' 爱沙尼亚'
,
src
:
'/img/4.png'
},
{
name
:
'Ana Cristina Silva'
,
pp
:
'葡萄牙'
,
src
:
'/img/5.png'
},
{
name
:
'Dallas Leslie Williams'
,
pp
:
'记分长 澳大利亚'
,
src
:
'/img/6.png'
}
])
const
activeNews
=
ref
(
0
)
const
rank
=
ref
([])
...
...
@@ -533,7 +535,7 @@ const init = () => {
).
then
(
res
=>
{
newest2
.
value
=
res
.
rows
})
match
.
getMaList
({
topFlag
:
1
}).
then
((
res
)
=>
{
match
.
getMaList
({
topFlag
:
1
}).
then
((
res
)
=>
{
maList
.
value
=
res
.
rows
console
.
log
(
333
,
maList
.
value
)
for
(
const
n
of
maList
.
value
)
{
...
...
@@ -558,7 +560,7 @@ const getpartners = () => {
match
.
getppInfo
(
'10000001'
).
then
((
res
)
=>
{
aboutUsContent
.
value
=
res
.
data
.
contextZh
})
match
.
getZNList
({
sortId
:
'2000'
,
language
:
1
}).
then
((
res
)
=>
{
match
.
getZNList
({
sortId
:
'2000'
,
language
:
1
}).
then
((
res
)
=>
{
partners
.
value
=
res
.
rows
})
}
...
...
@@ -647,6 +649,13 @@ const schSearch = () => {
}
emit
(
'schSearch'
,
params
)
}
const
handelPerformance
=
()
=>
{
const
params
=
{
cptId
:
matchData
.
value
.
id
}
emit
(
'performance'
,
params
)
}
const
handlePickup
=
()
=>
{
const
params
=
{
cptId
:
matchData
.
value
.
id
...
...
@@ -978,7 +987,8 @@ function applyInvitation() {
background
:
linear-gradient
(
0deg
,
rgba
(
255
,
255
,
255
,
1
),
rgba
(
255
,
255
,
255
,
0
));
}
.btn-lineG
{}
.btn-lineG
{
}
}
.mapBox
{
...
...
src/viewsPc/index_en.vue
View file @
1c9d32e
<
template
>
<div>
<div
class=
"banner"
>
<el-carousel
:autoplay=
"false"
:interval=
"2000"
arrow=
"hover"
class=
"forPc"
height=
"450px"
@
change=
"carouselChange"
>
<el-carousel
:autoplay=
"false"
:interval=
"2000"
arrow=
"hover"
class=
"forPc"
height=
"450px"
@
change=
"carouselChange"
>
<el-carousel-item
v-for=
"n in maList"
:key=
"n.id"
style=
"height: 450px;"
>
<div
class=
"bannerItem"
>
<div
class=
"h100"
@
click
.
stop=
"goMatch(n)"
>
...
...
@@ -42,7 +44,8 @@
</div>
<div
style=
"position: absolute;bottom:22%;right:5%;z-index: 999;display: flex;width: 580px;justify-content: space-around"
>
style=
"position: absolute;bottom:22%;right:5%;z-index: 999;display: flex;width: 580px;justify-content: space-around"
>
<a
class=
" btn2"
style=
"z-index: 999999"
@
click
.
stop=
"liveQrcodeShowBtn"
>
<!-- 赛事直播-->
Live Qrcode
...
...
@@ -96,7 +99,8 @@
</div>
<div
style=
"position: absolute;bottom:20px;z-index: 999;display: flex;width: 380px;justify-content: space-around"
>
style=
"position: absolute;bottom:20px;z-index: 999;display: flex;width: 380px;justify-content: space-around"
>
<a
class=
" btn2-phone"
style=
"z-index: 999999"
@
click
.
stop=
"liveQrcodeShowBtn"
>
Live Qrcode
...
...
@@ -134,11 +138,10 @@
<Edit />
</el-icon>
</a> -->
<br/>
<a
class=
"zn-btn btn-q"
@
click=
"backNumberSearch"
>
Competition
Number
</a>
<a
class=
"zn-btn btn-q"
@
click=
"schSearchSearch"
>
Schedule
Inquiry
</a>
<br>
<a
class=
"zn-btn btn-q"
@
click=
"backNumberSearch"
>
Competition Number
</a>
<a
class=
"zn-btn btn-q"
@
click=
"schSearchSearch"
>
Schedule Inquiry
</a>
<a
class=
"zn-btn btn-q"
@
click=
"performanceSearch"
>
RESULT QUERY
</a>
</div>
...
...
@@ -299,8 +302,10 @@
<el-col
:lg=
"16"
>
<div
class=
"swiperPic forPx"
>
<swiper
:autoplay=
"true"
:loop=
"true"
:modules=
"modules"
:navigation=
"navigationPic"
:slides-per-view=
"3"
:space-between=
"20"
class=
"swiper-wrapper"
>
<swiper
:autoplay=
"true"
:loop=
"true"
:modules=
"modules"
:navigation=
"navigationPic"
:slides-per-view=
"3"
:space-between=
"20"
class=
"swiper-wrapper"
>
<swiper-slide
v-for=
"(n, i) in picList"
:key=
"i"
>
<div
class=
"picbox"
@
click=
"goNewsDetail(n)"
>
<img
:src=
"fillImgUrl_webSite(n.picUrl)"
>
...
...
@@ -341,7 +346,10 @@
<h3
class=
"leftboderTT"
>
INTRODUCTION OF ADJUDICATORS
</h3>
</div>
<el-row
:gutter=
"20"
>
<el-col
v-for=
"n in personList"
:key=
"n.name"
:lg=
"4"
:sm=
"8"
:xl=
"4"
:xs=
"12"
>
<el-col
v-for=
"n in personList"
:key=
"n.name"
:lg=
"4"
:sm=
"8"
:xl=
"4"
:xs=
"12"
>
<div
class=
"teacher"
>
<div
class=
"imgbox"
><img
:src=
"n.src"
></div>
<h3
class=
"esp"
>
{{ n.name }}
</h3>
...
...
@@ -411,24 +419,30 @@
<!-- 邀请函-->
<div
class=
"fixed_gg_l yaoQing"
>
<img
src=
"@/assets/logo/Invitation_e.png"
@
click=
"applyInvitation"
v-if=
"matchData.invitationSw == '1'
"
>
<img
v-if=
"matchData.invitationSw == '1'"
src=
"@/assets/logo/Invitation_e.png"
@
click=
"applyInvitation
"
>
<div
style=
"padding-left: 7px;"
>
<el-image
v-if=
"clubImage && matchData.visaSw == '1'"
:preview-src-list=
"[clubImage]"
:src=
"clubImage"
fit=
"cover"
preview-teleported
style=
"width: 124px"
/>
<el-image
v-if=
"clubImage && matchData.visaSw == '1'"
:preview-src-list=
"[clubImage]"
:src=
"clubImage"
fit=
"cover"
preview-teleported
style=
"width: 124px"
/>
</div>
</div>
<!-- 群聊-->
<div
v-if=
"matchData.chatQrcode"
class=
"fixed_gg_l club"
>
<el-image
:preview-src-list=
"[fillImgUrl(matchData.chatQrcode)]"
:src=
"fillImgUrl(matchData.chatQrcode)"
fit=
"cover"
preview-teleported
style=
"width: 120px;height: 120px"
/>
<el-image
:preview-src-list=
"[fillImgUrl(matchData.chatQrcode)]"
:src=
"fillImgUrl(matchData.chatQrcode)"
fit=
"cover"
preview-teleported
style=
"width: 120px;height: 120px"
/>
</div>
<affix-invitation
ref=
"dialogInvitationRef"
/>
<el-dialog
v-model=
"liveQrcodeShow"
:title=
"language == 0 ? '赛事直播' : 'Live QR Code'"
width=
"350px"
>
<div
style=
"display: flex;justify-content: space-between"
>
<el-image
v-if=
"matchData.liveQrcode"
:src=
"fillImgUrl(matchData.liveQrcode)"
fit=
"cover"
style=
"max-width: 350px;"
/>
<el-image
v-if=
"matchData.liveQrcode"
:src=
"fillImgUrl(matchData.liveQrcode)"
fit=
"cover"
style=
"max-width: 350px;"
/>
</div>
</el-dialog>
...
...
@@ -464,7 +478,7 @@ const navigationPic = ref({
})
const
router
=
useRouter
()
const
{
proxy
}
=
getCurrentInstance
()
const
emit
=
defineEmits
([
'pop'
,
'backNumber'
,
'schSearch'
,
'reserveSearch'
])
const
emit
=
defineEmits
([
'pop'
,
'backNumber'
,
'schSearch'
,
'reserveSearch'
,
'performance'
])
const
time
=
ref
(
0
)
const
etime
=
ref
(
0
)
const
liveQrcodeShow
=
ref
(
false
)
...
...
@@ -503,8 +517,8 @@ const reserveSearch = () => {
var
params
=
{
cptId
:
matchData
.
value
.
id
}
emit
(
'reserveSearch'
,
params
)
;
// 向父组件发射事件+参数
}
;
emit
(
'reserveSearch'
,
params
)
// 向父组件发射事件+参数
}
function
handleRowClick
(
row
)
{
console
.
log
(
row
)
...
...
@@ -626,7 +640,6 @@ const goGuide = () => {
const
liveQrcodeShowBtn
=
()
=>
{
if
(
!
matchData
.
value
.
liveQrcode
)
{
ElMessage
.
warning
(
'There is currently no live broadcast of the event'
)
return
}
else
{
liveQrcodeShow
.
value
=
true
}
...
...
@@ -650,6 +663,15 @@ const schSearchSearch = () => {
}
emit
(
'schSearch'
,
params
)
}
const
performanceSearch
=
()
=>
{
const
params
=
{
cptId
:
matchData
.
value
.
id
}
console
.
log
(
1111
)
emit
(
'performance'
,
params
)
}
const
handlePickup
=
()
=>
{
const
params
=
{
cptId
:
matchData
.
value
.
id
...
...
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