763d3b45 by 杨炀

no message

1 parent 5119038f
Showing 71 changed files with 816 additions and 846 deletions
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 <meta name="renderer" content="webkit"> 7 <meta name="renderer" content="webkit">
8 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> 8 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
9 <link rel="icon" href="/favicon.ico"> 9 <link rel="icon" href="/favicon.ico">
10 <title>亚洲体育舞蹈节</title> 10 <title>世锦赛</title>
11 <!-- <script src="./browser.js"></script>--> 11 <!-- <script src="./browser.js"></script>-->
12 <!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]--> 12 <!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
13 13
......
...@@ -17,8 +17,8 @@ const { proxy } = getCurrentInstance() ...@@ -17,8 +17,8 @@ const { proxy } = getCurrentInstance()
17 const language= useStorage('language',0) 17 const language= useStorage('language',0)
18 18
19 onMounted(() => { 19 onMounted(() => {
20 document.body.style.setProperty('--el-color-primary', '#453DEA') 20 document.body.style.setProperty('--el-color-primary', '#0540EC')
21 document.body.style.setProperty('--el-color-primary-light-3', '#8623FC') 21 document.body.style.setProperty('--el-color-primary-light-3', '#1B69F8')
22 document.body.style.setProperty('--el-button-hover-bg-color', '#fff') 22 document.body.style.setProperty('--el-button-hover-bg-color', '#fff')
23 nextTick(() => { 23 nextTick(() => {
24 // 初始化主题样式 24 // 初始化主题样式
...@@ -91,7 +91,7 @@ li.el-select-dropdown__item { ...@@ -91,7 +91,7 @@ li.el-select-dropdown__item {
91 } 91 }
92 92
93 :root { 93 :root {
94 --el-color-primary: #453DEA; 94 --el-color-primary: #0557EC;
95 } 95 }
96 96
97 .el-popper .el-menu { 97 .el-popper .el-menu {
...@@ -128,7 +128,9 @@ li.el-select-dropdown__item { ...@@ -128,7 +128,9 @@ li.el-select-dropdown__item {
128 .el-popper.is-light.is-pure { 128 .el-popper.is-light.is-pure {
129 border: none; 129 border: none;
130 } 130 }
131 131 .el-menu--horizontal .el-menu-item:not(.is-disabled):focus, .el-menu--horizontal .el-menu-item:not(.is-disabled):hover{
132 background-color: transparent;
133 }
132 .el-popper { 134 .el-popper {
133 .el-menu--horizontal .el-menu-item:not(.is-disabled):focus, .el-menu--horizontal .el-menu-item:not(.is-disabled):hover { 135 .el-menu--horizontal .el-menu-item:not(.is-disabled):focus, .el-menu--horizontal .el-menu-item:not(.is-disabled):hover {
134 color: var(--el-color-primary); 136 color: var(--el-color-primary);
...@@ -144,11 +146,11 @@ li.el-select-dropdown__item { ...@@ -144,11 +146,11 @@ li.el-select-dropdown__item {
144 .el-menu {color: #000;} 146 .el-menu {color: #000;}
145 147
146 .el-menu--horizontal>.el-menu-item { 148 .el-menu--horizontal>.el-menu-item {
147 transition: none;color: #000;padding: 6px 10px ;margin: 0 10px;border-radius: 18px; 149 transition: none;color: #000;padding: 6px 0 ;margin: 0 10px;
148 } 150 }
149 151
150 .el-sub-menu .el-sub-menu__title { 152 .el-sub-menu .el-sub-menu__title {
151 font-size: 18px;color: #000; 153 font-size: 16px;color: #000;
152 } 154 }
153 155
154 .el-menu--horizontal > .el-sub-menu.is-active .el-sub-menu__title { 156 .el-menu--horizontal > .el-sub-menu.is-active .el-sub-menu__title {
...@@ -164,17 +166,13 @@ li.el-select-dropdown__item { ...@@ -164,17 +166,13 @@ li.el-select-dropdown__item {
164 color: #453DEA; 166 color: #453DEA;
165 } 167 }
166 168
167 .el-menu--horizontal .el-menu-item:not(.is-disabled):focus {
168
169 }
170 169
171 .el-menu--horizontal .el-menu-item:not(.is-disabled):hover { 170 .el-menu--horizontal .el-menu-item:not(.is-disabled):hover {
172 color: #453DEA; 171 color:#000;background: transparent;filter: drop-shadow(0 0 1px #000);
173 } 172 }
174 173
175 .el-menu--horizontal > .el-menu-item.is-active { 174 .el-menu--horizontal > .el-menu-item.is-active {
176 border-bottom: none;background: linear-gradient(-90deg, #8623FC, #453DEA); 175 border-bottom: 2px solid #000;color: #000!important;
177 border-radius: 18px;color: #fff!important;
178 } 176 }
179 177
180 .el-menu--horizontal { 178 .el-menu--horizontal {
...@@ -184,7 +182,7 @@ li.el-select-dropdown__item { ...@@ -184,7 +182,7 @@ li.el-select-dropdown__item {
184 } 182 }
185 183
186 .el-menu--horizontal > .el-menu-item { 184 .el-menu--horizontal > .el-menu-item {
187 font-size: 20px; 185 font-size: 16px;
188 } 186 }
189 } 187 }
190 188
......
...@@ -15,6 +15,13 @@ export function getMatchById(params) { ...@@ -15,6 +15,13 @@ export function getMatchById(params) {
15 params: params 15 params: params
16 }) 16 })
17 } 17 }
18 export function getInfoByCptId(params) {
19 return request({
20 url: `/league/competitionLive/getInfoByCptId`,
21 method: 'get',
22 params: params
23 })
24 }
18 25
19 export function refundApply(orderId) { 26 export function refundApply(orderId) {
20 return request({ 27 return request({
......

87 KB | W: | H:

157 KB | W: | H:

src/assets/dance/about_bg.png
src/assets/dance/about_bg.png
src/assets/dance/about_bg.png
src/assets/dance/about_bg.png
  • 2-up
  • Swipe
  • Onion skin

1.3 MB | W: | H:

1.56 MB | W: | H:

src/assets/dance/banner.png
src/assets/dance/banner.png
src/assets/dance/banner.png
src/assets/dance/banner.png
  • 2-up
  • Swipe
  • Onion skin

2.9 KB | W: | H:

13.9 KB | W: | H:

src/assets/dance/btn01.png
src/assets/dance/btn01.png
src/assets/dance/btn01.png
src/assets/dance/btn01.png
  • 2-up
  • Swipe
  • Onion skin

3.57 KB | W: | H:

15.9 KB | W: | H:

src/assets/dance/btn02.png
src/assets/dance/btn02.png
src/assets/dance/btn02.png
src/assets/dance/btn02.png
  • 2-up
  • Swipe
  • Onion skin

3.19 KB | W: | H:

14.9 KB | W: | H:

src/assets/dance/btn03.png
src/assets/dance/btn03.png
src/assets/dance/btn03.png
src/assets/dance/btn03.png
  • 2-up
  • Swipe
  • Onion skin

2.79 KB | W: | H:

16.9 KB | W: | H:

src/assets/dance/btn04.png
src/assets/dance/btn04.png
src/assets/dance/btn04.png
src/assets/dance/btn04.png
  • 2-up
  • Swipe
  • Onion skin

3.29 KB | W: | H:

15.1 KB | W: | H:

src/assets/dance/btn05.png
src/assets/dance/btn05.png
src/assets/dance/btn05.png
src/assets/dance/btn05.png
  • 2-up
  • Swipe
  • Onion skin

37.9 KB | W: | H:

13.2 KB | W: | H:

src/assets/dance/btn_bg.png
src/assets/dance/btn_bg.png
src/assets/dance/btn_bg.png
src/assets/dance/btn_bg.png
  • 2-up
  • Swipe
  • Onion skin

129 KB | W: | H:

291 KB | W: | H:

src/assets/dance/map.png
src/assets/dance/map.png
src/assets/dance/map.png
src/assets/dance/map.png
  • 2-up
  • Swipe
  • Onion skin

971 Bytes | W: | H:

605 Bytes | W: | H:

src/assets/dance/map01.png
src/assets/dance/map01.png
src/assets/dance/map01.png
src/assets/dance/map01.png
  • 2-up
  • Swipe
  • Onion skin

1.07 KB | W: | H:

714 Bytes | W: | H:

src/assets/dance/map02.png
src/assets/dance/map02.png
src/assets/dance/map02.png
src/assets/dance/map02.png
  • 2-up
  • Swipe
  • Onion skin

1.07 KB | W: | H:

654 Bytes | W: | H:

src/assets/dance/map03.png
src/assets/dance/map03.png
src/assets/dance/map03.png
src/assets/dance/map03.png
  • 2-up
  • Swipe
  • Onion skin

1.12 KB | W: | H:

885 Bytes | W: | H:

src/assets/dance/next1.png
src/assets/dance/next1.png
src/assets/dance/next1.png
src/assets/dance/next1.png
  • 2-up
  • Swipe
  • Onion skin

979 Bytes | W: | H:

985 Bytes | W: | H:

src/assets/dance/p.png
src/assets/dance/p.png
src/assets/dance/p.png
src/assets/dance/p.png
  • 2-up
  • Swipe
  • Onion skin

1.09 KB | W: | H:

903 Bytes | W: | H:

src/assets/dance/prev1.png
src/assets/dance/prev1.png
src/assets/dance/prev1.png
src/assets/dance/prev1.png
  • 2-up
  • Swipe
  • Onion skin

8.24 KB | W: | H:

6.67 KB | W: | H:

src/assets/dance/time_bg.png
src/assets/dance/time_bg.png
src/assets/dance/time_bg.png
src/assets/dance/time_bg.png
  • 2-up
  • Swipe
  • Onion skin

2.51 KB | W: | H:

882 Bytes | W: | H:

src/assets/logo/btn01.png
src/assets/logo/btn01.png
src/assets/logo/btn01.png
src/assets/logo/btn01.png
  • 2-up
  • Swipe
  • Onion skin

2.76 KB | W: | H:

493 Bytes | W: | H:

src/assets/logo/btn02.png
src/assets/logo/btn02.png
src/assets/logo/btn02.png
src/assets/logo/btn02.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -206,14 +206,14 @@ aside { ...@@ -206,14 +206,14 @@ aside {
206 } 206 }
207 .el-step__head.is-success{ 207 .el-step__head.is-success{
208 .el-step__icon{color: #fff;border: none; 208 .el-step__icon{color: #fff;border: none;
209 background: linear-gradient(90deg, #8623FC, #453DEA);} 209 background: #000;}
210 } 210 }
211 .el-step__line{border-top:1px dashed #D1D6D8;background: transparent!important; 211 .el-step__line{border-top:1px dashed #D1D6D8;background: transparent!important;
212 .el-step__line-inner{border-width: 0!important;} 212 .el-step__line-inner{border-width: 0!important;}
213 } 213 }
214 .el-step__head.is-process{border-top: var(--el-color-primary); 214 .el-step__head.is-process{border-top: var(--el-color-primary);
215 .el-step__icon{color: #fff;border: none; 215 .el-step__icon{color: #fff;border: none;
216 background: linear-gradient(90deg, #8623FC, #453DEA);} 216 background: #000;}
217 } 217 }
218 .el-step__title.is-process{ 218 .el-step__title.is-process{
219 color: var(--el-color-primary)!important;font-weight: 400; 219 color: var(--el-color-primary)!important;font-weight: 400;
...@@ -242,7 +242,7 @@ aside { ...@@ -242,7 +242,7 @@ aside {
242 height: 30px; 242 height: 30px;
243 font-size: 16px;margin: 0 0 18px; 243 font-size: 16px;margin: 0 0 18px;
244 font-weight: 600;line-height: 30px;display: inline-block;padding:0 20px 0 14px; 244 font-weight: 600;line-height: 30px;display: inline-block;padding:0 20px 0 14px;
245 background: linear-gradient(90deg, #8623FC, #453DEA); 245 background: #000;
246 border-radius: 0px 0px 15px 0px;color: #fff;} 246 border-radius: 0px 0px 15px 0px;color: #fff;}
247 } 247 }
248 dd{ 248 dd{
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
14 .borderRadius10{border-radius: 10px;} 14 .borderRadius10{border-radius: 10px;}
15 .w80{width: 80%;} 15 .w80{width: 80%;}
16 .w50{width: 50%;} 16 .w50{width: 50%;}
17 .text-gray{color: #999} 17 .text-gray{color: #929AA0}
18 .uppercase{ 18 .uppercase{
19 text-transform: uppercase; 19 text-transform: uppercase;
20 *{ 20 *{
...@@ -464,7 +464,7 @@ img{display: block;} ...@@ -464,7 +464,7 @@ img{display: block;}
464 } 464 }
465 } 465 }
466 .rotate90_180{transform: rotate(90deg) rotateX(180deg);} 466 .rotate90_180{transform: rotate(90deg) rotateX(180deg);}
467 .istop{background: var(--el-color-primary);color: #fff; 467 .istop{background: #E91C1A;color: #fff;
468 font-size: 14px;padding: 2px 6px;margin-right: 10px; 468 font-size: 14px;padding: 2px 6px;margin-right: 10px;
469 border-radius: 5px 5px 0px 5px;position: relative;top: -2px;} 469 border-radius: 5px 5px 0px 5px;position: relative;top: -2px;}
470 .newsLine{ 470 .newsLine{
...@@ -513,14 +513,14 @@ img{display: block;} ...@@ -513,14 +513,14 @@ img{display: block;}
513 } 513 }
514 } 514 }
515 } 515 }
516 .bg-lineg{ background: linear-gradient(90deg, #8623FC, #453DEA);color: #fff;} 516 .bg-lineg{ background: #000;color: #fff;}
517 .lineHead{ 517 .lineHead{
518 //height: 50px; 518 //height: 50px;
519 padding: 15px;overflow: auto; 519 padding: 15px;overflow: auto;
520 background: linear-gradient(90deg, #8623FC, #453DEA); 520 background: #000;
521 h3{margin: 0;background: #FFFFFF; 521 h3{margin: 0;background: #FFFFFF;
522 font-size: 18px; 522 font-size: 18px;
523 color: var(--el-color-primary); 523 color: #000;
524 border-radius: 5px;display: inline;padding: 5px 15px;} 524 border-radius: 5px;display: inline;padding: 5px 15px;}
525 ul{margin: 0;padding: 0;white-space: nowrap; 525 ul{margin: 0;padding: 0;white-space: nowrap;
526 li{border-radius: 5px;display: inline;padding: 5px 15px; font-size: 18px;text-transform: capitalize; 526 li{border-radius: 5px;display: inline;padding: 5px 15px; font-size: 18px;text-transform: capitalize;
...@@ -578,7 +578,7 @@ img{display: block;} ...@@ -578,7 +578,7 @@ img{display: block;}
578 img{object-fit: cover;height: 100%;} 578 img{object-fit: cover;height: 100%;}
579 .date{width: 60px;height: 60px;text-align: center; 579 .date{width: 60px;height: 60px;text-align: center;
580 position: absolute;left: 0;top:16px; 580 position: absolute;left: 0;top:16px;
581 background: var(--el-color-primary); 581 background: #000;
582 .day{color: #fff;transform: scaleX(0.7);font-weight: bold;font-size: 24px;} 582 .day{color: #fff;transform: scaleX(0.7);font-weight: bold;font-size: 24px;}
583 p{font-size: 14px;margin: 0;transform: scaleX(0.7);font-weight: bold;color: #fff;} 583 p{font-size: 14px;margin: 0;transform: scaleX(0.7);font-weight: bold;color: #fff;}
584 } 584 }
...@@ -729,6 +729,17 @@ img{display: block;} ...@@ -729,6 +729,17 @@ img{display: block;}
729 flex-direction: row-reverse; 729 flex-direction: row-reverse;
730 } 730 }
731 } 731 }
732 @media screen and (max-width: 768px) {
733 .newsflex{
734 .el-col:nth-child(2) .item{
735 flex-direction: row-reverse;
736 }
737 .el-col:nth-child(3) .item{
738 flex-direction: row;
739 }
740 }
741 }
742
732 743
733 .newsimgcover{ 744 .newsimgcover{
734 .item{margin: 10px 0; 745 .item{margin: 10px 0;
...@@ -1048,10 +1059,7 @@ img{display: block;} ...@@ -1048,10 +1059,7 @@ img{display: block;}
1048 95%{transform: translateY(-3px);} 1059 95%{transform: translateY(-3px);}
1049 100%{transform: translateY(0px);} 1060 100%{transform: translateY(0px);}
1050 } 1061 }
1051 .smallToday{display: flex;align-items: center; 1062
1052 .type{margin-right: 20px;}
1053 h3{margin: 0 0 10px;}
1054 }
1055 .weatherbox{padding: 20px 0; 1063 .weatherbox{padding: 20px 0;
1056 .today{text-align: center;display: flex;justify-content: center;align-items: center;margin: 0 0 30px; 1064 .today{text-align: center;display: flex;justify-content: center;align-items: center;margin: 0 0 30px;
1057 .type{margin-left: 30px;} 1065 .type{margin-left: 30px;}
...@@ -1333,12 +1341,13 @@ img{display: block;} ...@@ -1333,12 +1341,13 @@ img{display: block;}
1333 font-size: 16px; 1341 font-size: 16px;
1334 color: var(--el-color-primary); 1342 color: var(--el-color-primary);
1335 } 1343 }
1344 .blackBtn{background: #000;}
1336 1345
1337 .btn-lineG{background: linear-gradient(-90deg, #8623FC, #453DEA); 1346 .btn-lineG{background: linear-gradient(90deg, #1B69F8, #0540EC);
1338 border-radius: 23px;padding: 6px 40px; 1347 border-radius: 23px;padding: 6px 40px;
1339 color: #FFFFFF; 1348 color: #FFFFFF;
1340 font-size: 18px;} 1349 font-size: 18px;}
1341 .btn-lineG:hover{color: #fff;box-shadow: 0 0 10px #453DEA} 1350 .btn-lineG:hover{color: #fff;box-shadow: 0 0 10px #453DEA;background: linear-gradient(-90deg, #1B69F8, #0540EC);}
1342 .indexTitle { 1351 .indexTitle {
1343 position: relative;margin: 50px 0 25px; 1352 position: relative;margin: 50px 0 25px;
1344 1353
...@@ -1350,11 +1359,7 @@ img{display: block;} ...@@ -1350,11 +1359,7 @@ img{display: block;}
1350 } 1359 }
1351 .leftboderTT{ 1360 .leftboderTT{
1352 font-size: 36px;margin: 0;line-height: 1;text-transform: uppercase; 1361 font-size: 36px;margin: 0;line-height: 1;text-transform: uppercase;
1353 position:relative;padding-left: 22px; 1362 position:relative;
1354 &::before{ content: '';position: absolute;left: 0;width: 6px;
1355 height: 100%;top: 0;bottom: 0;margin: auto;
1356 background: linear-gradient(0deg, #8623FC, #453DEA);
1357 border-radius: 3px;}
1358 } 1363 }
1359 img.more { 1364 img.more {
1360 cursor: pointer; 1365 cursor: pointer;
...@@ -1371,19 +1376,16 @@ img{display: block;} ...@@ -1371,19 +1376,16 @@ img{display: block;}
1371 .activeItem { 1376 .activeItem {
1372 cursor: pointer; 1377 cursor: pointer;
1373 background: #FFFFFF; 1378 background: #FFFFFF;
1374 border-image: linear-gradient(-90deg, #8623FC, #453DEA);
1375 border-image-slice: 1;
1376 border-image-width: 0 0 4px;
1377 &:hover { 1379 &:hover {
1378 .imgbox img { 1380 .imgbox img {
1379 transform: scale(1.1); 1381 transform: scale(1.1);
1380 transform-origin: center; 1382 transform-origin: center;
1381 } 1383 }
1382 .info{ 1384 .info{
1383 background: linear-gradient(-90deg, #8623FC, #453DEA); 1385 background: #000;
1384 color: #fff; 1386 color: #fff;
1385 p{color: #fff;} 1387 p{color: #fff;}
1386 a{color: #fff;} 1388 a{color: #fff;background: url("@/assets/dance/arrow2.png") no-repeat right;}
1387 } 1389 }
1388 } 1390 }
1389 1391
...@@ -1404,8 +1406,10 @@ img{display: block;} ...@@ -1404,8 +1406,10 @@ img{display: block;}
1404 h3 { 1406 h3 {
1405 margin: 0; 1407 margin: 0;
1406 } 1408 }
1407 a{color: #453DEA; 1409 a{color: #000;display: block;text-align: right;
1408 font-size: 14px;} 1410 font-size: 14px;background: url("@/assets/dance/arrow02.png") no-repeat right;
1411 padding-right: 30px;
1412 }
1409 p { 1413 p {
1410 color: #7B7F83; 1414 color: #7B7F83;
1411 font-size: 14px; 1415 font-size: 14px;
...@@ -1450,9 +1454,9 @@ img{display: block;} ...@@ -1450,9 +1454,9 @@ img{display: block;}
1450 } 1454 }
1451 .languageBtn{white-space: nowrap; 1455 .languageBtn{white-space: nowrap;
1452 font-size: 16px; 1456 font-size: 16px;
1453 span{padding: 0 5px;cursor: pointer;} 1457 span{margin: 0 10px;cursor: pointer;color: #929AA0;padding: 6px 0;}
1454 span:hover{font-weight: bold;} 1458 span:hover{filter: drop-shadow(0 0 1px #000);}
1455 .active{color: var(--el-color-primary);font-weight: bold;cursor: pointer;} 1459 .active{color: #000;font-weight: bold;cursor: pointer;border-bottom: 2px solid #000;}
1456 } 1460 }
1457 .mapBox{word-break: break-all;} 1461 .mapBox{word-break: break-all;}
1458 .as16_9{aspect-ratio: 16/9;} 1462 .as16_9{aspect-ratio: 16/9;}
......
1 <template> 1 <template>
2 <div class="footAll"> 2 <div class="footAll">
3 <div class="box" style="max-width: 90%"> 3 <div class="box" style="max-width: 90%">
4 <el-row style="align-items: center;" v-if="language==0"> 4 <el-row v-if="language==0" justify="space-between" align="middle">
5 <el-col :lg="10" :md="10" :xs="10"> 5 <el-col :lg="10" :md="10" :xs="10">
6 <ul> 6 <ul>
7 <li>邮编:214000</li> 7 <li>邮编:214000</li>
...@@ -24,12 +24,11 @@ ...@@ -24,12 +24,11 @@
24 </el-col> 24 </el-col>
25 <el-col :span="24" style="border-top: 1px solid #fff"> 25 <el-col :span="24" style="border-top: 1px solid #fff">
26 <div class="text-center copyright pd10">版权所有@无锡和畅赛事运营有限公司 26 <div class="text-center copyright pd10">版权所有@无锡和畅赛事运营有限公司
27 &ensp;&ensp
28 <a target="_blank" href="https://beian.miit.gov.cn/">ICP备案号:苏ICP备2023054420号-2</a></div> 27 <a target="_blank" href="https://beian.miit.gov.cn/">ICP备案号:苏ICP备2023054420号-2</a></div>
29 </el-col> 28 </el-col>
30 </el-row> 29 </el-row>
31 30
32 <el-row style="align-items: center;" v-if="language===1"> 31 <el-row justify="space-between" align="middle" v-if="language===1">
33 <el-col :span="14"> 32 <el-col :span="14">
34 <ul> 33 <ul>
35 <li>Postal code:214000</li> 34 <li>Postal code:214000</li>
...@@ -59,24 +58,24 @@ ...@@ -59,24 +58,24 @@
59 <div class="mlb" v-if="language===0"> 58 <div class="mlb" v-if="language===0">
60 <div onclick="window.open('https://ykf-weixin01.7moor.com/wapchat.html?accessId=6c500b60-02c6-11ef-9a4d-85cd5dacc5bf&fromUrl=&urlTitle=&language=ZHCN','_blank','height=700px,width=700px,top=50,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')" title="客服" > 59 <div onclick="window.open('https://ykf-weixin01.7moor.com/wapchat.html?accessId=6c500b60-02c6-11ef-9a4d-85cd5dacc5bf&fromUrl=&urlTitle=&language=ZHCN','_blank','height=700px,width=700px,top=50,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')" title="客服" >
61 <img class="kf" src="@/assets/logo/btn01.png"/> 60 <img class="kf" src="@/assets/logo/btn01.png"/>
62 <div class="text-center mt10 gradient-text">在线客服</div> 61 <div class="text-center mt10">在线客服</div>
63 </div> 62 </div>
64 <div @click="goHelpZH"> 63 <div @click="goHelpZH">
65 <!-- <a target="_blank" href="https://wdsfwuxicenter.com/stage-api/fs/file/操作指引.zip">--> 64 <!-- <a target="_blank" href="https://wdsfwuxicenter.com/stage-api/fs/file/操作指引.zip">-->
66 <a> 65 <a>
67 <img class="kf" src="@/assets/logo/btn02.png"/> 66 <img class="kf" src="@/assets/logo/btn02.png"/>
68 <div class="text-center mt10 gradient-text">指南下载</div> 67 <div class="text-center mt10">指南下载</div>
69 </a> 68 </a>
70 </div> 69 </div>
71 </div> 70 </div>
72 <div class="mlb" v-else> 71 <div class="mlb" v-else>
73 <div onclick="window.open('https://ykf-weixin01.7moor.com/wapchat.html?accessId=707daf80-02c6-11ef-9a4d-85cd5dacc5bf&fromUrl=&urlTitle=&language=EN','_blank','height=700px,width=700px,top=100,left=150,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')" title="Live Chat"> 72 <div onclick="window.open('https://ykf-weixin01.7moor.com/wapchat.html?accessId=707daf80-02c6-11ef-9a4d-85cd5dacc5bf&fromUrl=&urlTitle=&language=EN','_blank','height=700px,width=700px,top=100,left=150,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')" title="Live Chat">
74 <img class="kf" src="@/assets/logo/btn01.png"/> 73 <img class="kf" src="@/assets/logo/btn01.png"/>
75 <div class="text-center gradient-text">LIVE CHAT</div> 74 <div class="text-center ">LIVE CHAT</div>
76 </div> 75 </div>
77 <div @click="goHelp"> 76 <div @click="goHelp">
78 <img class="kf" src="@/assets/logo/btn02.png"/> 77 <img class="kf" src="@/assets/logo/btn02.png"/>
79 <div class="text-center gradient-text uppercase">Video Guide</div> 78 <div class="text-center uppercase">Video Guide</div>
80 </div> 79 </div>
81 </div> 80 </div>
82 </div> 81 </div>
......
...@@ -12,14 +12,14 @@ ...@@ -12,14 +12,14 @@
12 > 12 >
13 <el-menu-item index="/">{{ language==0?'首页':'HOME' }}</el-menu-item> 13 <el-menu-item index="/">{{ language==0?'首页':'HOME' }}</el-menu-item>
14 <el-menu-item index="/news">{{ language==0?'新闻资讯':'NEWS' }}</el-menu-item> 14 <el-menu-item index="/news">{{ language==0?'新闻资讯':'NEWS' }}</el-menu-item>
15 <el-menu-item index="/guide">{{ language==0?'参赛指南':'GUIDELINE' }}</el-menu-item>
16 <el-menu-item index="/match/list">{{ language==0?'大赛报名':'REGISTRATION' }}</el-menu-item>
17 <el-menu-item index="/saiC">{{ language==0?'赛程安排':'COMPETITIONS' }}</el-menu-item>
18 <el-menu-item index="/meta">{{ language==0?'媒体中心':'MEDIA' }}</el-menu-item>
19 <el-menu-item index="/notice">{{ language==0?'通知公告':'NOTICEBOARD' }}</el-menu-item> 15 <el-menu-item index="/notice">{{ language==0?'通知公告':'NOTICEBOARD' }}</el-menu-item>
16 <el-menu-item index="/match/list">{{ language==0?'赛事服务':'REGISTRATION' }}</el-menu-item>
17 <el-menu-item index="/saiC">{{ language==0?'竞赛日程':'COMPETITIONS' }}</el-menu-item>
18 <el-menu-item index="/meta">{{ language==0?'媒体中心':'MEDIA' }}</el-menu-item>
19 <el-menu-item index="/guide">{{ language==0?'参赛指南':'GUIDELINE' }}</el-menu-item>
20 <el-menu-item index="/about/wuDao">{{ language==0?'关于我们':'CONTACT & MORE' }}</el-menu-item>
20 21
21 <!-- <el-sub-menu index="/about">--> 22 <!-- <el-sub-menu index="/about">-->
22 <!-- <template #title>{{ language==0?'关于我们':'CONTACT & MORE' }}</template>-->
23 <!-- <el-menu-item index="/about/wuDao">{{ language==0?'舞蹈节':'About Us' }}</el-menu-item>--> 23 <!-- <el-menu-item index="/about/wuDao">{{ language==0?'舞蹈节':'About Us' }}</el-menu-item>-->
24 <!-- <el-menu-item index="/about/regulations" v-if="language==1">Rules & Regulations</el-menu-item>--> 24 <!-- <el-menu-item index="/about/regulations" v-if="language==1">Rules & Regulations</el-menu-item>-->
25 <!-- <el-menu-item index="/about/culture">{{ language==0?'地方文化':'Culture' }}</el-menu-item>--> 25 <!-- <el-menu-item index="/about/culture">{{ language==0?'地方文化':'Culture' }}</el-menu-item>-->
...@@ -31,14 +31,14 @@ ...@@ -31,14 +31,14 @@
31 > 31 >
32 <el-menu-item index="/">{{ language==0?'首页':'HOME' }}</el-menu-item> 32 <el-menu-item index="/">{{ language==0?'首页':'HOME' }}</el-menu-item>
33 <el-menu-item index="/news">{{ language==0?'新闻资讯':'NEWS' }}</el-menu-item> 33 <el-menu-item index="/news">{{ language==0?'新闻资讯':'NEWS' }}</el-menu-item>
34 <el-menu-item index="/guide">{{ language==0?'参赛指南':'GUIDELINE' }}</el-menu-item>
35 <el-menu-item index="/match/list">{{ language==0?'大赛报名':'REGISTRATION' }}</el-menu-item>
36 <el-menu-item index="/saiC">{{ language==0?'赛程安排':'COMPETITIONS' }}</el-menu-item>
37 <el-menu-item index="/meta">{{ language==0?'媒体中心':'MEDIA' }}</el-menu-item>
38 <el-menu-item index="/notice">{{ language==0?'通知公告':'NOTICEBOARD' }}</el-menu-item> 34 <el-menu-item index="/notice">{{ language==0?'通知公告':'NOTICEBOARD' }}</el-menu-item>
35 <el-menu-item index="/match/list">{{ language==0?'赛事服务':'REGISTRATION' }}</el-menu-item>
36 <el-menu-item index="/saiC">{{ language==0?'竞赛日程':'COMPETITIONS' }}</el-menu-item>
37 <el-menu-item index="/meta">{{ language==0?'媒体中心':'MEDIA' }}</el-menu-item>
38 <el-menu-item index="/guide">{{ language==0?'参赛指南':'GUIDELINE' }}</el-menu-item>
39 <el-menu-item index="/about/wuDao">{{ language==0?'关于我们':'CONTACT & MORE' }}</el-menu-item>
39 40
40 <!-- <el-sub-menu index="/about">--> 41 <!-- <el-sub-menu index="/about">-->
41 <!-- <template #title>{{ language==0?'关于我们':'CONTACT & MORE' }}</template>-->
42 <!-- <el-menu-item index="/about/wuDaoEn">{{ language==0?'舞蹈节':'About Us' }}</el-menu-item>--> 42 <!-- <el-menu-item index="/about/wuDaoEn">{{ language==0?'舞蹈节':'About Us' }}</el-menu-item>-->
43 <!-- <el-menu-item index="/about/regulations" v-if="language==1">Rules & Regulations</el-menu-item>--> 43 <!-- <el-menu-item index="/about/regulations" v-if="language==1">Rules & Regulations</el-menu-item>-->
44 <!-- <el-menu-item index="/about/cultureEn">{{ language==0?'地方文化':'Culture' }}</el-menu-item>--> 44 <!-- <el-menu-item index="/about/cultureEn">{{ language==0?'地方文化':'Culture' }}</el-menu-item>-->
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
52 </div> 52 </div>
53 <div class="languageBtn"> 53 <div class="languageBtn">
54 <span :class="language==0?'active':''" @click="changeLanguage(0)">{{ language==0?'中文':'CN' }}</span> 54 <span :class="language==0?'active':''" @click="changeLanguage(0)">{{ language==0?'中文':'CN' }}</span>
55 | 55
56 <span :class="language==1?'active':''" @click="changeLanguage(1)">EN</span> 56 <span :class="language==1?'active':''" @click="changeLanguage(1)">EN</span>
57 </div> 57 </div>
58 <div class="ml20 forPc" > 58 <div class="ml20 forPc" >
...@@ -114,15 +114,11 @@ ...@@ -114,15 +114,11 @@
114 <el-menu-item index="/">首页</el-menu-item> 114 <el-menu-item index="/">首页</el-menu-item>
115 <el-menu-item index="/news">新闻资讯</el-menu-item> 115 <el-menu-item index="/news">新闻资讯</el-menu-item>
116 <el-menu-item index="/notice">通知公告</el-menu-item> 116 <el-menu-item index="/notice">通知公告</el-menu-item>
117 <el-menu-item index="/match/list">大赛报名</el-menu-item> 117 <el-menu-item index="/match/list">赛事服务</el-menu-item>
118 <el-menu-item index="/saiC">赛程安排</el-menu-item> 118 <el-menu-item index="/saiC">竞赛日程</el-menu-item>
119 <el-menu-item index="/meta">媒体中心</el-menu-item> 119 <el-menu-item index="/meta">媒体中心</el-menu-item>
120 <el-menu-item index="/guide">参赛指南</el-menu-item> 120 <el-menu-item index="/guide">参赛指南</el-menu-item>
121 <el-sub-menu index="/about"> 121 <el-menu-item index="/about/wuDao">关于我们</el-menu-item>
122 <template #title>关于我们</template>
123 <el-menu-item index="/about/wuDao">舞蹈节</el-menu-item>
124 <el-menu-item index="/about/culture">地方文化</el-menu-item>
125 </el-sub-menu>
126 <el-menu-item v-if="isLogin" index="/center/myInfo">个人中心</el-menu-item> 122 <el-menu-item v-if="isLogin" index="/center/myInfo">个人中心</el-menu-item>
127 </el-menu> 123 </el-menu>
128 <el-menu class="weiMenu" 124 <el-menu class="weiMenu"
...@@ -137,12 +133,13 @@ ...@@ -137,12 +133,13 @@
137 <el-menu-item index="/saiC">COMPETITIONS</el-menu-item> 133 <el-menu-item index="/saiC">COMPETITIONS</el-menu-item>
138 <el-menu-item index="/meta">MEDIA</el-menu-item> 134 <el-menu-item index="/meta">MEDIA</el-menu-item>
139 <el-menu-item index="/guide">GUIDELINE</el-menu-item> 135 <el-menu-item index="/guide">GUIDELINE</el-menu-item>
140 <el-sub-menu index="/about"> 136 <el-menu-item index="/about/wuDao">CONTACT & MORE</el-menu-item>
141 <template #title>CONTACT & MORE</template> 137 <!-- <el-sub-menu index="/about">-->
142 <el-menu-item index="/about/wuDaoEn">About Us</el-menu-item> 138 <!-- <template #title>CONTACT & MORE</template>-->
143 <el-menu-item index="/about/regulations">Rules & Regulations</el-menu-item> 139 <!-- <el-menu-item index="/about/wuDaoEn">About Us</el-menu-item>-->
144 <el-menu-item index="/about/cultureEn">Culture</el-menu-item> 140 <!-- <el-menu-item index="/about/regulations">Rules & Regulations</el-menu-item>-->
145 </el-sub-menu> 141 <!-- <el-menu-item index="/about/cultureEn">Culture</el-menu-item>-->
142 <!-- </el-sub-menu>-->
146 <el-menu-item v-if="isLogin" index="/center/myInfo">PERSONAL CENTER</el-menu-item> 143 <el-menu-item v-if="isLogin" index="/center/myInfo">PERSONAL CENTER</el-menu-item>
147 </el-menu> 144 </el-menu>
148 </el-drawer> 145 </el-drawer>
...@@ -270,15 +267,9 @@ function getCode() { ...@@ -270,15 +267,9 @@ function getCode() {
270 :deep(.el-menu--horizontal.el-menu){border: none;} 267 :deep(.el-menu--horizontal.el-menu){border: none;}
271 } 268 }
272 .loginBtn {color: #fff;margin-right: 15px;border: none; 269 .loginBtn {color: #fff;margin-right: 15px;border: none;
273 background: linear-gradient(-90deg, #8623FC, #453DEA);box-shadow:0 0 10px #fff; 270 background: #000;box-shadow:0 0 10px #fff;
274 &:active {
275 color: #fff;
276 background:linear-gradient(0deg, #8623FC, #453DEA);
277 border:none;
278 }
279
280 &:hover { 271 &:hover {
281 box-shadow:0 0 10px var(--el-color-primary);border: none; 272 box-shadow:0 0 10px #000;border: none;
282 color:#fff; 273 color:#fff;
283 } 274 }
284 275
...@@ -337,12 +328,11 @@ function getCode() { ...@@ -337,12 +328,11 @@ function getCode() {
337 328
338 329
339 .ropenbtn{padding: 10px;display: none; 330 .ropenbtn{padding: 10px;display: none;
340 img{ width: 44px;} 331 img{ width: 44px; filter: grayscale(1);}
341 } 332 }
342 333
343 :deep(.el-input){height: 100%} 334 :deep(.el-input){height: 100%}
344 :deep(.el-form-item){height: 40px;} 335 :deep(.el-form-item){height: 40px;}
345 //.home-menu .el-menu--horizontal > .el-menu-item{margin: 0 5px; font-size: 18px;}
346 .home-menu .el-sub-menu{font-size: 16px;} 336 .home-menu .el-sub-menu{font-size: 16px;}
347 .weiMenu.el-menu{ 337 .weiMenu.el-menu{
348 border: none; 338 border: none;
......
...@@ -188,15 +188,15 @@ function getCode() { ...@@ -188,15 +188,15 @@ function getCode() {
188 188
189 <style scoped lang="scss"> 189 <style scoped lang="scss">
190 .loginBtn {color: #fff;margin-right: 15px;border: none; 190 .loginBtn {color: #fff;margin-right: 15px;border: none;
191 background: linear-gradient(-90deg, #8623FC, #453DEA);box-shadow:0 0 10px #fff; 191 background: #000;box-shadow:0 0 10px #fff;
192 &:active { 192 &:active {
193 color: #fff; 193 color: #fff;
194 background:linear-gradient(0deg, #8623FC, #453DEA); 194 background:#000;
195 border:none; 195 border:none;
196 } 196 }
197 197
198 &:hover { 198 &:hover {
199 box-shadow:0 0 10px var(--el-color-primary);border: none; 199 box-shadow:0 0 10px #aaa;border: none;
200 color:#fff; 200 color:#fff;
201 } 201 }
202 202
...@@ -257,7 +257,7 @@ function getCode() { ...@@ -257,7 +257,7 @@ function getCode() {
257 257
258 258
259 .ropenbtn{padding: 10px;display: none; 259 .ropenbtn{padding: 10px;display: none;
260 img{ width: 44px;} 260 img{ width: 44px; filter: grayscale(1);}
261 } 261 }
262 262
263 :deep(.el-input){height: 100%} 263 :deep(.el-input){height: 100%}
......
...@@ -117,7 +117,7 @@ h2 { ...@@ -117,7 +117,7 @@ h2 {
117 border: none; 117 border: none;
118 height: 60px; 118 height: 60px;
119 color: #fff; 119 color: #fff;
120 background: linear-gradient(-90deg, #8623FC, #453DEA);; 120 background: #000;;
121 border-radius: 0px 5px 5px 0px; 121 border-radius: 0px 5px 5px 0px;
122 } 122 }
123 123
......
...@@ -103,7 +103,7 @@ h2 { ...@@ -103,7 +103,7 @@ h2 {
103 border: none; 103 border: none;
104 height: 60px; 104 height: 60px;
105 color: #fff; 105 color: #fff;
106 background: linear-gradient(-90deg, #8623FC, #453DEA);; 106 background: #000;;
107 border-radius: 0px 5px 5px 0px; 107 border-radius: 0px 5px 5px 0px;
108 } 108 }
109 109
......
...@@ -33,7 +33,8 @@ const useUserStore = defineStore( ...@@ -33,7 +33,8 @@ const useUserStore = defineStore(
33 reLogin: {show:false,query:{}}, 33 reLogin: {show:false,query:{}},
34 visitor: false, 34 visitor: false,
35 language: 0, 35 language: 0,
36 activeName:"5" 36 activeName:"5",
37 weather: null,
37 }), 38 }),
38 actions: { 39 actions: {
39 // 登录 40 // 登录
...@@ -167,7 +168,11 @@ const useUserStore = defineStore( ...@@ -167,7 +168,11 @@ const useUserStore = defineStore(
167 }, 168 },
168 updataActiveName(v){ 169 updataActiveName(v){
169 this.activeName=v 170 this.activeName=v
171 },
172 setWeather(obj){
173 this.weather=obj
170 } 174 }
175
171 } 176 }
172 }) 177 })
173 178
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
43 .bbtn{position: absolute;right: 5px;bottom: 0px; 43 .bbtn{position: absolute;right: 5px;bottom: 0px;
44 color: #fff;border-radius: 50px;padding: 10px 20px; 44 color: #fff;border-radius: 50px;padding: 10px 20px;
45 font-size: 18px;cursor: pointer; 45 font-size: 18px;cursor: pointer;
46 background: linear-gradient(-90deg, #8623FC, #453DEA); ; 46 background: #000; ;
47 &:hover{filter: brightness(1.6)} 47 &:hover{filter: brightness(1.6)}
48 } 48 }
49 } 49 }
......
...@@ -111,8 +111,8 @@ const getDetail = (item,index)=>{ ...@@ -111,8 +111,8 @@ const getDetail = (item,index)=>{
111 border-radius: 50%;right: -29px;border: 4px solid #fff;outline: 2px solid #898989; 111 border-radius: 50%;right: -29px;border: 4px solid #fff;outline: 2px solid #898989;
112 box-sizing: content-box;top: 0;bottom: 0;margin: auto;} 112 box-sizing: content-box;top: 0;bottom: 0;margin: auto;}
113 li.active{color: #fff; 113 li.active{color: #fff;
114 background: linear-gradient(90deg, #8623FC, #453DEA); 114 background: #000;
115 &::after{outline: 2px solid #453DEA;background: #453DEA;} 115 &::after{outline: 2px solid #000;background: #000;}
116 } 116 }
117 } 117 }
118 .infoPart{ 118 .infoPart{
......
...@@ -38,12 +38,12 @@ ...@@ -38,12 +38,12 @@
38 <div class="plr20"> 38 <div class="plr20">
39 <div v-for="(r,index) in h.carVoList" :key="index" class="room"> 39 <div v-for="(r,index) in h.carVoList" :key="index" class="room">
40 <el-row :gutter="30" align="middle"> 40 <el-row :gutter="30" align="middle">
41 <el-col :span="4"> 41 <el-col :lg="4">
42 <div class="roomImg"> 42 <div class="roomImg">
43 <img :src="fillImgUrl(r.photos?.split(',')[0])"> 43 <img :src="fillImgUrl(r.photos?.split(',')[0])">
44 </div> 44 </div>
45 </el-col> 45 </el-col>
46 <el-col :span="14"> 46 <el-col :lg="14">
47 <h3 class="name flex">{{ r.carType }} 47 <h3 class="name flex">{{ r.carType }}
48 <div class="tagbox"> 48 <div class="tagbox">
49 <span class="tag">{{ r.carColor }}</span> 49 <span class="tag">{{ r.carColor }}</span>
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
59 }}: {{ r.operStart }} ~ {{ r.operEnd }}</span> 59 }}: {{ r.operStart }} ~ {{ r.operEnd }}</span>
60 </div> 60 </div>
61 </el-col> 61 </el-col>
62 <el-col :span="3"> 62 <el-col :lg="3" :xs="12">
63 <div v-if="language==0" class="price">¥ 63 <div v-if="language==0" class="price">¥
64 <span 64 <span
65 v-if="r.outPrice&&r.inPrice">{{ Number(r.inPrice) > Number(r.outPrice) ? r.outPrice : r.inPrice }}</span> 65 v-if="r.outPrice&&r.inPrice">{{ Number(r.inPrice) > Number(r.outPrice) ? r.outPrice : r.inPrice }}</span>
...@@ -76,7 +76,7 @@ ...@@ -76,7 +76,7 @@
76 </div> 76 </div>
77 77
78 </el-col> 78 </el-col>
79 <el-col :span="3"> 79 <el-col :lg="3" :xs="12">
80 <el-button class="btn-lineG w100" round type="primary" @click="goOrder(h,r)"> 80 <el-button class="btn-lineG w100" round type="primary" @click="goOrder(h,r)">
81 {{ language == 0 ? '我要预订' : 'Select' }} 81 {{ language == 0 ? '我要预订' : 'Select' }}
82 </el-button> 82 </el-button>
...@@ -349,5 +349,16 @@ function goOrder(item, car) { ...@@ -349,5 +349,16 @@ function goOrder(item, car) {
349 } 349 }
350 } 350 }
351 } 351 }
352 352 @media screen and (max-width: 768px) {
353 .hotel{
354 .index{font-size: 14px;}
355 p{font-size: 16px}
356 .room{
357 .name{margin: 20px 0 0;}
358 .price{font-size: 16px;
359 span{font-size: 24px;}
360 }
361 }
362 }
363 }
353 </style> 364 </style>
......
...@@ -3,13 +3,12 @@ ...@@ -3,13 +3,12 @@
3 <div class="box"> 3 <div class="box">
4 <el-card :body-style="{ padding: '0px' }" class="mt20"> 4 <el-card :body-style="{ padding: '0px' }" class="mt20">
5 <div slot="header"> 5 <div slot="header">
6 <div class="bg-lineg uppercase">{{ 6 <div class="bg-lineg uppercase">
7 language == 0 ? '车辆预约下单' : 'TRANSPORTATION RESERVATION order' 7 {{language == 0 ? '车辆预约下单' : 'TRANSPORTATION RESERVATION order' }}
8 }}
9 </div> 8 </div>
10 </div> 9 </div>
11 <el-row :gutter="20" class="pd20"> 10 <el-row :gutter="20" class="pd20">
12 <el-col :span="14"> 11 <el-col :lg="14">
13 <div class="border-info"> 12 <div class="border-info">
14 <div class="flex aic"> 13 <div class="flex aic">
15 <h3 class="esp">{{ item.checkIn }}</h3> 14 <h3 class="esp">{{ item.checkIn }}</h3>
...@@ -123,7 +122,7 @@ ...@@ -123,7 +122,7 @@
123 </el-form> 122 </el-form>
124 </div> 123 </div>
125 </el-col> 124 </el-col>
126 <el-col :span="10"> 125 <el-col :lg="10">
127 <div class="leftboderTT">{{ language == 0 ? '订单明细' : 'Order details' }}</div> 126 <div class="leftboderTT">{{ language == 0 ? '订单明细' : 'Order details' }}</div>
128 <div class="border-rr mt20 pd20 ccitemBox"> 127 <div class="border-rr mt20 pd20 ccitemBox">
129 <label v-show="form.useType.indexOf('0')>-1"> {{ language == 0 ? '接站车辆费' : 'Room fee' }} 128 <label v-show="form.useType.indexOf('0')>-1"> {{ language == 0 ? '接站车辆费' : 'Room fee' }}
...@@ -152,14 +151,14 @@ ...@@ -152,14 +151,14 @@
152 151
153 <el-card class="mt30"> 152 <el-card class="mt30">
154 <el-row align="middle" justify="space-between"> 153 <el-row align="middle" justify="space-between">
155 <el-col :span="12"> 154 <el-col :lg="12">
156 <label>{{ language == 0 ? '共计金额' : 'Total' }} 155 <label>{{ language == 0 ? '共计金额' : 'Total' }}
157 <span class=" text-warning"> {{ language == 0 ? '¥' : '€' }}<span class="bigMoney">{{ 156 <span class=" text-warning"> {{ language == 0 ? '¥' : '€' }}<span class="bigMoney">{{
158 money 157 money
159 }}</span></span> 158 }}</span></span>
160 </label> 159 </label>
161 </el-col> 160 </el-col>
162 <el-col :span="12" class="text-right"> 161 <el-col :lg="12" class="text-right">
163 <el-button :loading="payLoading" class="btn-lineG w200px" round type="primary" @click="submit"> 162 <el-button :loading="payLoading" class="btn-lineG w200px" round type="primary" @click="submit">
164 {{ language == 0 ? '确认付款' : 'Pay' }} 163 {{ language == 0 ? '确认付款' : 'Pay' }}
165 </el-button> 164 </el-button>
...@@ -392,7 +391,7 @@ function pushFrom() { ...@@ -392,7 +391,7 @@ function pushFrom() {
392 391
393 span { 392 span {
394 color: #FF8124; 393 color: #FF8124;
395 font-family: DIN Alternate; 394 font-family: DIN Alternate, sans-serif;
396 font-size: 24px; 395 font-size: 24px;
397 } 396 }
398 } 397 }
...@@ -434,7 +433,7 @@ function pushFrom() { ...@@ -434,7 +433,7 @@ function pushFrom() {
434 } 433 }
435 434
436 span { 435 span {
437 border-radius: 13px; 436 border-radius: 13px;display: inline-block;
438 font-size: 12px; 437 font-size: 12px;
439 padding: 4px 10px; 438 padding: 4px 10px;
440 margin-right: 10px; 439 margin-right: 10px;
...@@ -461,4 +460,8 @@ function pushFrom() { ...@@ -461,4 +460,8 @@ function pushFrom() {
461 color: rgba(247, 64, 166, 1); 460 color: rgba(247, 64, 166, 1);
462 } 461 }
463 } 462 }
463
464 @media screen and (max-width: 768px) {
465 .leftboderTT{margin: 30px 0 15px;}
466 }
464 </style> 467 </style>
......
...@@ -259,7 +259,7 @@ function goMatch(n) { ...@@ -259,7 +259,7 @@ function goMatch(n) {
259 259
260 .primaryDate { 260 .primaryDate {
261 color: #fff; 261 color: #fff;
262 background: linear-gradient(90deg, #8623FC, #453DEA); 262 background: #000;
263 } 263 }
264 264
265 .date { 265 .date {
...@@ -310,7 +310,7 @@ function goMatch(n) { ...@@ -310,7 +310,7 @@ function goMatch(n) {
310 310
311 li::before { 311 li::before {
312 content: ''; 312 content: '';
313 background: linear-gradient(0deg, #8623FC, #453DEA); 313 background: #000;
314 border-radius: 50%; 314 border-radius: 50%;
315 width: 8px; 315 width: 8px;
316 height: 8px; 316 height: 8px;
...@@ -334,7 +334,7 @@ function goMatch(n) { ...@@ -334,7 +334,7 @@ function goMatch(n) {
334 334
335 //li:hover { 335 //li:hover {
336 // color: #fff; 336 // color: #fff;
337 // background: linear-gradient(-90deg, #8623FC, #453DEA); 337 // background: #000;
338 // 338 //
339 // label { 339 // label {
340 // color: #fff; 340 // color: #fff;
...@@ -362,7 +362,7 @@ function goMatch(n) { ...@@ -362,7 +362,7 @@ function goMatch(n) {
362 } 362 }
363 363
364 :deep(.el-calendar__header) { 364 :deep(.el-calendar__header) {
365 background: linear-gradient(90deg, #8623FC, #453DEA); 365 background: #000;
366 height: 50px; 366 height: 50px;
367 line-height: 50px; 367 line-height: 50px;
368 } 368 }
......
...@@ -239,7 +239,7 @@ function disabledDateRZ(date) { ...@@ -239,7 +239,7 @@ function disabledDateRZ(date) {
239 239
240 .primaryDate { 240 .primaryDate {
241 color: #fff; 241 color: #fff;
242 background: linear-gradient(90deg, #8623FC, #453DEA); 242 background: #000;
243 } 243 }
244 244
245 .date { 245 .date {
...@@ -290,7 +290,7 @@ function disabledDateRZ(date) { ...@@ -290,7 +290,7 @@ function disabledDateRZ(date) {
290 290
291 li::before { 291 li::before {
292 content: ''; 292 content: '';
293 background: linear-gradient(0deg, #8623FC, #453DEA); 293 background: #000;
294 border-radius: 50%; 294 border-radius: 50%;
295 width: 8px; 295 width: 8px;
296 height: 8px; 296 height: 8px;
...@@ -314,7 +314,7 @@ function disabledDateRZ(date) { ...@@ -314,7 +314,7 @@ function disabledDateRZ(date) {
314 314
315 //li:hover { 315 //li:hover {
316 // color: #fff; 316 // color: #fff;
317 // background: linear-gradient(-90deg, #8623FC, #453DEA); 317 // background: #000;
318 // 318 //
319 // label { 319 // label {
320 // color: #fff; 320 // color: #fff;
...@@ -344,7 +344,7 @@ function disabledDateRZ(date) { ...@@ -344,7 +344,7 @@ function disabledDateRZ(date) {
344 } 344 }
345 345
346 :deep(.el-calendar__header) { 346 :deep(.el-calendar__header) {
347 background: linear-gradient(90deg, #8623FC, #453DEA); 347 background: #000;
348 height: 50px; 348 height: 50px;
349 line-height: 50px; 349 line-height: 50px;
350 } 350 }
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 </div> 7 </div>
8 <!-- {{room}}--> 8 <!-- {{room}}-->
9 <el-row class="pd20" :gutter="20"> 9 <el-row class="pd20" :gutter="20">
10 <el-col :span="14"> 10 <el-col :lg="14">
11 <div class="border-info"> 11 <div class="border-info">
12 <h3>{{ restaurant.name }}</h3> 12 <h3>{{ restaurant.name }}</h3>
13 <div class="room"> 13 <div class="room">
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
59 </el-form> 59 </el-form>
60 </div> 60 </div>
61 </el-col> 61 </el-col>
62 <el-col :span="10"> 62 <el-col :lg="10">
63 <div class="leftboderTT">{{ language == 0 ? '订单明细' : 'Order details' }}</div> 63 <div class="leftboderTT">{{ language == 0 ? '订单明细' : 'Order details' }}</div>
64 <div class="border-rr mt20 pd20 ccitemBox"> 64 <div class="border-rr mt20 pd20 ccitemBox">
65 <label> {{food.name }}</label> 65 <label> {{food.name }}</label>
...@@ -78,12 +78,12 @@ ...@@ -78,12 +78,12 @@
78 78
79 <el-card class="mt30"> 79 <el-card class="mt30">
80 <el-row justify="space-between" align="middle"> 80 <el-row justify="space-between" align="middle">
81 <el-col :span="12"> 81 <el-col :lg="12">
82 <label>{{ language == 0 ? '共计金额' : 'Total' }} 82 <label>{{ language == 0 ? '共计金额' : 'Total' }}
83 <span class=" text-warning"> {{ language == 0 ? '¥' : '€' }}<span class="bigMoney">{{ form.total }}</span></span> 83 <span class=" text-warning"> {{ language == 0 ? '¥' : '€' }}<span class="bigMoney">{{ form.total }}</span></span>
84 </label> 84 </label>
85 </el-col> 85 </el-col>
86 <el-col :span="12" class="text-right"> 86 <el-col :lg="12" class="text-right">
87 <el-button type="primary" size="large" class="btn-lineG w200px" @click="submit" round>{{ language == 0 ?'确认付款':'Pay' }}</el-button> 87 <el-button type="primary" size="large" class="btn-lineG w200px" @click="submit" round>{{ language == 0 ?'确认付款':'Pay' }}</el-button>
88 </el-col> 88 </el-col>
89 </el-row> 89 </el-row>
...@@ -338,4 +338,8 @@ function submit() { ...@@ -338,4 +338,8 @@ function submit() {
338 color: #FF8124; 338 color: #FF8124;
339 } 339 }
340 .tip{font-size: 14px;color: #666;padding: 0 10px;} 340 .tip{font-size: 14px;color: #666;padding: 0 10px;}
341
342 @media screen and (max-width: 768px) {
343 .leftboderTT{margin: 30px 0 15px;}
344 }
341 </style> 345 </style>
......
...@@ -19,12 +19,12 @@ ...@@ -19,12 +19,12 @@
19 <el-card @click="goDetail(h)"> 19 <el-card @click="goDetail(h)">
20 <!-- 酒店列表--> 20 <!-- 酒店列表-->
21 <el-row class="hotel" align="middle" :gutter="20"> 21 <el-row class="hotel" align="middle" :gutter="20">
22 <el-col :span="6"> 22 <el-col :lg="6" :md="6">
23 <div class="imgbox"> 23 <div class="imgbox">
24 <img class="w100" :src="fillImgUrl(h.photos?.split(',')[0])"/> 24 <img class="w100" :src="fillImgUrl(h.photos?.split(',')[0])"/>
25 </div> 25 </div>
26 </el-col> 26 </el-col>
27 <el-col :span="12"> 27 <el-col :lg="12" :md="12">
28 <h3 class="esp">{{h.name}}</h3> 28 <h3 class="esp">{{h.name}}</h3>
29 <div class="starBox"> 29 <div class="starBox">
30 <img v-for="i in Number(h.starLevel||0)" src="@/assets/booking/star.png"> 30 <img v-for="i in Number(h.starLevel||0)" src="@/assets/booking/star.png">
...@@ -38,11 +38,11 @@ ...@@ -38,11 +38,11 @@
38 {{h.address}} 38 {{h.address}}
39 </p> 39 </p>
40 </el-col> 40 </el-col>
41 <el-col :span="4" class="text-right"> 41 <el-col :lg="4" :md="4" class="text-right">
42 <div class="price">{{ language==0?'¥':'€' }}<span>{{ h.price }}</span> 42 <div class="price">{{ language==0?'¥':'€' }}<span>{{ h.price }}</span>
43 <i v-if="language==0"></i> 43 <i v-if="language==0"></i>
44 </div> 44 </div>
45 <el-button class="btn-lineG w200px" round type="primary" >{{ language==0?'立即预订':'Select' }}</el-button> 45 <el-button class="w200px blackBtn" round type="primary" >{{ language==0?'立即预订':'Select' }}</el-button>
46 </el-col> 46 </el-col>
47 </el-row> 47 </el-row>
48 </el-card> 48 </el-card>
...@@ -116,6 +116,7 @@ ...@@ -116,6 +116,7 @@
116 span{font-size: 36px;margin: 0 8px;font-family: 'DINAlternate-Bold';font-weight: 600;} 116 span{font-size: 36px;margin: 0 8px;font-family: 'DINAlternate-Bold';font-weight: 600;}
117 i{font-style: normal;color: #929AA0;} 117 i{font-style: normal;color: #929AA0;}
118 } 118 }
119 .blackBtn{background: #000;border: #000;}
119 } 120 }
120 .banner{height: 140px;background-size: cover;text-align: center; 121 .banner{height: 140px;background-size: cover;text-align: center;
121 background: url("@/assets/booking/jd_bg.png") center;display: flex;align-items: center; 122 background: url("@/assets/booking/jd_bg.png") center;display: flex;align-items: center;
...@@ -145,4 +146,7 @@ ...@@ -145,4 +146,7 @@
145 span:nth-child(4n+2){background: rgba(0, 160, 233, 0.2);color: rgba(0, 160, 233, 1);} 146 span:nth-child(4n+2){background: rgba(0, 160, 233, 0.2);color: rgba(0, 160, 233, 1);}
146 span:nth-child(4n+3){background: rgba(247, 64, 166, 0.2);color:rgba(247, 64, 166, 1);} 147 span:nth-child(4n+3){background: rgba(247, 64, 166, 0.2);color:rgba(247, 64, 166, 1);}
147 } 148 }
149 @media screen and (max-width: 768px) {
150 .hotel h3{margin: 20px 0 10px; font-size: 18px;}
151 }
148 </style> 152 </style>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
6 <!-- <el-col :span="6">--> 6 <!-- <el-col :span="6">-->
7 <!-- <img class="w100" :src="fillImgUrl(form.photos?.split(',')[0])"/>--> 7 <!-- <img class="w100" :src="fillImgUrl(form.photos?.split(',')[0])"/>-->
8 <!-- </el-col>--> 8 <!-- </el-col>-->
9 <el-col :span="language == 0?16:24"> 9 <el-col :lg="language == 0?16:24">
10 <h3 class="esp flex">{{ form?.name }} 10 <h3 class="esp flex">{{ form?.name }}
11 <div class="starBox ml20"> 11 <div class="starBox ml20">
12 <img v-for="i in Number(form?.starLevel||0)" src="@/assets/booking/star.png"> 12 <img v-for="i in Number(form?.starLevel||0)" src="@/assets/booking/star.png">
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
34 <div :class="showAll?'':'esp_2'" @click="showAll=!showAll" v-html="form.introduction.toString()"></div> 34 <div :class="showAll?'':'esp_2'" @click="showAll=!showAll" v-html="form.introduction.toString()"></div>
35 </div> 35 </div>
36 </el-col> 36 </el-col>
37 <el-col :span="8" class="text-right" v-if="language == 0"> 37 <el-col :lg="8" class="text-right" v-if="language == 0">
38 <div class="mapBox" @click="goMap"> 38 <div class="mapBox" @click="goMap">
39 <div id="map"></div> 39 <div id="map"></div>
40 </div> 40 </div>
...@@ -45,15 +45,15 @@ ...@@ -45,15 +45,15 @@
45 45
46 <div class="mt30"> 46 <div class="mt30">
47 <el-row :gutter="20"> 47 <el-row :gutter="20">
48 <el-col :span="10"> 48 <el-col :lg="10">
49 <div class="imgbox hotelImg"> 49 <div class="imgbox hotelImg">
50 <el-image :src="fillImgUrl(form?.photos?.split(',')[0])" fit="cover" 50 <el-image :src="fillImgUrl(form?.photos?.split(',')[0])" fit="cover"
51 :preview-src-list="form?.photos?.split(',')"/> 51 :preview-src-list="form?.photos?.split(',')"/>
52 </div> 52 </div>
53 </el-col> 53 </el-col>
54 <el-col :span="14"> 54 <el-col :lg="14">
55 <el-row class="h100" :gutter="20"> 55 <el-row class="h100" :gutter="20">
56 <el-col :span="8" class="oddmb" v-for="(p,index) in form?.photos?.split(',').slice(1,7)"> 56 <el-col :lg="8" class="oddmb" v-for="(p,index) in form?.photos?.split(',').slice(1,7)">
57 <div class="imgbox hotelImg"> 57 <div class="imgbox hotelImg">
58 <el-image :src="fillImgUrl(p)" fit="cover"/> 58 <el-image :src="fillImgUrl(p)" fit="cover"/>
59 </div> 59 </div>
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
68 <ul> 68 <ul>
69 <li> 69 <li>
70 {{ language == 0 ? '房型选择' : 'Available Rooms' }} 70 {{ language == 0 ? '房型选择' : 'Available Rooms' }}
71 <span style="margin-left: 100px" @click="initTime"> 71 <span style="margin-left: 50px" @click="initTime">
72 <el-date-picker 72 <el-date-picker
73 @change="getDaysBetween" 73 @change="getDaysBetween"
74 v-model="hotTime" 74 v-model="hotTime"
...@@ -87,12 +87,12 @@ ...@@ -87,12 +87,12 @@
87 <div v-for="(r,index) in roomList" :key="index" class="room" 87 <div v-for="(r,index) in roomList" :key="index" class="room"
88 v-show="language==0?r.roomPrice>0:r.roomPriceEn>0"> 88 v-show="language==0?r.roomPrice>0:r.roomPriceEn>0">
89 <el-row :gutter="30" align="middle"> 89 <el-row :gutter="30" align="middle">
90 <el-col :span="4"> 90 <el-col :lg="4">
91 <div class="roomImg"> 91 <div class="roomImg">
92 <img :src="fillImgUrl(r.photo?.split(',')[0])"> 92 <img :src="fillImgUrl(r.photo?.split(',')[0])">
93 </div> 93 </div>
94 </el-col> 94 </el-col>
95 <el-col :span="14"> 95 <el-col :lg="14">
96 <h3 class="name">{{ r.roomType }}</h3> 96 <h3 class="name">{{ r.roomType }}</h3>
97 <el-row :gutter="10"> 97 <el-row :gutter="10">
98 <el-col :span="8">{{ r.area }}</el-col> 98 <el-col :span="8">{{ r.area }}</el-col>
...@@ -111,12 +111,12 @@ ...@@ -111,12 +111,12 @@
111 <a v-show="r.label?.split(',').length>4">{{ language==0?'更多':'MORE' }} ></a> 111 <a v-show="r.label?.split(',').length>4">{{ language==0?'更多':'MORE' }} ></a>
112 </div> 112 </div>
113 </el-col> 113 </el-col>
114 <el-col :span="3"> 114 <el-col :lg="3" :md="12" :sm="12" :xs="12">
115 <div class="price">{{ 115 <div class="price">{{
116 language == 0 ? '¥' : '€' 116 language == 0 ? '¥' : '€'
117 }}<span>{{ language == 0 ? r.roomPrice : r.roomPriceEn }}</span></div> 117 }}<span>{{ language == 0 ? r.roomPrice : r.roomPriceEn }}</span></div>
118 </el-col> 118 </el-col>
119 <el-col :span="3"> 119 <el-col :lg="3" :md="12" :sm="12" :xs="12">
120 <!-- :disabled="!r.useCount && !hotTime"--> 120 <!-- :disabled="!r.useCount && !hotTime"-->
121 <el-button v-if="language==0" :class="{'forbid':!(!hotTime[0] || r.useCount>0)}" 121 <el-button v-if="language==0" :class="{'forbid':!(!hotTime[0] || r.useCount>0)}"
122 @click="goOrder(r)" class="bg-lineg button"> 122 @click="goOrder(r)" class="bg-lineg button">
...@@ -410,7 +410,7 @@ function goMap() { ...@@ -410,7 +410,7 @@ function goMap() {
410 } 410 }
411 } 411 }
412 412
413 .bg-lineg { 413 .bg-lineg {background: linear-gradient(90deg, #1B69F8, #0540EC);
414 margin: auto; 414 margin: auto;
415 border-radius: 10px; 415 border-radius: 10px;
416 text-align: center; 416 text-align: center;
...@@ -572,4 +572,8 @@ function goMap() { ...@@ -572,4 +572,8 @@ function goMap() {
572 .forbid:hover { 572 .forbid:hover {
573 box-shadow: none; 573 box-shadow: none;
574 } 574 }
575
576 @media screen and (max-width: 768px) {
577 .roomImg{margin: 0 0 20px;}
578 }
575 </style> 579 </style>
......
1 <template> 1 <template>
2 <div> 2 <div>
3 <div class="box"> 3 <div class="box">
4 <el-card :body-style="{ padding: '0px' }" class="mt20"> 4 <el-card :body-style="{ padding: '0px' }" class="mt20 mb30">
5 <div slot="header"> 5 <div slot="header">
6 <div class="bg-lineg">{{ language == 0 ? '酒店预约下单' : 'Hotel booking order' }}</div> 6 <div class="bg-lineg">{{ language == 0 ? '酒店预约下单' : 'Hotel booking order' }}</div>
7 </div> 7 </div>
8 <!-- {{room}}--> 8 <!-- {{room}}-->
9 <el-row class="pd20" :gutter="20"> 9 <el-row class="pd20" :gutter="20">
10 <el-col :span="14"> 10 <el-col :lg="14">
11 <div class="border-info"> 11 <div class="border-info">
12 <h3>{{ hotelName }}</h3> 12 <h3>{{ hotelName }}</h3>
13 <div class="roomType">{{ room.roomType }}</div> 13 <div class="roomType">{{ room.roomType }}</div>
...@@ -88,7 +88,7 @@ ...@@ -88,7 +88,7 @@
88 </el-form> 88 </el-form>
89 </div> 89 </div>
90 </el-col> 90 </el-col>
91 <el-col :span="10"> 91 <el-col :lg="10">
92 <div class="leftboderTT">{{ language == 0 ? '订单明细' : 'Order details' }}</div> 92 <div class="leftboderTT">{{ language == 0 ? '订单明细' : 'Order details' }}</div>
93 <div class="border-rr mt20 pd20 ccitemBox"> 93 <div class="border-rr mt20 pd20 ccitemBox">
94 <label> {{ language == 0 ? '房费' : 'Room fee' }} 94 <label> {{ language == 0 ? '房费' : 'Room fee' }}
...@@ -127,7 +127,7 @@ ...@@ -127,7 +127,7 @@
127 </el-row> 127 </el-row>
128 </el-card> 128 </el-card>
129 129
130 <el-card class="mt30"> 130 <el-card class="mt30 mb30">
131 <el-row justify="space-between" align="middle"> 131 <el-row justify="space-between" align="middle">
132 <el-col :span="12"> 132 <el-col :span="12">
133 <label>{{ language == 0 ? '共计金额' : 'Total' }} 133 <label>{{ language == 0 ? '共计金额' : 'Total' }}
...@@ -508,7 +508,7 @@ function submit() { ...@@ -508,7 +508,7 @@ function submit() {
508 .leftboderTT { 508 .leftboderTT {
509 font-weight: 600; 509 font-weight: 600;
510 font-size: 16px; 510 font-size: 16px;
511 color: #453DEA; 511 color: var(--el-color-primary);
512 } 512 }
513 513
514 .border-rr { 514 .border-rr {
...@@ -559,4 +559,8 @@ function submit() { ...@@ -559,4 +559,8 @@ function submit() {
559 color: #FF8124; 559 color: #FF8124;
560 } 560 }
561 .tip{font-size: 14px;color: #666;padding: 0 10px;} 561 .tip{font-size: 14px;color: #666;padding: 0 10px;}
562
563 @media screen and (max-width: 768px) {
564 .leftboderTT{margin: 30px 0 15px;}
565 }
562 </style> 566 </style>
......
...@@ -454,7 +454,7 @@ li img { ...@@ -454,7 +454,7 @@ li img {
454 454
455 .active { 455 .active {
456 color: #fff; 456 color: #fff;
457 background: linear-gradient(90deg, #8623FC, #453DEA); 457 background: #000;
458 border-radius: 20px; 458 border-radius: 20px;
459 } 459 }
460 @media (max-width: 500px) { 460 @media (max-width: 500px) {
......
...@@ -153,7 +153,7 @@ fieldset { ...@@ -153,7 +153,7 @@ fieldset {
153 } 153 }
154 154
155 &.is-active { 155 &.is-active {
156 background: linear-gradient(90deg, #8623FC, #453DEA); 156 background: #000;
157 157
158 .el-radio-button__inner { 158 .el-radio-button__inner {
159 color: #fff; 159 color: #fff;
......
...@@ -99,7 +99,7 @@ function goMatch(n) { ...@@ -99,7 +99,7 @@ function goMatch(n) {
99 99
100 .primaryDate { 100 .primaryDate {
101 color: #fff; 101 color: #fff;
102 background: linear-gradient(90deg, #8623FC, #453DEA); 102 background: #000;
103 } 103 }
104 104
105 .date { 105 .date {
...@@ -129,7 +129,7 @@ function goMatch(n) { ...@@ -129,7 +129,7 @@ function goMatch(n) {
129 font-size: 15px; 129 font-size: 15px;
130 130
131 label { 131 label {
132 color: #453DEA; 132 color: #000;
133 margin-right: 15px; 133 margin-right: 15px;
134 134
135 &::before { 135 &::before {
...@@ -150,7 +150,7 @@ function goMatch(n) { ...@@ -150,7 +150,7 @@ function goMatch(n) {
150 150
151 li::before { 151 li::before {
152 content: ''; 152 content: '';
153 background: linear-gradient(0deg, #8623FC, #453DEA); 153 background: #000;
154 border-radius: 50%; 154 border-radius: 50%;
155 width: 8px; 155 width: 8px;
156 height: 8px; 156 height: 8px;
...@@ -174,7 +174,7 @@ function goMatch(n) { ...@@ -174,7 +174,7 @@ function goMatch(n) {
174 174
175 li:hover { 175 li:hover {
176 color: #fff; 176 color: #fff;
177 background: linear-gradient(-90deg, #8623FC, #453DEA); 177 background: #000;
178 178
179 label { 179 label {
180 color: #fff; 180 color: #fff;
......
1 <template> 1 <template>
2 <div class="itemBox" v-if="language == 0"> 2 <div class="itemBox" v-if="language === 0">
3 <el-row :gutter="20"> 3 <el-row :gutter="0" justify="space-around">
4 <el-col :sm="12" :lg="8" :xs="12"> 4 <el-col :sm="12" :lg="4" :xs="12">
5 <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn01.png">酒店预订</div> 5 <div class="item" @click="building"><img src="@/assets/dance/btn01.png">签证服务</div>
6 </el-col> 6 </el-col>
7 <el-col :sm="12" :lg="8" :xs="12"> 7 <el-col :sm="12" :lg="4" :xs="12">
8 <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn02.png">车辆预订</div> 8 <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn02.png">酒店预订</div>
9 </el-col> 9 </el-col>
10 <el-col :sm="12" :lg="8" :xs="12"> 10 <el-col :sm="12" :lg="4" :xs="12">
11 <div class="item" @click="popRemark(3)"><img src="@/assets/dance/btn03.png">餐饮预订</div> 11 <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn03.png">接送服务</div>
12 </el-col> 12 </el-col>
13 <el-col :sm="12" :lg="8" :xs="12"> 13 <el-col :sm="12" :lg="4" :xs="12">
14 <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn04.png">票务预订</div> 14 <div class="item" @click="goAbout"><img src="@/assets/dance/btn04.png">场馆介绍</div>
15 </el-col> 15 </el-col>
16 <el-col :sm="12" :lg="8" :xs="12"> 16 <el-col :sm="12" :lg="4" :xs="12">
17 <div class="item" @click="popRemark(4)"><img src="@/assets/dance/btn05.png">化妆预约</div> 17 <div class="item" @click="liveClick"><img src="@/assets/dance/btn05.png">赛事直播</div>
18 </el-col>
19 <el-col :sm="12" :lg="8" :xs="12">
20 <div class="item" @click="popRemark(5)"><img src="@/assets/dance/btn06.png">拍照预约</div>
21 </el-col> 18 </el-col>
22 </el-row> 19 </el-row>
23 </div> 20 </div>
24 <div class="itemBox_en" v-else> 21 <div class="itemBox_en" v-else>
25 <el-row :gutter="20"> 22 <el-row :gutter="20" justify="space-around">
26 <el-col :sm="12" :lg="8" :xs="12"> 23 <el-col :sm="12" :lg="4" :xs="12">
27 <div class="item_en" @click="popRemark(1)"><img src="@/assets/dance/btn01.png"> 24 <div class="item" @click="building"><img src="@/assets/dance/btn01.png">Visa Services</div>
28 <p>HOTEL RESERVATION</p>
29 </div>
30 </el-col>
31 <el-col :sm="12" :lg="8" :xs="12">
32 <div class="item_en" @click="popRemark(2)"><img src="@/assets/dance/btn02.png">
33 <p>TRANSPORTATION RESERVATION</p>
34 </div>
35 </el-col> 25 </el-col>
36 <el-col :sm="12" :lg="8" :xs="12"> 26 <el-col :sm="12" :lg="4" :xs="12">
37 <div class="item_en" @click="popRemark(3)"><img src="@/assets/dance/btn03.png"> 27 <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn02.png">HOTEL RESERVATION</div>
38 <p>DINING RESERVATION</p>
39 </div>
40 </el-col> 28 </el-col>
41 <el-col :sm="12" :lg="8" :xs="12"> 29 <el-col :sm="12" :lg="4" :xs="12">
42 <div class="item_en" @click="popRemark(0)"> 30 <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn03.png">TRANSPORTATION RESERVATION</div>
43 <img src="@/assets/dance/btn04.png">
44 <p>TICKET BOOKING</p>
45 </div>
46 </el-col> 31 </el-col>
47 <el-col :sm="12" :lg="8" :xs="12"> 32 <el-col :sm="12" :lg="4" :xs="12">
48 <div class="item_en" @click="popRemark(4)"><img src="@/assets/dance/btn05.png"> 33 <div class="item" @click="goAbout"><img src="@/assets/dance/btn04.png">Venue Introduction</div>
49 <p>MAKEUP APPOINTMENT</p>
50 </div>
51 </el-col> 34 </el-col>
52 <el-col :sm="12" :lg="8" :xs="12"> 35 <el-col :sm="12" :lg="4" :xs="12">
53 <div class="item_en" @click="popRemark(5)"><img src="@/assets/dance/btn06.png"> 36 <div class="item" @click="liveClick"><img src="@/assets/dance/btn05.png">live streaming</div>
54 <p>PHOTOGRAPHY APPOINTMENT</p>
55 </div>
56 </el-col> 37 </el-col>
57 </el-row> 38 </el-row>
58 </div> 39 </div>
...@@ -72,6 +53,7 @@ import {ElMessage} from "element-plus"; ...@@ -72,6 +53,7 @@ import {ElMessage} from "element-plus";
72 import {getCurrentInstance} from "@vue/runtime-core"; 53 import {getCurrentInstance} from "@vue/runtime-core";
73 import {computed, onMounted, watch} from "vue"; 54 import {computed, onMounted, watch} from "vue";
74 import {getBaseInfoByActiveId} from "@/apiPc/booking"; 55 import {getBaseInfoByActiveId} from "@/apiPc/booking";
56 import * as match from "@/apiPc/match";
75 57
76 const props = defineProps({ 58 const props = defineProps({
77 matchId: { 59 matchId: {
...@@ -87,6 +69,7 @@ const props = defineProps({ ...@@ -87,6 +69,7 @@ const props = defineProps({
87 }) 69 })
88 const language = useStorage('language', 0) 70 const language = useStorage('language', 0)
89 const form = ref({}) 71 const form = ref({})
72 const liveData = ref({})
90 const matchId = computed(() => props.matchId); 73 const matchId = computed(() => props.matchId);
91 74
92 watch(matchId, (val) => { 75 watch(matchId, (val) => {
...@@ -97,9 +80,30 @@ watch(matchId, (val) => { ...@@ -97,9 +80,30 @@ watch(matchId, (val) => {
97 console.log(err) 80 console.log(err)
98 form.value = null 81 form.value = null
99 }) 82 })
83
84 match.getInfoByCptId({ cptId:props.matchId }).then((res) => {
85 liveData.value = res.data || {}
86 })
100 } 87 }
101 }) 88 })
102 89
90 const liveClick = () => {
91 if (liveData.value.videoStatus=="1") {
92
93 if(language.value==0){
94
95 window.open(liveData.value.videoUrlCn)
96 } else {
97 window.open(liveData.value.videoUrlEn)
98 }
99 } else {
100 ElMessage.warning(language.value == 0 ? '暂无直播' : 'No live')
101 }
102 }
103
104 const goAbout = () => {
105 router.push({path: `/about/wuDao`})
106 }
103 onMounted(() => { 107 onMounted(() => {
104 108
105 }) 109 })
...@@ -168,61 +172,37 @@ function goBooking(n) { ...@@ -168,61 +172,37 @@ function goBooking(n) {
168 </script> 172 </script>
169 173
170 <style scoped lang="scss"> 174 <style scoped lang="scss">
171 .itemBox { 175 .itemBox,.itemBox_en {
172 padding: 20px 40px; 176 padding: 20px 0;background: #fff;box-shadow: 0 0 46px 0 rgba(1,16,64,0.08);
177 border-radius: 20px;margin-bottom: 22px;
173 } 178 }
174 179
175 .itemBox_en {
176 padding: 20px 40px;
177
178 p {
179 margin: 0;
180 height: 40px;
181 line-height: 20px;
182 display: flex;
183 align-items: center;
184 }
185 }
186 180
187 .item { 181 .item {
188 box-shadow: 0px 0px 21px 0px rgba(41, 23, 101, 0.14); 182 box-shadow: 0px 0px 21px 0px rgba(41, 23, 101, 0.14);
189 margin: 10px 0; 183 margin: 10px 0;
190 display: flex; 184 display: flex;
191 align-items: center; 185 align-items: center;
192 font-size: 22px; 186 font-size: 20px;
193 background: url("@/assets/dance/btn_bg.png") no-repeat left #FFFFFF; 187 background: url("@/assets/dance/btn_bg.png") no-repeat left #FFFFFF;
194 background-size: 100% 100%; 188 background-size: 100% 100%;
195 border-radius: 15px; 189 border-radius: 15px;
196 190
197 img { 191 img {
198 margin: 0 5%; 192 margin: 0 5%;width: 75px;
199 } 193 }
200 } 194 }
201 195 .itemBox_en{}
202 .item_en { 196 .itemBox_en .item {
203 box-shadow: 0px 0px 21px 0px rgba(41, 23, 101, 0.14); 197 flex-direction: column;text-align: center;text-transform: uppercase;
204 margin: 40px 0 0; 198 height: 100%;
205 cursor: pointer;
206 display: flex;
207 align-items: center;
208 text-align: center;
209 color: #333;
210 font-size: 18px;
211 flex-direction: column;
212 padding: 35px 10px 20px;
213 background: url("@/assets/dance/znbb.png") no-repeat left #FFFFFF;
214 background-size: cover;
215 position: relative;
216 border-radius: 15px;
217
218 img { 199 img {
219 position: absolute; 200 position: relative;
220 top: -30px;
221 transition: all 0.2s; 201 transition: all 0.2s;
222 } 202 }
223 203
224 &:hover { 204 &:hover {
225 box-shadow: 0 0 10px #333; 205 box-shadow: 0 0 10px #eee;
226 206
227 img { 207 img {
228 transform: rotateY(180deg); 208 transform: rotateY(180deg);
......
1 <template>
2 <div class="box weatherLine">
3 <el-row :gutter="20" align="middle" style="height: 100%;">
4 <el-col :sm="24" :lg="10">
5 <!--天气-->
6 <div class="leftFlex">
7 <div class="smallToday">
8 <div class="type">
9 <weather-icon :type="weatherObj.forecast[0]?.type" :width="50"/>
10 </div>
11 <div class="wd_p">
12 <!-- {{ weatherObj.forecast[0]?.low.slice(2) }}~-->
13 {{ weatherObj.forecast[0]?.high.slice(2) }}
14 </div>
15 </div>
16 <div>{{ language ==0?'无锡':'Wuxi' }}</div>
17 <div>{{dayjs().month()<9?'0':''}}{{dayjs().month()+1}} / {{dayjs().date()}}</div>
18 <div v-if="language ==0">{{week[dayjs().day()]}}</div>
19 <div v-else>{{weekEn[dayjs().day()]}}</div>
20 <div class="forPc">{{dayjs().hour()<10?'0':''}}{{dayjs().hour()}}:{{dayjs().minute()<10?'0':''}}{{dayjs().minute()}}</div>
21 </div>
22 </el-col>
23 <el-col :sm="24" :lg="14">
24 <el-button round class="searchfw">
25 <el-icon class="mr20">
26 <Search/>
27 </el-icon>
28 服务查询
29 </el-button>
30 </el-col>
31 </el-row>
32 </div>
33 </template>
34
35 <script setup>
36 import {onMounted, ref} from "vue"
37 import useUserStore from '@/store/modules/user'
38 import WeatherIcon from '@/viewsPc/components/weatherIcon'
39 import {getWeather} from "@/apiPc/webSite"
40 import dayjs from "dayjs"
41 const language = useUserStore().language
42 const weatherObj = ref({
43 forecast:[]
44 })
45 const week = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六']
46 const weekEn = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday']
47 onMounted(()=>{
48 if(useUserStore().weather == null){
49 init()
50 }
51 })
52 function init(){
53 getWeather().then(res=>{
54 weatherObj.value = JSON.parse(res.data).data
55 useUserStore().setWeather(weatherObj.value)
56 })
57 }
58 </script>
59
60 <style scoped lang="scss">
61 .weatherLine {padding: 12px;
62 background: linear-gradient(90deg, #0557EC, #0540EC, #013499);
63 border-radius: 45px;
64 color: #fff;
65 }
66 .leftFlex{display: flex;align-items: center;justify-content: space-between;
67 > div{background: url("@/assets/dance/line.png") no-repeat right;width: 20%;
68 justify-content: center;
69 min-height: 56px;
70 display: flex;
71 align-items: center;}
72 .smallToday{
73 width: 30%;
74 .wd_p{font-size: 18px;}
75 }
76 }
77 .smallToday{display: flex;align-items: center;
78 .type{margin-right: 10px;}
79 h3{margin: 0 0 10px;}
80 }
81 .searchfw{width: 100%;height:65px;border-radius: 100px;font-size: 24px;}
82
83 @media screen and (max-width: 768px) {
84 .forPc{display: none;}
85 .weatherLine{border-radius: 15px}
86 .leftFlex {margin-bottom: 15px;
87 .smallToday{width: 40%;
88 }
89 }
90 .leftFlex > div{font-size: 12px; width: 15%;}
91 .searchfw{font-size: 18px;height: 40px;}
92 }
93 </style>
...@@ -175,7 +175,7 @@ function showDetail(name) { ...@@ -175,7 +175,7 @@ function showDetail(name) {
175 cursor: pointer;border: 1px solid #e1e1e1;border-radius: 4px; 175 cursor: pointer;border: 1px solid #e1e1e1;border-radius: 4px;
176 width: 350px;text-align: center;line-height: 130px; 176 width: 350px;text-align: center;line-height: 130px;
177 padding: 1px; font-size: 30px;color: #fff; 177 padding: 1px; font-size: 30px;color: #fff;
178 margin: 20px auto;background:linear-gradient(90deg, #8623FC, #453DEA); 178 margin: 20px auto;background:#000;
179 &:hover{ 179 &:hover{
180 background:linear-gradient(90deg, #453DEA, #8623FC); 180 background:linear-gradient(90deg, #453DEA, #8623FC);
181 box-shadow: 0 4px 10px #453DEA;border: none; 181 box-shadow: 0 4px 10px #453DEA;border: none;
......
...@@ -236,7 +236,7 @@ function showDetail(name) { ...@@ -236,7 +236,7 @@ function showDetail(name) {
236 cursor: pointer;border: 1px solid #e1e1e1;border-radius: 4px; 236 cursor: pointer;border: 1px solid #e1e1e1;border-radius: 4px;
237 width: 350px;text-align: center;line-height: 130px; 237 width: 350px;text-align: center;line-height: 130px;
238 padding: 1px; font-size: 30px;color: #fff; 238 padding: 1px; font-size: 30px;color: #fff;
239 margin: 20px auto;background:linear-gradient(90deg, #8623FC, #453DEA); 239 margin: 20px auto;background:#000;
240 &:hover{ 240 &:hover{
241 background:linear-gradient(90deg, #453DEA, #8623FC); 241 background:linear-gradient(90deg, #453DEA, #8623FC);
242 box-shadow: 0 4px 10px #453DEA;border: none; 242 box-shadow: 0 4px 10px #453DEA;border: none;
......
...@@ -61,9 +61,6 @@ ...@@ -61,9 +61,6 @@
61 </div> 61 </div>
62 </el-dialog> 62 </el-dialog>
63 </div> 63 </div>
64 <div class="poCode">
65 <el-image :preview-src-list="['/img/code.jpg']" hide-on-click-modal="true" style="width: 120px;height: 120px;" src="/img/code.jpg"/>
66 </div>
67 <dialog-master-class ref="masterClassRef"/> 64 <dialog-master-class ref="masterClassRef"/>
68 <pick-up ref="pickupRef"></pick-up> 65 <pick-up ref="pickupRef"></pick-up>
69 <back-number ref="backNumberRef"></back-number> 66 <back-number ref="backNumberRef"></back-number>
......
1 <template> 1 <template>
2 <div> 2 <div>
3 <div class="banner"> 3 <div class="banner">
4 <el-carousel class="forPc" autoplay :interval="2000" height="450px" :autoplay="false" arrow="hover" @change="carouselChange"> 4 <el-carousel class="forPc" autoplay :interval="2000" height="450px" :autoplay="false" arrow="hover"
5 @change="carouselChange">
5 <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id"> 6 <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id">
6 <div class="bannerItem"> 7 <div class="bannerItem">
7 <div class="h100" @click.stop="goMatch(n)"> 8 <div class="h100" @click.stop="goMatch(n)">
8 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> 9 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)">
9 <img v-else class="bannerImg" src="@/assets/dance/banner.png"> 10 <img v-else class="bannerImg" src="@/assets/dance/banner.png">
10 <div class="box forPc" style="position: absolute;top: 0;left: 0;right: 0;margin: auto;"> 11 <div class="box forPc" style="position: absolute;top: 0;left: 0;right: 0;margin: auto;">
11 <div class="banner-count" v-if="n.time>0" @click="goMatch(n)"> 12 <div v-if="!liveData || liveData.videoStatus==0">
12 距离开始还有 13 <!-- <div class="banner-count bb"></div>-->
13 <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> 14 </div>
15 <div class="banner-count" v-if="currentDateTime < liveData.videoStart" @click="goliveUrl">
16 距离直播开始
17 <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒">
14 <template #default="timeData"> 18 <template #default="timeData">
15 <div class="block">{{ timeData.days }} 19 <div class="block">{{ timeData.days }}
16 <span class="colon"></span> 20 <span class="colon"></span>
...@@ -30,14 +34,16 @@ ...@@ -30,14 +34,16 @@
30 </template> 34 </template>
31 </van-count-down> 35 </van-count-down>
32 </div> 36 </div>
33 <div v-if="n.timeEnd<0"> 37 <!--如果有直播-->
34 38 <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl">
35 <div class="banner-count bb" @click="goMatch(n)"> 39 <div class="banner-count bb" v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)">直播进行中</div>
36 报名已结束 40 <div class="banner-count bb" v-if="currentDateTime > liveData.videoEnd">直播已结束</div>
37 </div> 41 <!-- <div class="banner-count bb" v-if="currentDateTime < liveData.videoStart">直播即将开始</div>-->
38 </div> 42 </div>
39 <div class="banner-count bb" v-if="n.time<=0 && n.timeEnd>=0" @click="goMatch(n)"> 43 <div v-if="liveData&& liveData.picStatus==1" @click.stop="gopicliveUrl">
40 开始报名 44 <div class="picliveBtn" v-if="(currentDateTime>liveData.picStart)&&(currentDateTime<liveData.picEnd)">图片直播中</div>
45 <div class="picliveBtn" v-if="currentDateTime > liveData.picEnd">图片直播</div>
46 <div class="picliveBtn" v-if="currentDateTime < liveData.picStart">图片直播</div>
41 </div> 47 </div>
42 </div> 48 </div>
43 </div> 49 </div>
...@@ -51,9 +57,9 @@ ...@@ -51,9 +57,9 @@
51 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> 57 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)">
52 <img v-else class="bannerImg" src="@/assets/dance/banner.png"> 58 <img v-else class="bannerImg" src="@/assets/dance/banner.png">
53 <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> 59 <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;">
54 <div class="banner-count" v-if="n.time>0" @click="goMatch(n)"> 60 <div class="banner-count" v-if="currentDateTime < liveData.videoStart" @click="goliveUrl">
55 距离开始还有 61 距离直播开始
56 <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> 62 <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒">
57 <template #default="timeData"> 63 <template #default="timeData">
58 <div class="block">{{ timeData.days }} 64 <div class="block">{{ timeData.days }}
59 <span class="colon"></span> 65 <span class="colon"></span>
...@@ -73,38 +79,9 @@ ...@@ -73,38 +79,9 @@
73 </template> 79 </template>
74 </van-count-down> 80 </van-count-down>
75 </div> 81 </div>
76 <div v-if="n.timeEnd<0"> 82 <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl">
77 <!-- <a target="_blank" href="https://wx.vzan.com/live/page/1151815649?v=1720589464698" class="banner-count" v-if="time>0&&n.id=='1778253367748993026'" @click="goMatch(n)">--> 83 <div class="banner-count" v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)">直播进行中</div>
78 <!-- <van-count-down :time="time" format="DD 天 HH 时 mm 分 ss 秒">--> 84 <div class="banner-count" v-if="currentDateTime > liveData.videoEnd">直播已结束</div>
79 <!-- <template #default="timeData">-->
80 <!-- <div class="block">{{ timeData.days }}-->
81 <!-- <span class="colon">天</span>-->
82 <!-- </div>-->
83 <!-- :-->
84 <!-- <div class="block">{{ timeData.hours }}-->
85 <!-- <span class="colon">时</span>-->
86 <!-- </div>-->
87 <!-- :-->
88 <!-- <div class="block">{{ timeData.minutes }}-->
89 <!-- <span class="colon">分</span>-->
90 <!-- </div>-->
91 <!-- :-->
92 <!-- <div class="block">{{ timeData.seconds }}-->
93 <!-- <span class="colon">秒</span>-->
94 <!-- </div>-->
95 <!-- </template>-->
96 <!-- </van-count-down>-->
97 <!-- 开始直播-->
98 <!-- </a>-->
99 <!-- <a target="_blank" href="https://wx.vzan.com/live/page/1151815649?v=1720589464698" class="banner-count bb" v-else-if="time<=0&&n.id=='1778253367748993026'" @click="goMatch(n)">-->
100 <!-- 直播进行中-->
101 <!-- </a>-->
102 <div class="banner-count bb" @click="goMatch(n)">
103 报名已结束
104 </div>
105 </div>
106 <div class="banner-count bb" v-if="n.time<=0 && n.timeEnd>=0" @click="goMatch(n)">
107 开始报名
108 </div> 85 </div>
109 </div> 86 </div>
110 </div> 87 </div>
...@@ -113,101 +90,37 @@ ...@@ -113,101 +90,37 @@
113 </el-carousel> 90 </el-carousel>
114 </div> 91 </div>
115 92
116 <div class="box zn-bg"> 93 <div class="box">
117 <div class="zn-Box"> 94 <HomeQuick :match-id="matchData?.id" :cpt-name="matchData?.name"/>
118 <img class="bbbg" v-if="matchData?.logoUrl" :src="fillImgUrl(matchData.logoUrl)"/>
119 <el-row style="align-items: center">
120 <el-col :sm="24" :lg="10">
121 <div class="bgbg">
122 <h1 style="color: #fff">{{matchData?.name}}</h1>
123 <a class="zn-btn" @click="goGuide" target="_blank" >参赛指南
124 <el-icon>
125 <download/>
126 </el-icon>
127 </a>
128 <!-- <a class="zn-btn ml20 btn-q forPc" v-show="matchData?.id=='1778253367748993026'" @click="popMaster">青少年公益课报名</a>-->
129 <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">背号查询</a>
130 <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="schSearch">日程查询</a>
131 </div>
132 </el-col>
133 <el-col :sm="24" :lg="14">
134 <HomeQuick :match-id="matchData?.id" :cpt-name="matchData?.name"/>
135 </el-col>
136 </el-row>
137 </div>
138 </div> 95 </div>
139 96
97 <home-weather-bar/>
140 98
141 <div id="part0" class="box part"> 99 <div id="part0" class="box part">
142 <el-row :gutter="20"> 100 <el-row :gutter="20">
143 <el-col :sm="24" :lg="12"> 101 <el-col :sm="24" :lg="12">
144 <div class="indexTitle"> 102 <div class="indexTitle">
145 <h3 class="leftboderTT">赛事日程</h3> 103 <h3 class="leftboderTT">通知公告</h3>
146 <a class="more" href="#/saiC">MORE</a> 104 <a class="more" href="#/notice">MORE</a>
147 </div> 105 </div>
148 <!--赛事日历--> 106 <el-card :body-style="{'padding':'10px 20px 18px'}">
149 <el-card :body-style="{'padding':'20px 20px'}"> 107 <div v-for="(n,index) in newsList" :key="index" class="newline" @click="goDetail(n)">
150 <home-calendar/> 108 <h3>{{ n.name }}</h3>
109 <span class="date">{{n.belongTime}}</span>
110 </div>
151 </el-card> 111 </el-card>
152 </el-col> 112 </el-col>
153 <el-col :sm="24" :lg="12"> 113 <el-col :sm="24" :lg="12">
154 <div class="indexTitle"> 114 <div class="indexTitle">
155 <h3 class="leftboderTT">奖牌榜(2023)</h3> 115 <h3 class="leftboderTT">赛事日程</h3>
156 <a class="more" href="#/saiC">MORE</a> 116 <a class="more" href="#/saiC">MORE</a>
157 </div> 117 </div>
158 <!--历史排名--> 118 <!--赛事日历-->
159 <el-card :body-style="{'padding':'10px 20px 18px'}"> 119 <el-card :body-style="{'padding':'18px 20px 20px'}">
160 <el-table stripe :data="rankList"> 120 <home-calendar/>
161 <el-table-column label="名次" align="center" width="50" type="index">
162 <template #default="scope">
163 <span v-if="scope.row.index == 1" style="color:#F8A617">{{ scope.row.index }}</span>
164 <span v-else-if="scope.row.index == 2" style="color:#778B92">{{ scope.row.index }}</span>
165 <span v-else-if="scope.row.index == 3" style="color:#7F2D00">{{ scope.row.index }}</span>
166 <span v-else>{{ scope.row.index }}</span>
167 </template>
168 </el-table-column>
169
170 <el-table-column label="国家" prop="name">
171 <template #default="scope">
172 <div>
173 <span :class="`flag-icon flag-icon-${scope.row.code}`"></span>
174 {{ scope.row.gj }}
175 </div>
176 </template>
177 </el-table-column>
178 <el-table-column label="组合" align="center">
179 <template #default="scope">
180 <div class="text-primary esp">{{ scope.row.name }}</div>
181 </template>
182 </el-table-column>
183 <el-table-column width="60">
184 <template #header>
185 <img class="mauto" src="@/assets/dance/1.png">
186 </template>
187 <template #default="scope">
188 <div class="text-warning text-center">{{ scope.row.jin }}</div>
189 </template>
190 </el-table-column>
191 <el-table-column width="60">
192 <template #header>
193 <img class="mauto" src="@/assets/dance/2.png">
194 </template>
195 <template #default="scope">
196 <div class="text-blue text-center">{{ scope.row.yin }}</div>
197 </template>
198 </el-table-column>
199 <el-table-column width="60">
200 <template #header>
201 <img class="mauto" src="@/assets/dance/3.png">
202 </template>
203 <template #default="scope">
204 <div class="text-primary text-center">{{ scope.row.tong }}</div>
205 </template>
206 </el-table-column>
207 </el-table>
208
209 </el-card> 121 </el-card>
210 </el-col> 122 </el-col>
123
211 </el-row> 124 </el-row>
212 </div> 125 </div>
213 <!-- 新闻 --> 126 <!-- 新闻 -->
...@@ -230,13 +143,13 @@ ...@@ -230,13 +143,13 @@
230 </div> 143 </div>
231 <div class="info"> 144 <div class="info">
232 <div class="date"> 145 <div class="date">
233 {{ n.sortName }} | {{n.belongTime}} 146 {{ n.sortName }} | {{ n.belongTime }}
234 </div> 147 </div>
235 <h3 class="esp">{{ n.name }}</h3> 148 <h3 class="esp">{{ n.name }}</h3>
236 <p class="esp_2" style="height: 40px"> 149 <p class="esp_2" style="height: 40px">
237 {{n.subName}} 150 {{ n.subName }}
238 </p> 151 </p>
239 <a>查看详情</a> 152 <a>查看详情</a>
240 </div> 153 </div>
241 </div> 154 </div>
242 </el-col> 155 </el-col>
...@@ -272,16 +185,16 @@ ...@@ -272,16 +185,16 @@
272 </van-count-down> 185 </van-count-down>
273 </div> 186 </div>
274 <i class="ii" v-else-if="etime>0&&time<=0">直播中</i> 187 <i class="ii" v-else-if="etime>0&&time<=0">直播中</i>
275 <!-- <i class="livetimecount" v-if="etime<=0">直播已结束</i>--> 188 <!-- <i class="livetimecount" v-if="etime<=0">直播已结束</i>-->
276 <div class="imgBox"> 189 <div class="imgBox">
277 <img v-if="time>0" src="/img/111.jpeg"/> 190 <img v-if="time>0" src="/img/111.jpeg"/>
278 <img v-else :src="fillImgUrl_webSite(livelist[0]?.picUrl)"> 191 <img v-else :src="fillImgUrl_webSite(livelist[0]?.picUrl)">
279 </div> 192 </div>
280 <h3 class="esp" v-if="time>0"> 193 <h3 class="esp" v-if="time>0">
281 2024WDSF亚洲体育舞蹈节 194 世锦赛
282 </h3> 195 </h3>
283 <h3 class="esp" v-else> 196 <h3 class="esp" v-else>
284 {{livelist[0]?.name }} 197 {{ livelist[0]?.name }}
285 </h3> 198 </h3>
286 </a> 199 </a>
287 </el-col> 200 </el-col>
...@@ -304,41 +217,25 @@ ...@@ -304,41 +217,25 @@
304 </el-col> 217 </el-col>
305 </el-row> 218 </el-row>
306 <el-row class="news-l-r"> 219 <el-row class="news-l-r">
307 <el-col v-for="(n,index) in livelist" :lg="8" v-show="index>0"> 220 <el-col v-for="(n,index) in livelist" :lg="8" v-show="index>0">
308 <div class="item" style="padding: 0;margin: 20px 0 0" @click="goDetail(n)"> 221 <div class="item" style="padding: 0;margin: 20px 0 0" @click="goDetail(n)">
309 <div class="imgbox"> 222 <div class="imgbox">
310 <i class="playIcon"></i> 223 <i class="playIcon"></i>
311 <img :src="fillImgUrl_webSite(n.picUrl)"></div> 224 <img :src="fillImgUrl_webSite(n.picUrl)"></div>
312 <div class="info"> 225 <div class="info">
313 <div class="text-primary small-size"> 226 <div class="small-size text-gray">
314 <span v-if="n.subName">{{n.subName + ' | '}}</span> 227 <span v-if="n.subName">{{ n.subName + ' | ' }}</span>
315 {{ n.belongTime }}</div> 228 {{ n.belongTime }}
229 </div>
316 <h2 class="esp_2">{{ n.name }}</h2> 230 <h2 class="esp_2">{{ n.name }}</h2>
317 </div> 231 </div>
318 </div> 232 </div>
319 </el-col> 233 </el-col>
320 </el-row> 234 </el-row>
321 </el-card> 235 </el-card>
322
323 </div> 236 </div>
324 </div> 237 </div>
325 238
326 <div hidden>
327 <div class="box">
328 <div class="indexTitle">
329 <h3 class="leftboderTT">评委介绍</h3>
330 </div>
331 <el-row :gutter="20">
332 <el-col :sm="12" :xl="4" :xs="12" :lg="4" :md="8" v-for="n in personList" :key="n.name">
333 <div class="teacher" @click="goLeaderInfo">
334 <div class="imgbox"><img :src="n.src"></div>
335 <h3 class="esp">{{ n.name }}</h3>
336 <p class="esp text-primary">{{ n.pp }}</p>
337 </div>
338 </el-col>
339 </el-row>
340 </div>
341 </div>
342 <div class="box"> 239 <div class="box">
343 <el-row :gutter="20"> 240 <el-row :gutter="20">
344 <el-col :lg="12"> 241 <el-col :lg="12">
...@@ -349,9 +246,6 @@ ...@@ -349,9 +246,6 @@
349 <div class="aboutBox"> 246 <div class="aboutBox">
350 <div class="content"> 247 <div class="content">
351 <div v-html="aboutUsContent"></div> 248 <div v-html="aboutUsContent"></div>
352 <!-- 无锡WDSF亚洲体育舞蹈节是由世界体育舞蹈(无锡)中心(世界体育舞蹈联合、亚洲体育舞蹈联合、中国体育舞蹈联合会和无锡市人民政府共建)打造面向全球的、长期落户的、城市自主的品牌赛事。-->
353 <!-- 2023年7月首次举办无锡2023年WDSF亚洲体育舞蹈节,包括2023年WDSF世界标准舞锦标赛、2023年WDSF世界体育舞蹈大奖赛(中国无锡)、2023年全国体育舞蹈公开系列赛(无锡站),共吸引来自全球39个国家及地区的1,716名顶级舞者参与。-->
354 <!-- 同时,并将世界体育舞蹈(无锡)中心成功落户中国无锡,以“节日有竞赛、竞赛节日化”为发展指导原则,“四方”共同努力服务全球舞者。 <div class="shadowbox"/>-->
355 </div> 249 </div>
356 <div class="mt30 text-center"> 250 <div class="mt30 text-center">
357 <a class="btn-lineG" href="#/about/wuDao" style="display: inline-flex;align-items: center;">了解更多<img 251 <a class="btn-lineG" href="#/about/wuDao" style="display: inline-flex;align-items: center;">了解更多<img
...@@ -390,7 +284,7 @@ ...@@ -390,7 +284,7 @@
390 <h3 class="leftboderTT">合作伙伴</h3> 284 <h3 class="leftboderTT">合作伙伴</h3>
391 </div> 285 </div>
392 <el-row :gutter="20"> 286 <el-row :gutter="20">
393 <el-col :lg="6" :sm="6" :xs="6" v-for="p in partners"> 287 <el-col :lg="6" :sm="6" :xs="12" v-for="p in partners">
394 <div class="logobox"> 288 <div class="logobox">
395 <img :src="fillImgUrl(JSON.parse(p.picUrl))"> 289 <img :src="fillImgUrl(JSON.parse(p.picUrl))">
396 </div> 290 </div>
...@@ -411,9 +305,11 @@ import _ from 'lodash' ...@@ -411,9 +305,11 @@ import _ from 'lodash'
411 import {Swiper, SwiperSlide} from 'swiper/vue' 305 import {Swiper, SwiperSlide} from 'swiper/vue'
412 import {Autoplay, Navigation} from 'swiper' 306 import {Autoplay, Navigation} from 'swiper'
413 import 'swiper/css' 307 import 'swiper/css'
414 import {dayjs} from 'element-plus' 308 import {dayjs, ElMessage} from 'element-plus'
415 import * as match from "@/apiPc/match"; 309 import * as match from "@/apiPc/match";
416 import {getAboutUs, getppInfo, getZNList} from "@/apiPc/match"; 310 import {getAboutUs, getInfoByCptId, getppInfo, getZNList} from "@/apiPc/match";
311 import HomeWeatherBar from "@/viewsPc/components/homeWeatherBar";
312
417 const modules = [Autoplay, Navigation] 313 const modules = [Autoplay, Navigation]
418 const navigationPic = ref({ 314 const navigationPic = ref({
419 nextEl: '.picnext', 315 nextEl: '.picnext',
...@@ -421,17 +317,11 @@ const navigationPic = ref({ ...@@ -421,17 +317,11 @@ const navigationPic = ref({
421 }) 317 })
422 const router = useRouter() 318 const router = useRouter()
423 const {proxy} = getCurrentInstance() 319 const {proxy} = getCurrentInstance()
424 const emit = defineEmits(['pop','pickup','backNumber','schSearch']) 320 const emit = defineEmits(['pop', 'pickup', 'backNumber', 'schSearch'])
321 const currentDateTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
425 const time = ref(0) 322 const time = ref(0)
426 const etime = ref(0) 323 const etime = ref(0)
427 const personList = ref([ 324 const newsList = ref([])
428 { name: 'Wolfgang Eliasch', pp: '拉丁舞裁判长 奥地利', src: '/img/1.png' },
429 { name: 'Nenad Jeftic', pp: '标准舞裁判长 塞尔维亚', src: '/img/2.png' },
430 { name: 'Dorel Bagiu', pp: '罗马尼亚', src: '/img/3.png' },
431 { name: 'Eduard Korotin', pp: ' 爱沙尼亚', src: '/img/4.png' },
432 { name: 'Ana Cristina Silva', pp: '葡萄牙', src: '/img/5.png'},
433 { name: 'Dallas Leslie Williams', pp: '记分长 澳大利亚', src: '/img/6.png' }
434 ])
435 const activeNews = ref(0) 325 const activeNews = ref(0)
436 const banners = ref([]) 326 const banners = ref([])
437 const newest = ref([]) 327 const newest = ref([])
...@@ -446,7 +336,9 @@ const maList = ref([]) ...@@ -446,7 +336,9 @@ const maList = ref([])
446 const loading = ref(false) 336 const loading = ref(false)
447 const picList = ref([]) 337 const picList = ref([])
448 const partners = ref([]) 338 const partners = ref([])
339 const liveData = ref({})
449 const aboutUsContent = ref('') 340 const aboutUsContent = ref('')
341 const liveStartTime = ref(0)
450 342
451 onMounted(() => { 343 onMounted(() => {
452 init() 344 init()
...@@ -457,7 +349,7 @@ const init = () => { ...@@ -457,7 +349,7 @@ const init = () => {
457 time.value = dayjs('2024-07-17 07:00:00').diff(today, 'millisecond') 349 time.value = dayjs('2024-07-17 07:00:00').diff(today, 'millisecond')
458 etime.value = dayjs('2024-07-22 12:00:00').diff(today, 'millisecond') 350 etime.value = dayjs('2024-07-22 12:00:00').diff(today, 'millisecond')
459 getNewsListById({ 351 getNewsListById({
460 pageSize: time.value>0? 3:4, 352 pageSize: time.value > 0 ? 3 : 4,
461 pageNum: 1, 353 pageNum: 1,
462 sortId: '10000006' 354 sortId: '10000006'
463 } 355 }
...@@ -481,35 +373,50 @@ const init = () => { ...@@ -481,35 +373,50 @@ const init = () => {
481 ).then(res => { 373 ).then(res => {
482 newest2.value = res.rows 374 newest2.value = res.rows
483 }) 375 })
484 match.getMaList({topFlag:1}).then((res) => { 376
377 getNewsListById({pageSize: 6, pageNum: 1,sortId: '20000000'}).then(res => {
378 newsList.value = res.rows
379 })
380
381 match.getMaList({topFlag: 1}).then((res) => {
485 maList.value = res.rows 382 maList.value = res.rows
486 for (let n of maList.value) { 383 for (let n of maList.value) {
487 var today = dayjs().format('YYYY-MM-DD HH:mm:ss') 384 var today = dayjs().format('YYYY-MM-DD HH:mm:ss')
488 if(n.signBeginTime){ 385 if (n.signBeginTime) {
489 n.time = dayjs(n.signBeginTime).diff(today, 'millisecond') 386 n.time = dayjs(n.signBeginTime).diff(today, 'millisecond')
490 } else { 387 } else {
491 n.time = 0 388 n.time = 0
492 } 389 }
493 if(n.signEndTime){ 390 if (n.signEndTime) {
494 n.timeEnd = dayjs(n.signEndTime).diff(today, 'millisecond') 391 n.timeEnd = dayjs(n.signEndTime).diff(today, 'millisecond')
495 } else { 392 } else {
496 n.time = 0 393 n.time = 0
497 } 394 }
498 } 395 }
499 matchData.value = maList.value[0] 396 matchData.value = maList.value[0]
397 getMatchInfo(matchData.value.id)
500 }) 398 })
501 getpartners() 399 getpartners()
502 } 400 }
401 const getMatchInfo = (id) => {
402 match.getInfoByCptId({ cptId:id }).then((res) => {
403 liveData.value = res.data || {}
404 if(liveData.value.videoStart){
405 liveStartTime.value = dayjs(liveData.value.videoStart).diff(currentDateTime.value, 'millisecond')
406 }
407 })
408 }
503 const getpartners = () => { 409 const getpartners = () => {
504 match.getppInfo('10000001').then((res) => { 410 match.getppInfo('10000001').then((res) => {
505 aboutUsContent.value = res.data.contextZh 411 aboutUsContent.value = res.data.contextZh
506 }) 412 })
507 match.getZNList({sortId:'2000',language:1}).then((res) => { 413 match.getZNList({sortId: '2000', language: 1}).then((res) => {
508 partners.value = res.rows 414 partners.value = res.rows
509 }) 415 })
510 } 416 }
511 const carouselChange = (e) => { 417 const carouselChange = (e) => {
512 matchData.value = maList.value[e] 418 matchData.value = maList.value[e]
419 getMatchInfo(matchData.value.id)
513 } 420 }
514 const goDetail = (n) => { 421 const goDetail = (n) => {
515 if (n.isOut === '1') { 422 if (n.isOut === '1') {
...@@ -521,7 +428,7 @@ const goDetail = (n) => { ...@@ -521,7 +428,7 @@ const goDetail = (n) => {
521 } 428 }
522 } 429 }
523 const golive = (n) => { 430 const golive = (n) => {
524 if(time.value>0){ 431 if (time.value > 0) {
525 window.open('https://wx.vzan.com/live/page/1151815649?v=1720589464698') 432 window.open('https://wx.vzan.com/live/page/1151815649?v=1720589464698')
526 } else { 433 } else {
527 router.push({ 434 router.push({
...@@ -556,56 +463,60 @@ const goGuide = () => { ...@@ -556,56 +463,60 @@ const goGuide = () => {
556 router.push({ 463 router.push({
557 name: 'guide', 464 name: 'guide',
558 query: { 465 query: {
559 index:8 466 index: 8
560 } 467 }
561 }) 468 })
562 } 469 }
563 const popMaster = () => { 470 const popMaster = () => {
564 var params = { 471 var params = {
565 cptId:matchData.value.id 472 cptId: matchData.value.id
566 } 473 }
567 emit('pop',params) 474 emit('pop', params)
568 } 475 }
569 const backNumberSearch = () => { 476 const backNumberSearch = () => {
570 var params = { 477 var params = {
571 cptId:matchData.value.id 478 cptId: matchData.value.id
572 } 479 }
573 emit('backNumber',params) 480 emit('backNumber', params)
574 } 481 }
575 const schSearch = () => { 482 const schSearch = () => {
576 var params = { 483 var params = {
577 cptId:matchData.value.id 484 cptId: matchData.value.id
578 } 485 }
579 emit('schSearch',params) 486 emit('schSearch', params)
580 } 487 }
581 const handlePickup=()=>{ 488 const handlePickup = () => {
582 const params={ 489 const params = {
583 cptId :matchData.value.id 490 cptId: matchData.value.id
584 } 491 }
585 emit('pickup',params) 492 emit('pickup', params)
586 } 493 }
587 494
495 const goliveUrl = () => {
496 if (liveData.value.videoStatus=="1") {
497 window.open(liveData.value.videoUrlCn)
498 } else {
499 ElMessage.warning( '暂无直播' )
500 }
501 }
502 const gopicliveUrl = () => {
503 if (liveData.value.picStatus=="1") {
504 window.open(liveData.value.picUrlCn)
505 } else {
506 ElMessage.warning( '暂无直播' )
507 }
508 }
588 </script> 509 </script>
589 510
590 <style scoped lang="scss"> 511 <style scoped lang="scss">
591 512
592 .zn-bg { 513 .zn-bg {
593 background: linear-gradient(90deg, #8623FC, #8623FC, #8623FC, #8623FC, #8623FC, #8623FC, #453DEA, #8623FC); 514 background: #FFFFFF;margin-bottom: 22px;
594 border-radius: 15px; 515 box-shadow: 0px 0px 46px 0px rgba(1, 16, 64, 0.08);
516 border-radius: 20px;
595 } 517 }
596 518
597 .zn-Box { 519 .zn-Box {
598 background-size: contain;
599 position: relative;
600 overflow: hidden;
601
602 .bbbg {
603 position: absolute;
604 width: 100%;
605 height: 100%;
606 object-fit: cover;
607 }
608
609 .bgbg { 520 .bgbg {
610 padding: 5%; 521 padding: 5%;
611 522
...@@ -615,7 +526,7 @@ const handlePickup=()=>{ ...@@ -615,7 +526,7 @@ const handlePickup=()=>{
615 } 526 }
616 527
617 .itemBox { 528 .itemBox {
618 padding: 20px 40px; 529 padding: 20px 0;
619 } 530 }
620 531
621 border-radius: 15px; 532 border-radius: 15px;
...@@ -647,8 +558,17 @@ const handlePickup=()=>{ ...@@ -647,8 +558,17 @@ const handlePickup=()=>{
647 height: 450px; 558 height: 450px;
648 background: #000; 559 background: #000;
649 position: relative; 560 position: relative;
561 .picliveBtn{ position: absolute;cursor: pointer;
562 bottom: 24%;
563 font-size: 20px;
564 padding: 10px 25px;
565 right: 5%;
566 color: #fff;
567 border: 2px solid #e1e1e1;
568 border-radius: 50px;}
650 569
651 .banner-count {cursor: pointer; 570 .banner-count {
571 cursor: pointer;
652 position: absolute; 572 position: absolute;
653 padding: 20px 40px; 573 padding: 20px 40px;
654 font-size: 20px; 574 font-size: 20px;
...@@ -656,12 +576,6 @@ const handlePickup=()=>{ ...@@ -656,12 +576,6 @@ const handlePickup=()=>{
656 overflow: hidden; 576 overflow: hidden;
657 background: url("@/assets/dance/time_bg.png") no-repeat center; 577 background: url("@/assets/dance/time_bg.png") no-repeat center;
658 background-size: 100% 100%; 578 background-size: 100% 100%;
659 //border-radius: 100px;
660 //border-image: linear-gradient(-90deg, #7A6BEB, #F982AD, #7A6BEB) round;
661 //border-image-slice: 1;
662 //border-image-width:4px;
663 //border-image-outset:4px;
664 //background: rgba(0,0,0,0.3);
665 bottom: 40%; 579 bottom: 40%;
666 display: flex; 580 display: flex;
667 flex-wrap: nowrap; 581 flex-wrap: nowrap;
...@@ -691,10 +605,20 @@ const handlePickup=()=>{ ...@@ -691,10 +605,20 @@ const handlePickup=()=>{
691 font-size: 20px; 605 font-size: 20px;
692 } 606 }
693 } 607 }
694 .bb{width: 580px;justify-content: center;height: 100px;font-size: 30px;} 608
695 .banner-count.bb:hover{box-shadow: 0 0 20px #453DEA;border-radius: 100px; 609 .bb {
696 background: linear-gradient(-90deg, #8623FC, #453DEA) 610 width: 580px;
611 justify-content: center;
612 height: 100px;
613 font-size: 30px;
614 }
615
616 .banner-count.bb:hover {
617 box-shadow: 0 0 20px #453DEA;
618 border-radius: 100px;
619 background: #000
697 } 620 }
621
698 .box { 622 .box {
699 position: absolute; 623 position: absolute;
700 height: 100%; 624 height: 100%;
...@@ -761,6 +685,7 @@ const handlePickup=()=>{ ...@@ -761,6 +685,7 @@ const handlePickup=()=>{
761 position: relative; 685 position: relative;
762 height: 400px; 686 height: 400px;
763 } 687 }
688
764 .ggbond { 689 .ggbond {
765 height: 230px; 690 height: 230px;
766 position: relative; 691 position: relative;
...@@ -776,44 +701,94 @@ const handlePickup=()=>{ ...@@ -776,44 +701,94 @@ const handlePickup=()=>{
776 } 701 }
777 } 702 }
778 703
779 .teacher{height: 410px;background: #fff; 704 .teacher {
780 position: relative;border-radius: 10px;overflow: hidden; 705 height: 410px;
781 .imgbox{background: linear-gradient(0,#C8AAFC,#fff)} 706 background: #fff;
782 img{height: 350px;width: 100%;object-fit: cover;} 707 position: relative;
783 h3{color: #fff;background: url("@/assets/dance/name_bg.png") no-repeat center; 708 border-radius: 10px;
784 background-size:110% 100%;text-align: center;height: 30px;line-height: 30px; 709 overflow: hidden;
785 font-size: 18px;position: absolute;width: 100%;bottom: 30px;} 710
786 p{text-align: center;margin: 25px 0 0; 711 .imgbox {
787 font-size: 14px;} 712 background: linear-gradient(0, #C8AAFC, #fff)
713 }
714
715 img {
716 height: 350px;
717 width: 100%;
718 object-fit: cover;
719 }
720
721 h3 {
722 color: #fff;
723 background: url("@/assets/dance/name_bg.png") no-repeat center;
724 background-size: 110% 100%;
725 text-align: center;
726 height: 30px;
727 line-height: 30px;
728 font-size: 18px;
729 position: absolute;
730 width: 100%;
731 bottom: 30px;
732 }
733
734 p {
735 text-align: center;
736 margin: 25px 0 0;
737 font-size: 14px;
738 }
788 } 739 }
740
789 @media screen and (max-width: 1650px) { 741 @media screen and (max-width: 1650px) {
790 .teacher{height: 320px; 742 .teacher {
791 .imgbox{ 743 height: 320px;
792 img{height: 260px} 744
745 .imgbox {
746 img {
747 height: 260px
748 }
793 } 749 }
794 } 750 }
795 } 751 }
752
796 @media screen and (max-width: 1200px) { 753 @media screen and (max-width: 1200px) {
797 .teacher{height: 450px;margin: 0 0 20px; 754 .teacher {
798 .imgbox{ 755 height: 450px;
799 img{height: 390px} 756 margin: 0 0 20px;
757
758 .imgbox {
759 img {
760 height: 390px
761 }
800 } 762 }
801 } 763 }
802 } 764 }
765
803 @media screen and (max-width: 900px) { 766 @media screen and (max-width: 900px) {
804 .teacher{height: 400px;margin: 0 0 20px; 767 .teacher {
805 .imgbox{ 768 height: 400px;
806 img{height: 340px} 769 margin: 0 0 20px;
770
771 .imgbox {
772 img {
773 height: 340px
774 }
807 } 775 }
808 } 776 }
809 } 777 }
778
810 @media screen and (max-width: 800px) { 779 @media screen and (max-width: 800px) {
811 .teacher{height: 400px;margin: 0 0 20px; 780 .teacher {
812 .imgbox{ 781 height: 400px;
813 img{height: 260px} 782 margin: 0 0 20px;
783
784 .imgbox {
785 img {
786 height: 260px
787 }
814 } 788 }
815 } 789 }
816 } 790 }
791
817 .aboutBox { 792 .aboutBox {
818 background: url("@/assets/dance/about_bg.png") no-repeat center; 793 background: url("@/assets/dance/about_bg.png") no-repeat center;
819 height: 375px; 794 height: 375px;
...@@ -901,7 +876,9 @@ const handlePickup=()=>{ ...@@ -901,7 +876,9 @@ const handlePickup=()=>{
901 margin: 0 0 30px; 876 margin: 0 0 30px;
902 877
903 img { 878 img {
904 width: 100%;height: 100%;object-fit: contain; 879 width: 100%;
880 height: 100%;
881 object-fit: contain;
905 } 882 }
906 } 883 }
907 884
...@@ -955,6 +932,8 @@ const handlePickup=()=>{ ...@@ -955,6 +932,8 @@ const handlePickup=()=>{
955 .box { 932 .box {
956 width: 94% 933 width: 94%
957 } 934 }
935
936
958 .calendarList { 937 .calendarList {
959 padding: 0; 938 padding: 0;
960 939
...@@ -1028,15 +1007,30 @@ const handlePickup=()=>{ ...@@ -1028,15 +1007,30 @@ const handlePickup=()=>{
1028 } 1007 }
1029 } 1008 }
1030 } 1009 }
1031 .livetimecount{position: absolute;top: 0;z-index: 2;background: #F04035; 1010
1011 .livetimecount {
1012 position: absolute;
1013 top: 0;
1014 z-index: 2;
1015 background: #F04035;
1032 padding: 2px 4px; 1016 padding: 2px 4px;
1033 &::after{content: ''; width: 0; 1017
1034 height: 0;position: absolute;right: -15px;top: 0; 1018 &::after {
1019 content: '';
1020 width: 0;
1021 height: 0;
1022 position: absolute;
1023 right: -15px;
1024 top: 0;
1035 border-top: 24px solid #F04035; 1025 border-top: 24px solid #F04035;
1036 border-right: 15px solid transparent;} 1026 border-right: 15px solid transparent;
1037 .van-count-down { display: flex; 1027 }
1028
1029 .van-count-down {
1030 display: flex;
1038 color: #fff; 1031 color: #fff;
1039 font-size: 14px; 1032 font-size: 14px;
1033
1040 .block { 1034 .block {
1041 color: #fff; 1035 color: #fff;
1042 text-align: center; 1036 text-align: center;
...@@ -1045,21 +1039,34 @@ const handlePickup=()=>{ ...@@ -1045,21 +1039,34 @@ const handlePickup=()=>{
1045 } 1039 }
1046 } 1040 }
1047 } 1041 }
1042
1043 .newline{display: flex;align-items: center;height: 56px;justify-content: space-between;
1044 cursor: pointer;
1045 h3{font-weight: 400;margin: 0;width: 80%;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;
1046 font-size: 18px;
1047 color: #030303;}
1048 span{font-weight: 400;
1049 font-size: 14px;
1050 color: #B4B6B8;}
1051 &:hover{
1052 background: #F7F8FC;
1053 }
1054 }
1055
1048 @media (max-width: 500px) { 1056 @media (max-width: 500px) {
1049 .forPc{display: none!important;} 1057 .forPc {
1050 .logobox{ 1058 display: none !important;
1059 }
1060 .logobox {
1051 height: 60px; 1061 height: 60px;
1052 } 1062 }
1063 .newline{height: 40px;
1064 h3{width: 70%;font-size: 14px;}
1065 span{font-size: 12px;}
1066 }
1053 } 1067 }
1054 :deep(.btn-q) {
1055 //background: #FFFFFF;
1056 //font-size: 18px;
1057 //color: #453DEA;
1058 //border-radius: 23px;
1059 //padding: 10px 20px;
1060 //display: inline-flex;
1061 //align-items: center;
1062 1068
1069 :deep(.btn-q) {
1063 padding: 20px 40px; 1070 padding: 20px 40px;
1064 font-size: 20px; 1071 font-size: 20px;
1065 align-items: center; 1072 align-items: center;
...@@ -1073,18 +1080,18 @@ const handlePickup=()=>{ ...@@ -1073,18 +1080,18 @@ const handlePickup=()=>{
1073 box-sizing: inherit; 1080 box-sizing: inherit;
1074 } 1081 }
1075 1082
1076 .btn-q:hover{ 1083 .btn-q:hover {
1077 box-shadow: 0 0 20px #453DEA; 1084 box-shadow: 0 0 20px #453DEA;
1078 border-radius: 100px; 1085 border-radius: 100px;
1079 background: linear-gradient(-90deg, #8623FC, #453DEA) !important; 1086 background: #000 !important;
1080 } 1087 }
1081 1088
1082 .ding{ 1089 .ding {
1083 position: fixed; 1090 position: fixed;
1084 right: 0px; 1091 right: 0px;
1085 z-index:99; 1092 z-index: 99;
1086 top: 40%; 1093 top: 40%;
1087 background: linear-gradient(-90deg, #8623FC, #453DEA) !important; 1094 background: #000 !important;
1088 box-shadow: none; 1095 box-shadow: none;
1089 color: #fff; 1096 color: #fff;
1090 border-radius: 10px; 1097 border-radius: 10px;
...@@ -1092,4 +1099,6 @@ const handlePickup=()=>{ ...@@ -1092,4 +1099,6 @@ const handlePickup=()=>{
1092 width: 192px; 1099 width: 192px;
1093 text-align: center; 1100 text-align: center;
1094 } 1101 }
1102
1103
1095 </style> 1104 </style>
......
...@@ -8,33 +8,36 @@ ...@@ -8,33 +8,36 @@
8 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> 8 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)">
9 <img v-else class="bannerImg" src="@/assets/dance/banner.png"> 9 <img v-else class="bannerImg" src="@/assets/dance/banner.png">
10 <div class="box" style="position: absolute;top: 0;left: 0;right: 0;margin: auto;"> 10 <div class="box" style="position: absolute;top: 0;left: 0;right: 0;margin: auto;">
11 11 <div class="banner-count" v-if="currentDateTime < liveData.videoStart" @click="goliveUrl">
12 <div class="banner-count" v-if="n.time>0" > 12 Live Countdown
13 Countdown 13 <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒">
14 <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒">
15 <template #default="timeData"> 14 <template #default="timeData">
16 <div class="block">{{ timeData.days }} 15 <div class="block">{{ timeData.days }}
17 <span class="colon">Days</span> 16 <span class="colon"></span>
18 </div> 17 </div>
18
19 <div class="block">{{ timeData.hours }} 19 <div class="block">{{ timeData.hours }}
20 <span class="colon">Hrs</span> 20 <span class="colon"></span>
21 </div> 21 </div>
22
22 <div class="block">{{ timeData.minutes }} 23 <div class="block">{{ timeData.minutes }}
23 <span class="colon">Min</span> 24 <span class="colon"></span>
24 </div> 25 </div>
26
25 <div class="block">{{ timeData.seconds }} 27 <div class="block">{{ timeData.seconds }}
26 <span class="colon">Sec</span> 28 <span class="colon"></span>
27 </div> 29 </div>
28 </template> 30 </template>
29 </van-count-down> 31 </van-count-down>
30 </div> 32 </div>
31 <div v-if="n.timeEnd<0"> 33
32 <div class="banner-count bb" @click="goMatch(n)"> 34 <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl">
33 Registration has ended 35 <div class="banner-count" v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)">
36 Live Now
37 </div>
38 <div class="banner-count" v-if="currentDateTime > liveData.videoEnd">
39 Live End
34 </div> 40 </div>
35 </div>
36 <div class="banner-count bb" v-if="n.time<=0&&n.timeEnd>=0" @click="goMatch(n)">
37 REGISTER NOW
38 </div> 41 </div>
39 </div> 42 </div>
40 </div> 43 </div>
...@@ -48,9 +51,9 @@ ...@@ -48,9 +51,9 @@
48 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> 51 <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)">
49 <img v-else class="bannerImg" src="@/assets/dance/banner.png"> 52 <img v-else class="bannerImg" src="@/assets/dance/banner.png">
50 <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> 53 <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;">
51 <div class="banner-count" v-if="n.time>0" > 54 <div class="banner-count" v-if="currentDateTime < liveData.videoStart" @click="goliveUrl">
52 Countdown 55 Live Countdown
53 <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> 56 <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒">
54 <template #default="timeData"> 57 <template #default="timeData">
55 <div class="block">{{ timeData.days }} 58 <div class="block">{{ timeData.days }}
56 <span class="colon">Days</span> 59 <span class="colon">Days</span>
...@@ -67,16 +70,14 @@ ...@@ -67,16 +70,14 @@
67 </template> 70 </template>
68 </van-count-down> 71 </van-count-down>
69 </div> 72 </div>
70 <div v-if="n.timeEnd<0"> 73 <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl">
71 74 <div class="banner-count" v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)">
72 <div class="banner-count bb" @click="goMatch(n)"> 75 Live Now
73 Registration has ended 76 </div>
77 <div class="banner-count" v-if="currentDateTime > liveData.videoEnd">
78 Live End
74 </div> 79 </div>
75 </div> 80 </div>
76 <div class="banner-count bb" v-if="n.time<=0&&n.timeEnd>=0" @click="goMatch(n)">
77 REGISTER NOW
78 </div>
79
80 </div> 81 </div>
81 </div> 82 </div>
82 </div> 83 </div>
...@@ -84,33 +85,8 @@ ...@@ -84,33 +85,8 @@
84 </el-carousel> 85 </el-carousel>
85 </div> 86 </div>
86 87
87 <div class="box zn-bg"> 88 <div class="box">
88 <div class="zn-Box"> 89 <HomeQuick :match-id="matchData?.id" :cpt-name="matchData?.name"/>
89 <img class="bbbg" v-if="matchData?.logoUrl" :src="fillImgUrl(matchData?.logoUrl)"/>
90 <el-row>
91 <el-col :sm="24" :lg="10">
92 <div class="bgbg">
93 <h1 style="color: #fff">{{matchData?.name}}</h1>
94 <div class="mb30">
95 <a class="zn-btn" style="font-size: 15px" @click="goGuide">
96 GUIDELINE
97 <el-icon><download /></el-icon>
98 </a>
99 <!-- <a class="zn-btn ml20 btn-q forPc" v-show="matchData?.id=='1778253367748993026'" style="font-size: 15px;margin-right: 20px" @click="popMaster">-->
100 <!-- Junior &Youth Camp REGISTER<el-icon><Edit /></el-icon>-->
101 <!-- </a>-->
102 <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">Competition Number</a>
103 <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="schSearchSearch">Schedule Inquiry</a>
104
105 </div>
106
107 </div>
108 </el-col>
109 <el-col :sm="24" :lg="14">
110 <HomeQuick :match-id="matchData?.id" :cpt-name="matchData?.name"/>
111 </el-col>
112 </el-row>
113 </div>
114 </div> 90 </div>
115 91
116 92
...@@ -118,70 +94,27 @@ ...@@ -118,70 +94,27 @@
118 <el-row :gutter="20"> 94 <el-row :gutter="20">
119 <el-col :sm="24" :lg="12"> 95 <el-col :sm="24" :lg="12">
120 <div class="indexTitle"> 96 <div class="indexTitle">
121 <h3 class="leftboderTT">COMPETITION SCHEDULE</h3> 97 <h3 class="leftboderTT">NOTICEBOARD</h3>
122 <a class="more" @click="gosaiC">MORE</a> 98 <a class="more" href="#/notice">MORE</a>
123 </div> 99 </div>
124 <!--赛事日历--> 100 <el-card :body-style="{'padding':'10px 20px 18px'}">
125 <el-card :body-style="{'padding':'20px 20px'}"> 101 <div v-for="(n,index) in newsList" :key="index" class="newline" @click="goDetail(n)">
126 <home-calendar/> 102 <h3>{{ n.name }}</h3>
103 <span class="date">{{n.belongTime}}</span>
104 </div>
127 </el-card> 105 </el-card>
128 </el-col> 106 </el-col>
129 <el-col :sm="24" :lg="12"> 107 <el-col :sm="24" :lg="12">
130 <div class="indexTitle"> 108 <div class="indexTitle">
131 <h3 class="leftboderTT">MEDAL LIST(2023)</h3> 109 <h3 class="leftboderTT">COMPETITION SCHEDULE</h3>
132 <a class="more" href="#/saiC">MORE</a> 110 <a class="more" @click="gosaiC">MORE</a>
133 </div> 111 </div>
134 <!--历史排名--> 112 <!--赛事日历-->
135 <el-card :body-style="{'padding':'10px 20px 18px'}"> 113 <el-card :body-style="{'padding':'20px 20px'}">
136 <el-table stripe :data="rankList"> 114 <home-calendar/>
137 <el-table-column label="RANK" align="center" width="80" type="index">
138 <template #default="scope">
139 <span v-if="scope.row.index == 1" style="color:#F8A617">{{ scope.row.index }}</span>
140 <span v-else-if="scope.row.index == 2" style="color:#778B92">{{ scope.row.index }}</span>
141 <span v-else-if="scope.row.index == 3" style="color:#7F2D00">{{ scope.row.index }}</span>
142 <span v-else>{{ scope.row.index }}</span>
143 </template>
144 </el-table-column>
145 <el-table-column label="COUNTRY">
146 <template #default="scope">
147 <div>
148 <span :class="`flag-icon flag-icon-${scope.row.code}`"></span>
149 {{ scope.row.en_gj }}
150 </div>
151 </template>
152 </el-table-column>
153 <el-table-column label="COUPLE" align="center">
154 <template #default="scope">
155 <div class="text-primary esp">{{ scope.row.name }}</div>
156 </template>
157 </el-table-column>
158 <el-table-column width="50">
159 <template #header>
160 <img class="mauto" src="@/assets/dance/1.png">
161 </template>
162 <template #default="scope">
163 <div class="text-warning text-center">{{ scope.row.jin }}</div>
164 </template>
165 </el-table-column>
166 <el-table-column width="50">
167 <template #header>
168 <img class="mauto" src="@/assets/dance/2.png">
169 </template>
170 <template #default="scope">
171 <div class="text-blue text-center">{{ scope.row.yin }}</div>
172 </template>
173 </el-table-column>
174 <el-table-column width="50">
175 <template #header>
176 <img class="mauto" src="@/assets/dance/3.png">
177 </template>
178 <template #default="scope">
179 <div class="text-primary text-center">{{ scope.row.tong }}</div>
180 </template>
181 </el-table-column>
182 </el-table>
183 </el-card> 115 </el-card>
184 </el-col> 116 </el-col>
117
185 </el-row> 118 </el-row>
186 </div> 119 </div>
187 <!-- NEWS --> 120 <!-- NEWS -->
...@@ -218,7 +151,6 @@ ...@@ -218,7 +151,6 @@
218 </div> 151 </div>
219 </div> 152 </div>
220 <div class="part"> 153 <div class="part">
221
222 <div class="box"> 154 <div class="box">
223 <div class="indexTitle"> 155 <div class="indexTitle">
224 <h3 class="leftboderTT">MEDIA</h3> 156 <h3 class="leftboderTT">MEDIA</h3>
...@@ -423,6 +355,10 @@ const picList = ref([]) ...@@ -423,6 +355,10 @@ const picList = ref([])
423 const calendarValue = ref('2024-07-22') 355 const calendarValue = ref('2024-07-22')
424 const aboutUsContent = ref('') 356 const aboutUsContent = ref('')
425 const partners = ref([]) 357 const partners = ref([])
358 const newsList = ref([])
359 const currentDateTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
360 const liveStartTime = ref(0)
361 const liveData = ref({})
426 362
427 const matchData = ref({}) 363 const matchData = ref({})
428 onMounted(() => { 364 onMounted(() => {
...@@ -431,8 +367,9 @@ onMounted(() => { ...@@ -431,8 +367,9 @@ onMounted(() => {
431 367
432 const init = () => { 368 const init = () => {
433 var today = dayjs().format('YYYY-MM-DD HH:mm:ss') 369 var today = dayjs().format('YYYY-MM-DD HH:mm:ss')
434 etime.value = dayjs('2024-07-22 12:00:00').diff(today, 'millisecond') 370 getNewsListById({pageSize: 6, pageNum: 1,sortId: '20000001'}).then(res => {
435 time.value = dayjs('2024-07-17 07:00:00').diff(today, 'millisecond') 371 newsList.value = res.rows
372 })
436 getNewsListById( 373 getNewsListById(
437 { pageSize: 4, 374 { pageSize: 4,
438 pageNum: 1, 375 pageNum: 1,
...@@ -455,19 +392,19 @@ const init = () => { ...@@ -455,19 +392,19 @@ const init = () => {
455 }) 392 })
456 match.getMaList({topFlag:1}).then((res) => { 393 match.getMaList({topFlag:1}).then((res) => {
457 maList.value = res.rows 394 maList.value = res.rows
458 for (let n of maList.value) {
459 var today = dayjs().format('YYYY-MM-DD HH:mm:ss')
460 n.time = dayjs(n.signBeginTime).diff(today, 'millisecond')
461 if(n.signEndTime){
462 n.timeEnd = dayjs(n.signEndTime).diff(today, 'millisecond')
463 } else {
464 n.time = 0
465 }
466 }
467 matchData.value = maList.value[0] 395 matchData.value = maList.value[0]
396 getMatchInfo(matchData.value.id)
468 }) 397 })
469 getpartners() 398 getpartners()
470 } 399 }
400 const getMatchInfo = (id) => {
401 match.getInfoByCptId({ cptId:id }).then((res) => {
402 liveData.value = res.data || {}
403 if(liveData.value.videoStart){
404 liveStartTime.value = dayjs(liveData.value.videoStart).diff(currentDateTime.value, 'millisecond')
405 }
406 })
407 }
471 const getpartners = () => { 408 const getpartners = () => {
472 match.getAboutUs().then((res) => { 409 match.getAboutUs().then((res) => {
473 aboutUsContent.value = res.data.contextEn 410 aboutUsContent.value = res.data.contextEn
...@@ -547,6 +484,21 @@ const handlePickup=()=>{ ...@@ -547,6 +484,21 @@ const handlePickup=()=>{
547 } 484 }
548 emit('pickup',params) 485 emit('pickup',params)
549 } 486 }
487
488 const goliveUrl = () => {
489 if (liveData.value.videoStatus=="1") {
490 window.open(liveData.value.videoUrlCn)
491 } else {
492 ElMessage.warning('No live' )
493 }
494 }
495 const gopicliveUrl = () => {
496 if (liveData.value.picStatus=="1") {
497 window.open(liveData.value.picUrlCn)
498 } else {
499 ElMessage.warning( 'No live' )
500 }
501 }
550 </script> 502 </script>
551 503
552 <style scoped lang="scss"> 504 <style scoped lang="scss">
...@@ -619,7 +571,7 @@ const handlePickup=()=>{ ...@@ -619,7 +571,7 @@ const handlePickup=()=>{
619 } 571 }
620 .bb{width: 580px;justify-content: center;height: 100px;font-size: 30px;} 572 .bb{width: 580px;justify-content: center;height: 100px;font-size: 30px;}
621 .banner-count.bb:hover{box-shadow: 0 0 20px #453DEA;border-radius: 100px; 573 .banner-count.bb:hover{box-shadow: 0 0 20px #453DEA;border-radius: 100px;
622 background: linear-gradient(-90deg, #8623FC, #453DEA) 574 background: #000
623 } 575 }
624 .box { 576 .box {
625 position: absolute; 577 position: absolute;
...@@ -686,7 +638,7 @@ const handlePickup=()=>{ ...@@ -686,7 +638,7 @@ const handlePickup=()=>{
686 :deep(.el-calendar__button-group){display: none;} 638 :deep(.el-calendar__button-group){display: none;}
687 :deep(.el-calendar-table thead th){padding: 5px 0 0} 639 :deep(.el-calendar-table thead th){padding: 5px 0 0}
688 .primaryDate{color: #fff; 640 .primaryDate{color: #fff;
689 background: linear-gradient(90deg, #8623FC, #453DEA);} 641 background: #000;}
690 .date{ margin:auto;border-radius: 50%;width: 30px;height: 30px;line-height: 30px; 642 .date{ margin:auto;border-radius: 50%;width: 30px;height: 30px;line-height: 30px;
691 font-weight: bold; 643 font-weight: bold;
692 } 644 }
...@@ -698,19 +650,19 @@ const handlePickup=()=>{ ...@@ -698,19 +650,19 @@ const handlePickup=()=>{
698 border-radius: 10px; 650 border-radius: 10px;
699 font-weight: 500; 651 font-weight: 500;
700 font-size: 15px; 652 font-size: 15px;
701 label{color: #453DEA;margin-right: 15px; 653 label{color: #000;margin-right: 15px;
702 &::before{content: '';background:#fff;left: -17px;top: 0px;bottom: 0;margin: auto; 654 &::before{content: '';background:#fff;left: -17px;top: 0px;bottom: 0;margin: auto;
703 border-radius: 50%;width: 2px;height: 2px;position: absolute;z-index: 1} 655 border-radius: 50%;width: 2px;height: 2px;position: absolute;z-index: 1}
704 } 656 }
705 } 657 }
706 li::before{content: '';background: linear-gradient(0deg, #8623FC, #453DEA); 658 li::before{content: '';background: #000;
707 border-radius: 50%;width: 8px;height: 8px;position: absolute; 659 border-radius: 50%;width: 8px;height: 8px;position: absolute;
708 left: -20px;top: 0;bottom: 0;margin: auto;z-index: 1; 660 left: -20px;top: 0;bottom: 0;margin: auto;z-index: 1;
709 } 661 }
710 li::after{content: ''; left: -16px;width: 1px;height: 100%; 662 li::after{content: ''; left: -16px;width: 1px;height: 100%;
711 background: #EBEBEB; position: absolute;top: 20px} 663 background: #EBEBEB; position: absolute;top: 20px}
712 li:hover{color: #fff; 664 li:hover{color: #fff;
713 background: linear-gradient(-90deg, #8623FC, #453DEA); 665 background: #000;
714 label{color: #fff;} 666 label{color: #fff;}
715 } 667 }
716 } 668 }
...@@ -813,8 +765,24 @@ const handlePickup=()=>{ ...@@ -813,8 +765,24 @@ const handlePickup=()=>{
813 cursor: pointer; 765 cursor: pointer;
814 &:hover{filter:brightness(2)}} 766 &:hover{filter:brightness(2)}}
815 } 767 }
768 .newline{display: flex;align-items: center;height: 56px;justify-content: space-between;
769 cursor: pointer;
770 h3{font-weight: 400;margin: 0;width: 80%;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;
771 font-size: 18px;
772 color: #030303;}
773 span{font-weight: 400;
774 font-size: 14px;
775 color: #B4B6B8;}
776 &:hover{
777 background: #F7F8FC;
778 }
779 }
816 780
817 @media (max-width: 800px) { 781 @media (max-width: 800px) {
782 .newline{height: 40px;
783 h3{width: 70%;font-size: 14px;}
784 span{font-size: 12px;}
785 }
818 .box{width: 94%} 786 .box{width: 94%}
819 .calendarList{padding: 0; 787 .calendarList{padding: 0;
820 ul{ 788 ul{
...@@ -871,7 +839,7 @@ const handlePickup=()=>{ ...@@ -871,7 +839,7 @@ const handlePickup=()=>{
871 .btn-q:hover{ 839 .btn-q:hover{
872 box-shadow: 0 0 20px #453DEA; 840 box-shadow: 0 0 20px #453DEA;
873 border-radius: 100px; 841 border-radius: 100px;
874 background: linear-gradient(-90deg, #8623FC, #453DEA) !important; 842 background: #000 !important;
875 } 843 }
876 844
877 .ding{ 845 .ding{
...@@ -879,7 +847,7 @@ const handlePickup=()=>{ ...@@ -879,7 +847,7 @@ const handlePickup=()=>{
879 right:0px; 847 right:0px;
880 z-index:99; 848 z-index:99;
881 top: 40%; 849 top: 40%;
882 background: linear-gradient(-90deg, #8623FC, #453DEA) !important; 850 background: #000 !important;
883 box-shadow: none; 851 box-shadow: none;
884 color: #fff; 852 color: #fff;
885 border-radius: 10px; 853 border-radius: 10px;
......
...@@ -437,13 +437,13 @@ const goPolicy = () => { ...@@ -437,13 +437,13 @@ const goPolicy = () => {
437 437
438 .loginBtn { 438 .loginBtn {
439 height: 40px; 439 height: 40px;
440 background: linear-gradient(-90deg, #8623FC, #453DEA); 440 background: #000;
441 border-radius: 20px; 441 border-radius: 20px;
442 font-size: 18px; 442 font-size: 18px;
443 443
444 &:hover { 444 &:hover {
445 //background: linear-gradient(90deg, #8623FC, #453DEA); 445 //background: #000;
446 box-shadow: 0 0 10px #453DEA; 446 box-shadow: 0 0 10px #000;
447 } 447 }
448 } 448 }
449 449
......
1 <template> 1 <template>
2 <div style="filter: opacity(1)"> 2 <div style="filter: opacity(1)">
3 <el-row v-if="language==0" class="btnbox" justify='space-between'> 3 <el-row v-if="language==0" class="btnbox" justify='space-between'>
4 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 4 <el-col :lg="4" :md="7" :sm="11" :xs="11">
5 <div class="funcBtn" @click="popRemark(0)"> 5 <div class="funcBtn" @click="popRemark(0)">
6 <img src="@/assets/dance/btn04.png"/> 6 <img src="@/assets/dance/btn01.png"/>
7 <h4>票务预订</h4> 7 <h4>签证服务</h4>
8 </div> 8 </div>
9 </el-col> 9 </el-col>
10 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 10 <el-col :lg="4" :md="7" :sm="11" :xs="11">
11 <div class="funcBtn" @click="popRemark(1)"> 11 <div class="funcBtn" @click="popRemark(1)">
12 <img src="@/assets/dance/btn01.png"/> 12 <img src="@/assets/dance/btn02.png"/>
13 <h4>酒店预订</h4> 13 <h4>酒店预订</h4>
14 </div> 14 </div>
15 </el-col> 15 </el-col>
16 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 16 <el-col :lg="4" :md="7" :sm="11" :xs="11">
17 <div class="funcBtn" @click="popRemark(2)"> 17 <div class="funcBtn" @click="popRemark(2)">
18 <img src="@/assets/dance/btn02.png"/> 18 <img src="@/assets/dance/btn03.png"/>
19 <h4>车辆预订</h4> 19 <h4>接送服务</h4>
20 </div> 20 </div>
21 </el-col> 21 </el-col>
22 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 22 <el-col :lg="4" :md="7" :sm="11" :xs="11">
23 <div class="funcBtn" @click="popRemark(6)"> 23 <div class="funcBtn" @click="popRemark(6)">
24 <img src="@/assets/dance/btn07.png"/> 24 <img src="@/assets/dance/btn04.png"/>
25 <h4>预订查询</h4> 25 <h4>场馆介绍</h4>
26 </div>
27 </el-col>
28 <el-col :lg="3" :md="7" :sm="11" :xs="11">
29 <div class="funcBtn" @click="popRemark(3)">
30 <img src="@/assets/dance/btn03.png"/>
31 <h4>餐饮预订</h4>
32 </div> 26 </div>
33 </el-col> 27 </el-col>
34 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 28 <el-col :lg="4" :md="7" :sm="11" :xs="11">
35 <div class="funcBtn" @click="popRemark(4)"> 29 <div class="funcBtn" @click="liveClick">
36 <img src="@/assets/dance/btn05.png"/> 30 <img src="@/assets/dance/btn05.png"/>
37 <h4>化妆预约</h4> 31 <h4>赛事直播</h4>
38 </div>
39 </el-col>
40 <el-col :lg="3" :md="7" :sm="11" :xs="11">
41 <div class="funcBtn" @click="popRemark(5)">
42 <img src="@/assets/dance/btn06.png"/>
43 <h4>拍照预约</h4>
44 </div> 32 </div>
45 </el-col> 33 </el-col>
46 </el-row> 34 </el-row>
47 <el-row v-else class="btnbox" justify='space-between'> 35 <el-row v-else class="btnbox" justify='space-between'>
48 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 36 <el-col :lg="4" :md="7" :sm="11" :xs="11">
49 <div class="funcBtn" @click="popRemark(0)"> 37 <div class="funcBtn" @click="popRemark(0)">
50 <img src="@/assets/dance/btn04.png"/> 38 <img src="@/assets/dance/btn01.png"/>
51 <h4>TICKET BOOKING</h4> 39 <h4>Visa Services</h4>
52 </div> 40 </div>
53 </el-col> 41 </el-col>
54 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 42 <el-col :lg="4" :md="7" :sm="11" :xs="11">
55 <div class="funcBtn" @click="popRemark(1)"> 43 <div class="funcBtn" @click="popRemark(1)">
56 <img src="@/assets/dance/btn01.png"/> 44 <img src="@/assets/dance/btn02.png"/>
57 <h4>HOTEL RESERVATION</h4> 45 <h4>HOTEL RESERVATION</h4>
58 </div> 46 </div>
59 </el-col> 47 </el-col>
60 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 48 <el-col :lg="4" :md="7" :sm="11" :xs="11">
61 <div class="funcBtn" @click="popRemark(2)"> 49 <div class="funcBtn" @click="popRemark(2)">
62 <img src="@/assets/dance/btn02.png"/> 50 <img src="@/assets/dance/btn03.png"/>
63 <h4>TRANSPORTATION RESERVATION</h4> 51 <h4>TRANSPORTATION RESERVATION</h4>
64 </div> 52 </div>
65 </el-col> 53 </el-col>
66 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 54 <el-col :lg="4" :md="7" :sm="11" :xs="11">
67 <div class="funcBtn" @click="popRemark(6)"> 55 <div class="funcBtn" @click="popRemark(6)">
68 <img src="@/assets/dance/btn07.png"/> 56 <img src="@/assets/dance/btn04.png"/>
69 <h4>RESERVATION SEARCH</h4> 57 <h4>Venue Introduction</h4>
70 </div>
71 </el-col>
72 <el-col :lg="3" :md="7" :sm="11" :xs="11">
73 <div class="funcBtn" @click="popRemark(3)">
74 <img src="@/assets/dance/btn03.png"/>
75 <h4>DINING RESERVATION</h4>
76 </div> 58 </div>
77 </el-col> 59 </el-col>
78 <el-col :lg="3" :md="7" :sm="11" :xs="11"> 60 <el-col :lg="4" :md="7" :sm="11" :xs="11">
79 <div class="funcBtn" @click="popRemark(4)"> 61 <div class="funcBtn" @click="liveClick">
80 <img src="@/assets/dance/btn05.png"/> 62 <img src="@/assets/dance/btn05.png"/>
81 <h4>MAKEUP APPOINTMENT</h4> 63 <h4>live streaming</h4>
82 </div>
83 </el-col>
84 <el-col :lg="3" :md="7" :sm="11" :xs="11">
85 <div class="funcBtn" @click="popRemark(5)">
86 <img src="@/assets/dance/btn06.png"/>
87 <h4>PHOTOGRAPHY APPOINTMENT</h4>
88 </div> 64 </div>
89 </el-col> 65 </el-col>
90 </el-row> 66 </el-row>
...@@ -105,6 +81,7 @@ import OrderRemark from '@/viewsPc/components/orderRemark' ...@@ -105,6 +81,7 @@ import OrderRemark from '@/viewsPc/components/orderRemark'
105 import {getBaseInfoByActiveId} from "@/apiPc/booking"; 81 import {getBaseInfoByActiveId} from "@/apiPc/booking";
106 import {getCurrentInstance} from "@vue/runtime-core"; 82 import {getCurrentInstance} from "@vue/runtime-core";
107 import {onMounted} from "vue"; 83 import {onMounted} from "vue";
84 import * as match from "@/apiPc/match";
108 85
109 const {proxy} = getCurrentInstance() 86 const {proxy} = getCurrentInstance()
110 87
...@@ -123,6 +100,7 @@ const props = defineProps({ ...@@ -123,6 +100,7 @@ const props = defineProps({
123 } 100 }
124 }) 101 })
125 const form = ref() 102 const form = ref()
103 const liveData = ref({})
126 onMounted(() => { 104 onMounted(() => {
127 getBaseInfoByActiveId(props.matchId).then(res => { 105 getBaseInfoByActiveId(props.matchId).then(res => {
128 form.value = res.data || null 106 form.value = res.data || null
...@@ -130,13 +108,29 @@ onMounted(() => { ...@@ -130,13 +108,29 @@ onMounted(() => {
130 form.value = null 108 form.value = null
131 console.log(err) 109 console.log(err)
132 }) 110 })
111
112 match.getInfoByCptId({ cptId:props.matchId }).then((res) => {
113 liveData.value = res.data || {}
114 })
133 }) 115 })
134 116
135 function building() { 117 function building() {
136 ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.') 118 ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.')
137 119
138 } 120 }
121 const liveClick = () => {
122 if (liveData.value.videoStatus=="1") {
139 123
124 if(language.value==0){
125
126 window.open(liveData.value.videoUrlCn)
127 } else {
128 window.open(liveData.value.videoUrlEn)
129 }
130 } else {
131 ElMessage.warning(language.value == 0 ? '暂无直播' : 'No live')
132 }
133 }
140 function popRemark(type) { 134 function popRemark(type) {
141 if (type == 6) { 135 if (type == 6) {
142 return router.push({ 136 return router.push({
...@@ -225,10 +219,12 @@ h4 { ...@@ -225,10 +219,12 @@ h4 {
225 // flex: 0 0 14.28%; 219 // flex: 0 0 14.28%;
226 // } 220 // }
227 //} 221 //}
228 222 .funcBtn{text-transform: uppercase;
223 h4 {display: flex;align-items: center;justify-content: center;height: 20%;}
224 }
229 .fixedKP { 225 .fixedKP {
230 position: fixed; 226 position: fixed;
231 background: linear-gradient(-90deg, #8623FC, #453DEA); 227 background: #000;
232 left: 0; 228 left: 0;
233 top: 450px; 229 top: 450px;
234 cursor: pointer; 230 cursor: pointer;
......
...@@ -142,173 +142,54 @@ ...@@ -142,173 +142,54 @@
142 </div> 142 </div>
143 143
144 </el-col> 144 </el-col>
145 <el-col v-if="matchData.type=='0'" :lg="8" :md="12" :xl="8"> 145 <!-- <el-col v-if="matchData.type=='0'" :lg="8" :md="12" :xl="8">-->
146 <p v-if="language==0" class="countDownTitle"> 146 <!-- <p v-if="language==0" class="countDownTitle">-->
147 <span v-if="startSign>0">报名开始倒计时</span> 147 <!-- <span v-if="startSign>0">报名开始倒计时</span>-->
148 <span v-else>报名截止倒计时</span> 148 <!-- <span v-else>报名截止倒计时</span>-->
149 </p> 149 <!-- </p>-->
150 <p v-else class="countDownTitle"> 150 <!-- <p v-else class="countDownTitle">-->
151 <span>REGISTRATION COUNTDOWN</span> 151 <!-- <span>REGISTRATION COUNTDOWN</span>-->
152 </p> 152 <!-- </p>-->
153 153
154 <van-count-down :time="startSign>0?startSign:time" format="DD 天 HH 时 mm 分 ss 秒"> 154 <!-- <van-count-down :time="startSign>0?startSign:time" format="DD 天 HH 时 mm 分 ss 秒">-->
155 <template #default="timeData"> 155 <!-- <template #default="timeData">-->
156 <span class="block">{{ timeData.days }}</span> 156 <!-- <span class="block">{{ timeData.days }}</span>-->
157 <span class="colon">{{ language == 0 ? '天' : 'Days' }}</span> 157 <!-- <span class="colon">{{ language == 0 ? '天' : 'Days' }}</span>-->
158 <span class="block">{{ timeData.hours }}</span> 158 <!-- <span class="block">{{ timeData.hours }}</span>-->
159 <span class="colon">{{ language == 0 ? '时' : 'Hrs' }}</span> 159 <!-- <span class="colon">{{ language == 0 ? '时' : 'Hrs' }}</span>-->
160 <span class="block">{{ timeData.minutes }}</span> 160 <!-- <span class="block">{{ timeData.minutes }}</span>-->
161 <span class="colon">{{ language == 0 ? '分' : 'Min' }}</span> 161 <!-- <span class="colon">{{ language == 0 ? '分' : 'Min' }}</span>-->
162 <span class="block">{{ timeData.seconds }}</span> 162 <!-- <span class="block">{{ timeData.seconds }}</span>-->
163 <span class="colon">{{ language == 0 ? '秒' : 'Sec' }}</span> 163 <!-- <span class="colon">{{ language == 0 ? '秒' : 'Sec' }}</span>-->
164 </template> 164 <!-- </template>-->
165 </van-count-down> 165 <!-- </van-count-down>-->
166 166
167 <div class="flexCenter"> 167 <!-- <div class="flexCenter">-->
168 <el-button v-if="matchData.progressStatusCode=='2'" ref="RegisterRef" class="btn-lineG mt10 w100" round 168 <!-- <el-button v-if="matchData.progressStatusCode=='2'" ref="RegisterRef" class="btn-lineG mt10 w100" round-->
169 style="font-size: 16px" 169 <!-- style="font-size: 16px"-->
170 type="primary" @click="choseSignType"> 170 <!-- type="primary" @click="choseSignType">-->
171 {{ language == 0 ? '我要报名' : 'REGISTER' }} 171 <!-- {{ language == 0 ? '我要报名' : 'REGISTER' }}-->
172 </el-button> 172 <!-- </el-button>-->
173 <div v-else-if="time<=0" class="btn-lineG mb20 mauto text-center" style="opacity: 0.5;"> 173 <!-- <div v-else-if="time<=0" class="btn-lineG mb20 mauto text-center" style="opacity: 0.5;">-->
174 {{ language == 0 ? '报名已结束' : 'Registration has ended' }} 174 <!-- {{ language == 0 ? '报名已结束' : 'Registration has ended' }}-->
175 </div> 175 <!-- </div>-->
176 <div v-else-if="startSign>0" class="btn-lineG mb20 mauto text-center" style="opacity: 0.5;"> 176 <!-- <div v-else-if="startSign>0" class="btn-lineG mb20 mauto text-center" style="opacity: 0.5;">-->
177 {{ language == 0 ? '报名未开始' : 'Not started yet' }} 177 <!-- {{ language == 0 ? '报名未开始' : 'Not started yet' }}-->
178 </div> 178 <!-- </div>-->
179 </div> 179 <!-- </div>-->
180 <p class="text-gray text-center uppercase">{{ 180 <!-- <p class="text-gray text-center uppercase">{{-->
181 language == 0 ? '报名截止' : 'Registration Deadline' 181 <!-- language == 0 ? '报名截止' : 'Registration Deadline'-->
182 }}:{{ matchData.signEndTime?.slice(0, 10) }}</p> 182 <!-- }}:{{ matchData.signEndTime?.slice(0, 10) }}</p>-->
183 183
184 </el-col> 184 <!-- </el-col>-->
185 </el-row> 185 </el-row>
186 </el-card> 186 </el-card>
187 187
188 <!-- 只联赛有--> 188 <!-- 只联赛有-->
189 <quick-row v-if="matchData.leagueId==0" :match-id="matchId"/> 189 <!-- 邀请函 @click="applyInvitation"-->
190 190 <quick-row :match-id="matchId"/>
191 <el-row v-if="matchData.type=='0'" :gutter="20">
192 <el-col :lg="18">
193 <el-card :body-style="{'padding':'0'}">
194 <div class="lineHead">
195 <ul>
196 <li v-for="l in menu" :key="l.name" :class="l.active==1?'active':''" @click="changeMenu(menu,l)">
197 {{ language == 0 ? l.cn : l.name }}
198 </li>
199 </ul>
200 </div>
201 <matchInfo v-if="menu[0].active==1" :form="matchData"/>
202 <div v-if="menu[1].active==1">
203 <match-info-project-list :is-national="isNational" :match-id="matchData.id"/>
204 </div>
205 <match-schedule-list v-if="menu[2].active==1" :match-data="matchData"/>
206 <div v-if="menu[3].active==1">
207 <div v-if="matchData.showPersonFlag=='1'">
208 <!-- <el-row :gutter="20" v-if="matchData.signType == '0'">-->
209 <!-- <el-col v-for="t in signDoneGroupList" :key="t.id" :span="8">-->
210 <!-- <div class="teamItem">-->
211 <!-- <el-avatar :size="60" :src="fillImgUrl(t.imgUrl||t.avatar)"/>-->
212 <!-- <span class="name">{{ t.name }}</span>-->
213 <!-- </div>-->
214 <!-- </el-col>-->
215 <!-- </el-row>-->
216 <el-row :gutter="20" class="pd20">
217 <el-col :span="24">
218 <div class="fr mb20">
219 <div class="flex">
220 <el-input v-model="queryGroupList.groupName" :placeholder="language == 0 ? '请输入参赛队名称' :'Please enter the Team name'" :prefix-icon="Search" class="mr10"
221 clearable
222 size="small" @change="getGroupListByCptId"/>
223 <el-input v-model="queryGroupList.athleteName" :placeholder=" language == 0 ? '请输入运动员查询' :'Please enter the athlete name'" :prefix-icon="Search"
224 clearable
225 size="small" @change="getGroupListByCptId"/>
226 </div>
227 </div>
228 <el-table :data="signDoneGroupList">
229 <el-table-column :label="language == 0 ? '组别代码' :'EVENT CODE'" align="center" min-width="120"
230 prop="groupCode"/>
231 <el-table-column :label="language == 0 ?'组别':'EVENT'" min-width="200" prop="group">
232 <template #default="scope">
233 <div class="esp">{{ scope.row.group }}</div>
234 </template>
235 </el-table-column>
236 <el-table-column :label="language == 0 ?'男运动员':'man name'" min-width="150"
237 prop="maleAthName"/>
238 <el-table-column :label="language == 0 ?'女运动员':'woman name'" min-width="150"
239 prop="femaleAthName"/>
240 <el-table-column :label="language == 0 ?'舞种':'Division'" align="center" min-width="90"
241 prop="danceType"/>
242 <el-table-column :label="language == 0 ?'国籍':'Representing'" align="center" min-width="130"
243 prop="countryName"/>
244 <el-table-column :label="language == 0 ?'参赛队名称':'Team name'" align="center" min-width="150"
245 prop="groupName"/>
246 </el-table>
247 <PaginationPc
248 v-show="signDoneGroupListToTal>0"
249 v-model:limit="queryGroupList.pageSize"
250 v-model:page="queryGroupList.pageNum"
251 :total="signDoneGroupListToTal"
252 @pagination="getGroupListByCptId"
253 />
254 </el-col>
255 </el-row>
256 </div>
257 <div v-else>
258 <el-empty :image="`/img/order_no.png`" :image-size="228" description=""/>
259 </div>
260
261 </div>
262 <div v-if="menu[4].active==1">
263 <!--成绩-->
264 <el-empty :image="`/img/order_no.png`" :image-size="228" description=""/>
265 </div>
266 <div v-if="menu[5].active==1" class="pd20">
267 <div class="xzbox">
268 <div v-html="matchData.signKnow"></div>
269 <div v-if="matchData.signKnowUrl">
270 <el-link v-for="(item,index) in JSON.parse(matchData.signKnowUrl)" :href="fillImgUrl(item.url)"
271 target="_blank" type="primary">
272 <el-icon :size="20">
273 <Download/>
274 </el-icon>
275 {{ item.name }}
276 </el-link>
277 </div>
278 </div>
279 </div>
280 </el-card>
281 <div style="height: 20px"></div>
282
283 </el-col>
284 <el-col :lg="6">
285 <match-news :match-id="matchId"/>
286 </el-col>
287 </el-row>
288
289 <el-row v-if="matchData.type=='1'" class="mb20">
290 <el-col :lg="24">
291 <el-card :body-style="{'padding':'0'}">
292 <div class="lineHead">
293 <ul>
294 <li v-for="l in menu1" :key="l.name" :class="l.active==1?'active':''" @click="changeMenu(menu1,l)">
295 {{ language == 0 ? l.cn : l.name }}
296 </li>
297 </ul>
298 </div>
299 <!-- 分站赛-->
300 <substation-list v-if="menu1[0].active==1" :list="matchData.cpts"/>
301 <matchInfo v-if="menu1[1].active==1" :form="matchData"/>
302 <match-schedule-list v-if="menu1[2].active==1" :match-data="matchData"/>
303 </el-card>
304 </el-col>
305 </el-row>
306 </div> 191 </div>
307 192
308 <div v-if="matchData.leagueId==0" class="fixed_gg_l" @click="applyInvitation">
309 <img v-if="language==0" src="@/assets/logo/Invitation_c.png"/>
310 <img v-else src="@/assets/logo/Invitation_e.png"/>
311 </div>
312 193
313 <affix-invitation ref="dialogInvitationRef"/> 194 <affix-invitation ref="dialogInvitationRef"/>
314 <div style="height: 50px"></div> 195 <div style="height: 50px"></div>
...@@ -364,6 +245,7 @@ import {dayjs, ElMessage, ElMessageBox} from 'element-plus' ...@@ -364,6 +245,7 @@ import {dayjs, ElMessage, ElMessageBox} from 'element-plus'
364 import useUserStore from "@/store/modules/user" 245 import useUserStore from "@/store/modules/user"
365 import {useStorage} from "@vueuse/core/index" 246 import {useStorage} from "@vueuse/core/index"
366 import {Search} from "@element-plus/icons-vue" 247 import {Search} from "@element-plus/icons-vue"
248 import {getInfoByCptId} from "@/apiPc/match";
367 249
368 const user = useUserStore().user 250 const user = useUserStore().user
369 const group = useUserStore().group 251 const group = useUserStore().group
...@@ -430,6 +312,9 @@ function getMatchId() { ...@@ -430,6 +312,9 @@ function getMatchId() {
430 getMatch(matchId.value) 312 getMatch(matchId.value)
431 getGroupListByCptId() 313 getGroupListByCptId()
432 }) 314 })
315 match.getInfoByCptId({id: matchId.value}).then(res=>{
316
317 })
433 } 318 }
434 319
435 function getMatch(id) { 320 function getMatch(id) {
...@@ -771,7 +656,7 @@ const openPickup = () => { ...@@ -771,7 +656,7 @@ const openPickup = () => {
771 right: 0; 656 right: 0;
772 z-index: 99; 657 z-index: 99;
773 top: 38%; 658 top: 38%;
774 background: linear-gradient(-90deg, #8623FC, #453DEA) !important; 659 background: #000 !important;
775 box-shadow: 0 0 10px #666; 660 box-shadow: 0 0 10px #666;
776 color: #fff; 661 color: #fff;
777 border-radius: 10px; 662 border-radius: 10px;
...@@ -856,7 +741,7 @@ const openPickup = () => { ...@@ -856,7 +741,7 @@ const openPickup = () => {
856 line-height: 30px; 741 line-height: 30px;
857 display: inline-block; 742 display: inline-block;
858 padding: 0 20px 0 14px; 743 padding: 0 20px 0 14px;
859 background: linear-gradient(90deg, #8623FC, #453DEA); 744 background: #000;
860 border-radius: 0px 0px 15px 0px; 745 border-radius: 0px 0px 15px 0px;
861 color: #fff; 746 color: #fff;
862 } 747 }
......
...@@ -190,17 +190,20 @@ function getList() { ...@@ -190,17 +190,20 @@ function getList() {
190 } 190 }
191 total.value = res.total 191 total.value = res.total
192 loading.value = false 192 loading.value = false
193
194 goDetail(res.rows[0].id)
193 }) 195 })
194 } 196 }
195 197
196 function goDetail(id) { 198 function goDetail(id) {
197 const routeLocation = router.resolve({ 199 // const routeLocation = router.resolve({
200 router.push({
198 name: 'matchDetail', 201 name: 'matchDetail',
199 params: { 202 params: {
200 id: id 203 id: id
201 } 204 }
202 }) 205 })
203 window.open(routeLocation.href, '_blank') 206 // window.open(routeLocation.href, '_blank')
204 } 207 }
205 </script> 208 </script>
206 209
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
52 <div class="picbox" @click="goDetail(newsList2[0])"><img :src="fillImgUrl_webSite(newsList2[0]?.picUrl)"/></div> 52 <div class="picbox" @click="goDetail(newsList2[0])"><img :src="fillImgUrl_webSite(newsList2[0]?.picUrl)"/></div>
53 </el-col> 53 </el-col>
54 <el-col :lg="15"> 54 <el-col :lg="15">
55 <el-row :gutter="20"> 55 <el-row class="mb20" :gutter="20">
56 <el-col :lg="16"> 56 <el-col :lg="16">
57 <div class="picbox" @click="goDetail(newsList2[1])"><img :src="fillImgUrl_webSite(newsList2[1]?.picUrl)"/></div> 57 <div class="picbox" @click="goDetail(newsList2[1])"><img :src="fillImgUrl_webSite(newsList2[1]?.picUrl)"/></div>
58 </el-col> 58 </el-col>
......
...@@ -299,6 +299,12 @@ const goDetail = (n) => { ...@@ -299,6 +299,12 @@ const goDetail = (n) => {
299 } 299 }
300 </script> 300 </script>
301 <style lang="scss" scoped> 301 <style lang="scss" scoped>
302 .activeItem{
303 border-bottom: 2px solid #C7C7CD;
304 &:hover{
305 border-bottom: #000;
306 }
307 }
302 .leftboderTT{ 308 .leftboderTT{
303 font-size: 20px;} 309 font-size: 20px;}
304 .flexBody { 310 .flexBody {
......
...@@ -152,24 +152,24 @@ const goDetail = (n) => { ...@@ -152,24 +152,24 @@ const goDetail = (n) => {
152 color: var(--el-color-primary);} 152 color: var(--el-color-primary);}
153 } 153 }
154 .firstItem{cursor: pointer; 154 .firstItem{cursor: pointer;
155 background: #F8F4FF;height: 100%;padding: 10px 20px; 155 background: #F7F8FC;height: 100%;padding: 10px 20px;
156 .date{font-weight: bold;transform: scaleX(0.7);transform-origin: left; 156 .date{font-weight: bold;transform: scaleX(0.7);transform-origin: left;
157 font-size: 18px; 157 font-size: 18px;
158 color: var(--el-color-primary); 158 color: #4C5359;
159 p{margin: 5px 0;} 159 p{margin: 5px 0;}
160 } 160 }
161 h3{margin: 10px 0; 161 h3{margin: 10px 0;
162 font-size: 22px;} 162 font-size: 22px;}
163 .go{color: var(--el-color-primary); 163 .go{color: #929AA0;
164 font-size: 14px;padding: 0 0 5px;} 164 font-size: 14px;padding: 0 0 5px;}
165 &:hover{background: linear-gradient(90deg, #8623fc3d, #453dea36);} 165 &:hover{background: #dcdde1;}
166 } 166 }
167 .newsLine{ 167 .newsLine{
168 .firstItem{margin-bottom: 10px;} 168 .firstItem{margin-bottom: 10px;}
169 .item{display: flex;position: relative;width: 100%;height: 90px; 169 .item{display: flex;position: relative;width: 100%;height: 90px;
170 align-items: center;cursor: pointer;border-bottom: 1px dashed #EEEEEE; 170 align-items: center;cursor: pointer;border-bottom: 1px dashed #EEEEEE;
171 .date{width: 60px;height: 60px;text-align: center;background: #FAFAFA;margin: 0 10px; 171 .date{width: 60px;height: 60px;text-align: center;background: #FAFAFA;margin: 0 10px;
172 .day{color: var(--el-color-primary);transform: scaleX(0.7);font-weight: bold;font-size: 24px;} 172 .day{color: #4C5359;transform: scaleX(0.7);font-weight: bold;font-size: 24px;}
173 p{font-size: 14px;margin: 0;transform: scaleX(0.7);font-weight: bold;color: #7B7F83;} 173 p{font-size: 14px;margin: 0;transform: scaleX(0.7);font-weight: bold;color: #7B7F83;}
174 } 174 }
175 .item-body{width: 60%; 175 .item-body{width: 60%;
...@@ -180,14 +180,14 @@ const goDetail = (n) => { ...@@ -180,14 +180,14 @@ const goDetail = (n) => {
180 filter:grayscale(1); 180 filter:grayscale(1);
181 } 181 }
182 } 182 }
183 .item:hover{background: #F8F4FF; 183 .item:hover{background: #f7f8fc;
184 .date{ 184 .date{
185 background: var(--el-color-primary); 185 background:#000;
186 .day{color: #fff;} 186 .day{color: #fff;}
187 p{color: #fff;} 187 p{color: #fff;}
188 } 188 }
189 .item-body{ 189 .item-body{
190 h3{color: var(--el-color-primary);} 190 h3{color: #000;}
191 } 191 }
192 } 192 }
193 } 193 }
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
5 <div v-if="language==0"> 5 <div v-if="language==0">
6 <h4>一、协议生效与适用范围</h4> 6 <h4>一、协议生效与适用范围</h4>
7 1.1 7 1.1
8 本协议是您与无锡吉J体育舞蹈数字化平台系统(以下简称“系统”)之间关于您注册并使用系统服务所订立的协议。<br/><br/> 8 本协议是您与平台系统(以下简称“系统”)之间关于您注册并使用系统服务所订立的协议。<br/><br/>
9 1.2 您通过点击或以其他方式选择接受本协议,即表示您已充分阅读、理解并同意接受本协议的约束。如果您不同意本协议的任何条款,请不要进行注册或使用本系统的服务。 9 1.2 您通过点击或以其他方式选择接受本协议,即表示您已充分阅读、理解并同意接受本协议的约束。如果您不同意本协议的任何条款,请不要进行注册或使用本系统的服务。
10 <br/><br/> 10 <br/><br/>
11 1.3 本协议适用于您使用系统提供的所有服务,包括但不限于在线课程、社区交流、活动报名等。<br/> 11 1.3 本协议适用于您使用系统提供的所有服务,包括但不限于在线课程、社区交流、活动报名等。<br/>
......
...@@ -147,7 +147,7 @@ h3{background: #F5F0FF;margin: 0;padding: 10px 0; ...@@ -147,7 +147,7 @@ h3{background: #F5F0FF;margin: 0;padding: 10px 0;
147 :deep(.el-calendar__button-group){display: none;} 147 :deep(.el-calendar__button-group){display: none;}
148 } 148 }
149 .primaryDate{color: #fff; 149 .primaryDate{color: #fff;
150 background: linear-gradient(90deg, #8623FC, #453DEA);} 150 background: #000;}
151 .date{ margin:5px auto;border-radius: 50%;width: 34px;height: 34px;line-height: 34px; 151 .date{ margin:5px auto;border-radius: 50%;width: 34px;height: 34px;line-height: 34px;
152 font-weight: bold; 152 font-weight: bold;
153 } 153 }
...@@ -158,19 +158,19 @@ h3{background: #F5F0FF;margin: 0;padding: 10px 0; ...@@ -158,19 +158,19 @@ h3{background: #F5F0FF;margin: 0;padding: 10px 0;
158 border-radius: 10px; 158 border-radius: 10px;
159 font-weight: 500; 159 font-weight: 500;
160 font-size: 15px;cursor: pointer; 160 font-size: 15px;cursor: pointer;
161 label{color: #453DEA;margin-right: 15px; 161 label{color: #000;margin-right: 15px;
162 &::before{content: '';background:#fff;left: -17px;top: 0px;bottom: 0;margin: auto; 162 &::before{content: '';background:#fff;left: -17px;top: 0px;bottom: 0;margin: auto;
163 border-radius: 50%;width: 2px;height: 2px;position: absolute;z-index: 1} 163 border-radius: 50%;width: 2px;height: 2px;position: absolute;z-index: 1}
164 } 164 }
165 } 165 }
166 li::before{content: '';background: linear-gradient(0deg, #8623FC, #453DEA); 166 li::before{content: '';background: #000;
167 border-radius: 50%;width: 8px;height: 8px;position: absolute; 167 border-radius: 50%;width: 8px;height: 8px;position: absolute;
168 left: -20px;top: 0;bottom: 0;margin: auto;z-index: 1; 168 left: -20px;top: 0;bottom: 0;margin: auto;z-index: 1;
169 } 169 }
170 li::after{content: ''; left: -16px;width: 1px;height: 100%; 170 li::after{content: ''; left: -16px;width: 1px;height: 100%;
171 background: #EBEBEB; position: absolute;top: 20px} 171 background: #EBEBEB; position: absolute;top: 20px}
172 li:hover{color: #fff; 172 li:hover{color: #fff;
173 background: linear-gradient(-90deg, #8623FC, #453DEA); 173 background: #000;
174 label{color: #fff;} 174 label{color: #fff;}
175 } 175 }
176 } 176 }
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!