f0cdcd30 by zhangmeng

前台报名

1 parent f638433a
...@@ -257,7 +257,7 @@ export function recoverMySignFromCancel(cptId) { ...@@ -257,7 +257,7 @@ export function recoverMySignFromCancel(cptId) {
257 return request({ 257 return request({
258 url: `/league/sign/recoverMySignFromCancel`, 258 url: `/league/sign/recoverMySignFromCancel`,
259 method: 'post', 259 method: 'post',
260 data: {cptId: cptId} 260 data: { cptId: cptId }
261 }) 261 })
262 } 262 }
263 263
...@@ -402,7 +402,7 @@ export function delPerson(id) { ...@@ -402,7 +402,7 @@ export function delPerson(id) {
402 }) 402 })
403 } 403 }
404 404
405 //个人账号 405 // 个人账号
406 export function delPersonForPersonal(id) { 406 export function delPersonForPersonal(id) {
407 return request({ 407 return request({
408 url: `/systemj/personInfo/singleDelete/${id}`, 408 url: `/systemj/personInfo/singleDelete/${id}`,
...@@ -639,7 +639,7 @@ export function saveWdsfMin(obj, groupId) { ...@@ -639,7 +639,7 @@ export function saveWdsfMin(obj, groupId) {
639 }) 639 })
640 } 640 }
641 641
642 //todo 642 // todo
643 export function bindWdsf(perId, card) { 643 export function bindWdsf(perId, card) {
644 return request({ 644 return request({
645 url: `/systemj/personInfo/bindWdsf/${perId}?card=${card}`, 645 url: `/systemj/personInfo/bindWdsf/${perId}?card=${card}`,
...@@ -771,12 +771,14 @@ export function getAboutUs(params) { ...@@ -771,12 +771,14 @@ export function getAboutUs(params) {
771 params 771 params
772 }) 772 })
773 } 773 }
774
774 export function getppInfo(params) { 775 export function getppInfo(params) {
775 return request({ 776 return request({
776 url: `/portal/website/${params}`, 777 url: `/portal/website/${params}`,
777 method: 'get' 778 method: 'get'
778 }) 779 })
779 } 780 }
781
780 export function getZNList(params) { 782 export function getZNList(params) {
781 return request({ 783 return request({
782 url: `/Portal/websiteInfo/list`, 784 url: `/Portal/websiteInfo/list`,
...@@ -785,4 +787,21 @@ export function getZNList(params) { ...@@ -785,4 +787,21 @@ export function getZNList(params) {
785 }) 787 })
786 } 788 }
787 789
790 // 团体报名校验
791 export function preCheckForGroup(groupId) {
792 return request({
793 url: `/systemj/personInfo/preCheckForGroup/${groupId}`,
794 method: 'get'
795 })
796 }
797
798 // 个人报名校验
799 export function preCheckForPerson(params) {
800 return request({
801 url: `/systemj/personInfo/preCheckForPerson`,
802 method: 'get',
803 params
804 })
805 }
806
788 807
......
1 <template> 1 <template>
2 <div style="padding: 0 20px 20px" v-if="language==0"> 2 <div v-if="language==0" style="padding: 0 20px 20px">
3 <!--赛事详情--> 3 <!--赛事详情-->
4 <div class="indexTitle"> 4 <div class="indexTitle">
5 <h3 class="leftboderTT">组织机构</h3> 5 <h3 class="leftboderTT">组织机构</h3>
6 </div> 6 </div>
7 <div class="xzbox" v-html="form.ocOrganizer"> 7 <div class="xzbox" v-html="form.ocOrganizer" />
8 </div> 8 <div v-if="form.languageSource!='100'" class="indexTitle"><h3 class="leftboderTT">报名须知</h3></div>
9 <div class="indexTitle" v-if="form.languageSource!='100'"><h3 class="leftboderTT">报名须知</h3></div> 9 <div v-if="form.languageSource!='100'" class="xzbox">
10 <div class="xzbox" v-if="form.languageSource!='100'"> 10 <div v-html="form.signKnow" />
11 <div v-html="form.signKnow"></div>
12 <div v-if="form.signKnowUrl"> 11 <div v-if="form.signKnowUrl">
13 <el-link v-for="(item,index) in JSON.parse(form.signKnowUrl)" type="primary" 12 <el-link
14 :href="fillImgUrl(item.url)" target="_blank"> 13 v-for="(item,index) in JSON.parse(form.signKnowUrl)" :key="index" :href="fillImgUrl(item.url)"
14 target="_blank" type="primary"
15 >
15 <el-icon :size="20"> 16 <el-icon :size="20">
16 <Download /> 17 <Download />
17 </el-icon> 18 </el-icon>
18 {{ item.name }} 19 {{ item.name }}
19 </el-link> 20 </el-link>
20 </div> 21 </div>
21
22 </div> 22 </div>
23 <!-- <div class="indexTitle"><h3 class="leftboderTT">免责声明</h3></div>--> 23 <!-- <div class="indexTitle"><h3 class="leftboderTT">免责声明</h3></div>-->
24 <!-- <div class="xzbox">--> 24 <!-- <div class="xzbox">-->
25 <!-- <el-link v-if="form.disclaimerUrl" type="primary" :href="fillImgUrl(JSON.parse(form.disclaimerUrl)[0]?.url)" target="_blank">--> 25 <!-- <el-link v-if="form.disclaimerUrl" type="primary" :href="fillImgUrl(JSON.parse(form.disclaimerUrl)[0]?.url)" target="_blank">-->
26 <!-- <el-icon :size="20">--> 26 <!-- <el-icon :size="20">-->
27 <!-- <Download />--> 27 <!-- <Download />-->
28 <!-- </el-icon>--> 28 <!-- </el-icon>-->
29 <!-- {{ JSON.parse(form.disclaimerUrl)[0]?.name }}--> 29 <!-- {{ JSON.parse(form.disclaimerUrl)[0]?.name }}-->
30 <!-- </el-link>--> 30 <!-- </el-link>-->
31 <!-- </div>--> 31 <!-- </div>-->
32 <div class="indexTitle" v-if="form.languageSource=='100'"><h3 class="leftboderTT">赛事规程</h3></div> 32 <div v-if="form.languageSource=='100'" class="indexTitle"><h3 class="leftboderTT">赛事规程</h3></div>
33 <div class="xzbox" v-if="form.languageSource=='100'"> 33 <div v-if="form.languageSource=='100'" class="xzbox">
34 <div v-html="form.ruleContent"></div> 34 <div v-html="form.ruleContent" />
35 <el-link v-if="form.ruleUrl" type="primary" :href="fillImgUrl(JSON.parse(form.ruleUrl)[0]?.url)" target="_blank"> 35 <el-link v-if="form.ruleUrl" :href="fillImgUrl(JSON.parse(form.ruleUrl)[0]?.url)" target="_blank" type="primary">
36 <el-icon :size="20"> 36 <el-icon :size="20">
37 <Download /> 37 <Download />
38 </el-icon> 38 </el-icon>
39 {{ JSON.parse(form.ruleUrl)[0]?.name }} 39 {{ JSON.parse(form.ruleUrl)[0]?.name }}
40 </el-link> 40 </el-link>
41 </div> 41 </div>
42 <!-- <div class="indexTitle" v-if="form.type==1&&form.cptProjectList?.length > 0"><h3 class="leftboderTT">竞赛项目</h3></div>--> 42 <!-- <div class="indexTitle" v-if="form.type==1&&form.cptProjectList?.length > 0"><h3 class="leftboderTT">竞赛项目</h3></div>-->
43 <!-- <div v-if="form.type==1&&form.cptProjectList?.length > 0">--> 43 <!-- <div v-if="form.type==1&&form.cptProjectList?.length > 0">-->
44 44
45 <!-- </div>--> 45 <!-- </div>-->
46 46
47 </div> 47 </div>
48 <div style="padding: 0 20px 20px" v-else> 48 <div v-else style="padding: 0 20px 20px">
49 <!--赛事详情--> 49 <!--赛事详情-->
50 <div class="indexTitle"> 50 <div class="indexTitle">
51 <h3 class="leftboderTT">Organization</h3> 51 <h3 class="leftboderTT">Organization</h3>
52 </div> 52 </div>
53 <div class="xzbox" v-html="form.ocOrganizer"> 53 <div class="xzbox" v-html="form.ocOrganizer" />
54 </div>
55 <div class="indexTitle"><h3 class="leftboderTT">Notes</h3></div> 54 <div class="indexTitle"><h3 class="leftboderTT">Notes</h3></div>
56 <div class="xzbox"> 55 <div class="xzbox">
57 <div v-html="form.signKnow"></div> 56 <div v-html="form.signKnow" />
58 <el-link v-if="form.signKnowUrl" type="primary" :href="fillImgUrl(JSON.parse(form.signKnowUrl)[0]?.url)" target="_blank"> 57 <el-link
58 v-if="form.signKnowUrl" :href="fillImgUrl(JSON.parse(form.signKnowUrl)[0]?.url)" target="_blank"
59 type="primary"
60 >
59 <el-icon :size="20"> 61 <el-icon :size="20">
60 <Download /> 62 <Download />
61 </el-icon> 63 </el-icon>
62 {{ JSON.parse(form.signKnowUrl)[0]?.name }} 64 {{ JSON.parse(form.signKnowUrl)[0]?.name }}
63 </el-link> 65 </el-link>
64 </div> 66 </div>
65 <!-- <div class="indexTitle"><h3 class="leftboderTT">Disclaimers</h3></div>--> 67 <!-- <div class="indexTitle"><h3 class="leftboderTT">Disclaimers</h3></div>-->
66 <!-- <div class="xzbox">--> 68 <!-- <div class="xzbox">-->
67 <!-- <el-link v-if="form.disclaimerUrl" type="primary" :href="fillImgUrl(JSON.parse(form.disclaimerUrl)[0]?.url)" target="_blank">--> 69 <!-- <el-link v-if="form.disclaimerUrl" type="primary" :href="fillImgUrl(JSON.parse(form.disclaimerUrl)[0]?.url)" target="_blank">-->
68 <!-- <el-icon :size="20">--> 70 <!-- <el-icon :size="20">-->
69 <!-- <Download />--> 71 <!-- <Download />-->
70 <!-- </el-icon>--> 72 <!-- </el-icon>-->
71 <!-- {{ JSON.parse(form.disclaimerUrl)[0]?.name }}--> 73 <!-- {{ JSON.parse(form.disclaimerUrl)[0]?.name }}-->
72 <!-- </el-link>--> 74 <!-- </el-link>-->
73 <!-- </div>--> 75 <!-- </div>-->
74 76
75 <!-- <div class="indexTitle"><h3 class="leftboderTT">Competition Regulations</h3></div>--> 77 <!-- <div class="indexTitle"><h3 class="leftboderTT">Competition Regulations</h3></div>-->
76 <!-- <div class="xzbox">--> 78 <!-- <div class="xzbox">-->
77 <!-- <div v-html="form.ruleContent">--> 79 <!-- <div v-html="form.ruleContent">-->
78 80
79 <!-- </div>--> 81 <!-- </div>-->
80 <!-- <el-link v-if="form.ruleUrl" type="primary" :href="fillImgUrl(JSON.parse(form.ruleUrl)[0]?.url)" target="_blank">--> 82 <!-- <el-link v-if="form.ruleUrl" type="primary" :href="fillImgUrl(JSON.parse(form.ruleUrl)[0]?.url)" target="_blank">-->
81 <!-- <el-icon :size="20">--> 83 <!-- <el-icon :size="20">-->
82 <!-- <Download />--> 84 <!-- <Download />-->
83 <!-- </el-icon>--> 85 <!-- </el-icon>-->
84 <!-- {{ JSON.parse(form.ruleUrl)[0]?.name }}--> 86 <!-- {{ JSON.parse(form.ruleUrl)[0]?.name }}-->
85 <!-- </el-link>--> 87 <!-- </el-link>-->
86 <!-- </div>--> 88 <!-- </div>-->
87 <div class="indexTitle" v-if="form.type==1 && form.cptProjectList?.length > 0"><h3 class="leftboderTT">Event settings</h3></div> 89 <div v-if="form.type==1 && form.cptProjectList?.length > 0" class="indexTitle"><h3 class="leftboderTT">Event
90 settings</h3></div>
88 <div v-if="form.type==1 && form.cptProjectList?.length > 0"> 91 <div v-if="form.type==1 && form.cptProjectList?.length > 0">
89 <match-info-project-list :match-id="form.id" :is-national="form.languageSource!='100'"/> 92 <match-info-project-list :is-national="form.languageSource!='100'" :match-id="form.id" />
90 </div> 93 </div>
91 </div> 94 </div>
92 </template> 95 </template>
93 96
94 <script setup> 97 <script setup>
95 import {ref} from "vue"; 98 import { ref } from 'vue'
96 import MatchInfoProjectList from "@/viewsPc/match/components/matchInfo-projectList"; 99 import MatchInfoProjectList from '@/viewsPc/match/components/matchInfo-projectList'
97 import {useStorage} from "@vueuse/core/index"; 100 import { useStorage } from '@vueuse/core/index'
98 import {onMounted} from "@vue/runtime-core"; 101 import { onMounted } from '@vue/runtime-core'
99 102
100 const language= useStorage('language',0) 103 const language = useStorage('language', 0)
101 104
102 const props = defineProps({ 105 const props = defineProps({
103 form:{ 106 form: {
104 type:Object, 107 type: Object,
105 required:true 108 required: true
106 } 109 }
107 }) 110 })
108 111
109 112
110
111 </script> 113 </script>
112 114
113 <style scoped lang="scss"> 115 <style lang="scss" scoped>
114 .indexTitle{margin: 20px 0 12px; 116 .indexTitle {
115 h3{ 117 margin: 20px 0 12px;
118
119 h3 {
116 font-size: 20px; 120 font-size: 20px;
117 color:var(--el-color-primary); 121 color: var(--el-color-primary);
118 } 122 }
119 } 123 }
120 124
......
1 <template> 1 <template>
2 <div v-loading="loading" class="app-container"> 2 <div v-loading="loading" class="app-container">
3 <div class="mt30"/> 3 <div class="mt30" />
4 <div v-if="error"> 4 <div v-if="error">
5 <el-result 5 <el-result
6 :title="language==0?'未找到赛事':'No Data'" 6 :title="language==0?'未找到赛事':'No Data'"
7 icon="error" 7 icon="error"
8 > 8 >
9 <template #extra> 9 <template #extra />
10 </template>
11 </el-result> 10 </el-result>
12 </div> 11 </div>
13 <div v-else class="box mb20"> 12 <div v-else class="box mb20">
...@@ -19,7 +18,7 @@ ...@@ -19,7 +18,7 @@
19 <el-tag v-if="matchData.signType==1">{{ language == 0 ? '团体' : 'Team' }}</el-tag> 18 <el-tag v-if="matchData.signType==1">{{ language == 0 ? '团体' : 'Team' }}</el-tag>
20 <el-tag v-if="matchData.signType==2">{{ language == 0 ? '个人/团体' : 'Individual/Team' }}</el-tag> 19 <el-tag v-if="matchData.signType==2">{{ language == 0 ? '个人/团体' : 'Individual/Team' }}</el-tag>
21 </div> 20 </div>
22 21
23 <img :src="fillImgUrl(matchData.coverUrl)" class="mauto w100 as16_9"> 22 <img :src="fillImgUrl(matchData.coverUrl)" class="mauto w100 as16_9">
24 </el-col> 23 </el-col>
25 <el-col :lg="matchData.type=='0'?9:16" :md="12" :xl="10" style="position: relative"> 24 <el-col :lg="matchData.type=='0'?9:16" :md="12" :xl="10" style="position: relative">
...@@ -38,36 +37,46 @@ ...@@ -38,36 +37,46 @@
38 </label> 37 </label>
39 {{ matchData.address }}</p> 38 {{ matchData.address }}</p>
40 <!-- <p class="ppl" v-if="matchData.signEndTime"><label class="bm4">Registration Deadline:</label>{{ matchData.signEndTime?.slice(0, 10) }}</p>--> 39 <!-- <p class="ppl" v-if="matchData.signEndTime"><label class="bm4">Registration Deadline:</label>{{ matchData.signEndTime?.slice(0, 10) }}</p>-->
41 40
42 <p class="ppl"><label> 41 <p class="ppl"><label>
43 <svg class="icon" height="18" p-id="37235" style="position: relative;top: 3px;" 42 <svg
44 t="1712726889323" 43 class="icon" height="18" p-id="37235" style="position: relative;top: 3px;"
45 version="1.1" viewBox="0 0 1024 1024" width="18" xmlns="http://www.w3.org/2000/svg"> 44 t="1712726889323"
45 version="1.1" viewBox="0 0 1024 1024" width="18" xmlns="http://www.w3.org/2000/svg"
46 >
46 <path 47 <path
47 d="M290.88 128H928V96a64 64 0 0 0-64-64H288a192 192 0 0 0-192 192v576a192 192 0 0 0 192 192h576a64 64 0 0 0 64-64V320a64 64 0 0 0-64-64H290.88A64 64 0 0 1 224 192a64 64 0 0 1 66.88-64z m77.12 608l96-22.72v-29.12a123.2 123.2 0 0 1-58.24-84.48c-29.76-2.24-24.64-41.28-24.64-41.28 0-19.84 10.24-26.24 18.56-27.84v-19.2c0-148.48 128-128 128-128a128 128 0 0 1 55.04 5.12c34.56 11.2 72.32 42.24 72.32 123.2v19.2c8.32 1.92 18.56 8 18.56 28.16 0 0 5.12 39.04-24.64 41.28a123.2 123.2 0 0 1-58.24 84.48v29.12l96 22.72c47.04 16.64 0 96 0 96h-320S320 752 368 736z" 48 d="M290.88 128H928V96a64 64 0 0 0-64-64H288a192 192 0 0 0-192 192v576a192 192 0 0 0 192 192h576a64 64 0 0 0 64-64V320a64 64 0 0 0-64-64H290.88A64 64 0 0 1 224 192a64 64 0 0 1 66.88-64z m77.12 608l96-22.72v-29.12a123.2 123.2 0 0 1-58.24-84.48c-29.76-2.24-24.64-41.28-24.64-41.28 0-19.84 10.24-26.24 18.56-27.84v-19.2c0-148.48 128-128 128-128a128 128 0 0 1 55.04 5.12c34.56 11.2 72.32 42.24 72.32 123.2v19.2c8.32 1.92 18.56 8 18.56 28.16 0 0 5.12 39.04-24.64 41.28a123.2 123.2 0 0 1-58.24 84.48v29.12l96 22.72c47.04 16.64 0 96 0 96h-320S320 752 368 736z"
48 fill="#d3d8d9" p-id="37236"></path> 49 fill="#d3d8d9" p-id="37236"
50 />
49 </svg> 51 </svg>
50 {{ language == 0 ? '联&ensp;系&ensp;人' : 'CONTACT PERSON' }}</label>{{ matchData.contactPerson }} 52 {{ language == 0 ? '联&ensp;系&ensp;人' : 'CONTACT PERSON' }}</label>{{ matchData.contactPerson }}
51 </p> 53 </p>
52 54
53 <p class="ppl"> 55 <p class="ppl">
54 <label> 56 <label>
55 <svg class="icon" height="20" p-id="7920" style="position: relative;top: 2px;" 57 <svg
56 t="1711708779620" version="1.1" viewBox="0 0 1024 1024" width="20" xmlns="http://www.w3.org/2000/svg"> 58 class="icon" height="20" p-id="7920" style="position: relative;top: 2px;"
59 t="1711708779620" version="1.1" viewBox="0 0 1024 1024" width="20"
60 xmlns="http://www.w3.org/2000/svg"
61 >
57 <path 62 <path
58 d="M398.652952 165.692952c-32.280381-46.006857-58.172952-61.318095-92.867047-54.808381-14.969905 2.80381-24.210286 7.850667-41.20381 22.528l-12.946285 11.361524-25.185524 20.894476-6.582857 5.753905c-3.705905 3.413333-6.38781 6.217143-9.825524 10.118095-64 72.46019-81.724952 185.782857-44.470857 292.327619 26.794667 76.55619 74.605714 152.624762 142.774857 228.644572 72.289524 80.62781 133.046857 131.364571 202.922666 168.374857 54.857143 29.013333 96.865524 41.74019 145.676191 43.227429 59.001905 1.828571 110.957714-11.50781 153.648762-39.15581a162.133333 162.133333 0 0 0 19.553524-15.189333l8.289523-7.558095 16.335239-15.213715 5.534476-4.924952 10.922666-9.435429c22.040381-19.651048 29.184-31.939048 30.646858-51.370666 2.194286-29.647238-11.215238-52.736-49.737143-85.699048l-26.063238-21.820952-12.117334-10.581334-11.459047-9.825524c-37.229714-30.744381-64.804571-40.69181-100.205715-35.35238-24.283429 3.632762-38.278095 12.141714-63.073523 38.107428l-10.947048 11.654095c-18.041905 19.017143-28.330667 26.258286-43.544381 29.305905-22.25981 4.461714-44.373333-7.046095-80.262095-36.205714-46.250667-37.546667-84.626286-80.676571-117.613715-131.949714-22.869333-35.766857-31.890286-62.902857-24.941714-87.600762 2.82819-9.99619 9.679238-17.042286 24.064-28.184381l14.994286-11.312762 2.413714-1.877334 22.747429-18.553904c20.114286-16.822857 28.281905-28.281905 32.572952-45.836191 8.899048-36.10819 0.487619-66.072381-32.426667-117.638095l-15.62819-24.234667-5.558857-8.533333-6.436572-9.435429z" 63 d="M398.652952 165.692952c-32.280381-46.006857-58.172952-61.318095-92.867047-54.808381-14.969905 2.80381-24.210286 7.850667-41.20381 22.528l-12.946285 11.361524-25.185524 20.894476-6.582857 5.753905c-3.705905 3.413333-6.38781 6.217143-9.825524 10.118095-64 72.46019-81.724952 185.782857-44.470857 292.327619 26.794667 76.55619 74.605714 152.624762 142.774857 228.644572 72.289524 80.62781 133.046857 131.364571 202.922666 168.374857 54.857143 29.013333 96.865524 41.74019 145.676191 43.227429 59.001905 1.828571 110.957714-11.50781 153.648762-39.15581a162.133333 162.133333 0 0 0 19.553524-15.189333l8.289523-7.558095 16.335239-15.213715 5.534476-4.924952 10.922666-9.435429c22.040381-19.651048 29.184-31.939048 30.646858-51.370666 2.194286-29.647238-11.215238-52.736-49.737143-85.699048l-26.063238-21.820952-12.117334-10.581334-11.459047-9.825524c-37.229714-30.744381-64.804571-40.69181-100.205715-35.35238-24.283429 3.632762-38.278095 12.141714-63.073523 38.107428l-10.947048 11.654095c-18.041905 19.017143-28.330667 26.258286-43.544381 29.305905-22.25981 4.461714-44.373333-7.046095-80.262095-36.205714-46.250667-37.546667-84.626286-80.676571-117.613715-131.949714-22.869333-35.766857-31.890286-62.902857-24.941714-87.600762 2.82819-9.99619 9.679238-17.042286 24.064-28.184381l14.994286-11.312762 2.413714-1.877334 22.747429-18.553904c20.114286-16.822857 28.281905-28.281905 32.572952-45.836191 8.899048-36.10819 0.487619-66.072381-32.426667-117.638095l-15.62819-24.234667-5.558857-8.533333-6.436572-9.435429z"
59 fill="#d3d8d9" p-id="7921"></path> 64 fill="#d3d8d9" p-id="7921"
65 />
60 </svg> 66 </svg>
61 {{ language == 0 ? '联系电话' : 'TEL' }}</label>086-{{ matchData.contactTelno }} 67 {{ language == 0 ? '联系电话' : 'TEL' }}</label>086-{{ matchData.contactTelno }}
62 </p> 68 </p>
63 <p class="ppl"> 69 <p class="ppl">
64 <label> 70 <label>
65 <svg class="icon" height="18" p-id="40177" style="position: relative;top: 4px;" 71 <svg
66 t="1712726978978" version="1.1" viewBox="0 0 1024 1024" 72 class="icon" height="18" p-id="40177" style="position: relative;top: 4px;"
67 width="18" xmlns="http://www.w3.org/2000/svg"> 73 t="1712726978978" version="1.1" viewBox="0 0 1024 1024"
74 width="18" xmlns="http://www.w3.org/2000/svg"
75 >
68 <path 76 <path
69 d="M853.333333 341.333333l-341.333333 213.333334-341.333333-213.333334V256l341.333333 213.333333 341.333333-213.333333m0-85.333333H170.666667c-47.36 0-85.333333 37.973333-85.333334 85.333333v512a85.333333 85.333333 0 0 0 85.333334 85.333333h682.666666a85.333333 85.333333 0 0 0 85.333334-85.333333V256a85.333333 85.333333 0 0 0-85.333334-85.333333z" 77 d="M853.333333 341.333333l-341.333333 213.333334-341.333333-213.333334V256l341.333333 213.333333 341.333333-213.333333m0-85.333333H170.666667c-47.36 0-85.333333 37.973333-85.333334 85.333333v512a85.333333 85.333333 0 0 0 85.333334 85.333333h682.666666a85.333333 85.333333 0 0 0 85.333334-85.333333V256a85.333333 85.333333 0 0 0-85.333334-85.333333z"
70 fill="#d3d8d9" p-id="40178"></path> 78 fill="#d3d8d9" p-id="40178"
79 />
71 </svg> 80 </svg>
72 {{ language == 0 ? '邮&ensp;&ensp;&ensp;&ensp;箱' : 'EMAIL' }} 81 {{ language == 0 ? '邮&ensp;&ensp;&ensp;&ensp;箱' : 'EMAIL' }}
73 </label> 82 </label>
...@@ -75,18 +84,21 @@ ...@@ -75,18 +84,21 @@
75 </p> 84 </p>
76 <p class="ppl"> 85 <p class="ppl">
77 <label> 86 <label>
78 <svg class="icon" height="18" p-id="6578" style="position: relative;top: 2px;" 87 <svg
79 t="1711707785514" version="1.1" viewBox="0 0 1024 1024" 88 class="icon" height="18" p-id="6578" style="position: relative;top: 2px;"
80 width="18" xmlns="http://www.w3.org/2000/svg"> 89 t="1711707785514" version="1.1" viewBox="0 0 1024 1024"
90 width="18" xmlns="http://www.w3.org/2000/svg"
91 >
81 <path 92 <path
82 d="M780 68H256c-71.6 0-130.2 55.5-130.2 123.2v711.2c1.5 42.8 50 69.3 90.6 50.6l227.2-105c38.5-17.8 83.4-18.5 122.6-1.9l255.4 108.6c34.8 14.8 76.1-2.7 86.3-37.6 1.6-5.4 2.4-11 2.4-16.9v-709C910.2 123.5 851.6 68 780 68zM276.9 231.3h255.9c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41z m386.8 464H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z m0-191H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z" 93 d="M780 68H256c-71.6 0-130.2 55.5-130.2 123.2v711.2c1.5 42.8 50 69.3 90.6 50.6l227.2-105c38.5-17.8 83.4-18.5 122.6-1.9l255.4 108.6c34.8 14.8 76.1-2.7 86.3-37.6 1.6-5.4 2.4-11 2.4-16.9v-709C910.2 123.5 851.6 68 780 68zM276.9 231.3h255.9c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41z m386.8 464H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z m0-191H276.9c-23.9 0-43.3-18.4-43.3-41s19.4-41 43.3-41h386.8c23.9 0 43.3 18.4 43.3 41s-19.4 41-43.3 41z"
83 fill="#d3d8d9" p-id="6579"></path> 94 fill="#d3d8d9" p-id="6579"
95 />
84 </svg> 96 </svg>
85 {{ language == 0 ? '分&ensp;站&ensp;赛' : 'NO. OF TOURNAMENTS' }}</label> 97 {{ language == 0 ? '分&ensp;站&ensp;赛' : 'NO. OF TOURNAMENTS' }}</label>
86 {{ matchData.cpts.length }} 98 {{ matchData.cpts.length }}
87 </p> 99 </p>
88 </div> 100 </div>
89 101
90 <div v-if="matchData.type=='0'"> 102 <div v-if="matchData.type=='0'">
91 <p class="ppl"> 103 <p class="ppl">
92 <label>{{ language == 0 ? '赛事时间' : 'COMPETITION DATE' }}</label> 104 <label>{{ language == 0 ? '赛事时间' : 'COMPETITION DATE' }}</label>
...@@ -112,35 +124,44 @@ ...@@ -112,35 +124,44 @@
112 <label>{{ language == 0 ? '邮&ensp;&ensp;&ensp;&ensp;箱' : 'EMAIL' }}</label> 124 <label>{{ language == 0 ? '邮&ensp;&ensp;&ensp;&ensp;箱' : 'EMAIL' }}</label>
113 {{ matchData.contactEmail }}</p> 125 {{ matchData.contactEmail }}</p>
114 </div> 126 </div>
115 <div style="height: 30px"></div> 127 <div style="height: 30px" />
116 <div class="ppl_pb"> 128 <div class="ppl_pb">
117 <el-link v-if="matchData.signKnowUrl&&JSON.parse(matchData.signKnowUrl)?.length>0" :href="fillImgUrl(JSON.parse(matchData.signKnowUrl)[0]?.url)" 129 <el-link
118 class="mr20" 130 v-if="matchData.signKnowUrl&&JSON.parse(matchData.signKnowUrl)?.length>0"
119 target="_blank" type="primary"> 131 :href="fillImgUrl(JSON.parse(matchData.signKnowUrl)[0]?.url)"
132 class="mr20"
133 target="_blank" type="primary"
134 >
120 <el-icon :size="20"> 135 <el-icon :size="20">
121 <Download/> 136 <Download />
122 </el-icon> 137 </el-icon>
123 {{ language == 0 ? '报名须知' : 'Notes' }} 138 {{ language == 0 ? '报名须知' : 'Notes' }}
124 </el-link> 139 </el-link>
125 140
126 <el-link v-if="matchData.disclaimerUrl&&JSON.parse(matchData.disclaimerUrl)?.length>0" :href="fillImgUrl(JSON.parse(matchData.disclaimerUrl)[0]?.url)" 141 <el-link
127 class="mr20" 142 v-if="matchData.disclaimerUrl&&JSON.parse(matchData.disclaimerUrl)?.length>0"
128 target="_blank" type="primary"> 143 :href="fillImgUrl(JSON.parse(matchData.disclaimerUrl)[0]?.url)"
144 class="mr20"
145 target="_blank" type="primary"
146 >
129 <el-icon :size="20"> 147 <el-icon :size="20">
130 <Download/> 148 <Download />
131 </el-icon> 149 </el-icon>
132 {{ language == 0 ? '免责声明' : 'Disclaimers' }} 150 {{ language == 0 ? '免责声明' : 'Disclaimers' }}
133 </el-link> 151 </el-link>
134 <el-link v-if="matchData.ruleUrl&&JSON.parse(matchData.ruleUrl)?.length>0" :href="fillImgUrl(JSON.parse(matchData.ruleUrl)[0]?.url)" 152 <el-link
135 target="_blank" 153 v-if="matchData.ruleUrl&&JSON.parse(matchData.ruleUrl)?.length>0"
136 type="primary"> 154 :href="fillImgUrl(JSON.parse(matchData.ruleUrl)[0]?.url)"
155 target="_blank"
156 type="primary"
157 >
137 <el-icon :size="20"> 158 <el-icon :size="20">
138 <Download/> 159 <Download />
139 </el-icon> 160 </el-icon>
140 {{ language == 0 ? '赛事规程' : 'Competition Regulations' }} 161 {{ language == 0 ? '赛事规程' : 'Competition Regulations' }}
141 </el-link> 162 </el-link>
142 </div> 163 </div>
143 164
144 </el-col> 165 </el-col>
145 <el-col v-if="matchData.type=='0'" :lg="8" :md="12" :xl="8"> 166 <el-col v-if="matchData.type=='0'" :lg="8" :md="12" :xl="8">
146 <p v-if="language==0" class="countDownTitle"> 167 <p v-if="language==0" class="countDownTitle">
...@@ -150,7 +171,7 @@ ...@@ -150,7 +171,7 @@
150 <p v-else class="countDownTitle"> 171 <p v-else class="countDownTitle">
151 <span>REGISTRATION COUNTDOWN</span> 172 <span>REGISTRATION COUNTDOWN</span>
152 </p> 173 </p>
153 174
154 <van-count-down :time="startSign>0?startSign:time" format="DD 天 HH 时 mm 分 ss 秒"> 175 <van-count-down :time="startSign>0?startSign:time" format="DD 天 HH 时 mm 分 ss 秒">
155 <template #default="timeData"> 176 <template #default="timeData">
156 <span class="block">{{ timeData.days }}</span> 177 <span class="block">{{ timeData.days }}</span>
...@@ -163,11 +184,13 @@ ...@@ -163,11 +184,13 @@
163 <span class="colon">{{ language == 0 ? '秒' : 'Sec' }}</span> 184 <span class="colon">{{ language == 0 ? '秒' : 'Sec' }}</span>
164 </template> 185 </template>
165 </van-count-down> 186 </van-count-down>
166 187
167 <div class="flexCenter"> 188 <div class="flexCenter">
168 <el-button v-if="matchData.progressStatusCode=='2'" ref="RegisterRef" class="btn-lineG mt10 w100" round 189 <el-button
169 style="font-size: 16px" 190 v-if="matchData.progressStatusCode=='2'" ref="RegisterRef" class="btn-lineG mt10 w100" round
170 type="primary" @click="choseSignType"> 191 style="font-size: 16px"
192 type="primary" @click="choseSignType"
193 >
171 {{ language == 0 ? '我要报名' : 'REGISTER' }} 194 {{ language == 0 ? '我要报名' : 'REGISTER' }}
172 </el-button> 195 </el-button>
173 <div v-else-if="time<=0" class="btn-lineG mb20 mauto text-center" style="opacity: 0.5;"> 196 <div v-else-if="time<=0" class="btn-lineG mb20 mauto text-center" style="opacity: 0.5;">
...@@ -178,16 +201,17 @@ ...@@ -178,16 +201,17 @@
178 </div> 201 </div>
179 </div> 202 </div>
180 <p class="text-gray text-center uppercase">{{ 203 <p class="text-gray text-center uppercase">{{
181 language == 0 ? '报名截止' : 'Registration Deadline' 204 language == 0 ? '报名截止' : 'Registration Deadline'
182 }}:{{ matchData.signEndTime?.slice(0, 10) }}</p> 205 }}:{{ matchData.signEndTime?.slice(0, 10) }}</p>
183 206
184 </el-col> 207 </el-col>
185 </el-row> 208 </el-row>
209
186 </el-card> 210 </el-card>
187 211
188 <!-- 只联赛有--> 212 <!-- 只联赛有-->
189 <quick-row v-if="matchData.leagueId==0" :match-id="matchId"/> 213 <quick-row v-if="matchData.leagueId==0" :match-id="matchId" />
190 214
191 <el-row v-if="matchData.type=='0'" :gutter="20"> 215 <el-row v-if="matchData.type=='0'" :gutter="20">
192 <el-col :lg="18"> 216 <el-col :lg="18">
193 <el-card :body-style="{'padding':'0'}"> 217 <el-card :body-style="{'padding':'0'}">
...@@ -198,11 +222,11 @@ ...@@ -198,11 +222,11 @@
198 </li> 222 </li>
199 </ul> 223 </ul>
200 </div> 224 </div>
201 <matchInfo v-if="menu[0].active==1" :form="matchData"/> 225 <matchInfo v-if="menu[0].active==1" :form="matchData" />
202 <div v-if="menu[1].active==1"> 226 <div v-if="menu[1].active==1">
203 <match-info-project-list :is-national="isNational" :match-id="matchData.id"/> 227 <match-info-project-list :is-national="isNational" :match-id="matchData.id" />
204 </div> 228 </div>
205 <match-schedule-list v-if="menu[2].active==1" :match-data="matchData"/> 229 <match-schedule-list v-if="menu[2].active==1" :match-data="matchData" />
206 <div v-if="menu[3].active==1"> 230 <div v-if="menu[3].active==1">
207 <div v-if="matchData.showPersonFlag=='1'"> 231 <div v-if="matchData.showPersonFlag=='1'">
208 <!-- <el-row :gutter="20" v-if="matchData.signType == '0'">--> 232 <!-- <el-row :gutter="20" v-if="matchData.signType == '0'">-->
...@@ -217,32 +241,52 @@ ...@@ -217,32 +241,52 @@
217 <el-col :span="24"> 241 <el-col :span="24">
218 <div class="fr mb20"> 242 <div class="fr mb20">
219 <div class="flex"> 243 <div class="flex">
220 <el-input v-model="queryGroupList.groupName" :placeholder="language == 0 ? '请输入参赛队名称' :'Please enter the Team name'" :prefix-icon="Search" class="mr10" 244 <el-input
221 clearable 245 v-model="queryGroupList.groupName"
222 size="small" @change="getGroupListByCptId"/> 246 :placeholder="language == 0 ? '请输入参赛队名称' :'Please enter the Team name'"
223 <el-input v-model="queryGroupList.athleteName" :placeholder=" language == 0 ? '请输入运动员查询' :'Please enter the athlete name'" :prefix-icon="Search" 247 :prefix-icon="Search" class="mr10"
224 clearable 248 clearable
225 size="small" @change="getGroupListByCptId"/> 249 size="small" @change="getGroupListByCptId"
250 />
251 <el-input
252 v-model="queryGroupList.athleteName"
253 :placeholder=" language == 0 ? '请输入运动员查询' :'Please enter the athlete name'"
254 :prefix-icon="Search"
255 clearable
256 size="small" @change="getGroupListByCptId"
257 />
226 </div> 258 </div>
227 </div> 259 </div>
228 <el-table :data="signDoneGroupList"> 260 <el-table :data="signDoneGroupList">
229 <el-table-column :label="language == 0 ? '组别代码' :'EVENT CODE'" align="center" min-width="120" 261 <el-table-column
230 prop="groupCode"/> 262 :label="language == 0 ? '组别代码' :'EVENT CODE'" align="center" min-width="120"
263 prop="groupCode"
264 />
231 <el-table-column :label="language == 0 ?'组别':'EVENT'" min-width="200" prop="group"> 265 <el-table-column :label="language == 0 ?'组别':'EVENT'" min-width="200" prop="group">
232 <template #default="scope"> 266 <template #default="scope">
233 <div class="esp">{{ scope.row.group }}</div> 267 <div class="esp">{{ scope.row.group }}</div>
234 </template> 268 </template>
235 </el-table-column> 269 </el-table-column>
236 <el-table-column :label="language == 0 ?'男运动员':'man name'" min-width="150" 270 <el-table-column
237 prop="maleAthName"/> 271 :label="language == 0 ?'男运动员':'man name'" min-width="150"
238 <el-table-column :label="language == 0 ?'女运动员':'woman name'" min-width="150" 272 prop="maleAthName"
239 prop="femaleAthName"/> 273 />
240 <el-table-column :label="language == 0 ?'舞种':'Division'" align="center" min-width="90" 274 <el-table-column
241 prop="danceType"/> 275 :label="language == 0 ?'女运动员':'woman name'" min-width="150"
242 <el-table-column :label="language == 0 ?'国籍':'Representing'" align="center" min-width="130" 276 prop="femaleAthName"
243 prop="countryName"/> 277 />
244 <el-table-column :label="language == 0 ?'参赛队名称':'Team name'" align="center" min-width="150" 278 <el-table-column
245 prop="groupName"/> 279 :label="language == 0 ?'舞种':'Division'" align="center" min-width="90"
280 prop="danceType"
281 />
282 <el-table-column
283 :label="language == 0 ?'国籍':'Representing'" align="center" min-width="130"
284 prop="countryName"
285 />
286 <el-table-column
287 :label="language == 0 ?'参赛队名称':'Team name'" align="center" min-width="150"
288 prop="groupName"
289 />
246 </el-table> 290 </el-table>
247 <PaginationPc 291 <PaginationPc
248 v-show="signDoneGroupListToTal>0" 292 v-show="signDoneGroupListToTal>0"
...@@ -255,22 +299,24 @@ ...@@ -255,22 +299,24 @@
255 </el-row> 299 </el-row>
256 </div> 300 </div>
257 <div v-else> 301 <div v-else>
258 <el-empty :image="`/img/order_no.png`" :image-size="228" description=""/> 302 <el-empty :image="`/img/order_no.png`" :image-size="228" description="" />
259 </div> 303 </div>
260 304
261 </div> 305 </div>
262 <div v-if="menu[4].active==1"> 306 <div v-if="menu[4].active==1">
263 <!--成绩--> 307 <!--成绩-->
264 <el-empty :image="`/img/order_no.png`" :image-size="228" description=""/> 308 <el-empty :image="`/img/order_no.png`" :image-size="228" description="" />
265 </div> 309 </div>
266 <div v-if="menu[5].active==1" class="pd20"> 310 <div v-if="menu[5].active==1" class="pd20">
267 <div class="xzbox"> 311 <div class="xzbox">
268 <div v-html="matchData.signKnow"></div> 312 <div v-html="matchData.signKnow" />
269 <div v-if="matchData.signKnowUrl"> 313 <div v-if="matchData.signKnowUrl">
270 <el-link v-for="(item,index) in JSON.parse(matchData.signKnowUrl)" :href="fillImgUrl(item.url)" 314 <el-link
271 target="_blank" type="primary"> 315 v-for="(item,index) in JSON.parse(matchData.signKnowUrl)" :href="fillImgUrl(item.url)"
316 target="_blank" type="primary"
317 >
272 <el-icon :size="20"> 318 <el-icon :size="20">
273 <Download/> 319 <Download />
274 </el-icon> 320 </el-icon>
275 {{ item.name }} 321 {{ item.name }}
276 </el-link> 322 </el-link>
...@@ -278,14 +324,14 @@ ...@@ -278,14 +324,14 @@
278 </div> 324 </div>
279 </div> 325 </div>
280 </el-card> 326 </el-card>
281 <div style="height: 20px"></div> 327 <div style="height: 20px" />
282 328
283 </el-col> 329 </el-col>
284 <el-col :lg="6"> 330 <el-col :lg="6">
285 <match-news :match-id="matchId"/> 331 <match-news :match-id="matchId" />
286 </el-col> 332 </el-col>
287 </el-row> 333 </el-row>
288 334
289 <el-row v-if="matchData.type=='1'" class="mb20"> 335 <el-row v-if="matchData.type=='1'" class="mb20">
290 <el-col :lg="24"> 336 <el-col :lg="24">
291 <el-card :body-style="{'padding':'0'}"> 337 <el-card :body-style="{'padding':'0'}">
...@@ -297,24 +343,26 @@ ...@@ -297,24 +343,26 @@
297 </ul> 343 </ul>
298 </div> 344 </div>
299 <!-- 分站赛--> 345 <!-- 分站赛-->
300 <substation-list v-if="menu1[0].active==1" :list="matchData.cpts"/> 346 <substation-list v-if="menu1[0].active==1" :list="matchData.cpts" />
301 <matchInfo v-if="menu1[1].active==1" :form="matchData"/> 347 <matchInfo v-if="menu1[1].active==1" :form="matchData" />
302 <match-schedule-list v-if="menu1[2].active==1" :match-data="matchData"/> 348 <match-schedule-list v-if="menu1[2].active==1" :match-data="matchData" />
303 </el-card> 349 </el-card>
304 </el-col> 350 </el-col>
305 </el-row> 351 </el-row>
306 </div> 352 </div>
307 353
308 <div v-if="matchData.leagueId==0" class="fixed_gg_l" @click="applyInvitation"> 354 <div v-if="matchData.leagueId==0" class="fixed_gg_l" @click="applyInvitation">
309 <img v-if="language==0" src="@/assets/logo/Invitation_c.png"/> 355 <img v-if="language==0" src="@/assets/logo/Invitation_c.png">
310 <img v-else src="@/assets/logo/Invitation_e.png"/> 356 <img v-else src="@/assets/logo/Invitation_e.png">
311 </div> 357 </div>
312 358
313 <affix-invitation ref="dialogInvitationRef"/> 359 <affix-invitation ref="dialogInvitationRef" />
314 <div style="height: 50px"></div> 360 <div style="height: 50px" />
315 361
316 <el-dialog v-model="signTypePop" center class="pcloginpop" 362 <el-dialog
317 close-icon="CircleClose" title="Choose Type" width="450px"> 363 v-model="signTypePop" center class="pcloginpop"
364 close-icon="CircleClose" title="Choose Type" width="450px"
365 >
318 <div> 366 <div>
319 <div class="rItem r1" @click="goLogin"> 367 <div class="rItem r1" @click="goLogin">
320 <h3>{{ language == 0 ? '机构用户' : 'Organization' }}</h3> 368 <h3>{{ language == 0 ? '机构用户' : 'Organization' }}</h3>
...@@ -324,8 +372,10 @@ ...@@ -324,8 +372,10 @@
324 </div> 372 </div>
325 </div> 373 </div>
326 </el-dialog> 374 </el-dialog>
327 <el-dialog v-model="upgradePop" center class="pcloginpop" 375 <el-dialog
328 close-icon="CircleClose" title="Upgrade" width="450px"> 376 v-model="upgradePop" center class="pcloginpop"
377 close-icon="CircleClose" title="Upgrade" width="450px"
378 >
329 <div> 379 <div>
330 <div class="rItem r1" @click="goUpdateTeam"> 380 <div class="rItem r1" @click="goUpdateTeam">
331 <h3>{{ language == 0 ? '升级机构用户' : 'Organization' }}</h3> 381 <h3>{{ language == 0 ? '升级机构用户' : 'Organization' }}</h3>
...@@ -335,36 +385,40 @@ ...@@ -335,36 +385,40 @@
335 </div> 385 </div>
336 </div> 386 </div>
337 </el-dialog> 387 </el-dialog>
338 388
339 <!-- v-if="matchData.leagueId==0"--> 389 <!-- v-if="matchData.leagueId==0"-->
340 <a class="ding" v-if="matchData.isAirView" @click="openPickup" >{{ language==0?'接 / 送机服务':'Pick-up/drop-off service' }}</a> 390 <a
341 <pickup ref="pickupRef"></pickup> 391 v-if="matchData.isAirView" class="ding"
392 @click="openPickup"
393 >{{ language == 0 ? '接 / 送机服务' : 'Pick-up/drop-off service' }}</a>
394 <pickup ref="pickupRef" />
342 </div> 395 </div>
343 </template> 396 </template>
344 397
345 <script setup> 398 <script setup>
346 import MatchInfo from '@/viewsPc/match/components/matchInfo' 399 import MatchInfo from '@/viewsPc/match/components/matchInfo'
347 import MatchScheduleList from "@/viewsPc/match/components/matchScheduleList"; 400 import MatchScheduleList from '@/viewsPc/match/components/matchScheduleList'
348 import MatchNews from "@/viewsPc/match/components/matchNews"; 401 import MatchNews from '@/viewsPc/match/components/matchNews'
349 import SubstationList from "@/viewsPc/match/components/substation-list"; 402 import SubstationList from '@/viewsPc/match/components/substation-list'
350 import MatchInfoProjectList from "@/viewsPc/match/components/matchInfo-projectList"; 403 import MatchInfoProjectList from '@/viewsPc/match/components/matchInfo-projectList'
351 import QuickRow from "@/viewsPc/match/components/quick-row"; 404 import QuickRow from '@/viewsPc/match/components/quick-row'
352 import Pickup from '@/viewsPc/components/pickup' 405 import Pickup from '@/viewsPc/components/pickup'
353 import {getCurrentInstance, ref} from 'vue' 406 import { getCurrentInstance, ref } from 'vue'
354 import {reactive, onMounted} from '@vue/runtime-core' 407 import { reactive, onMounted } from '@vue/runtime-core'
355 import {useRoute, useRouter} from 'vue-router' 408 import { useRoute, useRouter } from 'vue-router'
356 import AffixInvitation from '@/viewsPc/match/components/affix-invitation' 409 import AffixInvitation from '@/viewsPc/match/components/affix-invitation'
357 410
358 const language = useStorage('language', 0) 411 const language = useStorage('language', 0)
359 const route = useRoute() 412 const route = useRoute()
360 const router = useRouter() 413 const router = useRouter()
361 const {proxy} = getCurrentInstance() 414 const { proxy } = getCurrentInstance()
362 import * as match from '@/apiPc/match' 415 import * as match from '@/apiPc/match'
363 import {toRefs} from '@vueuse/shared' 416 import { toRefs } from '@vueuse/shared'
364 import {dayjs, ElMessage, ElMessageBox} from 'element-plus' 417 import { dayjs, ElMessage, ElMessageBox } from 'element-plus'
365 import useUserStore from "@/store/modules/user" 418 import useUserStore from '@/store/modules/user'
366 import {useStorage} from "@vueuse/core/index" 419 import { useStorage } from '@vueuse/core/index'
367 import {Search} from "@element-plus/icons-vue" 420 import { Search } from '@element-plus/icons-vue'
421 import { preCheckForGroup } from '@/apiPc/match'
368 422
369 const user = useUserStore().user 423 const user = useUserStore().user
370 const group = useUserStore().group 424 const group = useUserStore().group
...@@ -376,16 +430,16 @@ const data = reactive({ ...@@ -376,16 +430,16 @@ const data = reactive({
376 groupId: '', 430 groupId: '',
377 activeName2: 'first', 431 activeName2: 'first',
378 menu: [ 432 menu: [
379 {name: 'Event details', cn: '赛事详情', active: 1}, 433 { name: 'Event details', cn: '赛事详情', active: 1 },
380 {name: 'Event settings', cn: '赛事设项', active: 0}, 434 { name: 'Event settings', cn: '赛事设项', active: 0 },
381 {name: 'Schedule', cn: '日程', active: 0}, 435 { name: 'Schedule', cn: '日程', active: 0 },
382 {name: 'Participating teams', cn: '参赛人员', active: 0}, 436 { name: 'Participating teams', cn: '参赛人员', active: 0 },
383 {name: 'Achievement', cn: '成绩', active: 0}, 437 { name: 'Achievement', cn: '成绩', active: 0 },
384 {name: 'Notes', cn: '报名须知', active: 0}], 438 { name: 'Notes', cn: '报名须知', active: 0 }],
385 menu1: [ 439 menu1: [
386 {name: 'Tournaments', cn: '分站赛', active: 1}, 440 { name: 'Tournaments', cn: '分站赛', active: 1 },
387 {name: 'Event details', cn: '赛事详情', active: 0}, 441 { name: 'Event details', cn: '赛事详情', active: 0 },
388 {name: 'Schedule', cn: '日程', active: 0}], 442 { name: 'Schedule', cn: '日程', active: 0 }],
389 signDoneGroupList: [], 443 signDoneGroupList: [],
390 signDoneGroupListToTal: 0, 444 signDoneGroupListToTal: 0,
391 queryGroupList: { 445 queryGroupList: {
...@@ -426,7 +480,7 @@ onMounted(() => { ...@@ -426,7 +480,7 @@ onMounted(() => {
426 }) 480 })
427 481
428 function getMatchId() { 482 function getMatchId() {
429 match.getMaList({topFlag: 1, status: 1}).then((res) => { 483 match.getMaList({ topFlag: 1, status: 1 }).then((res) => {
430 matchId.value = res.rows[0].id 484 matchId.value = res.rows[0].id
431 getMatch(matchId.value) 485 getMatch(matchId.value)
432 getGroupListByCptId() 486 getGroupListByCptId()
...@@ -435,7 +489,7 @@ function getMatchId() { ...@@ -435,7 +489,7 @@ function getMatchId() {
435 489
436 function getMatch(id) { 490 function getMatch(id) {
437 loading.value = true 491 loading.value = true
438 match.getMatchById({id: id}).then(res => { 492 match.getMatchById({ id: id }).then(res => {
439 matchData.value = res.data 493 matchData.value = res.data
440 loading.value = false 494 loading.value = false
441 var today = dayjs().format('YYYY-MM-DD HH:mm:ss') 495 var today = dayjs().format('YYYY-MM-DD HH:mm:ss')
...@@ -447,7 +501,7 @@ function getMatch(id) { ...@@ -447,7 +501,7 @@ function getMatch(id) {
447 isNational.value = true 501 isNational.value = true
448 } 502 }
449 }).catch(res => { 503 }).catch(res => {
450 router.push({path: '/match/list'}) 504 router.push({ path: '/match/list' })
451 loading.value = false 505 loading.value = false
452 // setTimeout("window.location.reload()", 1000) 506 // setTimeout("window.location.reload()", 1000)
453 }) 507 })
...@@ -474,11 +528,12 @@ function changeMenu(menu, l) { ...@@ -474,11 +528,12 @@ function changeMenu(menu, l) {
474 } 528 }
475 } 529 }
476 530
531
477 function choseSignType() { 532 function choseSignType() {
478 console.log(matchData.value.signType, matchData.value.languageSource, user) 533 console.log(matchData.value.signType, matchData.value.languageSource, user)
479 534
480 if (!user) { 535 if (!user) {
481 //判断signType,如1个人注册-报名; 536 // 判断signType,如1个人注册-报名;
482 switch (matchData.value.signType) { 537 switch (matchData.value.signType) {
483 case '0': 538 case '0':
484 goGeren() 539 goGeren()
...@@ -498,7 +553,7 @@ function choseSignType() { ...@@ -498,7 +553,7 @@ function choseSignType() {
498 } 553 }
499 554
500 function goUpdateTeam() { 555 function goUpdateTeam() {
501 //升级团队 556 // 升级团队
502 router.push({ 557 router.push({
503 name: 'teamRegister', 558 name: 'teamRegister',
504 query: { 559 query: {
...@@ -509,7 +564,7 @@ function goUpdateTeam() { ...@@ -509,7 +564,7 @@ function goUpdateTeam() {
509 } 564 }
510 565
511 function goUpdatePersonal() { 566 function goUpdatePersonal() {
512 //升级团队 567 // 升级团队
513 router.push({ 568 router.push({
514 name: 'personalRegister', 569 name: 'personalRegister',
515 query: { 570 query: {
...@@ -528,7 +583,7 @@ function goTeamSign() { ...@@ -528,7 +583,7 @@ function goTeamSign() {
528 { 583 {
529 confirmButtonText: language.value == 1 ? 'OK' : '确定', 584 confirmButtonText: language.value == 1 ? 'OK' : '确定',
530 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 585 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
531 type: 'warning', 586 type: 'warning'
532 } 587 }
533 ) 588 )
534 return 589 return
...@@ -552,7 +607,7 @@ function goTeamSign() { ...@@ -552,7 +607,7 @@ function goTeamSign() {
552 { 607 {
553 confirmButtonText: language.value == 1 ? 'OK' : '确定', 608 confirmButtonText: language.value == 1 ? 'OK' : '确定',
554 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 609 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
555 type: 'warning', 610 type: 'warning'
556 } 611 }
557 ) 612 )
558 return 613 return
...@@ -568,7 +623,6 @@ function goTeamSign() { ...@@ -568,7 +623,6 @@ function goTeamSign() {
568 } 623 }
569 }) 624 })
570 } 625 }
571
572 } 626 }
573 627
574 function goPersonalSign() { 628 function goPersonalSign() {
...@@ -586,12 +640,12 @@ function goLogin() { ...@@ -586,12 +640,12 @@ function goLogin() {
586 } 640 }
587 641
588 function goGeren() { 642 function goGeren() {
589 //注册 643 // 注册
590 router.push({name: 'personalRegister', query: {matchId: matchId.value}}) 644 router.push({ name: 'personalRegister', query: { matchId: matchId.value }})
591 } 645 }
592 646
593 function popChangeType() { 647 function popChangeType() {
594 //选择登录类型 648 // 选择登录类型
595 signTypePop.value = true 649 signTypePop.value = true
596 } 650 }
597 651
...@@ -614,7 +668,7 @@ function checkIsSign() { ...@@ -614,7 +668,7 @@ function checkIsSign() {
614 { 668 {
615 confirmButtonText: language.value == 1 ? 'Withdraw the registration' : '撤回报名信息', 669 confirmButtonText: language.value == 1 ? 'Withdraw the registration' : '撤回报名信息',
616 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 670 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
617 type: 'warning', 671 type: 'warning'
618 } 672 }
619 ).then(() => { 673 ).then(() => {
620 withDraw(res.data.orderId) 674 withDraw(res.data.orderId)
...@@ -628,7 +682,7 @@ function checkIsSign() { ...@@ -628,7 +682,7 @@ function checkIsSign() {
628 { 682 {
629 confirmButtonText: language.value == 1 ? 'OK' : '确定', 683 confirmButtonText: language.value == 1 ? 'OK' : '确定',
630 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 684 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
631 type: 'warning', 685 type: 'warning'
632 } 686 }
633 ).then(() => { 687 ).then(() => {
634 reSign() 688 reSign()
...@@ -642,7 +696,7 @@ function checkIsSign() { ...@@ -642,7 +696,7 @@ function checkIsSign() {
642 { 696 {
643 confirmButtonText: language.value == 1 ? 'OK' : '确定', 697 confirmButtonText: language.value == 1 ? 'OK' : '确定',
644 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 698 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
645 type: 'warning', 699 type: 'warning'
646 } 700 }
647 ).then(() => { 701 ).then(() => {
648 reSign() 702 reSign()
...@@ -657,7 +711,7 @@ function checkIsSign() { ...@@ -657,7 +711,7 @@ function checkIsSign() {
657 { 711 {
658 confirmButtonText: language.value == 1 ? 'OK' : '确定', 712 confirmButtonText: language.value == 1 ? 'OK' : '确定',
659 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 713 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
660 type: 'warning', 714 type: 'warning'
661 } 715 }
662 ).then(() => { 716 ).then(() => {
663 // router.push({name: 'myMatch'}) 717 // router.push({name: 'myMatch'})
...@@ -672,7 +726,7 @@ function checkIsSign() { ...@@ -672,7 +726,7 @@ function checkIsSign() {
672 { 726 {
673 confirmButtonText: language.value == 1 ? 'OK' : '确定', 727 confirmButtonText: language.value == 1 ? 'OK' : '确定',
674 cancelButtonText: language.value == 1 ? 'Cancel' : '取消', 728 cancelButtonText: language.value == 1 ? 'Cancel' : '取消',
675 type: 'warning', 729 type: 'warning'
676 } 730 }
677 ) 731 )
678 return Promise.reject('rejected message') 732 return Promise.reject('rejected message')
...@@ -695,9 +749,19 @@ function reSign() { ...@@ -695,9 +749,19 @@ function reSign() {
695 749
696 function switchSignType() { 750 function switchSignType() {
697 switch (matchData.value.signType) { 751 switch (matchData.value.signType) {
698 case '0': 752 case '0':// 个人
699 if (user.utype == '1') { 753 if (user.utype == '1') {
700 goPersonalSign() 754 match.preCheckForPerson().then(res => {
755 if (res.data == 1) {
756 goPersonalSign()
757 } else {
758 return proxy.$modal.msgError(
759 language.value == 0
760 ? '您绑定的WDSF会员号已过期,请先到WDSF官网激活您的会员号。'
761 : 'Your bound WDSF Number has expired. Please activate your WDSF Number on the WDSF official website first.'
762 )
763 }
764 })
701 } 765 }
702 if (user.utype == '2') { 766 if (user.utype == '2') {
703 ElMessageBox.confirm( 767 ElMessageBox.confirm(
...@@ -706,7 +770,7 @@ function switchSignType() { ...@@ -706,7 +770,7 @@ function switchSignType() {
706 { 770 {
707 confirmButtonText: language.value == 0 ? '好的' : 'OK', 771 confirmButtonText: language.value == 0 ? '好的' : 'OK',
708 cancelButtonText: language.value == 0 ? '取消' : 'Cancel', 772 cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
709 type: 'warning', 773 type: 'warning'
710 } 774 }
711 ) 775 )
712 } 776 }
...@@ -714,7 +778,9 @@ function switchSignType() { ...@@ -714,7 +778,9 @@ function switchSignType() {
714 goGeren() 778 goGeren()
715 } 779 }
716 break 780 break
717 case '1': 781 case '1':// 团体
782
783
718 if (user.utype == '1') { 784 if (user.utype == '1') {
719 ElMessageBox.confirm( 785 ElMessageBox.confirm(
720 language.value == 0 ? '当前活动是团队活动,无法报名' : 'The current event is a team event, cannot register', 786 language.value == 0 ? '当前活动是团队活动,无法报名' : 'The current event is a team event, cannot register',
...@@ -722,27 +788,29 @@ function switchSignType() { ...@@ -722,27 +788,29 @@ function switchSignType() {
722 { 788 {
723 confirmButtonText: language.value == 0 ? '好的' : 'OK', 789 confirmButtonText: language.value == 0 ? '好的' : 'OK',
724 cancelButtonText: language.value == 0 ? '取消' : 'Cancel', 790 cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
725 type: 'warning', 791 type: 'warning'
726 } 792 }
727 ) 793 )
728 } 794 }
729 if (user.utype == '2') { 795 if (user.utype == '2') {
730 goTeamSign() 796 match.preCheckForGroup(groupId.value).then(goTeamSign)
731 } 797 }
732 if (user.utype == '3') { 798 if (user.utype == '3') {
733 // 团队活动 且 游客 799 // 团队活动 且 游客
734 upgradePop.value = true 800 upgradePop.value = true
735 } 801 }
736 break 802 break
737 case '2': 803 case '2':// 团体队伍
738 if (user.utype == '1') { 804 if (user.utype == '1') {
739 goPersonalSign() 805 match.preCheckForGroup(groupId.value).then(goPersonalSign)
806 // goPersonalSign()
740 } 807 }
741 if (user.utype == '2') { 808 if (user.utype == '2') {
742 goTeamSign() 809 match.preCheckForGroup(groupId.value).then(goTeamSign)
810 // goTeamSign()
743 } 811 }
744 if (user.utype == '3') { 812 if (user.utype == '3') {
745 //游客 813 // 游客
746 upgradePop.value = true 814 upgradePop.value = true
747 } 815 }
748 break 816 break
...@@ -752,7 +820,7 @@ function switchSignType() { ...@@ -752,7 +820,7 @@ function switchSignType() {
752 function applyInvitation() { 820 function applyInvitation() {
753 var obj = { 821 var obj = {
754 title: language.value == 0 ? '邀请函申请' : 'Visa Invitation Letter ', 822 title: language.value == 0 ? '邀请函申请' : 'Visa Invitation Letter ',
755 cptId: matchId.value, 823 cptId: matchId.value
756 } 824 }
757 proxy.$refs['dialogInvitationRef'].open(obj) 825 proxy.$refs['dialogInvitationRef'].open(obj)
758 } 826 }
...@@ -786,28 +854,28 @@ const openPickup = () => { ...@@ -786,28 +854,28 @@ const openPickup = () => {
786 width: 350px; 854 width: 350px;
787 padding: 1px; 855 padding: 1px;
788 margin: 20px auto; 856 margin: 20px auto;
789 857
790 h3 { 858 h3 {
791 font-size: 30px; 859 font-size: 30px;
792 margin: 50px; 860 margin: 50px;
793 } 861 }
794 862
795 &.r1 { 863 &.r1 {
796 background: url("@/assets/dance/r1b.png") no-repeat left; 864 background: url("@/assets/dance/r1b.png") no-repeat left;
797 865
798 &:hover { 866 &:hover {
799 background: url("@/assets/dance/r1.png") no-repeat left; 867 background: url("@/assets/dance/r1.png") no-repeat left;
800 } 868 }
801 } 869 }
802 870
803 &.r2 { 871 &.r2 {
804 background: url("@/assets/dance/r2b.png") no-repeat left; 872 background: url("@/assets/dance/r2b.png") no-repeat left;
805 873
806 &:hover { 874 &:hover {
807 background: url("@/assets/dance/r2.png") no-repeat left; 875 background: url("@/assets/dance/r2.png") no-repeat left;
808 } 876 }
809 } 877 }
810 878
811 &:hover { 879 &:hover {
812 color: #fff; 880 color: #fff;
813 } 881 }
...@@ -823,7 +891,7 @@ const openPickup = () => { ...@@ -823,7 +891,7 @@ const openPickup = () => {
823 891
824 .indexTitle { 892 .indexTitle {
825 margin: 20px 0 12px; 893 margin: 20px 0 12px;
826 894
827 h3 { 895 h3 {
828 font-size: 20px; 896 font-size: 20px;
829 color: var(--el-color-primary); 897 color: var(--el-color-primary);
...@@ -844,11 +912,11 @@ const openPickup = () => { ...@@ -844,11 +912,11 @@ const openPickup = () => {
844 padding: 0 0 20px; 912 padding: 0 0 20px;
845 margin: 0 0 20px; 913 margin: 0 0 20px;
846 height: 90%; 914 height: 90%;
847 915
848 dl { 916 dl {
849 min-height: 120px; 917 min-height: 120px;
850 margin: 0; 918 margin: 0;
851 919
852 dt { 920 dt {
853 height: 30px; 921 height: 30px;
854 font-size: 16px; 922 font-size: 16px;
...@@ -862,7 +930,7 @@ const openPickup = () => { ...@@ -862,7 +930,7 @@ const openPickup = () => {
862 color: #fff; 930 color: #fff;
863 } 931 }
864 } 932 }
865 933
866 dd { 934 dd {
867 font-size: 14px; 935 font-size: 14px;
868 line-height: 1.6; 936 line-height: 1.6;
...@@ -873,7 +941,7 @@ const openPickup = () => { ...@@ -873,7 +941,7 @@ const openPickup = () => {
873 .ppl { 941 .ppl {
874 color: #29343C; 942 color: #29343C;
875 margin: 10px 0 0; 943 margin: 10px 0 0;
876 944
877 label { 945 label {
878 color: #929AA0; 946 color: #929AA0;
879 } 947 }
...@@ -956,38 +1024,38 @@ const openPickup = () => { ...@@ -956,38 +1024,38 @@ const openPickup = () => {
956 background: #FFFFFF; 1024 background: #FFFFFF;
957 position: relative; 1025 position: relative;
958 border-radius: 10px; 1026 border-radius: 10px;
959 1027
960 .el-avatar { 1028 .el-avatar {
961 position: absolute; 1029 position: absolute;
962 left: 20px; 1030 left: 20px;
963 top: 30px; 1031 top: 30px;
964 1032
965 img { 1033 img {
966 background: #fff; 1034 background: #fff;
967 } 1035 }
968 } 1036 }
969 1037
970 .info { 1038 .info {
971 padding: 12px 0 0 140px; 1039 padding: 12px 0 0 140px;
972 1040
973 p { 1041 p {
974 font-size: 14px; 1042 font-size: 14px;
975 } 1043 }
976 } 1044 }
977 1045
978 .typeTag { 1046 .typeTag {
979 position: absolute; 1047 position: absolute;
980 right: 0; 1048 right: 0;
981 top: 0; 1049 top: 0;
982 } 1050 }
983 1051
984 h3 { 1052 h3 {
985 font-weight: 500; 1053 font-weight: 500;
986 font-size: 18px; 1054 font-size: 18px;
987 color: #000000; 1055 color: #000000;
988 text-overflow: ellipsis; 1056 text-overflow: ellipsis;
989 } 1057 }
990 1058
991 &:hover h3 { 1059 &:hover h3 {
992 font-weight: bold; 1060 font-weight: bold;
993 } 1061 }
...@@ -1001,11 +1069,11 @@ const openPickup = () => { ...@@ -1001,11 +1069,11 @@ const openPickup = () => {
1001 .kind { 1069 .kind {
1002 background: #fff; 1070 background: #fff;
1003 margin: 0 0 30px; 1071 margin: 0 0 30px;
1004 1072
1005 ul { 1073 ul {
1006 list-style: none; 1074 list-style: none;
1007 padding: 30px 0 10px; 1075 padding: 30px 0 10px;
1008 1076
1009 li { 1077 li {
1010 margin: 0 0 20px; 1078 margin: 0 0 20px;
1011 display: flex; 1079 display: flex;
...@@ -1035,11 +1103,11 @@ const openPickup = () => { ...@@ -1035,11 +1103,11 @@ const openPickup = () => {
1035 padding: 0 20px; 1103 padding: 0 20px;
1036 overflow: hidden; 1104 overflow: hidden;
1037 text-overflow: ellipsis; 1105 text-overflow: ellipsis;
1038 1106
1039 .el-avatar { 1107 .el-avatar {
1040 border: 1px solid #EEEEEE; 1108 border: 1px solid #EEEEEE;
1041 } 1109 }
1042 1110
1043 .name { 1111 .name {
1044 margin-left: 15px; 1112 margin-left: 15px;
1045 flex: 1; 1113 flex: 1;
...@@ -1054,7 +1122,7 @@ const openPickup = () => { ...@@ -1054,7 +1122,7 @@ const openPickup = () => {
1054 border-radius: 10px; 1122 border-radius: 10px;
1055 margin: 30px auto; 1123 margin: 30px auto;
1056 position: relative; 1124 position: relative;
1057 1125
1058 .cover { 1126 .cover {
1059 width: 420px; 1127 width: 420px;
1060 height: 250px; 1128 height: 250px;
...@@ -1063,35 +1131,35 @@ const openPickup = () => { ...@@ -1063,35 +1131,35 @@ const openPickup = () => {
1063 background: #fff; 1131 background: #fff;
1064 object-fit: cover; 1132 object-fit: cover;
1065 } 1133 }
1066 1134
1067 .info { 1135 .info {
1068 padding-left: 440px; 1136 padding-left: 440px;
1069 1137
1070 h3 { 1138 h3 {
1071 font-weight: 500; 1139 font-weight: 500;
1072 color: #000000; 1140 color: #000000;
1073 margin: 0 0 10px; 1141 margin: 0 0 10px;
1074 font-size: 24px; 1142 font-size: 24px;
1075 1143
1076 img { 1144 img {
1077 margin-right: 10px 1145 margin-right: 10px
1078 } 1146 }
1079 1147
1080 .typeTag { 1148 .typeTag {
1081 border-radius: 13px 13px 13px 0; 1149 border-radius: 13px 13px 13px 0;
1082 margin-left: 10px; 1150 margin-left: 10px;
1083 } 1151 }
1084 } 1152 }
1085 1153
1086 p { 1154 p {
1087 color: #7B7F83; 1155 color: #7B7F83;
1088 font-size: 16px; 1156 font-size: 16px;
1089 } 1157 }
1090 1158
1091 .countDownTitle { 1159 .countDownTitle {
1092 font-size: 14px; 1160 font-size: 14px;
1093 } 1161 }
1094 1162
1095 .el-button.el-button--primary { 1163 .el-button.el-button--primary {
1096 background: #CA171D; 1164 background: #CA171D;
1097 border: none; 1165 border: none;
...@@ -1101,7 +1169,7 @@ const openPickup = () => { ...@@ -1101,7 +1169,7 @@ const openPickup = () => {
1101 1169
1102 .gg { 1170 .gg {
1103 margin: 0 0 28px; 1171 margin: 0 0 28px;
1104 1172
1105 h3 { 1173 h3 {
1106 border-left: 2px solid #BA2E29; 1174 border-left: 2px solid #BA2E29;
1107 padding: 0 0 0 12px; 1175 padding: 0 0 0 12px;
...@@ -1109,18 +1177,18 @@ const openPickup = () => { ...@@ -1109,18 +1177,18 @@ const openPickup = () => {
1109 font-weight: 500; 1177 font-weight: 500;
1110 font-size: 16px; 1178 font-size: 16px;
1111 } 1179 }
1112 1180
1113 p { 1181 p {
1114 font-size: 16px; 1182 font-size: 16px;
1115 color: #000; 1183 color: #000;
1116 margin: 0 0 8px; 1184 margin: 0 0 8px;
1117 line-height: 24px; 1185 line-height: 24px;
1118 1186
1119 label { 1187 label {
1120 color: #7D8790; 1188 color: #7D8790;
1121 } 1189 }
1122 } 1190 }
1123 1191
1124 .pp { 1192 .pp {
1125 border: 1px solid rgba(186, 46, 41, 0.3); 1193 border: 1px solid rgba(186, 46, 41, 0.3);
1126 padding: 20px; 1194 padding: 20px;
...@@ -1188,12 +1256,12 @@ const openPickup = () => { ...@@ -1188,12 +1256,12 @@ const openPickup = () => {
1188 dt { 1256 dt {
1189 font-size: 14px; 1257 font-size: 14px;
1190 } 1258 }
1191 1259
1192 dd { 1260 dd {
1193 display: inline-block; 1261 display: inline-block;
1194 margin: 0 15px 0 0; 1262 margin: 0 15px 0 0;
1195 } 1263 }
1196 1264
1197 dd.t { 1265 dd.t {
1198 display: block; 1266 display: block;
1199 margin: 15px 0 6px; 1267 margin: 15px 0 6px;
...@@ -1202,7 +1270,7 @@ const openPickup = () => { ...@@ -1202,7 +1270,7 @@ const openPickup = () => {
1202 padding: 6px; 1270 padding: 6px;
1203 background: #f5f5f5; 1271 background: #f5f5f5;
1204 } 1272 }
1205 1273
1206 li { 1274 li {
1207 line-height: 40px; 1275 line-height: 40px;
1208 display: flex; 1276 display: flex;
...@@ -1211,7 +1279,7 @@ const openPickup = () => { ...@@ -1211,7 +1279,7 @@ const openPickup = () => {
1211 align-items: center; 1279 align-items: center;
1212 cursor: pointer; 1280 cursor: pointer;
1213 } 1281 }
1214 1282
1215 li:hover { 1283 li:hover {
1216 background: #eee; 1284 background: #eee;
1217 } 1285 }
...@@ -1239,7 +1307,7 @@ const openPickup = () => { ...@@ -1239,7 +1307,7 @@ const openPickup = () => {
1239 1307
1240 .signButton { 1308 .signButton {
1241 margin: 0 0 20px; 1309 margin: 0 0 20px;
1242 1310
1243 button { 1311 button {
1244 width: 90%; 1312 width: 90%;
1245 background: var(--el-color-primary); 1313 background: var(--el-color-primary);
...@@ -1275,7 +1343,7 @@ const openPickup = () => { ...@@ -1275,7 +1343,7 @@ const openPickup = () => {
1275 width: 100%; 1343 width: 100%;
1276 border-left: 1px solid #e1e1e1; 1344 border-left: 1px solid #e1e1e1;
1277 border-top: 1px solid #e1e1e1; 1345 border-top: 1px solid #e1e1e1;
1278 1346
1279 th { 1347 th {
1280 background: #eee; 1348 background: #eee;
1281 padding: 6px 10px; 1349 padding: 6px 10px;
...@@ -1283,7 +1351,7 @@ const openPickup = () => { ...@@ -1283,7 +1351,7 @@ const openPickup = () => {
1283 border-bottom: 1px solid #e1e1e1; 1351 border-bottom: 1px solid #e1e1e1;
1284 font-size: 15px; 1352 font-size: 15px;
1285 } 1353 }
1286 1354
1287 td { 1355 td {
1288 padding: 6px 10px; 1356 padding: 6px 10px;
1289 border-right: 1px solid #e1e1e1; 1357 border-right: 1px solid #e1e1e1;
...@@ -1291,15 +1359,15 @@ const openPickup = () => { ...@@ -1291,15 +1359,15 @@ const openPickup = () => {
1291 border-bottom: 1px solid #e1e1e1; 1359 border-bottom: 1px solid #e1e1e1;
1292 vertical-align: middle; 1360 vertical-align: middle;
1293 text-align: center; 1361 text-align: center;
1294 1362
1295 span { 1363 span {
1296 margin-right: 10px 1364 margin-right: 10px
1297 } 1365 }
1298 1366
1299 span::after { 1367 span::after {
1300 content: ',' 1368 content: ','
1301 } 1369 }
1302 1370
1303 span:last-child::after { 1371 span:last-child::after {
1304 content: '' 1372 content: ''
1305 } 1373 }
...@@ -1308,7 +1376,7 @@ const openPickup = () => { ...@@ -1308,7 +1376,7 @@ const openPickup = () => {
1308 1376
1309 .flexLine { 1377 .flexLine {
1310 display: flex; 1378 display: flex;
1311 1379
1312 label { 1380 label {
1313 font-weight: normal 1381 font-weight: normal
1314 } 1382 }
...@@ -1324,26 +1392,26 @@ const openPickup = () => { ...@@ -1324,26 +1392,26 @@ const openPickup = () => {
1324 padding: 0 20px; 1392 padding: 0 20px;
1325 overflow: hidden; 1393 overflow: hidden;
1326 text-overflow: ellipsis; 1394 text-overflow: ellipsis;
1327 1395
1328 .el-avatar { 1396 .el-avatar {
1329 margin: 0 20px 1397 margin: 0 20px
1330 } 1398 }
1331 1399
1332 .info { 1400 .info {
1333 h3 { 1401 h3 {
1334 margin: 0 0 15px; 1402 margin: 0 0 15px;
1335 } 1403 }
1336 1404
1337 p { 1405 p {
1338 margin: 0; 1406 margin: 0;
1339 color: #1ab394 1407 color: #1ab394
1340 } 1408 }
1341 } 1409 }
1342 1410
1343 .rr { 1411 .rr {
1344 text-align: right; 1412 text-align: right;
1345 flex: 1; 1413 flex: 1;
1346 1414
1347 span { 1415 span {
1348 color: #1ab394 1416 color: #1ab394
1349 } 1417 }
...@@ -1355,16 +1423,16 @@ const openPickup = () => { ...@@ -1355,16 +1423,16 @@ const openPickup = () => {
1355 margin-bottom: 15px; 1423 margin-bottom: 15px;
1356 --el-collapse-content-bg-color: #F4F9FE; 1424 --el-collapse-content-bg-color: #F4F9FE;
1357 border: 2px solid #DDECFB; 1425 border: 2px solid #DDECFB;
1358 1426
1359 .table { 1427 .table {
1360 background: #fff; 1428 background: #fff;
1361 } 1429 }
1362 } 1430 }
1363 1431
1364 .is-active { 1432 .is-active {
1365 --el-collapse-header-bg-color: #F4F9FE 1433 --el-collapse-header-bg-color: #F4F9FE
1366 } 1434 }
1367 1435
1368 :deep(.el-collapse-item__header) { 1436 :deep(.el-collapse-item__header) {
1369 padding: 0 20px; 1437 padding: 0 20px;
1370 } 1438 }
...@@ -1373,7 +1441,7 @@ const openPickup = () => { ...@@ -1373,7 +1441,7 @@ const openPickup = () => {
1373 .funcBtns { 1441 .funcBtns {
1374 display: flex; 1442 display: flex;
1375 justify-content: space-around; 1443 justify-content: space-around;
1376 1444
1377 div { 1445 div {
1378 text-align: center; 1446 text-align: center;
1379 background: #F7FAFF; 1447 background: #F7FAFF;
...@@ -1381,11 +1449,11 @@ const openPickup = () => { ...@@ -1381,11 +1449,11 @@ const openPickup = () => {
1381 margin: 0 5px; 1449 margin: 0 5px;
1382 border-radius: 15px; 1450 border-radius: 15px;
1383 padding: 0 10px 15px; 1451 padding: 0 10px 15px;
1384 1452
1385 img { 1453 img {
1386 margin: auto 1454 margin: auto
1387 } 1455 }
1388 1456
1389 h4 { 1457 h4 {
1390 margin: 0; 1458 margin: 0;
1391 font-size: 14px; 1459 font-size: 14px;
...@@ -1417,7 +1485,7 @@ const openPickup = () => { ...@@ -1417,7 +1485,7 @@ const openPickup = () => {
1417 div { 1485 div {
1418 padding: 0 0 10px; 1486 padding: 0 0 10px;
1419 margin: 0 5px; 1487 margin: 0 5px;
1420 1488
1421 } 1489 }
1422 } 1490 }
1423 } 1491 }
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!