Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
杨炀
/
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
2bcfb5f5
authored
2025-09-03 11:10:30 +0800
by
zrj
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
9.3 lpt初版内容
1 parent
b6c1d2ed
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
589 additions
and
406 deletions
src/apiPc/match.js
src/apiPc/webSite.js
src/viewsPc/about/index.vue
src/viewsPc/contest/detail.vue
src/viewsPc/contest/index.vue
src/viewsPc/contest/list.vue
src/viewsPc/index.vue
src/viewsPc/instagram/index.vue
src/viewsPc/mall/index.vue
src/viewsPc/news/detail.vue
src/viewsPc/news/index.vue
src/viewsPc/photo/detail.vue
src/viewsPc/photo/index.vue
src/apiPc/match.js
View file @
2bcfb5f
...
...
@@ -880,4 +880,19 @@ export function getZNList(params) {
})
}
export
function
getNoteList
(
params
)
{
return
request
({
url
:
`/ztx/note/list`
,
method
:
'get'
,
params
})
}
export
function
getNoteDetail
(
id
)
{
return
request
({
url
:
`/ztx/note/
${
id
}
`
,
method
:
'get'
,
})
}
...
...
src/apiPc/webSite.js
View file @
2bcfb5f
...
...
@@ -147,3 +147,49 @@ export function getWeather() {
method
:
'get'
})
}
export
function
getMain
(
id
)
{
return
request
({
url
:
`/league/competition/detail?id=
${
id
}
&`
,
method
:
'get'
})
}
export
function
getProjectMain
(
id
)
{
return
request
({
url
:
`/league/competitionProject/
${
id
}
`
,
method
:
'get'
})
}
export
function
getCompetitionList
(
query
)
{
return
request
({
url
:
`/league/competition/getCompetitionList`
,
method
:
'get'
,
params
:
query
})
}
export
function
getCompetitionProjectList
(
query
)
{
return
request
({
url
:
`/league/competitionProject/list`
,
method
:
'get'
,
params
:
query
})
}
export
function
getProjectTab
(
query
)
{
return
request
({
url
:
`/league/competitionProjectTab/list`
,
method
:
'get'
,
params
:
query
})
}
export
function
getImgList
(
query
)
{
return
request
({
url
:
`/league/competitionImage/list`
,
method
:
'get'
,
params
:
query
})
}
...
...
src/viewsPc/about/index.vue
View file @
2bcfb5f
...
...
@@ -6,7 +6,9 @@
<h3>
{{
languageLibrary
[
language
].
a
}}
</h3>
</el-col>
</el-row>
<el-row></el-row>
<el-row>
<div
class=
"content"
v-html=
"itemData.content"
/>
</el-row>
<el-row
class=
"contest-title"
style=
"text-align: center"
>
<el-col
:span=
"24"
><h3>
{{
languageLibrary
[
language
].
b
}}
</h3></el-col>
<el-col
:span=
"24"
>
...
...
@@ -45,6 +47,8 @@ import { onMounted, ref } from 'vue'
import
{
getNewsListById
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
*
as
match
from
"@/apiPc/match"
;
const
language
=
useStorage
(
'language'
,
0
)
const
languageLibrary
=
ref
([{
a
:
'关于我们'
,
...
...
@@ -87,22 +91,34 @@ const form = ref({
paymentName
:
''
,
payDeptName
:
''
,
})
const
searchParam
=
ref
({
type
:
'1'
,
text
:
''
,
})
const
itemList
=
ref
([
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
])
onMounted
(()
=>
{
const
noteId
=
ref
()
const
itemData
=
ref
({})
onMounted
(()
=>
{
getMain
()
})
const
getList
=
(
obj
)
=>
{
getNewsListById
(
obj
).
then
(
res
=>
{
newsList
.
value
=
res
.
rows
const
getMain
=
()
=>
{
match
.
getNoteList
({
sortId
:
6000
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
noteId
.
value
=
res
.
rows
[
0
].
noteId
getList
(
noteId
.
value
)
}
})
}
const
getList
=
(
id
)
=>
{
match
.
getNoteDetail
(
id
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
itemData
.
value
=
res
.
data
}
})
}
const
goDetail
=
(
id
)
=>
{
router
.
push
({
path
:
`/photo/detail/
${
id
}
`
...
...
@@ -110,6 +126,14 @@ const goDetail = (id) => {
}
</
script
>
<
style
lang=
"scss"
scoped
>
.content
{
text-align
:
justify
;
color
:
#fff
;
background
:
#1f2644
;
width
:
100%
;
}
.photo-space
{
padding
:
10px
;
}
...
...
src/viewsPc/contest/detail.vue
View file @
2bcfb5f
...
...
@@ -3,23 +3,27 @@
<div
class=
"box"
>
<el-button
class=
"back-btn"
@
click=
"goback()"
>
{{
languageLibrary
[
language
].
a
}}
</el-button>
<el-row
class=
"detail-title"
>
<el-col
:span=
"2"
><span
class=
"not-start"
>
进行中
</span></el-col>
<el-col
:span=
"2"
>
<span
v-if=
"projectMainInfo.enrollStatusStr == '未开始'"
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
o
}}
</span>
<span
v-else-if=
"projectMainInfo.enrollStatusStr == '进行中'"
style=
"background: #21C9AB;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
p
}}
</span>
<span
v-else
style=
"background: #929AA0;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
q
}}
</span>
</el-col>
<el-col
:span=
"6"
>
<div
style=
"display: flex;flex-direction: column;"
>
<span
style=
"font-size: 20px;font-weight: bold;margin-bottom: 5px"
>
LPT马来西亚巡回赛
</span>
<span>
2023-09-08~2023-09-09
</span>
<span
style=
"font-size: 20px;font-weight: bold;margin-bottom: 5px"
>
{{
projectMainInfo
.
name
}}
</span>
<span>
{{
projectMainInfo
.
startTime
+
'~'
+
projectMainInfo
.
endTime
}}
</span>
</div>
</el-col>
<el-col
style=
"border-left: 1px solid #929AA0;border-right: 1px solid #929AA0"
:span=
"4"
>
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
b
}}
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
$
1111111111111111
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
$
{{
projectMainInfo
.
serviceFee
}}
</span>
</div>
</el-col>
<el-col
:span=
"4"
>
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
c
}}
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
11111111
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
{{
projectMainInfo
.
projectFormat
}}
</span>
</div>
</el-col>
</el-row>
...
...
@@ -27,77 +31,77 @@
<el-tab-pane
:label=
"languageLibrary[language].d"
name=
"first"
>
<el-row
class=
"detail-tabs-row-sin detail-tabs-row"
>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
h
}}
</span></el-col>
<el-col
:span=
"20"
><span>
11111
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
0
].
field2
}}
</span></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-eve detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
i
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
i
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
1
].
field2
}}
</span
></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-sin detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
j
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
j
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
2
].
field2
}}
</span
></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-eve detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
k
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
k
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
3
].
field2
}}
</span
></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-sin detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
l
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
l
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
4
].
field2
}}
</span
></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-eve detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
m
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
m
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
5
].
field2
}}
</span
></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-sin detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
n
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
n
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
6
].
field2
}}
</span
></el-col>
</el-row>
<el-row
class=
"detail-tabs-row-eve detail-tabs-row"
>
<el-col><span>
{{
languageLibrary
[
language
].
v
}}
</span></el-col>
<el-col></el-col>
<el-col
:span=
"4"
><span>
{{
languageLibrary
[
language
].
v
}}
</span></el-col>
<el-col
:span=
"20"
><span>
{{
projectMainTabA
[
7
].
field2
}}
</span
></el-col>
</el-row>
</el-tab-pane>
<el-tab-pane
:label=
"languageLibrary[language].e"
name=
"second"
>
<el-table
class=
"contest-table"
:data=
"
testValue
"
:data=
"
projectMainTabOther
"
:cell-style=
"
{borderColor:'#3A405B',textAlign:'center',color:'#fff',padding: '15px 20px'}"
:header-cell-style="{fontSize:'16px',background:'#3A405B !important',borderColor:'#3A405B',textAlign:'center',color:'#929AA0',padding: '15px 20px'}"
>
<el-table-column
label=
"等级"
align=
"left"
prop=
"
a
"
/>
<el-table-column
label=
"小盲"
align=
"left"
prop=
"
b
"
/>
<el-table-column
label=
"大盲"
align=
"left"
prop=
"
c
"
/>
<el-table-column
label=
"前置"
align=
"left"
prop=
"
d
"
/>
<el-table-column
label=
"规则标识"
align=
"left"
prop=
"
e
"
/>
<el-table-column
label=
"类型"
align=
"left"
prop=
"f"
/>
<el-table-column
label=
"级别时间"
align=
"left"
prop=
"
g
"
/>
<el-table-column
label=
"等级"
align=
"left"
prop=
"
field1
"
/>
<el-table-column
label=
"小盲"
align=
"left"
prop=
"
field2
"
/>
<el-table-column
label=
"大盲"
align=
"left"
prop=
"
field3
"
/>
<el-table-column
label=
"前置"
align=
"left"
prop=
"
field4
"
/>
<el-table-column
label=
"规则标识"
align=
"left"
prop=
"
field5
"
/>
<el-table-column
label=
"类型"
align=
"left"
prop=
"f
ield6
"
/>
<el-table-column
label=
"级别时间"
align=
"left"
prop=
"
field7
"
/>
</el-table>
</el-tab-pane>
<el-tab-pane
:label=
"languageLibrary[language].f"
name=
"third"
>
<el-table
class=
"contest-table"
:data=
"
testValue
"
:data=
"
projectMainTabOther
"
:cell-style=
"
{borderColor:'#3A405B',textAlign:'center',color:'#fff',padding: '15px 20px'}"
:header-cell-style="{fontSize:'16px',background:'#3A405B !important',borderColor:'#3A405B',textAlign:'center',color:'#929AA0',padding: '15px 20px'}"
>
<el-table-column
label=
"排名"
align=
"left"
prop=
"
a
"
/>
<el-table-column
label=
"选手"
align=
"left"
prop=
"
b
"
/>
<el-table-column
label=
"奖金"
align=
"left"
prop=
"
c
"
/>
<el-table-column
label=
"排名"
align=
"left"
prop=
"
field1
"
/>
<el-table-column
label=
"选手"
align=
"left"
prop=
"
field2
"
/>
<el-table-column
label=
"奖金"
align=
"left"
prop=
"
field3
"
/>
</el-table>
</el-tab-pane>
<el-tab-pane
:label=
"languageLibrary[language].g"
name=
"fourth"
>
<el-table
class=
"contest-table"
:data=
"
testValue
"
:data=
"
projectMainTabOther
"
:cell-style=
"
{borderColor:'#3A405B',textAlign:'center',color:'#fff',padding: '15px 20px'}"
:header-cell-style="{fontSize:'16px',background:'#3A405B !important',borderColor:'#3A405B',textAlign:'center',color:'#929AA0',padding: '15px 20px'}"
>
<el-table-column
label=
"玩家姓名"
align=
"left"
prop=
"
a
"
/>
<el-table-column
label=
"轮次"
align=
"left"
prop=
"
b
"
/>
<el-table-column
label=
"筹码数量"
align=
"left"
prop=
"
c
"
/>
<el-table-column
label=
"桌号"
align=
"left"
prop=
"
d
"
/>
<el-table-column
label=
"座位号"
align=
"left"
prop=
"
e
"
/>
<el-table-column
label=
"玩家姓名"
align=
"left"
prop=
"
field1
"
/>
<el-table-column
label=
"轮次"
align=
"left"
prop=
"
field2
"
/>
<el-table-column
label=
"筹码数量"
align=
"left"
prop=
"
field3
"
/>
<el-table-column
label=
"桌号"
align=
"left"
prop=
"
field4
"
/>
<el-table-column
label=
"座位号"
align=
"left"
prop=
"
field5
"
/>
</el-table>
</el-tab-pane>
</el-tabs>
...
...
@@ -108,6 +112,7 @@
import
{
onMounted
,
onUnmounted
,
ref
,
watch
}
from
'vue'
import
{
useRoute
,
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core"
;
import
{
getProjectMain
,
getProjectTab
}
from
'@/apiPc/webSite'
const
router
=
useRouter
()
const
route
=
useRoute
()
...
...
@@ -128,6 +133,9 @@ const languageLibrary = ref([{
l
:
'剩余/总席位'
,
m
:
'开始时间'
,
n
:
'最晚参赛时间'
,
o
:
'未开始'
,
p
:
'进行中'
,
q
:
'已结束'
,
v
:
'最晚参赛等级'
,
},{
a
:
'Return'
,
...
...
@@ -144,6 +152,9 @@ const languageLibrary = ref([{
l
:
'Remaining/Total seats'
,
m
:
'Start time'
,
n
:
'Latest entry time'
,
o
:
'Not started'
,
p
:
'In progress'
,
q
:
'Completed'
,
v
:
'Latest entry level'
,
},{
a
:
'돌아가기'
,
...
...
@@ -160,6 +171,9 @@ const languageLibrary = ref([{
l
:
'잔여/전체 좌석'
,
m
:
'시작 시간'
,
n
:
'마지막 등록 시간'
,
o
:
'시작 전'
,
p
:
'진행 중'
,
q
:
'완료됨'
,
v
:
'마지막 등록 레벨'
,
},{
a
:
'戻る'
,
...
...
@@ -176,6 +190,9 @@ const languageLibrary = ref([{
l
:
'残り/総座席数'
,
m
:
'開始時刻'
,
n
:
'最終エントリー時刻'
,
o
:
'未開始'
,
p
:
'進行中'
,
q
:
'完了'
,
v
:
'最終エントリーレベル'
,
},{
a
:
'Quay lại'
,
...
...
@@ -192,72 +209,88 @@ const languageLibrary = ref([{
l
:
'Ghế còn lại/ Tổng số ghế'
,
m
:
'Thời gian bắt đầu'
,
n
:
'Thời gian đăng kí muộn nhất'
,
o
:
'Chưa bắt đầu'
,
p
:
'Đang diễn ra'
,
q
:
'Đã hoàn thành'
,
v
:
'Cấp blind cuối cùng để đăng kí'
,
}])
const
tId
=
ref
()
const
projectMainInfo
=
ref
({})
const
projectMainTabA
=
ref
([
{
field2
:
''
},
{
field2
:
''
},
{
field2
:
''
},
{
field2
:
''
},
{
field2
:
''
},
{
field2
:
''
},
{
field2
:
''
},
{
field2
:
''
},
])
const
projectMainTabOther
=
ref
([])
const
query
=
ref
({
pageNum
:
1
,
pageSize
:
9999
,
cptId
:
''
,
type
:
'1'
,
projectId
:
''
,
})
onMounted
(()
=>
{
tId
.
value
=
route
.
params
.
id
getMainInfo
()
})
const
testValue
=
ref
([{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
},{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
},{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
},{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
},{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
},{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
},{
a
:
'100'
,
b
:
'100'
,
c
:
'100'
,
d
:
'100'
,
e
:
'100'
,
f
:
'100'
,
g
:
'100'
,
}])
const
getMainInfo
=
()
=>
{
getProjectMain
(
tId
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
projectMainInfo
.
value
=
res
.
data
query
.
value
.
cptId
=
res
.
cptId
query
.
value
.
projectId
=
res
.
id
getProjectTabList
(
1
)
}
})
}
onMounted
(()
=>
{
const
getProjectTabList
=
(
n
)
=>
{
query
.
value
.
type
=
n
getProjectTab
(
query
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
if
(
res
.
rows
&&
res
.
rows
.
length
>
0
)
{
if
(
n
==
1
)
{
res
.
rows
.
forEach
((
item
,
index
)
=>
{
projectMainTabA
.
value
[
index
].
field2
=
item
.
field2
})
}
else
{
projectMainTabOther
.
value
=
res
.
rows
}
}
}
})
}
const
handleClick
=
(
n
)
=>
{
let
type
=
+
n
.
index
+
1
getProjectTabList
(
type
)
}
})
const
goback
=
function
()
{
router
.
go
(
-
1
)
...
...
src/viewsPc/contest/index.vue
View file @
2bcfb5f
...
...
@@ -7,10 +7,10 @@
</el-col>
<el-col
:lg=
"9"
>
<div
style=
"display: flex;align-items: center;height: 100%;"
>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
type=='0'}]" @click="searchByType('0
')">
{{
languageLibrary
[
language
].
a
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
type=='1'}]" @click="searchByType('1
')">
{{
languageLibrary
[
language
].
b
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
type=='2'}]" @click="searchByType('2
')">
{{
languageLibrary
[
language
].
c
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
type=='3'}]" @click="searchByType('3
')">
{{
languageLibrary
[
language
].
d
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
enrollStatus==''}]" @click="searchByType('
')">
{{
languageLibrary
[
language
].
a
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
enrollStatus=='0'}]" @click="searchByType('0
')">
{{
languageLibrary
[
language
].
b
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
enrollStatus=='1'}]" @click="searchByType('1
')">
{{
languageLibrary
[
language
].
c
}}
</el-button>
<el-button
:class=
"['contest-title-btn',
{'btn-active': searchParam.
enrollStatus=='2'}]" @click="searchByType('2
')">
{{
languageLibrary
[
language
].
d
}}
</el-button>
</div>
</el-col>
<el-col
:lg=
"12"
>
...
...
@@ -31,7 +31,7 @@
<el-row>
<el-col
:lg=
"8"
:xs=
"24"
>
<div
class=
"imgbox"
>
<img
style=
"aspect-ratio: 16/8"
:src=
"fillImgUrl(n.
pic
Url)"
>
<img
style=
"aspect-ratio: 16/8"
:src=
"fillImgUrl(n.
cover
Url)"
>
</div>
</el-col>
<el-col
:lg=
"16"
:xs=
"24"
>
...
...
@@ -40,17 +40,19 @@
<div
class=
"centerbox"
>
<div
class=
"centerText"
>
<span
style=
"font-size: 16px;"
>
<div
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
未开始
</div>
<div
v-if=
"n.enrollStatusStr == '未开始'"
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{ languageLibrary[language].b }}
</div>
<div
v-else-if=
"n.enrollStatusStr == '进行中'"
style=
"background: #21C9AB;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{ languageLibrary[language].c }}
</div>
<div
v-else
style=
"background: #929AA0;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{ languageLibrary[language].d }}
</div>
</span>
<span
style=
"font-size: 26px"
>
Long Poker
</span>
<span
style=
"font-size: 18px"
><img
style=
"margin-right: 2%"
src=
"@/assets/v1/tag01.png"
/>
2020.1.1
</span>
<span
style=
"font-size: 18px"
><img
style=
"margin-right: 2%"
src=
"@/assets/v1/tag02.png"
/>
123sw23
</span>
<span
style=
"font-size: 26px"
>
{{ n.cptName }}
</span>
<span
style=
"font-size: 18px"
><img
style=
"margin-right: 2%"
src=
"@/assets/v1/tag01.png"
/>
{{ n.matchTimeStr }}
</span>
<span
style=
"font-size: 18px"
><img
style=
"margin-right: 2%"
src=
"@/assets/v1/tag02.png"
/>
{{ n.address }}
</span>
</div>
</div>
</el-col>
<el-col
:lg=
"6"
:xs=
"24"
>
<div
class=
"endbox"
>
<el-button
class=
"endBtn"
@
click=
"goDetail(n.
sortI
d)"
>
{{ languageLibrary[language].g }}
</el-button>
<el-button
class=
"endBtn"
@
click=
"goDetail(n.
i
d)"
>
{{ languageLibrary[language].g }}
</el-button>
</div>
</el-col>
</el-row>
...
...
@@ -63,7 +65,7 @@
<
script
setup
>
import
{
ArrowRight
,
Search
}
from
'@element-plus/icons-vue'
import
{
onMounted
,
ref
}
from
'vue'
import
{
get
NewsListById
}
from
'@/apiPc/webSite'
import
{
get
CompetitionList
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
const
language
=
useStorage
(
'language'
,
0
)
...
...
@@ -110,66 +112,27 @@ const languageLibrary = [{
}]
const
router
=
useRouter
()
const
searchParam
=
ref
({
type
:
'1'
,
text
:
''
,
pageNum
:
1
,
pageSize
:
9999
,
enrollStatus
:
''
,
})
const
newest2
=
ref
([{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000000'
,
sortName
:
'官方发布'
,
},{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐1'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000001'
,
sortName
:
'官方发布'
,
},{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐2'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000002'
,
sortName
:
'官方发布'
,
},{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐3'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000003'
,
sortName
:
'官方发布'
,
}])
const
newest2
=
ref
([])
onMounted
(()
=>
{
getList
()
})
const
searchByType
=
(
type
)
=>
{
searchParam
.
value
.
type
=
type
searchParam
.
value
.
enrollStatus
=
type
getList
()
}
const
getList
=
(
obj
)
=>
{
getNewsListById
(
obj
).
then
(
res
=>
{
newsList
.
value
=
res
.
rows
const
getList
=
()
=>
{
getCompetitionList
(
searchParam
.
value
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
newest2
.
value
=
res
.
rows
}
console
.
log
(
res
)
})
}
...
...
src/viewsPc/contest/list.vue
View file @
2bcfb5f
...
...
@@ -2,9 +2,25 @@
<div>
<div
class=
"box"
>
<el-button
class=
"back-btn"
@
click=
"goback()"
>
{{
languageLibrary
[
language
].
a
}}
</el-button>
<div
class=
"list-title"
></div>
<div
style=
"position: relative"
>
<img
class=
"list-title"
:src=
"fillImgUrl(mainInfo.coverUrl)"
>
<div
style=
"position: absolute;color: #fff;top:15%;left:5%"
>
<el-row
style=
"font-size: 16px;margin-bottom: 25px"
>
<div
v-if=
"mainInfo.enrollStatusStr == '未开始'"
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
g
}}
</div>
<div
v-else-if=
"mainInfo.enrollStatusStr == '进行中'"
style=
"background: #21C9AB;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
h
}}
</div>
<div
v-else
style=
"background: #929AA0;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
i
}}
</div>
</el-row>
<el-row
style=
"font-size: 38px;margin-bottom: 25px"
><span>
{{
mainInfo
.
name
}}
</span></el-row>
<el-row
style=
"font-size: 20px;margin-bottom: 25px"
><span>
{{
mainInfo
.
beginTime
+
'~'
+
mainInfo
.
endTime
}}
</span></el-row>
<el-row
style=
"font-size: 20px"
><span>
{{
mainInfo
.
address
}}
</span></el-row>
</div>
</div>
<el-row
style=
"margin: 20px 0"
>
<el-select
class=
"list-select"
v-model=
"searchParams.type"
>
<el-select
class=
"list-select"
v-model=
"query.type"
@
change=
"getList"
>
<el-option
v-for=
"item in optionList"
:key=
"item.value"
...
...
@@ -14,23 +30,27 @@
</el-select>
</el-row>
<el-row>
<el-col
v-for=
"item in
test
List"
:lg=
"8"
>
<el-col
v-for=
"item in
competition
List"
:lg=
"8"
>
<div
class=
"child-card"
>
<el-button
class=
"go-btn"
@
click=
"goDetail(item)"
></el-button>
<el-row
style=
"margin-bottom: 10px"
class=
"not-start"
>
未开始
</el-row>
<el-row
style=
"margin-bottom: 10px; font-weight: bold;font-size: 20px"
>
LPT马拉西亚巡回赛
</el-row>
<el-row
style=
"margin-bottom: 10px;font-size: 16px"
>
2025-11-02 9:00 ~ 2025-11-03 9:00
</el-row>
<el-button
class=
"go-btn"
@
click=
"goDetail(item.id)"
></el-button>
<el-row
style=
"margin-bottom: 10px"
>
<div
v-if=
"competitionList.enrollStatusStr == '未开始'"
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
g
}}
</div>
<div
v-else-if=
"competitionList.enrollStatusStr == '进行中'"
style=
"background: #21C9AB;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
h
}}
</div>
<div
v-else
style=
"background: #929AA0;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
i
}}
</div>
</el-row>
<el-row
style=
"margin-bottom: 10px; font-weight: bold;font-size: 20px"
>
{{
item
.
name
}}
</el-row>
<el-row
style=
"margin-bottom: 10px;font-size: 16px"
>
{{
item
.
startTime
+
'~'
+
item
.
endTime
}}
</el-row>
<el-row>
<el-col
:span=
"12"
>
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
d
}}
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
$
1111111111111111
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
$
{{
item
.
serviceFee
}}
</span>
</div>
</el-col>
<el-col
:span=
"12"
>
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
e
}}
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
1000
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
{{
item
.
projectFormat
}}
</span>
</div>
</el-col>
</el-row>
...
...
@@ -42,7 +62,7 @@
</
template
>
<
script
setup
>
import
{
onMounted
,
ref
}
from
'vue'
import
{
get
NewsListById
,
getnoteListcptid
}
from
'@/apiPc/webSite'
import
{
get
Main
,
getCompetitionProjectList
}
from
'@/apiPc/webSite'
import
{
useRoute
,
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
const
route
=
useRoute
()
...
...
@@ -54,30 +74,45 @@ const languageLibrary = ref([{
c
:
'微型赛事'
,
d
:
'总买入费用'
,
e
:
'参赛席位'
,
g
:
'未开始'
,
h
:
'进行中'
,
i
:
'已结束'
,
},{
a
:
'Return'
,
b
:
'Main event'
,
c
:
'Mini event'
,
d
:
'Total buy-in fee'
,
e
:
'Entry seats'
,
g
:
'Not started'
,
h
:
'In progress'
,
i
:
'Completed'
,
},{
a
:
'돌아가기'
,
b
:
'메인 이벤트'
,
c
:
'미니 이벤트'
,
d
:
'총 바이인 금액'
,
e
:
'엔트리 수'
,
g
:
'시작 전'
,
h
:
'진행 중'
,
i
:
'완료됨'
,
},{
a
:
'戻る'
,
b
:
'メインイベント'
,
c
:
'ミニイベント'
,
d
:
'バイイン総額'
,
e
:
'エントリー数'
,
g
:
'未開始'
,
h
:
'進行中'
,
i
:
'完了'
,
},{
a
:
'Quay lại'
,
b
:
'Giải chính'
,
c
:
'Giải phụ'
,
d
:
'Tổng phí Buy-in'
,
e
:
'Số ghế tham gia'
,
g
:
'Chưa bắt đầu'
,
h
:
'Đang diễn ra'
,
i
:
'Đã hoàn thành'
,
}])
...
...
@@ -88,21 +123,37 @@ const optionList = ref([{
label
:
languageLibrary
.
value
[
language
.
value
].
c
,
value
:
'2'
}])
const
searchParams
=
ref
({
const
tId
=
ref
()
const
query
=
ref
({
pageNum
:
1
,
pageSize
:
9999
,
cptId
:
''
,
type
:
'1'
})
const
testList
=
ref
([
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
])
const
competitionList
=
ref
([
])
onMounted
(()
=>
{
tId
.
value
=
route
.
params
.
id
getMainInfo
()
})
const
mainInfo
=
ref
({})
const
getMainInfo
=
()
=>
{
getMain
(
tId
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
mainInfo
.
value
=
res
.
data
query
.
value
.
cptId
=
mainInfo
.
value
.
id
getList
()
}
})
}
const
getList
=
()
=>
{
console
.
log
(
query
.
value
)
getNewsListById
(
query
.
value
).
then
(
res
=>
{
news
List
.
value
=
res
.
rows
total
.
value
=
res
.
total
getCompetitionProjectList
(
query
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
competition
List
.
value
=
res
.
rows
}
})
}
...
...
@@ -136,7 +187,6 @@ const goback = function () {
background
:
url("/dev-api/fs/20250729/image/8638425535731875840.png")
no-repeat
;
background-size
:
cover
;
aspect-ratio
:
16
/
3
;
padding
:
10%
;
}
.list-select
{
width
:
200px
;
...
...
src/viewsPc/index.vue
View file @
2bcfb5f
<
template
>
<div
class=
"syBg"
>
<div
class=
"banner"
>
<el-carousel
:interval=
"
10
000"
<el-carousel
:interval=
"
3
000"
arrow=
"hover"
autoplay
class=
"forPc"
height=
"450px"
@
change=
"carouselChange"
>
<el-carousel-item
v-for=
"n in maList"
:key=
"n.id"
style=
"height: 450px;"
>
<el-carousel-item
v-for=
"n in maList"
style=
"height: 450px;"
>
<div
class=
"bannerItem"
>
<div
class=
"h100"
@
click
.
stop=
"goMatch(n)"
>
<img
:src=
"fillImgUrl(n.
bgImg
Url)"
class=
"bannerImg"
>
<img
:src=
"fillImgUrl(n.
pic
Url)"
class=
"bannerImg"
>
<div
class=
"box forPc"
style=
"position: absolute;top: 0;left: 0;right: 0;margin: auto;"
>
</div>
</div>
...
...
@@ -42,9 +42,11 @@
<div
class=
"centerbox"
>
<div
class=
"centerText"
>
<span
style=
"font-size: 16px;"
>
<div
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
未开始
</div>
<div
v-if=
"n.enrollStatusStr == '未开始'"
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
g
}}
</div>
<div
v-else-if=
"n.enrollStatusStr == '进行中'"
style=
"background: #21C9AB;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
h
}}
</div>
<div
v-else
style=
"background: #929AA0;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
i
}}
</div>
</span>
<span
style=
"font-size: 26px"
>
{{
n
.
n
ame
}}
</span>
<span
style=
"font-size: 26px"
>
{{
n
.
cptN
ame
}}
</span>
<span
style=
"font-size: 18px"
><img
style=
"margin-right: 2%"
src=
"@/assets/v1/tag01.png"
/>
{{
n
.
beginTime
+
'~'
+
n
.
endTime
}}
</span>
<span
style=
"font-size: 18px"
><img
style=
"margin-right: 2%"
src=
"@/assets/v1/tag02.png"
/>
{{
n
.
address
}}
</span>
</div>
...
...
@@ -71,13 +73,12 @@
</div>
<el-row
:gutter=
"20"
>
<el-col
v-for=
"(n,index) in newest2.slice(0,6)"
:key=
"n.sortId"
:lg=
"8"
:sm=
"8"
v-for=
"(n,index) in news.slice(0,6)"
:lg=
"8"
:sm=
"8"
:xs=
"24"
style=
"margin-bottom: 10px"
>
<div
class=
"activeItem"
@
click=
"goDetail(n)"
>
<div
class=
"imgbox"
>
<img
:src=
"fillImgUrl
_webSite
(n.picUrl)"
>
<img
:src=
"fillImgUrl(n.picUrl)"
>
</div>
<div
class=
"info"
>
<!--
<div
class=
"date"
>
-->
...
...
@@ -102,13 +103,12 @@
</div>
<el-row
:gutter=
"20"
>
<el-col
v-for=
"(n,index) in newest2.slice(0,6)"
:key=
"n.sortId"
:lg=
"6"
:sm=
"6"
v-for=
"(n,index) in instagramList.slice(0,6)"
:lg=
"6"
:sm=
"6"
:xs=
"24"
style=
"margin-bottom: 10px"
>
<div
class=
"activeItem"
@
click=
"goDetail(n)"
>
<div
class=
"activeItem"
>
<div
class=
"imgbox"
>
<img
:src=
"fillImgUrl
_webSite
(n.picUrl)"
>
<img
:src=
"fillImgUrl(n.picUrl)"
>
</div>
</div>
</el-col>
...
...
@@ -125,9 +125,9 @@
<el-card
style=
"background: transparent; border: none"
>
<el-row>
<el-col
:lg=
"12"
>
<a
class=
"liveImgbox"
target=
"_blank"
@
click=
"golive
(livelist[0])"
>
<a
class=
"liveImgbox"
@
click=
"goDetail
(livelist[0])"
>
<div
class=
"imgBox"
style=
"min-height: 200px"
>
<img
:src=
"fillImgUrl('/fs/20250729/image/8638425535731875840.png'
)"
>
<img
v-if=
"livelist[0]"
style=
"aspect-ratio: 1/1"
:src=
"fillImgUrl(livelist[0].picUrl
)"
>
</div>
<h3
class=
"esp"
>
{{
livelist
[
0
]?.
name
}}
...
...
@@ -136,11 +136,11 @@
</el-col>
<el-col
:lg=
"12"
>
<el-row
class=
"news-l-r"
>
<el-col
v-for=
"(n,index) in livelist
"
v-show=
"index>0"
:lg=
"12"
>
<el-col
v-for=
"(n,index) in livelist
.slice(0,5)"
v-show=
"index>0"
:lg=
"12"
>
<div
class=
"item"
style=
"padding: 0;margin:0 0 20px"
@
click=
"goDetail(n)"
>
<div
class=
"imgbox"
>
<i
class=
"playIcon"
></i>
<img
:src=
"fillImgUrl_webSite
(n.picUrl)"
></div>
<img
v-if=
"n"
style=
"aspect-ratio: 1/1;height: auto"
:src=
"fillImgUrl
(n.picUrl)"
></div>
</div>
</el-col>
</el-row>
...
...
@@ -165,6 +165,7 @@ const router = useRouter()
const
{
proxy
}
=
getCurrentInstance
()
const
emit
=
defineEmits
([
'pop'
,
'pickup'
,
'backNumber'
,
'schSearch'
])
const
newest2
=
ref
([])
const
instagramList
=
ref
([])
const
news
=
ref
([])
const
display
=
ref
([])
const
livelist
=
ref
([])
...
...
@@ -178,6 +179,9 @@ const languageLibrary = [{
d
:
'图片集锦'
,
e
:
'赛事视频'
,
f
:
'查看详情'
,
g
:
'未开始'
,
h
:
'进行中'
,
i
:
'已结束'
,
},{
a
:
'Calendar'
,
b
:
'More'
,
...
...
@@ -185,6 +189,9 @@ const languageLibrary = [{
d
:
'Gallery'
,
e
:
'Video'
,
f
:
'View details'
,
g
:
'Not started'
,
h
:
'In progress'
,
i
:
'Completed'
,
},{
a
:
'캘린더 / 일정표'
,
b
:
'더보기'
,
...
...
@@ -192,6 +199,9 @@ const languageLibrary = [{
d
:
'사진첩'
,
e
:
'영상'
,
f
:
'자세히 보기'
,
g
:
'시작 전'
,
h
:
'진행 중'
,
i
:
'완료됨'
,
},{
a
:
'カレンダー'
,
b
:
'もっと見る'
,
...
...
@@ -199,6 +209,9 @@ const languageLibrary = [{
d
:
'ギャラリー'
,
e
:
'動画'
,
f
:
'詳細を見る'
,
g
:
'未開始'
,
h
:
'進行中'
,
i
:
'完了'
,
},{
a
:
'Lịch thi đấu'
,
b
:
'Xem thêm'
,
...
...
@@ -206,8 +219,30 @@ const languageLibrary = [{
d
:
'Thư viện hình ảnh'
,
e
:
'Video giải đấu'
,
f
:
'Xem chi tiết'
,
g
:
'Chưa bắt đầu'
,
h
:
'Đang diễn ra'
,
i
:
'Đã hoàn thành'
,
}]
const
lunboParams
=
ref
({
status
:
1
,
sortId
:
5000
,
})
const
instagramParams
=
ref
({
status
:
1
,
sortId
:
3000
,
})
const
newsParams
=
ref
({
status
:
1
,
sortId
:
1000
,
})
const
liveParams
=
ref
({
status
:
1
,
sortId
:
2000
,
})
onMounted
(()
=>
{
...
...
@@ -216,10 +251,36 @@ onMounted(() => {
const
init
=
()
=>
{
match
.
getMaList
({}).
then
((
res
)
=>
{
newest2
.
value
=
res
.
rows
.
map
(({
languageSourceStr
,
coverUrl
,
name
,
beginTime
,
endTime
,
address
})
=>
({
languageSourceStr
,
coverUrl
,
name
,
beginTime
,
endTime
,
address
}))
console
.
log
(
newest2
.
value
)
newest2
.
value
=
res
.
rows
.
map
(({
languageSourceStr
,
coverUrl
,
cptName
,
beginTime
,
endTime
,
address
,
enrollStatusStr
,
id
})
=>
({
languageSourceStr
,
coverUrl
,
cptName
,
beginTime
,
endTime
,
address
,
enrollStatusStr
,
id
}))
})
match
.
getNoteList
(
lunboParams
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
maList
.
value
=
res
.
rows
}
})
match
.
getNoteList
(
instagramParams
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
instagramList
.
value
=
res
.
rows
}
})
match
.
getNoteList
(
newsParams
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
news
.
value
=
res
.
rows
}
})
match
.
getNoteList
(
liveParams
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
livelist
.
value
=
res
.
rows
livelist
.
value
.
forEach
(
x
=>
{
x
.
attacth
=
JSON
.
parse
(
x
.
attacthJson
)
})
}
})
}
...
...
@@ -237,7 +298,7 @@ const goDetail = (n) => {
const
goContestDetail
=
(
n
)
=>
{
router
.
push
({
path
:
`/contest/list/
${
n
.
noteI
d
}
`
path
:
`/contest/list/
${
n
.
i
d
}
`
})
}
...
...
@@ -255,9 +316,10 @@ const goNews = () => {
})
}
const
goMatch
=
(
n
)
=>
{
router
.
push
({
path
:
`/match/list/
${
n
.
id
}
`
})
console
.
log
(
n
)
// router.push({
// path: `/match/list/${n.id}`
// })
}
const
goVideo
=
()
=>
{
...
...
src/viewsPc/instagram/index.vue
View file @
2bcfb5f
...
...
@@ -9,20 +9,20 @@
<el-row>
<el-col
class=
"photo-space"
:lg=
"8"
v-for=
"item in itemList"
>
<div
class=
"photo-img-group"
>
<img
class=
"photo-img"
@
click=
"goDetail(item)"
:src=
"fillImgUrl('/fs/20250729/image/8638425535731875840.png'
)"
>
<img
class=
"photo-img"
:src=
"fillImgUrl(item.picUrl
)"
>
</div>
</el-col>
</el-row>
<el-pagination
class=
"photo-pagination"
background
layout=
"pager"
:total=
"1000"
/>
</div>
</div>
</
template
>
<
script
setup
>
import
{
ArrowRight
,
Search
}
from
'@element-plus/icons-vue'
import
{
onMounted
,
ref
}
from
'vue'
import
{
getNewsListById
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
*
as
match
from
"@/apiPc/match"
;
const
language
=
useStorage
(
'language'
,
0
)
const
languageLibrary
=
[{
a
:
'Instagram'
...
...
@@ -37,26 +37,23 @@ const languageLibrary = [{
}]
const
router
=
useRouter
()
const
searchParam
=
ref
({
type
:
'1'
,
text
:
''
,
status
:
1
,
sortId
:
3000
,
})
const
itemList
=
ref
([
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
])
const
itemList
=
ref
([])
onMounted
(()
=>
{
getList
()
})
const
getList
=
(
obj
)
=>
{
getNewsListById
(
obj
).
then
(
res
=>
{
newsList
.
value
=
res
.
rows
const
getList
=
()
=>
{
match
.
getNoteList
(
searchParam
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
itemList
.
value
=
res
.
rows
}
})
}
const
goDetail
=
(
id
)
=>
{
router
.
push
({
path
:
`/photo/detail/
${
id
}
`
})
}
</
script
>
<
style
lang=
"scss"
scoped
>
.photo-pagination
{
...
...
src/viewsPc/mall/index.vue
View file @
2bcfb5f
...
...
@@ -9,8 +9,8 @@
<el-row>
<el-col
class=
"photo-space"
:lg=
"8"
v-for=
"item in itemList"
>
<div
class=
"photo-img-group"
>
<img
class=
"photo-img"
:src=
"fillImgUrl(
'/fs/20250729/image/8638425535731875840.png'
)"
>
<span
style=
"display: block;font-size: 16px;margin:5px 0;color:#fff"
>
LPT巡回赛
</span>
<img
class=
"photo-img"
:src=
"fillImgUrl(
item.picUrl
)"
>
<span
style=
"display: block;font-size: 16px;margin:5px 0;color:#fff"
>
{{
item
.
name
}}
</span>
</div>
</el-col>
</el-row>
...
...
@@ -23,6 +23,8 @@ import { onMounted, ref } from 'vue'
import
{
getNewsListById
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
*
as
match
from
"@/apiPc/match"
;
const
language
=
useStorage
(
'language'
,
0
)
const
languageLibrary
=
ref
([{
a
:
'周边商城'
,
...
...
@@ -37,18 +39,20 @@ const languageLibrary = ref([{
}])
const
router
=
useRouter
()
const
searchParam
=
ref
({
type
:
'1'
,
text
:
''
,
status
:
1
,
sortId
:
4000
,
})
const
itemList
=
ref
([
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
])
const
itemList
=
ref
([])
onMounted
(()
=>
{
getList
()
})
const
getList
=
(
obj
)
=>
{
getNewsListById
(
obj
).
then
(
res
=>
{
newsList
.
value
=
res
.
rows
const
getList
=
()
=>
{
match
.
getNoteList
(
searchParam
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
itemList
.
value
=
res
.
rows
}
})
}
...
...
src/viewsPc/news/detail.vue
View file @
2bcfb5f
...
...
@@ -2,28 +2,21 @@
<div>
<div
class=
"box"
>
<el-button
class=
"back-btn"
@
click=
"goback()"
>
{{
languageLibrary
[
language
].
a
}}
</el-button>
<el-card
v-if=
"form.isOld=='1'"
class=
"mt20 mb20"
>
<iframe
id=
"newsIframe"
:src=
"`./source$
{form.jumpUrl}`" width="100%" height="0" frameborder="none"
scrolling="no"
/>
</el-card>
<el-card
v-else
class=
"mt20 mb20 news-card"
>
<el-card
class=
"mt20 mb20 news-card"
>
<div
class=
"bpd"
>
<h3
class=
"title"
>
1312893djsaduf9812
</h3>
<h3
class=
"title"
>
{{
form
.
name
}}
</h3>
<div
class=
"nInfo"
>
<span>
发布时间:
2025-01-01
</span>
<span>
111111111111
</span
>
<span>
责任编辑:
123
</span>
<span>
发布时间:
{{
form
.
publishTime
}}
</span>
<!--
<span>
111111111111
</span>
--
>
<span>
责任编辑:
{{
form
.
createBy
}}
</span>
</div>
<el-divider
/>
<div
class=
"content"
>
dawjdiwoaekdweo102938931298djkq9u1389238912
</div>
<!--
<div
class=
"content"
v-html=
"form.content"
/>
-->
<div
class=
"content"
v-html=
"form.content"
/>
<!-- 视频-->
<div
v-if=
"hasMp4"
class=
"mt20"
>
<div
v-for=
"(f,index) in fileList"
style=
"aspect-ratio: 16/9"
>
<video-player
:key=
"index"
class=
"videoPlay mb20"
controls
:src=
"fillImgUrl
_webSite
(f.url)"
/>
<video-player
:key=
"index"
class=
"videoPlay mb20"
controls
:src=
"fillImgUrl(f.url)"
/>
</div>
</div>
<div
v-if=
"!hasMp4 && fileList.length>0"
class=
"mt20"
>
...
...
@@ -49,6 +42,7 @@ import { useRoute, useRouter } from 'vue-router'
import
{
getHottest
,
getNewest
,
getNewsById
}
from
'@/apiPc/webSite'
import
_
from
'lodash'
import
{
useStorage
}
from
"@vueuse/core"
;
import
*
as
match
from
"@/apiPc/match"
;
const
router
=
useRouter
()
const
route
=
useRoute
()
...
...
@@ -74,85 +68,24 @@ let newsId
onMounted
(()
=>
{
newsId
=
route
.
params
.
id
getData
(
newsId
)
// getNew()
window
.
addEventListener
(
'message'
,
onMessage
)
})
onUnmounted
(()
=>
{
window
.
removeEventListener
(
'message'
,
onMessage
)
})
function
onMessage
(
event
)
{
if
(
event
.
data
.
type
==
'ready'
)
{
const
iframe
=
document
.
getElementById
(
'newsIframe'
)
setIframeHeight
(
0
,
iframe
)
}
}
function
setIframeHeight
(
height
,
iframe
,
handleTimeout
)
{
// console.log(height, handleTimeout)
const
iframeDoc
=
iframe
.
contentDocument
||
iframe
.
contentWindow
.
document
if
(
height
!==
iframeDoc
.
body
.
clientHeight
)
{
height
=
iframeDoc
.
body
.
clientHeight
iframe
.
style
.
height
=
height
+
50
+
'px'
handleTimeout
=
setTimeout
(()
=>
{
setIframeHeight
(
height
,
iframe
,
handleTimeout
)
},
500
)
}
else
{
if
(
handleTimeout
)
{
clearTimeout
(
handleTimeout
)
}
}
}
watch
(()
=>
route
.
params
.
id
,
(
val
)
=>
{
if
(
val
)
{
if
(
val
==
0
){
return
}
getData
(
val
)
}
})
const
getNew
=
()
=>
{
getNewest
().
then
(
res
=>
{
newest
.
value
=
res
.
data
})
getHottest
().
then
(
res
=>
{
hottest
.
value
=
res
.
data
})
}
const
getData
=
(
newsId
)
=>
{
getNewsById
({
id
:
newsId
}
).
then
(
res
=>
{
match
.
getNoteDetail
(
newsId
).
then
(
res
=>
{
form
.
value
=
res
.
data
if
(
form
.
value
.
attacthJson
)
{
fileList
.
value
=
JSON
.
parse
(
form
.
value
.
attacthJson
)
hasMp4
.
value
=
_
.
some
(
fileList
.
value
,
(
f
)
=>
{
return
f
.
url
.
indexOf
(
'.mp4'
)
>
-
1
})
// for (var f of fileList.value) {
// if (f.url.indexOf('.mp4') > -1) {
// hasMp4.value = true
// } else {
// hasMp4.value = false
// }
// }
}
})
}
const
goDetail
=
(
n
)
=>
{
if
(
n
.
isOut
==
'1'
)
{
window
.
open
(
n
.
jumpUrl
)
}
else
{
router
.
push
({
path
:
`/news/detail/
${
n
.
noteId
}
`
})
}
}
const
goback
=
function
()
{
router
.
go
(
-
1
)
}
...
...
src/viewsPc/news/index.vue
View file @
2bcfb5f
...
...
@@ -9,7 +9,7 @@
<div
style=
"display: flex;align-items: center;height: 100%"
>
<el-input
class=
"search-input"
clearable
:placeholder=
"languageLibrary[language].c"
v-model=
"searchParam.text"
>
<template
#
append
>
<el-button
class=
"search-btn"
>
<el-button
@
click=
"getList"
class=
"search-btn"
>
<el-icon>
<Search/>
</el-icon>
...
...
@@ -20,21 +20,30 @@
</el-col>
</el-row>
<div
style=
"background: #1f2644;border-radius: 15px"
>
<div
style=
"background: #1f2644;border-radius: 15px
;box-shadow: 0 0 15px 5px rgba(0,0,0,0.36)
"
>
<div
class=
"newsLine"
v-for=
"(n,index) in newsList"
:key=
"index"
>
<div
class=
"item"
@
click=
"
goDetail(n.sort
Id)"
>
<div
class=
"item"
@
click=
"
goDetail(n.note
Id)"
>
<div
class=
"date"
>
<div
class=
"day"
>
{{ n.belongTime?.substring(8, 10) }}
</div>
<p>
{{ n.belongTime?.substring(0, 7).replace(/-/g, '/') }}
</p>
</div>
<div
class=
"item-body"
>
<h3
v-html=
"n.name"
/>
<el-row>
<el-col
:span=
"8"
>
<img
style=
"aspect-ratio: 2/1;width: 100%;padding: 10px"
:src=
"fillImgUrl(n.picUrl)"
>
</el-col>
<el-col
:span=
"16"
>
<h3
>
{{n.name}}
</h3>
<h3
>
{{n.subName}}
</h3>
</el-col>
</el-row>
</div>
<a
class=
"go"
/>
</div>
</div>
<div
style=
"display: flex;align-items: center"
>
<el-button
class=
"news-more-btn"
>
{{ languageLibrary[language].b }}
<div
class=
"arrow_towDown"
></div></el-button>
<el-button
class=
"news-more-btn"
@
click=
"getMoreInfo"
>
{{ languageLibrary[language].b }}
<div
class=
"arrow_towDown"
></div></el-button>
</div>
</div>
...
...
@@ -48,6 +57,9 @@ import { onMounted, ref } from 'vue'
import
{
getNewsListById
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
*
as
match
from
"@/apiPc/match"
;
import
{
ElMessage
}
from
"element-plus"
;
const
language
=
useStorage
(
'language'
,
0
)
const
languageLibrary
=
ref
([{
a
:
'新闻资讯'
,
...
...
@@ -72,67 +84,47 @@ const languageLibrary = ref([{
}])
const
router
=
useRouter
()
const
totalTable
=
ref
(
0
)
const
searchParam
=
ref
({
type
:
'1'
,
pageNum
:
1
,
pageSize
:
10
,
text
:
''
,
status
:
1
,
sortId
:
1000
,
})
const
newsList
=
ref
([{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000000'
,
sortName
:
'官方发布'
,
},{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐1'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000001'
,
sortName
:
'官方发布'
,
},{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐2'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000002'
,
sortName
:
'官方发布'
,
},{
attacthJson
:
''
,
belongTime
:
"2025-01-14"
,
isOut
:
'0'
,
isTop
:
'1'
,
name
:
'2025跆拳道世锦赛筹备快报,牵手巨无霸综合体,献给世界的欢乐3'
,
noteId
:
'1907041686198497281'
,
picUrl
:
'/fs/20250729/image/8638425535731875840.png'
,
publishType
:
''
,
sortId
:
'10000003'
,
sortName
:
'官方发布'
,
}])
onMounted
(()
=>
{
const
newsList
=
ref
([])
onMounted
(()
=>
{
getList
()
})
const
searchByType
=
(
type
)
=>
{
searchParam
.
value
.
type
=
type
const
getList
=
()
=>
{
searchParam
.
value
.
pageNum
=
1
searchParam
.
value
.
pageSize
=
10
match
.
getNoteList
(
searchParam
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
newsList
.
value
=
res
.
rows
totalTable
.
value
=
res
.
total
}
})
}
const
getList
=
(
obj
)
=>
{
getNewsListById
(
obj
).
then
(
res
=>
{
newsList
.
value
=
res
.
rows
const
getMoreInfo
=
()
=>
{
if
(
searchParam
.
pageNum
*
searchParam
.
pageSize
<
totalTable
.
value
)
{
searchParam
.
pageNum
+=
1
getMoreList
()
}
else
{
ElMessage
.
warning
(
"已经没有啦!"
)
}
}
const
getMoreList
=
()
=>
{
match
.
getNoteList
(
searchParam
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
newsList
.
value
.
push
(
res
.
rows
)
totalTable
.
value
=
res
.
total
}
})
}
...
...
@@ -222,13 +214,13 @@ const goDetail = (id) => {
.newsLine
{
margin
:
20px
;
.firstItem{
margin-bottom
:
10px
;}
.item
{
display
:
flex
;
position
:
relative
;
width
:
100%
;
height
:
90px
;
.item
{
display
:
flex
;
position
:
relative
;
width
:
100%
;
height
:
auto
;
align-items
:
center
;
cursor
:
pointer
;
border-bottom
:
1px
solid
#3C4259
;
.date{
width
:
60px
;
height
:
60px
;
text-align
:
center
;
background
:
#43445B
;
margin
:
0
10px
;
.day{
color
:
#CAA767
;
transform
:
scaleX
(
0.7
);
font-weight
:
bold
;
font-size
:
24px
;}
p
{
font-size
:
14px
;
margin
:
0
;
transform
:
scaleX
(
0.7
);
font-weight
:
bold
;
color
:
#7B7F83
;}
}
.item-body
{
width
:
6
0%
;
.item-body
{
width
:
10
0%
;
h3{
padding
:
0
10px
;
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
font-size
:
18px
;
color
:
#fff
;}
}
.go
{
background
:
url("@/assets/v1/about/go.png")
no-repeat
center
;
background-size
:
contain
;
...
...
@@ -236,14 +228,15 @@ const goDetail = (id) => {
filter
:
grayscale
(
1
);
}
}
.item
:hover
{
background
:
#f7f8fc
;
.item
:hover
{
background
:
#000
;
.date{
background
:
#000
;
.day{
color
:
#fff
;}
p
{
color
:
#fff
;}
}
.item-body
{
h3{
color
:
#
000
;}
h3{
color
:
#
fff
;}
}
}
}
...
...
src/viewsPc/photo/detail.vue
View file @
2bcfb5f
...
...
@@ -3,31 +3,40 @@
<div
class=
"box"
>
<el-button
class=
"back-btn"
@
click=
"goback()"
>
{{
languageLibrary
[
language
].
a
}}
</el-button>
<el-row
class=
"detail-title"
>
<el-col
:span=
"2"
><span
class=
"not-start"
>
进行中
</span></el-col>
<el-col
:span=
"2"
>
<span
v-if=
"projectMainInfo.enrollStatusStr == '未开始'"
style=
"background: #3194FA;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
g
}}
</span>
<span
v-else-if=
"projectMainInfo.enrollStatusStr == '进行中'"
style=
"background: #21C9AB;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
h
}}
</span>
<span
v-else
style=
"background: #929AA0;border-radius:6px 0 6px 0;padding: 0 4px"
>
{{
languageLibrary
[
language
].
i
}}
</span>
</el-col>
<el-col
:span=
"6"
>
<div
style=
"display: flex;flex-direction: column;"
>
<span
style=
"font-size: 20px;font-weight: bold;margin-bottom: 5px"
>
LPT马来西亚巡回赛
</span>
<span>
2023-09-08~2023-09-09
</span>
</div>
<span
style=
"font-size: 20px;font-weight: bold;margin-bottom: 5px"
>
{{
projectMainInfo
.
name
}}
</span>
<!--
<div
style=
"display: flex;flex-direction: column;"
>
-->
<!--
<span
style=
"font-size: 20px;font-weight: bold;margin-bottom: 5px"
>
{{
projectMainInfo
.
name
}}
</span>
-->
<!--
<span>
{{
projectMainInfo
.
beginTime
+
'~'
+
projectMainInfo
.
endTime
}}
</span>
-->
<!--
</div>
-->
</el-col>
<el-col
style=
"border-left: 1px solid #929AA0;border-right: 1px solid #929AA0"
:span=
"4"
>
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
b
}}
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
$1111111111111111
</span>
</div>
</el-col>
<el-col
:span=
"4"
>
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
c
}}
</span>
<span
style=
"color: #EEEEEE;font-size: 16px"
>
11111111
</span>
</div>
<el-col
:span=
"16"
>
<span>
比赛时间:
{{
projectMainInfo
.
beginTime
+
'~'
+
projectMainInfo
.
endTime
}}
</span>
</el-col>
<!--
<el-col
style=
"border-left: 1px solid #929AA0;border-right: 1px solid #929AA0"
:span=
"4"
>
-->
<!--
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
-->
<!--
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
b
}}
</span>
-->
<!--
<span
style=
"color: #EEEEEE;font-size: 16px"
>
$
{{
projectMainInfo
.
serviceFee
}}
</span>
-->
<!--
</div>
-->
<!--
</el-col>
-->
<!--
<el-col
:span=
"4"
>
-->
<!--
<div
style=
"display: flex;flex-direction: column;text-align: center"
>
-->
<!--
<span
style=
"font-size: 14px;color: #929AA0;margin-bottom: 5px"
>
{{
languageLibrary
[
language
].
c
}}
</span>
-->
<!--
<span
style=
"color: #EEEEEE;font-size: 16px"
>
{{
projectMainInfo
.
projectFormat
}}
</span>
-->
<!--
</div>
-->
<!--
</el-col>
-->
</el-row>
<el-row>
<el-col
class=
"photo-space"
:lg=
"12"
v-for=
"item in
item
List"
>
<el-col
class=
"photo-space"
:lg=
"12"
v-for=
"item in
photo
List"
>
<div
class=
"photo-img-group"
>
<img
class=
"photo-img"
:src=
"fillImgUrl(
'/fs/20250729/image/8638425535731875840.png'
)"
>
<img
class=
"photo-img"
:src=
"fillImgUrl(
item.path
)"
>
</div>
</el-col>
</el-row>
...
...
@@ -38,6 +47,7 @@
import
{
onMounted
,
onUnmounted
,
ref
,
watch
}
from
'vue'
import
{
useRoute
,
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core"
;
import
{
getMain
,
getImgList
}
from
'@/apiPc/webSite'
const
router
=
useRouter
()
const
route
=
useRoute
()
...
...
@@ -47,30 +57,65 @@ const languageLibrary = ref([{
a
:
'返回'
,
b
:
'总买入费用'
,
c
:
'参赛席位'
,
g
:
'未开始'
,
h
:
'进行中'
,
i
:
'已结束'
,
},{
a
:
'Return'
,
b
:
'Total buy-in fee'
,
c
:
'Entry seats'
,
g
:
'Not started'
,
h
:
'In progress'
,
i
:
'Completed'
,
},{
a
:
'돌아가기'
,
b
:
'총 바이인 금액'
,
c
:
'엔트리 수'
,
g
:
'시작 전'
,
h
:
'진행 중'
,
i
:
'완료됨'
,
},{
a
:
'戻る'
,
b
:
'バイイン総額'
,
c
:
'エントリー数'
,
g
:
'未開始'
,
h
:
'進行中'
,
i
:
'完了'
,
},{
a
:
'Quay lại'
,
b
:
'Tổng phí Buy-in'
,
c
:
'Số ghế tham gia'
,
g
:
'Chưa bắt đầu'
,
h
:
'Đang diễn ra'
,
i
:
'Đã hoàn thành'
,
}])
const
itemList
=
ref
([
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
])
const
tId
=
ref
()
const
projectMainInfo
=
ref
({})
const
photoList
=
ref
([])
onMounted
(()
=>
{
tId
.
value
=
route
.
params
.
id
getMainInfo
()
getPhotoList
()
})
const
getMainInfo
=
()
=>
{
getMain
(
tId
.
value
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
projectMainInfo
.
value
=
res
.
data
}
})
}
const
getPhotoList
=
()
=>
{
getImgList
({
cptId
:
tId
.
value
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
photoList
.
value
=
res
.
rows
}
})
}
const
goback
=
function
()
{
router
.
go
(
-
1
)
}
...
...
src/viewsPc/photo/index.vue
View file @
2bcfb5f
...
...
@@ -7,19 +7,27 @@
</el-col>
</el-row>
<el-row>
<el-col
class=
"photo-space"
:lg=
"8"
v-for=
"item in
item
List"
>
<el-col
class=
"photo-space"
:lg=
"8"
v-for=
"item in
match
List"
>
<div
class=
"photo-img-group"
>
<div
class=
"photo-img-layer1"
></div>
<div
class=
"photo-img-layer2"
></div>
<img
class=
"photo-img"
@
click=
"goDetail(item
)"
:src=
"fillImgUrl('/fs/20250729/image/8638425535731875840.png'
)"
>
<img
class=
"photo-img"
@
click=
"goDetail(item
.id)"
:src=
"fillImgUrl(item.coverUrl
)"
>
<div
class=
"photo-img-info"
>
<span
style=
"display: block;font-size: 16px;margin:5px 0"
>
LPT巡回赛
</span>
<span
style=
"display: block;font-size: 14px;color: #C2A165"
>
2025-01-01
</span>
<span
style=
"display: block;font-size: 16px;margin:5px 0"
>
{{
item
.
cptName
}}
</span>
<span
style=
"display: block;font-size: 14px;color: #C2A165"
>
{{
item
.
matchTimeStr
}}
</span>
</div>
</div>
</el-col>
</el-row>
<el-pagination
class=
"photo-pagination"
background
layout=
"pager"
:total=
"1000"
/>
<el-pagination
class=
"photo-pagination"
background
layout=
"pager"
:total=
"total"
v-model:current-page=
"searchParam.pageNum"
v-model:page-size=
"searchParam.pageSize"
@
current-change=
"handleCurrentChange"
/>
</div>
</div>
</
template
>
...
...
@@ -29,6 +37,7 @@ import { onMounted, ref } from 'vue'
import
{
getNewsListById
}
from
'@/apiPc/webSite'
import
{
useRouter
}
from
'vue-router'
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
*
as
match
from
"@/apiPc/match"
;
const
language
=
useStorage
(
'language'
,
0
)
const
languageLibrary
=
[{
a
:
'图片集锦'
...
...
@@ -43,21 +52,30 @@ const languageLibrary = [{
}]
const
router
=
useRouter
()
const
searchParam
=
ref
({
type
:
'1'
,
text
:
''
,
pageNum
:
1
,
pageSize
:
9
,
})
const
itemList
=
ref
([
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
,
'a'
])
const
matchList
=
ref
([])
const
total
=
ref
(
0
)
onMounted
(()
=>
{
getList
()
})
const
getList
=
(
obj
)
=>
{
getNewsListById
(
obj
).
then
(
res
=>
{
newsList
.
value
=
res
.
rows
const
getList
=
()
=>
{
match
.
getMaList
(
searchParam
.
value
).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
matchList
.
value
=
res
.
rows
total
.
value
=
res
.
total
}
})
}
const
handleCurrentChange
=
(
val
)
=>
{
searchParam
.
value
.
pageNum
=
val
getList
()
}
const
goDetail
=
(
id
)
=>
{
router
.
push
({
path
:
`/photo/detail/
${
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