6be47212 by 杨炀

no message

1 parent 1cf0239b
...@@ -548,12 +548,6 @@ export const constantRoutes = [ ...@@ -548,12 +548,6 @@ export const constantRoutes = [
548 meta: { title: '选择参赛项目' } 548 meta: { title: '选择参赛项目' }
549 }, 549 },
550 { 550 {
551 path: 'list/:id/expenseDetails',
552 component: () => import('@/viewsPc/match/expenseDetails'),
553 name: 'expenseDetails',
554 meta: { title: '费用明细' }
555 },
556 {
557 path: 'list/:id/signPreview', 551 path: 'list/:id/signPreview',
558 component: () => import('@/viewsPc/match/signPreview'), 552 component: () => import('@/viewsPc/match/signPreview'),
559 name: 'signPreview', 553 name: 'signPreview',
......
...@@ -453,12 +453,6 @@ export const constantRoutes = [ ...@@ -453,12 +453,6 @@ export const constantRoutes = [
453 meta: { title: '选择参赛项目' } 453 meta: { title: '选择参赛项目' }
454 }, 454 },
455 { 455 {
456 path: 'list/:id/expenseDetails',
457 component: () => import('@/viewsPc/match/expenseDetails'),
458 name: 'expenseDetails',
459 meta: { title: '费用明细' }
460 },
461 {
462 path: 'list/:id/signPreview', 456 path: 'list/:id/signPreview',
463 component: () => import('@/viewsPc/match/signPreview'), 457 component: () => import('@/viewsPc/match/signPreview'),
464 name: 'signPreview', 458 name: 'signPreview',
......
...@@ -438,12 +438,6 @@ export const constantRoutes = [ ...@@ -438,12 +438,6 @@ export const constantRoutes = [
438 component: () => import('@/viewsPc/match/chooseProject'), 438 component: () => import('@/viewsPc/match/chooseProject'),
439 name: 'chooseProject', 439 name: 'chooseProject',
440 meta: { title: '选择参赛项目' } 440 meta: { title: '选择参赛项目' }
441 },
442 {
443 path: 'list/:id/expenseDetails',
444 component: () => import('@/viewsPc/match/expenseDetails'),
445 name: 'expenseDetails',
446 meta: { title: '费用明细' }
447 } 441 }
448 ] 442 ]
449 }, 443 },
......
...@@ -9,15 +9,16 @@ ...@@ -9,15 +9,16 @@
9 <el-form-item :label="language==0?'姓名':'Name'"> 9 <el-form-item :label="language==0?'姓名':'Name'">
10 <el-input v-model="query.realName" style="width: 120px;" clearable/> 10 <el-input v-model="query.realName" style="width: 120px;" clearable/>
11 </el-form-item> 11 </el-form-item>
12 <el-form-item :label="language==0?'短名':'Nick Name'"> 12 <!-- <el-form-item :label="language==0?'短名':'Nick Name'">-->
13 <el-input v-model="query.shortName" style="width: 120px;" clearable/> 13 <!-- <el-input v-model="query.shortName" style="width: 120px;" clearable/>-->
14 </el-form-item> 14 <!-- </el-form-item>-->
15 <el-form-item :label="language==0?'手机号码':'Phone'"> 15 <!-- <el-form-item :label="language==0?'手机号码':'Phone'">-->
16 <el-input v-model="query.phone" style="width: 120px;" clearable/> 16 <!-- <el-input v-model="query.phone" style="width: 120px;" clearable/>-->
17 </el-form-item> 17 <!-- </el-form-item>-->
18 <el-form-item :label="language==0?'邮箱':'E-mail'"> 18 <!-- <el-form-item :label="language==0?'邮箱':'E-mail'">-->
19 <el-input v-model="query.email" style="width: 120px;" clearable/> 19 <!-- <el-input v-model="query.email" style="width: 120px;" clearable/>-->
20 </el-form-item> 20 <!-- </el-form-item>-->
21
21 <el-form-item :label="language==0?'证件类型':'ID Type'"> 22 <el-form-item :label="language==0?'证件类型':'ID Type'">
22 <el-input v-model="query.idcType" style="width: 120px;" clearable/> 23 <el-input v-model="query.idcType" style="width: 120px;" clearable/>
23 </el-form-item> 24 </el-form-item>
...@@ -29,6 +30,9 @@ ...@@ -29,6 +30,9 @@
29 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?(l.label):(l.enlabel)"/> 30 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?(l.label):(l.enlabel)"/>
30 </el-select> 31 </el-select>
31 </el-form-item> 32 </el-form-item>
33 <el-form-item :label="language==0?'WDSF':'WDSF'">
34 <el-input v-model="query.wdsfMin" style="width: 120px;" clearable/>
35 </el-form-item>
32 <el-form-item> 36 <el-form-item>
33 <el-button type="primary" @click="getList">{{ language==0?'查询':'Search' }}</el-button> 37 <el-button type="primary" @click="getList">{{ language==0?'查询':'Search' }}</el-button>
34 </el-form-item> 38 </el-form-item>
......
...@@ -23,6 +23,15 @@ ...@@ -23,6 +23,15 @@
23 <el-form-item :label="language==0?'机构名称':'Team Name'" required prop="name"> 23 <el-form-item :label="language==0?'机构名称':'Team Name'" required prop="name">
24 <el-input type="text" v-model="form.name" :placeholder="language==0?'请输入内容':''"/> 24 <el-input type="text" v-model="form.name" :placeholder="language==0?'请输入内容':''"/>
25 </el-form-item> 25 </el-form-item>
26 <el-form-item :label="language==0?'团体类型':'Group type'" prop="type" required>
27 <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;">
28 <el-option :label="language==0?'普通院校':'School'" value="0" />
29 <el-option :label="language==0?'专业舞蹈学校':'Professional dance school'" value="1" />
30 <el-option :label="language==0?'培训机构/俱乐部':'Company/Club'" value="2" />
31 <el-option :label="language==0?'地方协会':'Local Association'" value="3" />
32 <el-option :label="language==0?'国家协会':'National Association'" value="4" />
33 </el-select>
34 </el-form-item>
26 <el-form-item :label="language==0?'联系人姓名':'Contact Person'" required prop="contactPerson"> 35 <el-form-item :label="language==0?'联系人姓名':'Contact Person'" required prop="contactPerson">
27 <el-input type="text" v-model="form.contactPerson" :placeholder="language==0?'请输入内容':''"/> 36 <el-input type="text" v-model="form.contactPerson" :placeholder="language==0?'请输入内容':''"/>
28 </el-form-item> 37 </el-form-item>
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
11 v-model.trim="loginForm.username" 11 v-model.trim="loginForm.username"
12 size="large" 12 size="large"
13 auto-complete="off" 13 auto-complete="off"
14 :placeholder="language==0?'账号(注册时使用的邮箱/手机号码)':'Account (e-mail/ cell-phone number)'" 14 :placeholder="language==0?'账号(注册时使用的邮箱)':'Account (e-mail)'"
15 > 15 >
16 16
17 </el-input> 17 </el-input>
......
...@@ -14,22 +14,15 @@ ...@@ -14,22 +14,15 @@
14 <h3 class="panel-title" v-else>Select list of participating athletes</h3> 14 <h3 class="panel-title" v-else>Select list of participating athletes</h3>
15 <a class="fr" @click="emptyChoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> 15 <a class="fr" @click="emptyChoosed">{{ language == 0 ? '清空' : 'Empty' }}</a>
16 </div> 16 </div>
17 <div class="panel-body"> 17 <div class="panel-body" style="padding: 10px">
18 <div class="chooseForm"> 18 <div class="noPicChooseForm">
19 <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> 19 <el-checkbox-group v-model="choosedchoosed" @change="changechoosed">
20 <div class="addBttn" @click="chooseSportman">+</div> 20 <el-button plain @click="chooseSportman">+{{ language == 0 ?'选择':'add' }}</el-button>
21 <el-checkbox v-for="c in choosedList" :label="c.id"> 21 <el-checkbox v-for="c in choosedList" :label="c.id" border>
22 <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> 22 <p class="name">{{ c.realName }}
23 <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="@/assets/img/head1.png"/> 23 <!-- ({{ c.sexStr }})-->
24 <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="@/assets/img/head0.png"/> 24 <img v-if="c.sex=='0'" src="@/assets/img/female.png"/>
25 25 <img v-if="c.sex=='1'" src="@/assets/img/male.png"/>
26 <p class="name">{{ c.shortName }}({{ c.sexStr }})
27 <!-- <el-icon @click.stop="editPerson(c.id)">-->
28 <!-- <Edit/>-->
29 <!-- </el-icon>-->
30 <!-- <el-icon @click.stop="delthischoosed(c)">-->
31 <!-- <Delete/>-->
32 <!-- </el-icon>-->
33 </p> 26 </p>
34 </el-checkbox> 27 </el-checkbox>
35 </el-checkbox-group> 28 </el-checkbox-group>
...@@ -42,6 +35,7 @@ ...@@ -42,6 +35,7 @@
42 <div class="panel-header "> 35 <div class="panel-header ">
43 <h3 class="panel-title" v-if="language==0">选择一个参赛组合</h3> 36 <h3 class="panel-title" v-if="language==0">选择一个参赛组合</h3>
44 <h3 class="panel-title" v-else>Select a Participating team</h3> 37 <h3 class="panel-title" v-else>Select a Participating team</h3>
38 <a class="fr" @click="emptyChangechoosed">{{ language == 0 ? '清空' : 'Empty' }}</a>
45 </div> 39 </div>
46 <div class="panel-body"> 40 <div class="panel-body">
47 <div class="chooseForm"> 41 <div class="chooseForm">
...@@ -51,7 +45,10 @@ ...@@ -51,7 +45,10 @@
51 <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> 45 <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/>
52 <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="@/assets/img/head1.png"/> 46 <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="@/assets/img/head1.png"/>
53 <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="@/assets/img/head0.png"/> 47 <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="@/assets/img/head0.png"/>
54 <p class="name">{{ c.shortName }}({{ c.sexStr }}) 48 <p class="name">{{ c.realName }}
49 <!-- ({{ c.sexStr }})-->
50 <img v-if="c.sex=='0'" src="@/assets/img/female.png"/>
51 <img v-if="c.sex=='1'" src="@/assets/img/male.png"/>
55 <!-- <el-icon @click.stop="editPerson(c.id)">--> 52 <!-- <el-icon @click.stop="editPerson(c.id)">-->
56 <!-- <Edit/>--> 53 <!-- <Edit/>-->
57 <!-- </el-icon>--> 54 <!-- </el-icon>-->
...@@ -68,11 +65,12 @@ ...@@ -68,11 +65,12 @@
68 <h3 class="panel-title" v-if="language==0">可参与报名的项目</h3> 65 <h3 class="panel-title" v-if="language==0">可参与报名的项目</h3>
69 <h3 class="panel-title" v-else>Eligible Events for Registration</h3> 66 <h3 class="panel-title" v-else>Eligible Events for Registration</h3>
70 <div class="fr"> 67 <div class="fr">
71 <el-input size="small" v-model="projectQuery.name" :prefix-icon="Search" @change="getProjectList" 68 <el-input size="small" v-model="projectQuery.name" :prefix-icon="Search"
69 @change="getProjectList"
72 clearable/> 70 clearable/>
73 </div> 71 </div>
74 </div> 72 </div>
75 <div v-loading="loadingProject"> 73 <div v-loading="loadingProject" style="height: 60vh">
76 <el-checkbox-group v-model="projectIds"> 74 <el-checkbox-group v-model="projectIds">
77 <el-checkbox class="flexBetweenBox" v-for="c in projectList" :label="c.id" :key="c.id"> 75 <el-checkbox class="flexBetweenBox" v-for="c in projectList" :label="c.id" :key="c.id">
78 <div class="flexBetween w100"> 76 <div class="flexBetween w100">
...@@ -80,7 +78,7 @@ ...@@ -80,7 +78,7 @@
80 {{ c.code }}:{{ c.name }} 78 {{ c.code }}:{{ c.name }}
81 <div>{{ c.danceTypeDetailStr }}</div> 79 <div>{{ c.danceTypeDetailStr }}</div>
82 </div> 80 </div>
83 <div class="text-primary">¥{{ c.serviceFee }}</div> 81 <div class="text-primary">{{ language==0?'¥':'£' }}{{ c.serviceFee }}</div>
84 </div> 82 </div>
85 </el-checkbox> 83 </el-checkbox>
86 </el-checkbox-group> 84 </el-checkbox-group>
...@@ -336,26 +334,6 @@ function afterRecover() { ...@@ -336,26 +334,6 @@ function afterRecover() {
336 } 334 }
337 return 335 return
338 } 336 }
339 // 判断是否收费
340 if (chargeFlag == '0') {
341 var obj = {
342 cptId: matchId.value,
343 groupId: groupId.value
344 }
345 match.commitSign(obj).then(res => {
346 console.log(res.data)
347 showResult.value = true
348 })
349 } else {
350 // 生成账单
351 router.push({
352 name: 'expenseDetails',
353 query: {
354 matchId: matchId.value,
355 groupId: groupId.value
356 }
357 })
358 }
359 } 337 }
360 338
361 function goPrev() { 339 function goPrev() {
...@@ -472,6 +450,10 @@ function delthischoosed(p) { ...@@ -472,6 +450,10 @@ function delthischoosed(p) {
472 function emptyChoosed() { 450 function emptyChoosed() {
473 choosedList.value = [] 451 choosedList.value = []
474 } 452 }
453 function emptyChangechoosed() {
454 choosedchoosed.value = []
455 choosed2List.value = []
456 }
475 457
476 function delchoosedchoosed() { 458 function delchoosedchoosed() {
477 console.log(choosedchoosed.value) 459 console.log(choosedchoosed.value)
...@@ -514,6 +496,7 @@ function signUp() { ...@@ -514,6 +496,7 @@ function signUp() {
514 groupId: groupId.value 496 groupId: groupId.value
515 } 497 }
516 match.sportsmanDone(obj).then(res => { 498 match.sportsmanDone(obj).then(res => {
499 choosedchoosed.value = []
517 getSignInfoList() 500 getSignInfoList()
518 getProjectList() 501 getProjectList()
519 }) 502 })
...@@ -756,4 +739,14 @@ function switchTabletype() { ...@@ -756,4 +739,14 @@ function switchTabletype() {
756 } 739 }
757 } 740 }
758 } 741 }
742 .noPicChooseForm{
743 .el-checkbox-group{display: flex;flex-wrap: wrap;text-align: justify;
744 .el-button{width: 31%;margin:1%;}
745 .el-checkbox{margin: 1%;width: 31%;overflow: hidden;}
746 .name{justify-content: left;}
747 }
748 }
749 .name{display: flex;align-items: center;justify-content: center;
750 img{height: 20px;margin-left: 4px;}
751 }
759 </style> 752 </style>
......
...@@ -7,24 +7,12 @@ ...@@ -7,24 +7,12 @@
7 <el-form ref="dialogRef" :model="form" :rules="language==0?rules:rules_cn" label-width="120px" inline> 7 <el-form ref="dialogRef" :model="form" :rules="language==0?rules:rules_cn" label-width="120px" inline>
8 <el-row :gutter="30"> 8 <el-row :gutter="30">
9 <el-col :lg="12" class="touxiang"> 9 <el-col :lg="12" class="touxiang">
10 <el-form-item prop="picUrl" :label="language==0?'个人照片':'photo'" required> 10
11 <ImageUpload2
12 v-model="form.picUrl" :crop-height="280" :crop-width="200" class="threeFour" :limit="1"
13 :is-show-tip="false"
14 />
15 </el-form-item>
16 <el-form-item :label="language==0?'姓氏':'surname'" prop="xing" required> 11 <el-form-item :label="language==0?'姓氏':'surname'" prop="xing" required>
17 <el-input v-model="form.xing"/> 12 <el-input v-model="form.xing"/>
18 </el-form-item> 13 </el-form-item>
19 <el-form-item :label="language==0?'短名':'nike name'" prop="shortName" required> 14 <el-form-item :label="language==0?'名':'name'" prop="ming" required>
20 <el-input v-model="form.shortName" :placeholder="language==0?'赛事用名':''"/> 15 <el-input v-model="form.ming"/>
21 </el-form-item>
22 <el-form-item :label="language==0?'出生日期':'birth'" prop="birth" required>
23 <el-date-picker
24 v-model="form.birth"
25 style="width: 100%;"
26 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
27 />
28 </el-form-item> 16 </el-form-item>
29 <el-form-item :label="language==0?'证件类型':'ID type'" prop="idcType" required> 17 <el-form-item :label="language==0?'证件类型':'ID type'" prop="idcType" required>
30 <el-select v-model="form.idcType" style="width: 100%;"> 18 <el-select v-model="form.idcType" style="width: 100%;">
...@@ -36,16 +24,42 @@ ...@@ -36,16 +24,42 @@
36 /> 24 />
37 </el-select> 25 </el-select>
38 </el-form-item> 26 </el-form-item>
39 <el-form-item :label="language==0?'手机号码':'Phone'" prop="phone" required> 27 <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode" required>
40 <el-input v-model="form.phone" type="number"/> 28 <el-input v-model="form.idcCode" @blur="checkCode"/>
41 </el-form-item> 29 </el-form-item>
42 <el-form-item :label="language==0?'WDSF会员号':'WDSF code'" prop="wdsfMin"> 30 <el-form-item :label="language==0?'性别':'sex'" prop="sex">
43 <el-input v-model="form.wdsfMin" type="number"/> 31 <el-radio-group v-model="form.sex">
32 <el-radio label="0">{{ language==0?'女':'female' }}</el-radio>
33 <el-radio label="1">{{ language==0?'男':'male' }}</el-radio>
34 </el-radio-group>
35 </el-form-item>
36
37 <el-form-item :label="language==0?'出生日期':'birth'" prop="birth" required>
38 <el-date-picker
39 v-model="form.birth"
40 style="width: 100%;"
41 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
42 />
44 </el-form-item> 43 </el-form-item>
44 <el-form-item :label="language==0?'主要会员角色':'roles'" prop="labelArr">
45 <el-select v-model="form.labelArr" multiple @change="labelvalue">
46 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/>
47 </el-select>
48 </el-form-item>
49 <!-- <el-form-item :label="language==0?'短名':'nike name'" prop="shortName" required>-->
50 <!-- <el-input v-model="form.shortName" :placeholder="language==0?'赛事用名':''"/>-->
51 <!-- </el-form-item>-->
52
53
45 </el-col> 54 </el-col>
46 <el-col :lg="12"> 55 <el-col :lg="12">
56 <el-form-item :label="language==0?'手机号码':'Phone'" prop="phone" required>
57 <el-input v-model="form.phone" type="number"/>
58 </el-form-item>
59
60
47 <el-form-item :label="language==0?'所属国家':'Nationality'" prop="countryId" required> 61 <el-form-item :label="language==0?'所属国家':'Nationality'" prop="countryId" required>
48 <el-select filterable v-model="form.countryId" style="width: 100%;" @change="changeCountryId"> 62 <el-select :disabled="language==0" filterable v-model="form.countryId" style="width: 100%;" @change="changeCountryId">
49 <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id"/> 63 <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id"/>
50 </el-select> 64 </el-select>
51 </el-form-item> 65 </el-form-item>
...@@ -59,26 +73,21 @@ ...@@ -59,26 +73,21 @@
59 <el-input v-model="form.address" type="textarea" :rows="4"/> 73 <el-input v-model="form.address" type="textarea" :rows="4"/>
60 74
61 </el-form-item> 75 </el-form-item>
62 <el-form-item :label="language==0?'名':'name'" prop="ming" required> 76 <el-form-item :label="language==0?'WDSF会员号':'WDSF code'" prop="wdsfMin">
63 <el-input v-model="form.ming"/> 77 <el-input v-model="form.wdsfMin" type="number"/>
64 </el-form-item>
65 <el-form-item :label="language==0?'性别':'sex'" prop="sex">
66 <el-radio-group v-model="form.sex">
67 <el-radio label="0">{{ language==0?'女':'female' }}</el-radio>
68 <el-radio label="1">{{ language==0?'男':'male' }}</el-radio>
69 </el-radio-group>
70 </el-form-item>
71 <el-form-item :label="language==0?'邮箱':'Email'" prop="email" required>
72 <el-input v-model="form.email"/>
73 </el-form-item>
74 <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode" required>
75 <el-input v-model="form.idcCode" @blur="checkCode"/>
76 </el-form-item> 78 </el-form-item>
77 <el-form-item :label="language==0?'主要会员角色':'roles'" prop="labelArr"> 79 <el-form-item prop="picUrl" :label="language==0?'个人照片':'photo'">
78 <el-select v-model="form.labelArr" multiple @change="labelvalue"> 80 <ImageUpload2
79 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/> 81 v-model="form.picUrl" :crop-height="280" :crop-width="200" class="threeFour" :limit="1"
80 </el-select> 82 :is-show-tip="false"
83 />
81 </el-form-item> 84 </el-form-item>
85
86 <!-- <el-form-item :label="language==0?'邮箱':'Email'" prop="email" required>-->
87 <!-- <el-input v-model="form.email"/>-->
88 <!-- </el-form-item>-->
89
90
82 </el-col> 91 </el-col>
83 </el-row> 92 </el-row>
84 </el-form> 93 </el-form>
...@@ -117,13 +126,13 @@ const {proxy} = getCurrentInstance() ...@@ -117,13 +126,13 @@ const {proxy} = getCurrentInstance()
117 const emit = defineEmits(['submitForm']) 126 const emit = defineEmits(['submitForm'])
118 const data = reactive({ 127 const data = reactive({
119 form: { 128 form: {
120 countryId: 240 129 // countryId: 240
121 }, 130 },
122 rules: { 131 rules: {
123 xing: [{required: true, message: '必填', trigger: 'blur'}], 132 xing: [{required: true, message: '必填', trigger: 'blur'}],
124 ming: [{required: true, message: '必填', trigger: 'blur'}], 133 ming: [{required: true, message: '必填', trigger: 'blur'}],
125 shortName: [{required: true, message: '必填', trigger: 'blur'}], 134 // shortName: [{required: true, message: '必填', trigger: 'blur'}],
126 email: [{required: true, message: '必填', trigger: 'blur'}], 135 // email: [{required: true, message: '必填', trigger: 'blur'}],
127 countryId: [{required: true, message: '必填', trigger: 'change'}], 136 countryId: [{required: true, message: '必填', trigger: 'change'}],
128 idcType: [{required: true, message: '必填', trigger: 'change'}], 137 idcType: [{required: true, message: '必填', trigger: 'change'}],
129 idcCode: [{required: true, message: '必填', trigger: 'blur'}], 138 idcCode: [{required: true, message: '必填', trigger: 'blur'}],
...@@ -131,15 +140,15 @@ const data = reactive({ ...@@ -131,15 +140,15 @@ const data = reactive({
131 // regionId: [{ required: true, message: '必填', trigger: 'change' }], 140 // regionId: [{ required: true, message: '必填', trigger: 'change' }],
132 birth: [{required: true, message: '必填', trigger: 'change'}], 141 birth: [{required: true, message: '必填', trigger: 'change'}],
133 address: [{ required: true, message: '必填', trigger: 'blur' }], 142 address: [{ required: true, message: '必填', trigger: 'blur' }],
134 picUrl: [{required: true, message: '必填', trigger: 'blur'}], 143 // picUrl: [{required: true, message: '必填', trigger: 'blur'}],
135 sex: [{required: true, message: '必填', trigger: 'change'}], 144 sex: [{required: true, message: '必填', trigger: 'change'}],
136 labelArr: [{required: true, message: '必填', trigger: 'change'}] 145 labelArr: [{required: true, message: '必填', trigger: 'change'}]
137 }, 146 },
138 rules_cn:{ 147 rules_cn:{
139 xing: [{required: true, message: 'required', trigger: 'blur'}], 148 xing: [{required: true, message: 'required', trigger: 'blur'}],
140 ming: [{required: true, message: 'required', trigger: 'blur'}], 149 ming: [{required: true, message: 'required', trigger: 'blur'}],
141 shortName: [{required: true, message: 'required', trigger: 'blur'}], 150 // shortName: [{required: true, message: 'required', trigger: 'blur'}],
142 email: [{required: true, message: 'required', trigger: 'blur'}], 151 // email: [{required: true, message: 'required', trigger: 'blur'}],
143 countryId: [{required: true, message: 'required', trigger: 'change'}], 152 countryId: [{required: true, message: 'required', trigger: 'change'}],
144 idcType: [{required: true, message: 'required', trigger: 'change'}], 153 idcType: [{required: true, message: 'required', trigger: 'change'}],
145 idcCode: [{required: true, message: 'required', trigger: 'blur'}], 154 idcCode: [{required: true, message: 'required', trigger: 'blur'}],
...@@ -147,7 +156,7 @@ const data = reactive({ ...@@ -147,7 +156,7 @@ const data = reactive({
147 // regionId: [{ required: true, message: 'required', trigger: 'change' }], 156 // regionId: [{ required: true, message: 'required', trigger: 'change' }],
148 birth: [{required: true, message: 'required', trigger: 'change'}], 157 birth: [{required: true, message: 'required', trigger: 'change'}],
149 address: [{ required: true, message: 'required', trigger: 'blur' }], 158 address: [{ required: true, message: 'required', trigger: 'blur' }],
150 picUrl: [{required: true, message: 'required', trigger: 'blur'}], 159 // picUrl: [{required: true, message: 'required', trigger: 'blur'}],
151 sex: [{required: true, message: 'required', trigger: 'change'}], 160 sex: [{required: true, message: 'required', trigger: 'change'}],
152 labelArr: [{required: true, message: 'required', trigger: 'change'}] 161 labelArr: [{required: true, message: 'required', trigger: 'change'}]
153 }, 162 },
...@@ -172,6 +181,7 @@ const {showRequire, form, rules,rules_cn, show, countryList, regionsList, title, ...@@ -172,6 +181,7 @@ const {showRequire, form, rules,rules_cn, show, countryList, regionsList, title,
172 onMounted(() => { 181 onMounted(() => {
173 getCountryList() 182 getCountryList()
174 getRegionsList() 183 getRegionsList()
184
175 }) 185 })
176 let editgay = false 186 let editgay = false
177 const open = (params) => { 187 const open = (params) => {
...@@ -180,6 +190,9 @@ const open = (params) => { ...@@ -180,6 +190,9 @@ const open = (params) => {
180 title.value = params.title 190 title.value = params.title
181 groupId.value = params.groupId || '0' 191 groupId.value = params.groupId || '0'
182 isMe.value = params.isMe 192 isMe.value = params.isMe
193 if(language.value == 0){
194 form.value.countryId = 240
195 }
183 if(isMe.value){ 196 if(isMe.value){
184 //个人 197 //个人
185 match.getMyPersonInfo().then(res => { 198 match.getMyPersonInfo().then(res => {
......
...@@ -13,15 +13,6 @@ ...@@ -13,15 +13,6 @@
13 <el-form-item :label="language==0?'姓名':'Name'"> 13 <el-form-item :label="language==0?'姓名':'Name'">
14 <el-input v-model="query.realName" style="width: 120px;" clearable/> 14 <el-input v-model="query.realName" style="width: 120px;" clearable/>
15 </el-form-item> 15 </el-form-item>
16 <el-form-item :label="language==0?'短名':'Nick Name'">
17 <el-input v-model="query.shortName" style="width: 120px;" clearable/>
18 </el-form-item>
19 <el-form-item :label="language==0?'手机号码':'Phone Number'">
20 <el-input v-model="query.phone" style="width: 120px;" clearable/>
21 </el-form-item>
22 <el-form-item :label="language==0?'邮箱':'E-mail'">
23 <el-input v-model="query.email" style="width: 120px;" clearable/>
24 </el-form-item>
25 <el-form-item :label="language==0?'证件类型':'ID Type'"> 16 <el-form-item :label="language==0?'证件类型':'ID Type'">
26 <el-input v-model="query.idcType" style="width: 120px;" clearable/> 17 <el-input v-model="query.idcType" style="width: 120px;" clearable/>
27 </el-form-item> 18 </el-form-item>
...@@ -40,15 +31,12 @@ ...@@ -40,15 +31,12 @@
40 <el-table ref="allSportmenTable" v-loading="loading" :data="tableData" height="60vh" 31 <el-table ref="allSportmenTable" v-loading="loading" :data="tableData" height="60vh"
41 @selection-change="handleSelectionChange"> 32 @selection-change="handleSelectionChange">
42 <el-table-column type="selection" :label="language==0?'选择':'Selection'" :selectable="selectable"/> 33 <el-table-column type="selection" :label="language==0?'选择':'Selection'" :selectable="selectable"/>
43 <el-table-column :label="language==0?'所属国家':'Nationality'" prop="countryName" min-width="100"/>
44 <el-table-column :label="language==0?'姓氏':'Last Name'" prop="xing" min-width="100"/> 34 <el-table-column :label="language==0?'姓氏':'Last Name'" prop="xing" min-width="100"/>
45 <el-table-column :label="language==0?'名':'First Name'" prop="ming" min-width="100"/> 35 <el-table-column :label="language==0?'名':'First Name'" prop="ming" min-width="100"/>
46 <el-table-column :label="language==0?'短名':'Nick Name'" prop="shortName" min-width="110"/> 36 <el-table-column :label="language==0?'所属国家':'Nationality'" prop="countryName" min-width="100"/>
47 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/> 37 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/>
48 <el-table-column :label="language==0?'年龄':'Age'" prop="age"/> 38 <el-table-column :label="language==0?'年龄':'Age'" prop="age"/>
49 <el-table-column :label="language==0?'出生日期':'Birth'" prop="birth" width="110"/> 39 <el-table-column :label="language==0?'出生日期':'Birth'" prop="birth" width="110"/>
50 <el-table-column :label="language==0?'手机号码':'Phone Number'" prop="phone" width="120"/>
51 <el-table-column :label="language==0?'邮箱':'E-mail'" prop="email" width="150"/>
52 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="idcTypeStr"/> 40 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="idcTypeStr"/>
53 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="idcCode" width="200"/> 41 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="idcCode" width="200"/>
54 <!-- <el-table-column label="会员角色" width="200">--> 42 <!-- <el-table-column label="会员角色" width="200">-->
...@@ -68,7 +56,6 @@ ...@@ -68,7 +56,6 @@
68 <!-- </div>--> 56 <!-- </div>-->
69 <!-- </template>--> 57 <!-- </template>-->
70 <!-- </el-table-column>--> 58 <!-- </el-table-column>-->
71 <el-table-column :label="language==0?'详细地址':'Detailed Address'" prop="address" min-width="140"/>
72 <el-table-column :label="language==0?'操作':'Actions'" width="120" fixed="right" align="center"> 59 <el-table-column :label="language==0?'操作':'Actions'" width="120" fixed="right" align="center">
73 <template #default="scope"> 60 <template #default="scope">
74 <el-button link type="primary" @click="editPerson(scope.row)"> 61 <el-button link type="primary" @click="editPerson(scope.row)">
...@@ -77,6 +64,13 @@ ...@@ -77,6 +64,13 @@
77 </template> 64 </template>
78 </el-table-column> 65 </el-table-column>
79 </el-table> 66 </el-table>
67 <paginationPc
68 v-show="total>0"
69 v-model:page="query.pageNum"
70 v-model:limit="query.pageSize"
71 :total="total"
72 @pagination="getList"
73 />
80 <template #footer> 74 <template #footer>
81 <div class="dialog-footer text-center"> 75 <div class="dialog-footer text-center">
82 <el-button type="primary" @click="submitForm">{{language==0?'确定':'Confirm'}}</el-button> 76 <el-button type="primary" @click="submitForm">{{language==0?'确定':'Confirm'}}</el-button>
...@@ -104,16 +98,18 @@ const {proxy} = getCurrentInstance() ...@@ -104,16 +98,18 @@ const {proxy} = getCurrentInstance()
104 const emit = defineEmits(['submitForm', 'transfer']) 98 const emit = defineEmits(['submitForm', 'transfer'])
105 const data = reactive({ 99 const data = reactive({
106 query: { 100 query: {
107 label:'0' 101 label:'0',
102 pageNum:1,
103 pageSize:10
108 }, 104 },
109 tableData: [], 105 tableData: [],
110 birthArr: [],
111 show: false, 106 show: false,
112 loading: false, 107 loading: false,
113 title: '选择运动员', 108 title: '选择运动员',
114 noPhotoCanSign: 0 109 noPhotoCanSign: 0,
110 total: 0
115 }) 111 })
116 const {query, tableData, show, title, birthArr, loading, noPhotoCanSign} = toRefs(data) 112 const {query, tableData, show, title, loading, noPhotoCanSign,total} = toRefs(data)
117 let matchId 113 let matchId
118 let groupId 114 let groupId
119 let choosedList = [] 115 let choosedList = []
...@@ -142,12 +138,9 @@ const selectable = (row) => { ...@@ -142,12 +138,9 @@ const selectable = (row) => {
142 } 138 }
143 const getList = () => { 139 const getList = () => {
144 loading.value = true 140 loading.value = true
145 if (birthArr.value) {
146 query.value.birthBegin = birthArr.value[0]
147 query.value.birthEnd = birthArr.value[1]
148 }
149 match.getGroupPersonList(query.value, groupId).then(res => { 141 match.getGroupPersonList(query.value, groupId).then(res => {
150 tableData.value = res.rows 142 tableData.value = res.rows
143 total.value = res.total
151 nextTick(() => { 144 nextTick(() => {
152 for (const n in tableData.value) { 145 for (const n in tableData.value) {
153 if (choosedIds.indexOf(tableData.value[n].id) > -1) { 146 if (choosedIds.indexOf(tableData.value[n].id) > -1) {
......
...@@ -3,23 +3,23 @@ ...@@ -3,23 +3,23 @@
3 <el-row> 3 <el-row>
4 <el-col :lg="8"> 4 <el-col :lg="8">
5 <div class="item"><label>{{ language == 0 ? '教练' : 'Coach' }}</label> 5 <div class="item"><label>{{ language == 0 ? '教练' : 'Coach' }}</label>
6 <span v-for="c in names.coachList">{{ c.shortName }}</span> 6 <span v-for="c in names.coachList">{{ c.realName}}, </span>
7 <span v-if="!names.coachList">--</span> 7 <span v-if="!names.coachList">--</span>
8 </div> 8 </div>
9 <div class="item"><label>{{ language == 0 ? '翻译' : 'Translator' }}</label> 9 <div class="item"><label>{{ language == 0 ? '翻译' : 'Translator' }}</label>
10 <span v-for="c in names.translatorList">{{ c.shortName }}</span> 10 <span v-for="c in names.translatorList">{{ c.realName }}</span>
11 <span v-if="!names.translatorList">--</span> 11 <span v-if="!names.translatorList">--</span>
12 </div> 12 </div>
13 </el-col> 13 </el-col>
14 <el-col :lg="8"> 14 <el-col :lg="8">
15 <div class="item"> 15 <div class="item">
16 <label>{{ language == 0 ? '领队' : 'Team leader' }}</label> 16 <label>{{ language == 0 ? '领队' : 'Team leader' }}</label>
17 <span v-for="c in names.leaderList">{{ c.shortName }}</span> 17 <span v-for="c in names.leaderList">{{ c.realName }}</span>
18 <span v-if="!names.leaderList">--</span> 18 <span v-if="!names.leaderList">--</span>
19 </div> 19 </div>
20 <div class="item"> 20 <div class="item">
21 <label>{{ language == 0 ? '官员' : 'Official' }}</label> 21 <label>{{ language == 0 ? '官员' : 'Official' }}</label>
22 <span class="mr5" v-for="c in names.officialList">{{ c.shortName }}</span> 22 <span class="mr5" v-for="c in names.officialList">{{ c.realName }}</span>
23 <span v-if="!names.officialList">--</span> 23 <span v-if="!names.officialList">--</span>
24 </div> 24 </div>
25 </el-col> 25 </el-col>
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
27 <div class="item"> 27 <div class="item">
28 <label>{{ language == 0 ? '队医' : 'Team doctor' }}</label> 28 <label>{{ language == 0 ? '队医' : 'Team doctor' }}</label>
29 <span class="mr5" v-for="c in names.teamDoctorList"> 29 <span class="mr5" v-for="c in names.teamDoctorList">
30 {{ c.shortName }} 30 {{ c.realName }}
31 </span> 31 </span>
32 <span v-if="!names.teamDoctorList">--</span> 32 <span v-if="!names.teamDoctorList">--</span>
33 </div> 33 </div>
......
...@@ -9,15 +9,11 @@ ...@@ -9,15 +9,11 @@
9 </el-descriptions-item> 9 </el-descriptions-item>
10 <el-descriptions-item :label="language==0?'姓氏':'surname'">{{ form.xing }}</el-descriptions-item> 10 <el-descriptions-item :label="language==0?'姓氏':'surname'">{{ form.xing }}</el-descriptions-item>
11 <el-descriptions-item :label="language==0?'名':'name'">{{ form.ming }}</el-descriptions-item> 11 <el-descriptions-item :label="language==0?'名':'name'">{{ form.ming }}</el-descriptions-item>
12 <el-descriptions-item :label="language==0?'短名':'short name'">{{ form.shortName }}</el-descriptions-item>
13 <el-descriptions-item :label="language==0?'性别':'sex'">{{ form.sexStr }}</el-descriptions-item> 12 <el-descriptions-item :label="language==0?'性别':'sex'">{{ form.sexStr }}</el-descriptions-item>
14 <el-descriptions-item :label="language==0?'所属国家':'Nationality'">{{ form.countryName }}</el-descriptions-item> 13 <el-descriptions-item :label="language==0?'所属国家':'Nationality'">{{ form.countryName }}</el-descriptions-item>
15 <el-descriptions-item :label="language==0?'证件类型':'ID type'">{{ form.idcTypeStr }}</el-descriptions-item> 14 <el-descriptions-item :label="language==0?'证件类型':'ID type'">{{ form.idcTypeStr }}</el-descriptions-item>
16 <el-descriptions-item :label="language==0?'证件号码':'ID NO'">{{ form.idcCode }}</el-descriptions-item> 15 <el-descriptions-item :label="language==0?'证件号码':'ID NO'">{{ form.idcCode }}</el-descriptions-item>
17 <el-descriptions-item :label="language==0?'出生日期':'birth'">{{ form.birth }}</el-descriptions-item> 16 <el-descriptions-item :label="language==0?'出生日期':'birth'">{{ form.birth }}</el-descriptions-item>
18 <el-descriptions-item :label="language==0?'手机号码':'Phone'">{{ form.phone }}</el-descriptions-item>
19 <el-descriptions-item :label="language==0?'邮箱':'Email'">{{ form.email }}</el-descriptions-item>
20 <el-descriptions-item :label="language==0?'详细地址':'Address'">{{ form.address }}</el-descriptions-item>
21 </el-descriptions> 17 </el-descriptions>
22 18
23 <el-row v-if="participantsInfoArr&&participantsInfoArr.length>0" class="mt20"> 19 <el-row v-if="participantsInfoArr&&participantsInfoArr.length>0" class="mt20">
......
...@@ -35,12 +35,12 @@ const language = ref(cache.local.get('language') || 0) ...@@ -35,12 +35,12 @@ const language = ref(cache.local.get('language') || 0)
35 const props = defineProps({ 35 const props = defineProps({
36 groupId: { 36 groupId: {
37 type: Object, 37 type: Object,
38 required: true 38 required: false
39 } 39 }
40 }) 40 })
41 const user = useUserStore().user 41 const user = useUserStore().user
42 const groupInfo = useUserStore().group 42 const groupInfo = useUserStore().group
43 if(props.groupId!=0){ 43 if(props.groupId){
44 getGroupInfo() 44 getGroupInfo()
45 } 45 }
46 function getGroupInfo() { 46 function getGroupInfo() {
......
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
55 <td>{{ p.danceTypeDetailStr }}</td> 55 <td>{{ p.danceTypeDetailStr }}</td>
56 <td>{{ p.playTypeStr }}</td> 56 <td>{{ p.playTypeStr }}</td>
57 <td>{{ p.birthPeriod }}</td> 57 <td>{{ p.birthPeriod }}</td>
58 <td>¥{{ p.serviceFee }}</td> 58 <td>{{ language==0?'¥':'£' }}{{ p.serviceFee }}</td>
59 </tr> 59 </tr>
60 </table> 60 </table>
61 </div> 61 </div>
...@@ -122,7 +122,7 @@ ...@@ -122,7 +122,7 @@
122 <td>{{ p.danceTypeDetailStr }}</td> 122 <td>{{ p.danceTypeDetailStr }}</td>
123 <td>{{ p.playTypeStr }}</td> 123 <td>{{ p.playTypeStr }}</td>
124 <td>{{ p.birthPeriod }}</td> 124 <td>{{ p.birthPeriod }}</td>
125 <td>¥{{ p.serviceFee }}</td> 125 <td>{{ language==0?'¥':'£' }}{{ p.serviceFee }}</td>
126 </tr> 126 </tr>
127 </table> 127 </table>
128 </div> 128 </div>
......
...@@ -2,18 +2,17 @@ ...@@ -2,18 +2,17 @@
2 <!-- 人员表格--> 2 <!-- 人员表格-->
3 <el-table :data="tableData" class="mt20"> 3 <el-table :data="tableData" class="mt20">
4 <el-table-column type="index" :label="language==0?'序号':'index'" width="80" align="center"/> 4 <el-table-column type="index" :label="language==0?'序号':'index'" width="80" align="center"/>
5 <el-table-column :label="language==0?'所属国家':'Nationality'" prop="countryName" min-width="100"/>
6 <el-table-column :label="language==0?'姓氏':'Last Name'" prop="xing" min-width="100"/> 5 <el-table-column :label="language==0?'姓氏':'Last Name'" prop="xing" min-width="100"/>
7 <el-table-column :label="language==0?'名':'First Name'" prop="ming" min-width="100"/> 6 <el-table-column :label="language==0?'名':'First Name'" prop="ming" min-width="100"/>
8 <el-table-column :label="language==0?'短名':'Nick Name'" prop="shortName" min-width="110"/> 7 <el-table-column :label="language==0?'所属国家':'Nationality'" prop="countryName" min-width="100"/>
8 <!-- <el-table-column :label="language==0?'短名':'Nick Name'" prop="shortName" min-width="110"/>-->
9 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/> 9 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/>
10 <el-table-column :label="language==0?'年龄':'Age'" prop="age"/> 10 <!-- <el-table-column :label="language==0?'年龄':'Age'" prop="age"/>-->
11 <el-table-column :label="language==0?'出生日期':'Birth'" prop="birth" width="110"/> 11 <!-- <el-table-column :label="language==0?'手机号码':'Phone Number'" prop="phone" width="120"/>-->
12 <el-table-column :label="language==0?'手机号码':'Phone Number'" prop="phone" width="120"/> 12 <!-- <el-table-column :label="language==0?'邮箱':'E-mail'" prop="email" width="150"/>-->
13 <el-table-column :label="language==0?'邮箱':'E-mail'" prop="email" width="150"/>
14 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="idcTypeStr" :min-width="language==0?'80':'160'"/> 13 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="idcTypeStr" :min-width="language==0?'80':'160'"/>
15 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="idcCode" width="200"/> 14 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="idcCode" width="200"/>
16 <el-table-column :label="language==0?'WDSF会员号':'WDSF code'" prop="wdsfMin" width="200"/> 15 <el-table-column :label="language==0?'出生日期':'Birth'" prop="birth" width="110"/>
17 <el-table-column :label="language==0?'会员角色':'Role'" width="150"> 16 <el-table-column :label="language==0?'会员角色':'Role'" width="150">
18 <template #default="scope"> 17 <template #default="scope">
19 <div class="esp"> 18 <div class="esp">
...@@ -29,7 +28,8 @@ ...@@ -29,7 +28,8 @@
29 </div> 28 </div>
30 </template> 29 </template>
31 </el-table-column> 30 </el-table-column>
32 <el-table-column :label="language==0?'详细地址':'Detailed Address'" prop="address" min-width="140"/> 31 <el-table-column :label="language==0?'WDSF会员号':'WDSF code'" prop="wdsfMin" width="200"/>
32 <!-- <el-table-column :label="language==0?'详细地址':'Detailed Address'" prop="address" min-width="140"/>-->
33 <el-table-column :label="language==0?'操作':'Actions'" fixed="right" width="160" header-align="center" 33 <el-table-column :label="language==0?'操作':'Actions'" fixed="right" width="160" header-align="center"
34 align="center"> 34 align="center">
35 <template #default="scope"> 35 <template #default="scope">
......
1 <template> 1 <template>
2 <el-table :data="list" border style="width: 100%" v-loading="loading"> 2 <div class="mt20"></div>
3 <el-table-column :label="language==0?'所属国家':'Nationality'" prop="personInfo.countryName" min-width="100"/> 3 <el-table :data="list" :sum-text="sumText" border style="width: 100%" v-loading="loading">
4 <el-table-column :label="language==0?'序号':'Index'" type="index" width="70" align="center"/>
4 <el-table-column :label="language==0?'姓氏':'Last Name'" prop="personInfo.xing" min-width="100"/> 5 <el-table-column :label="language==0?'姓氏':'Last Name'" prop="personInfo.xing" min-width="100"/>
5 <el-table-column :label="language==0?'名':'First Name'" prop="personInfo.ming" min-width="100"/> 6 <el-table-column :label="language==0?'名':'First Name'" prop="personInfo.ming" min-width="100"/>
6 <el-table-column :label="language==0?'短名':'Nick Name'" prop="personInfo.shortName" min-width="110"/> 7 <el-table-column :label="language==0?'所属国家':'Nationality'" prop="personInfo.countryName" :min-width="language==0?'100':'120'"/>
8 <!-- <el-table-column :label="language==0?'短名':'Nick Name'" prop="personInfo.shortName" min-width="110"/>-->
7 <el-table-column :label="language==0?'性别':'Gender'" prop="personInfo.sexStr"/> 9 <el-table-column :label="language==0?'性别':'Gender'" prop="personInfo.sexStr"/>
8 <el-table-column :label="language==0?'年龄':'Age'" prop="personInfo.age"/> 10 <!-- <el-table-column :label="language==0?'年龄':'Age'" prop="personInfo.age"/>-->
9 <el-table-column :label="language==0?'出生日期':'Birth'" prop="personInfo.birth" width="110"/> 11 <!-- <el-table-column :label="language==0?'手机号码':'Phone Number'" prop="personInfo.phone" min-width="130"/>-->
10 <el-table-column :label="language==0?'手机号码':'Phone Number'" prop="personInfo.phone" min-width="130"/> 12 <!-- <el-table-column :label="language==0?'邮箱':'E-mail'" prop="personInfo.email" width="150"/>-->
11 <el-table-column :label="language==0?'邮箱':'E-mail'" prop="personInfo.email" width="150"/> 13 <el-table-column :label="language==0?'证件类型':'ID Type'" :width="language==0?'':'140'" prop="personInfo.idcTypeStr"/>
12 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="personInfo.idcTypeStr"/>
13 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="personInfo.idcCode" width="200"/> 14 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="personInfo.idcCode" width="200"/>
15 <el-table-column :label="language==0?'出生日期':'Birth'" prop="personInfo.birth" width="110"/>
14 <el-table-column :label="language==0?'会员角色':'Role'" width="150"> 16 <el-table-column :label="language==0?'会员角色':'Role'" width="150">
15 <template #default="scope"> 17 <template #default="scope">
16 <div class="esp"> 18 <div class="esp">
...@@ -26,8 +28,7 @@ ...@@ -26,8 +28,7 @@
26 </div> 28 </div>
27 </template> 29 </template>
28 </el-table-column> 30 </el-table-column>
29 <el-table-column :label="language==0?'详细地址':'Detailed Address'" prop="personInfo.address" min-width="140"/> 31 <!-- <el-table-column :label="language==0?'详细地址':'Detailed Address'" prop="personInfo.address" min-width="140"/>-->
30
31 <el-table-column :label="language==0?'报项':'Entries'" min-width="300" :fixed="hasAction?false:'right'"> 32 <el-table-column :label="language==0?'报项':'Entries'" min-width="300" :fixed="hasAction?false:'right'">
32 <template #default="props"> 33 <template #default="props">
33 <ol> 34 <ol>
...@@ -45,7 +46,7 @@ ...@@ -45,7 +46,7 @@
45 </el-table-column> 46 </el-table-column>
46 <el-table-column :fixed="hasAction?false:'right'" min-width="100" :label="language==0?'保险费':'Premium'" prop="insuranceFee"> 47 <el-table-column :fixed="hasAction?false:'right'" min-width="100" :label="language==0?'保险费':'Premium'" prop="insuranceFee">
47 <template #default="scope"> 48 <template #default="scope">
48 <span class="text-primary">¥{{ scope.row.insuranceFee }}</span> 49 <span class="text-primary">{{ language==0?'¥':'£' }}{{ scope.row.insuranceFee }}</span>
49 </template> 50 </template>
50 </el-table-column> 51 </el-table-column>
51 <!-- 补充信息--> 52 <!-- 补充信息-->
...@@ -69,6 +70,11 @@ ...@@ -69,6 +70,11 @@
69 </template> 70 </template>
70 </el-table-column> 71 </el-table-column>
71 </el-table> 72 </el-table>
73 <div v-if="showSummary" class="rowSummary">
74 <div>
75 {{ language==0?'金额小计':'Amount' }}: <span>{{ language==0?'¥':'£' }}{{ total }}</span>
76 </div>
77 </div>
72 78
73 </template> 79 </template>
74 80
...@@ -95,12 +101,23 @@ const props = defineProps({ ...@@ -95,12 +101,23 @@ const props = defineProps({
95 type: Boolean, 101 type: Boolean,
96 required: false, 102 required: false,
97 default: true 103 default: true
104 },
105 showSummary:{
106 type: Boolean,
107 required: false,
108 default: false
109 },
110 total:{
111 type: String,
112 required: false,
113 default: '0'
98 } 114 }
99 }) 115 })
100 import cache from "@/plugins/cache"; 116 import cache from "@/plugins/cache";
101 const language = ref(cache.local.get('language') || 0) 117 const language = ref(cache.local.get('language') || 0)
102 const extraTableHead = ref([]) 118 const extraTableHead = ref([])
103 const loading = ref(true) 119 const loading = ref(true)
120 const sumText = ref('保险费')
104 getTableHead() 121 getTableHead()
105 const goPersonInfo = (row) => { 122 const goPersonInfo = (row) => {
106 emit('editExtra', row) 123 emit('editExtra', row)
...@@ -111,8 +128,17 @@ function getTableHead() { ...@@ -111,8 +128,17 @@ function getTableHead() {
111 loading.value = false 128 loading.value = false
112 }) 129 })
113 } 130 }
131 function totalMethod() {
132 }
114 </script> 133 </script>
115 134
116 <style scoped> 135 <style scoped lang="scss">
117 136 .rowSummary{text-align: right;padding: 0 20px;
137 height: 40px;line-height: 40px;
138 background: #FAFBFD;font-size: 16px;
139 color: #95A1A6;
140 border: 1px solid #EEEFF0;
141 span{font-size: 18px;font-family: DIN Alternate;
142 color: #000;}
143 }
118 </style> 144 </style>
......
1 <template> 1 <template>
2 <div class="mt20"></div>
2 <el-table :data="list" border style="width: 100%"> 3 <el-table :data="list" border style="width: 100%">
4 <el-table-column :label="language==0?'序号':'Index'" type="index" width="70" align="center"/>
3 <el-table-column :label="language==0?'组别代码':'Group code'" width="120px" prop="zuName"/> 5 <el-table-column :label="language==0?'组别代码':'Group code'" width="120px" prop="zuName"/>
4 <el-table-column :label="language==0?'组别':'Group'" prop="project.name"/> 6 <el-table-column :label="language==0?'组别':'Group'" prop="project.name"/>
5 <el-table-column :label="language==0?'舞种':'Dance Style'" width="120px" prop="project.danceType"/> 7 <el-table-column :label="language==0?'舞种':'Dance Style'" width="120px" prop="project.danceType"/>
...@@ -14,7 +16,7 @@ ...@@ -14,7 +16,7 @@
14 <el-table-column :label="language==0?'报名费':'Registration Fee'" width="120px" prop=""> 16 <el-table-column :label="language==0?'报名费':'Registration Fee'" width="120px" prop="">
15 <template #default="scope"> 17 <template #default="scope">
16 <div class="text-primary"> 18 <div class="text-primary">
17 ¥{{ scope.row.project.serviceFee }} 19 {{ language==0?'¥':'£' }}{{ scope.row.project.serviceFee }}
18 </div> 20 </div>
19 </template> 21 </template>
20 </el-table-column> 22 </el-table-column>
...@@ -27,7 +29,11 @@ ...@@ -27,7 +29,11 @@
27 </template> 29 </template>
28 </el-table-column> 30 </el-table-column>
29 </el-table> 31 </el-table>
30 32 <div v-if="showSummary" class="rowSummary">
33 <div>
34 {{ language==0?'金额小计':'Amount' }}: <span>{{ language==0?'¥':'£' }}{{ total }}</span>
35 </div>
36 </div>
31 </template> 37 </template>
32 38
33 <script setup> 39 <script setup>
...@@ -41,6 +47,16 @@ const props = defineProps({ ...@@ -41,6 +47,16 @@ const props = defineProps({
41 type: Boolean, 47 type: Boolean,
42 required: false, 48 required: false,
43 default: true 49 default: true
50 },
51 showSummary:{
52 type: Boolean,
53 required: false,
54 default: false
55 },
56 total:{
57 type: String,
58 required: false,
59 default: '0'
44 } 60 }
45 }) 61 })
46 import cache from "@/plugins/cache"; 62 import cache from "@/plugins/cache";
...@@ -50,6 +66,12 @@ const remove = (id) => { ...@@ -50,6 +66,12 @@ const remove = (id) => {
50 } 66 }
51 </script> 67 </script>
52 68
53 <style scoped> 69 <style scoped lang="scss">
54 70 .rowSummary{text-align: right;padding: 0 20px;
71 height: 40px;line-height: 40px;
72 background: #FAFBFD;font-size: 16px;
73 color: #95A1A6;
74 border: 1px solid #EEEFF0;
75 span{font-size: 18px;font-family: DIN Alternate;color: #000;}
76 }
55 </style> 77 </style>
......
...@@ -12,16 +12,25 @@ ...@@ -12,16 +12,25 @@
12 <div class="pd20" v-if="signInfoList?.length>0"> 12 <div class="pd20" v-if="signInfoList?.length>0">
13 <div class="leftboderTT">{{ language == 0 ? '参赛人员保险费' : 'Participant Insurance Fee' }}</div> 13 <div class="leftboderTT">{{ language == 0 ? '参赛人员保险费' : 'Participant Insurance Fee' }}</div>
14 <!-- 人员列表--> 14 <!-- 人员列表-->
15 <sign-info-table class="mt20" v-if="matchId" :match-id="matchId" :list="signInfoList" :hasAction="false"/> 15 <sign-info-table class="mt20" v-if="matchId" :show-summary="true" :total="insuranceFeeTotal" :match-id="matchId" :list="signInfoList" :hasAction="false"/>
16 </div> 16 </div>
17 <div class="pd20" v-if="zuTableList?.length>0"> 17 <div class="pd20" v-if="zuTableList?.length>0">
18 <div class="leftboderTT">{{ language == 0 ? '参赛设项报名费' : 'Registration Fee for Event Entry' }}</div> 18 <div class="leftboderTT">{{ language == 0 ? '参赛设项报名费' : 'Registration Fee for Event Entry' }}</div>
19 <zu-table class="mt20" :list="zuTableList" :hasAction="false"/> 19 <zu-table class="mt20" :list="zuTableList" :show-summary="true" :total="serviceFeeTotal" :hasAction="false"/>
20 </div> 20 </div>
21 <el-row class="priceBar">
22 <el-col :lg="24" :xs="24">
23 <div class="flex">
24 <div class="item" v-if="signInfoList?.length>0"><label>{{ language==0?'报名费':'Registration Fee' }}</label><span>{{ language==0?'¥':'£' }}{{serviceFeeTotal}}</span></div>
25 <div class="item" v-if="zuTableList?.length>0"><label>{{ language==0?'保险费':'Insurance Fee' }}</label><span>{{ language==0?'¥':'£' }}{{insuranceFeeTotal}}</span></div>
26 <div class="item"><label>{{ language==0?'费用总计':'Total Cost' }}</label><span class="size26">{{ language==0?'¥':'£' }}{{form.totalFee}}</span></div>
27 </div>
28 </el-col>
29 </el-row>
21 </div> 30 </div>
22 <div v-else class="pd20 skeletonBox"> 31 <div v-else class="pd20 skeletonBox">
23 <el-skeleton :rows="8"/> 32 <el-skeleton :rows="8"/>
24 <el-button type="primary" class="w200px btn-lineG" round @click="showLogin"> 33 <el-button type="primary" class="btn-lineG" size="large" :style="language == 0 ?'width:200px':'width:400px'" round @click="showLogin">
25 {{ language == 0 ?'登录后查看详细报项信息':'View detailed report information after logging in' }} 34 {{ language == 0 ?'登录后查看详细报项信息':'View detailed report information after logging in' }}
26 </el-button> 35 </el-button>
27 </div> 36 </div>
...@@ -41,11 +50,12 @@ ...@@ -41,11 +50,12 @@
41 <div class="text-danger flex" v-if="form.auditStatus=='3'"> 50 <div class="text-danger flex" v-if="form.auditStatus=='3'">
42 <img src="@/assets/img/w.png"> 51 <img src="@/assets/img/w.png">
43 {{ language==0?'报名信息审核拒绝':'Registration Information rejected' }} 52 {{ language==0?'报名信息审核拒绝':'Registration Information rejected' }}
53 <div>{{ language==0?'驳回理由:':'Reason:'}}</div>
44 </div> 54 </div>
45 </el-col> 55 </el-col>
46 <el-col :lg="12"> 56 <el-col :lg="12">
47 <div class="priceb" v-if="form.payStatus=='0'">{{ language==0?'待支付金额':'Amount Due' }}<span class="price">¥{{ Number(totalFee).toFixed(2) }}</span></div> 57 <div class="priceb" v-if="form.payStatus=='0'">{{ language==0?'待支付金额':'Amount Due' }}<span class="price">{{ language==0?'¥':'£' }}{{ Number(totalFee).toFixed(2) }}</span></div>
48 <div class="priceb" v-if="form.payStatus=='1'">{{ language==0?'已支付金额':'Amount Due' }}<span class="price">¥{{ Number(totalFee).toFixed(2) }}</span></div> 58 <div class="priceb" v-if="form.payStatus=='1'">{{ language==0?'已支付金额':'Amount Due' }}<span class="price">{{ language==0?'¥':'£' }}{{ Number(totalFee).toFixed(2) }}</span></div>
49 </el-col> 59 </el-col>
50 </el-row> 60 </el-row>
51 </el-card> 61 </el-card>
...@@ -147,7 +157,7 @@ ...@@ -147,7 +157,7 @@
147 <tr> 157 <tr>
148 <th>{{ language==0?'付款金额':'Payment Amount' }}</th> 158 <th>{{ language==0?'付款金额':'Payment Amount' }}</th>
149 <td> 159 <td>
150 ¥{{ totalFee }} 160 {{ language==0?'¥':'£' }}{{ totalFee }}
151 <div class="text-gray">{{ language==0?'请按照指定金额进行打款':'Please make the payment according to the specified amount' }}</div> 161 <div class="text-gray">{{ language==0?'请按照指定金额进行打款':'Please make the payment according to the specified amount' }}</div>
152 </td> 162 </td>
153 </tr> 163 </tr>
...@@ -211,7 +221,7 @@ ...@@ -211,7 +221,7 @@
211 <div class="text-center"> 221 <div class="text-center">
212 <el-icon color="#32B16C" size="80"><SuccessFilled /></el-icon> 222 <el-icon color="#32B16C" size="80"><SuccessFilled /></el-icon>
213 <p class="text-success">{{ language==0?'支付成功':'successful!' }}</p> 223 <p class="text-success">{{ language==0?'支付成功':'successful!' }}</p>
214 <h3 class="wePrice">¥{{form.totalFee}}</h3> 224 <h3 class="wePrice">{{ language==0?'¥':'£' }}{{form.totalFee}}</h3>
215 </div> 225 </div>
216 </el-card> 226 </el-card>
217 <el-card class="mb60" v-if="form.payStatus == '1' && form.curPayType=='2'"> 227 <el-card class="mb60" v-if="form.payStatus == '1' && form.curPayType=='2'">
...@@ -219,7 +229,7 @@ ...@@ -219,7 +229,7 @@
219 <div class="text-center"> 229 <div class="text-center">
220 <el-icon color="#32B16C" size="80"><SuccessFilled /></el-icon> 230 <el-icon color="#32B16C" size="80"><SuccessFilled /></el-icon>
221 <p class="text-success">{{ language==0?'支付成功':'successful!' }}</p> 231 <p class="text-success">{{ language==0?'支付成功':'successful!' }}</p>
222 <h3 class="wePrice">¥{{form.totalFee}}</h3> 232 <h3 class="wePrice">{{ language==0?'¥':'£' }}{{form.totalFee}}</h3>
223 <span v-if="language==0" class="text-danger size12">*您可以在上传汇款单完成后,与联系人进行电话确认。具体缴费结果,可以在个人中心-我的报名中查看进度</span> 233 <span v-if="language==0" class="text-danger size12">*您可以在上传汇款单完成后,与联系人进行电话确认。具体缴费结果,可以在个人中心-我的报名中查看进度</span>
224 <span v-else class="text-danger size12">*You can confirm with the contact person by phone after uploading the remittance form. The specific payment results can be viewed in the My Registration section of the personal center to check the progress</span> 234 <span v-else class="text-danger size12">*You can confirm with the contact person by phone after uploading the remittance form. The specific payment results can be viewed in the My Registration section of the personal center to check the progress</span>
225 235
...@@ -279,6 +289,8 @@ const upForm = ref({ ...@@ -279,6 +289,8 @@ const upForm = ref({
279 }) 289 })
280 const errorBox = ref(false) 290 const errorBox = ref(false)
281 const hideconfirmbtn = ref(false) 291 const hideconfirmbtn = ref(false)
292 const insuranceFeeTotal = ref(0)
293 const serviceFeeTotal = ref(0)
282 console.log(route.query.orderId) 294 console.log(route.query.orderId)
283 // 1763462073870237698 295 // 1763462073870237698
284 getData() 296 getData()
...@@ -310,8 +322,17 @@ function getSignList() { ...@@ -310,8 +322,17 @@ function getSignList() {
310 cptId: matchId.value, 322 cptId: matchId.value,
311 groupId: groupId.value 323 groupId: groupId.value
312 }).then(res => { 324 }).then(res => {
325 insuranceFeeTotal.value = 0
326 serviceFeeTotal.value = 0
313 signInfoList.value = res.data.singleData 327 signInfoList.value = res.data.singleData
314 zuTableList.value = res.data.zuData 328 zuTableList.value = res.data.zuData
329 for(var s of signInfoList.value){
330 insuranceFeeTotal.value = insuranceFeeTotal.value + Number(s.insuranceFee)
331 }
332 for(var z of zuTableList.value){
333 serviceFeeTotal.value = serviceFeeTotal.value + Number(z.project.serviceFee)
334 }
335
315 }) 336 })
316 } 337 }
317 function goHome() { 338 function goHome() {
...@@ -456,4 +477,13 @@ function showLogin(){ ...@@ -456,4 +477,13 @@ function showLogin(){
456 } 477 }
457 } 478 }
458 .payImgbox{text-align: center;border: 1px solid #fff;padding: 20px;} 479 .payImgbox{text-align: center;border: 1px solid #fff;padding: 20px;}
480 .priceBar{padding: 0 0 20px;
481 .flex{display: flex;justify-content: right;align-items: baseline;
482 .item{font-size: 16px;margin-right: 15px;
483 label{color: #95A1A6;}
484 span{font-family: DIN Alternate;}
485 }
486 }
487 .size26{font-size: 26px;}
488 }
459 </style> 489 </style>
......
...@@ -11,12 +11,22 @@ ...@@ -11,12 +11,22 @@
11 <div style="margin: 20px"> 11 <div style="margin: 20px">
12 12
13 <div class="mt20"> 13 <div class="mt20">
14 <div class="leftboderTT">{{ language==0?'参赛人员清单':'Participant List' }}</div> 14 <div class="leftboderTT">{{ language==0?'参赛人员清单':'Participant List' }}
15 <sign-info-table class="mt20" :match-id="matchId" :list="signInfoList" :hasAction="false"/> 15 <div class="fr">
16 <el-input size="small" v-model="zuQuery.name" :prefix-icon="Search"
17 @change="getSignList" clearable/>
18 </div>
19 </div>
20 <sign-info-table class="mt20" :showSummary="true" :total="form.cptInsuranceFee?.totalFee" :match-id="matchId" :list="signInfoList" :hasAction="false"/>
16 </div> 21 </div>
17 <div class="mt20"> 22 <div class="mt20">
18 <div class="leftboderTT">{{ language==0?'设项报名清单':'Event Registration List' }}</div> 23 <div class="leftboderTT">{{ language==0?'设项报名清单':'Event Registration List' }}
19 <zu-table class="mt20" :list="zuTableList" :hasAction="false"/> 24 <div class="fr">
25 <el-input size="small" v-model="zuQuery.groupName" :prefix-icon="Search"
26 @change="getSignList" clearable/>
27 </div>
28 </div>
29 <zu-table class="mt20" :showSummary="true" :total="form.cptRegistrationFee?.totalFee" :list="zuTableList" :hasAction="false"/>
20 </div> 30 </div>
21 </div> 31 </div>
22 32
...@@ -26,9 +36,9 @@ ...@@ -26,9 +36,9 @@
26 <el-row class="priceBar"> 36 <el-row class="priceBar">
27 <el-col :lg="16" :xs="24" class="pd20"> 37 <el-col :lg="16" :xs="24" class="pd20">
28 <div class="flex"> 38 <div class="flex">
29 <div class="item"><label>{{ language==0?'报名费':'Registration Fee' }}</label><span>¥{{form.cptRegistrationFee?.totalFee}}</span></div> 39 <div class="item"><label>{{ language==0?'报名费':'Registration Fee' }}</label><span>{{ language==0?'¥':'£' }}{{form.cptRegistrationFee?.totalFee}}</span></div>
30 <div class="item"><label>{{ language==0?'保险费':'Insurance Fee' }}</label><span>¥{{form.cptInsuranceFee?.totalFee}}</span></div> 40 <div class="item"><label>{{ language==0?'保险费':'Insurance Fee' }}</label><span>{{ language==0?'¥':'£' }}{{form.cptInsuranceFee?.totalFee}}</span></div>
31 <div class="item"><label>{{ language==0?'费用总计':'Total Cost' }}</label><span>¥{{form.totalFee}}</span></div> 41 <div class="item"><label>{{ language==0?'费用总计':'Total Cost' }}</label><span>{{ language==0?'¥':'£' }}{{form.totalFee}}</span></div>
32 </div> 42 </div>
33 </el-col> 43 </el-col>
34 <el-col :lg="8" :xs="24" class="text-right pd20"> 44 <el-col :lg="8" :xs="24" class="text-right pd20">
...@@ -49,6 +59,7 @@ ...@@ -49,6 +59,7 @@
49 </template> 59 </template>
50 60
51 <script setup> 61 <script setup>
62 import {Search} from "@element-plus/icons-vue";
52 import TeamSignStep from './components/teamSignStep' 63 import TeamSignStep from './components/teamSignStep'
53 import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row" 64 import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row"
54 import GroupInfoRow from "@/viewsPc/match/components/groupInfo-row" 65 import GroupInfoRow from "@/viewsPc/match/components/groupInfo-row"
...@@ -68,32 +79,32 @@ const router = useRouter() ...@@ -68,32 +79,32 @@ const router = useRouter()
68 const activeStep = ref(3) 79 const activeStep = ref(3)
69 const groupInfo = useUserStore().group || {} 80 const groupInfo = useUserStore().group || {}
70 const language = ref(cache.local.get('language') || 0) 81 const language = ref(cache.local.get('language') || 0)
71 const groupId = ref() 82 const groupId = ref(route.query.groupId || 0)
72 const form = ref({}) 83 const form = ref({})
73 const matchId = ref(route.query.matchId) 84 const matchId = ref(route.query.matchId)
74 const signInfoList = ref([]) 85 const signInfoList = ref([])
75 const zuTableList = ref([]) 86 const zuTableList = ref([])
76 const {proxy} = getCurrentInstance() 87 const {proxy} = getCurrentInstance()
88 const zuQuery = ref({
89 cptId: matchId.value,
90 groupId: groupId.value,
91 name:'',
92 groupName:''
93 })
77 onMounted(()=>{ 94 onMounted(()=>{
78 // console.log(route.query) 95 // console.log(route.query)
79 matchId.value = route.query.matchId
80 groupId.value = route.query.groupId || 0
81 getSignList() 96 getSignList()
82 getFee(groupId.value) 97 getFee(groupId.value)
83 }) 98 })
84 99
85 100
86 function getSignList() { 101 function getSignList() {
87 match.getMySignInfoList({ 102 match.getMySignInfoList(zuQuery.value).then(res=>{
88 cptId: matchId.value,
89 groupId: groupId.value
90 }).then(res=>{
91 signInfoList.value = res.data.singleData 103 signInfoList.value = res.data.singleData
92 zuTableList.value = res.data.zuData 104 zuTableList.value = res.data.zuData
93 }) 105 })
94 } 106 }
95 const goPrev = () => { 107 const goPrev = () => {
96 // router.go(-1)
97 router.push({ 108 router.push({
98 name: 'chooseSportsman', 109 name: 'chooseSportsman',
99 query: { 110 query: {
...@@ -181,6 +192,7 @@ function exportSignList(n) { ...@@ -181,6 +192,7 @@ function exportSignList(n) {
181 .flex{display: flex; 192 .flex{display: flex;
182 .item{font-size: 16px;margin-right: 15px; 193 .item{font-size: 16px;margin-right: 15px;
183 label{color: #95A1A6;} 194 label{color: #95A1A6;}
195 span{font-family: DIN Alternate;}
184 } 196 }
185 } 197 }
186 } 198 }
......
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
23 </el-form-item> 23 </el-form-item>
24 </el-col> 24 </el-col>
25 <el-col :lg="10"> 25 <el-col :lg="10">
26 <el-form-item :label="language==0?'参赛队名称':'Name of participating team'" required prop="abreviations">
27 <el-input type="text" v-model="form.abreviations" :placeholder="language==0?'请输入内容':''"/>
28 </el-form-item>
26 <el-form-item :label="language==0?'团体名称':'Team Name'" prop="name"> 29 <el-form-item :label="language==0?'团体名称':'Team Name'" prop="name">
27 <el-input v-model="form.name" :placeholder="language==0?'请输入团体名称':''" /> 30 <el-input v-model="form.name" :placeholder="language==0?'请输入团体名称':''" />
28 </el-form-item> 31 </el-form-item>
...@@ -32,9 +35,6 @@ ...@@ -32,9 +35,6 @@
32 <el-form-item :label="language==0?'邮箱':'Email'" required prop="contactEmail"> 35 <el-form-item :label="language==0?'邮箱':'Email'" required prop="contactEmail">
33 <el-input v-model="form.contactEmail" type="email" placeholder="请输入内容"/> 36 <el-input v-model="form.contactEmail" type="email" placeholder="请输入内容"/>
34 </el-form-item> 37 </el-form-item>
35 <el-form-item :label="language==0?'详细地址':'Detailed Address'" required prop="address">
36 <el-input type="textarea" v-model="form.address" class="mt10" placeholder="请输入详细地址"/>
37 </el-form-item>
38 <el-form-item :label="language==0?'团体类型':'Group type'" prop="type"> 38 <el-form-item :label="language==0?'团体类型':'Group type'" prop="type">
39 <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;"> 39 <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;">
40 <el-option :label="language==0?'普通院校':'School'" value="0" /> 40 <el-option :label="language==0?'普通院校':'School'" value="0" />
...@@ -44,10 +44,12 @@ ...@@ -44,10 +44,12 @@
44 <el-option :label="language==0?'国家协会':'National Association'" value="4" /> 44 <el-option :label="language==0?'国家协会':'National Association'" value="4" />
45 </el-select> 45 </el-select>
46 </el-form-item> 46 </el-form-item>
47 <el-form-item :label="language==0?'参赛队名称':'Name of participating team'" required prop="abreviations"> 47 <el-form-item :label="language==0?'详细地址':'Detailed Address'" required prop="address">
48 <el-input type="text" v-model="form.abreviations" :placeholder="language==0?'请输入内容':''"/> 48 <el-input type="textarea" v-model="form.address" class="mt10" placeholder="请输入详细地址"/>
49 </el-form-item> 49 </el-form-item>
50 50
51
52
51 </el-col> 53 </el-col>
52 </el-row> 54 </el-row>
53 <el-row v-if="participantsInfoArr&&participantsInfoArr.length>0"> 55 <el-row v-if="participantsInfoArr&&participantsInfoArr.length>0">
......
1 <template>
2 <el-card>
3 <el-steps :active="activeStep" finish-status="success" align-center>
4 <el-step :title="language==0?'创建账号':'Check WDSF ID'"/>
5 <el-step :title="language==0?'选手报名':'Participant Registration'" />
6 <el-step :title="language==0?'提交审核':'Submit for review'" />
7 <!-- <el-step :title="language==0?'注册完成':'stered successfully'" />-->
8 </el-steps>
9 </el-card>
10 </template>
11
12 <script setup>
13 import {ref} from "vue";
14 import cache from "@/plugins/cache";
15
16 const language = ref(cache.local.get('language') || 0)
17 const props = defineProps({
18 activeStep: {
19 type: Number,
20 required: true
21 }
22 })
23 </script>
24
25 <style scoped>
26
27 </style>
...@@ -2,8 +2,9 @@ ...@@ -2,8 +2,9 @@
2 <el-card style="min-height: 50vh"> 2 <el-card style="min-height: 50vh">
3 <div class="pt30"> 3 <div class="pt30">
4 <el-form class="d-form" size="large" :label-width="language==0?120:200" style="max-width: 500px;margin: auto"> 4 <el-form class="d-form" size="large" :label-width="language==0?120:200" style="max-width: 500px;margin: auto">
5 <el-form-item :label="language==0?'手机/邮箱':'E-mail / Phone number'" required> 5 <el-form-item :label="language==0?'邮箱':'E-mail'" required>
6 <el-input type="text" v-model="form.account" @change="resetCode" @blur="verifyCode"/> 6 <el-input type="text" v-model="form.account" @change="resetCode" @blur="verifyCode"
7 />
7 </el-form-item> 8 </el-form-item>
8 <el-form-item :label="language==0?'验证码':'Code'" required> 9 <el-form-item :label="language==0?'验证码':'Code'" required>
9 <el-input v-model="form.code"> 10 <el-input v-model="form.code">
......
...@@ -42,6 +42,15 @@ ...@@ -42,6 +42,15 @@
42 <el-form-item :label="language==0?'机构名称':'Institution name'" required prop="teamName"> 42 <el-form-item :label="language==0?'机构名称':'Institution name'" required prop="teamName">
43 <el-input type="text" v-model="form.teamName" :placeholder="language==0?'请输入内容':''"/> 43 <el-input type="text" v-model="form.teamName" :placeholder="language==0?'请输入内容':''"/>
44 </el-form-item> 44 </el-form-item>
45 <el-form-item :label="language==0?'团体类型':'Group type'" prop="type" required>
46 <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;">
47 <el-option :label="language==0?'普通院校':'School'" value="0" />
48 <el-option :label="language==0?'专业舞蹈学校':'Professional dance school'" value="1" />
49 <el-option :label="language==0?'培训机构/俱乐部':'Company/Club'" value="2" />
50 <el-option :label="language==0?'地方协会':'Local Association'" value="3" />
51 <el-option :label="language==0?'国家协会':'National Association'" value="4" />
52 </el-select>
53 </el-form-item>
45 <el-form-item :label="language==0?'联系人姓名':'Contact Name'" required prop="contactName"> 54 <el-form-item :label="language==0?'联系人姓名':'Contact Name'" required prop="contactName">
46 <el-input type="text" v-model="form.contactName" :placeholder="language==0?'请输入内容':''"/> 55 <el-input type="text" v-model="form.contactName" :placeholder="language==0?'请输入内容':''"/>
47 </el-form-item> 56 </el-form-item>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!