Merge branch 'order' of https://code.itechtop.cn/yangyang/dance-pc into order
Showing
28 changed files
with
290 additions
and
181 deletions
No preview for this file type
| ... | @@ -39,11 +39,12 @@ export function getMySignDetailById(params) { | ... | @@ -39,11 +39,12 @@ export function getMySignDetailById(params) { |
| 39 | } | 39 | } |
| 40 | 40 | ||
| 41 | // 获取赛事下的已报团队 | 41 | // 获取赛事下的已报团队 |
| 42 | export function getGroupListByCptId(cptId) { | 42 | export function getGroupListByCptId(cptId,query) { |
| 43 | return request({ | 43 | return request({ |
| 44 | // url: `/league/group/getGroupListByCptId/${cptId}`, | 44 | // url: `/league/group/getGroupListByCptId/${cptId}`, |
| 45 | url: `/league/sign/getSignInfoDataByCptId/${cptId}`, | 45 | url: `/league/sign/getSignInfoDataByCptId/${cptId}`, |
| 46 | method: 'get' | 46 | method: 'get', |
| 47 | params: query | ||
| 47 | }) | 48 | }) |
| 48 | } | 49 | } |
| 49 | 50 | ||
| ... | @@ -363,6 +364,13 @@ export function savePersonForMyPerson(data) { | ... | @@ -363,6 +364,13 @@ export function savePersonForMyPerson(data) { |
| 363 | data: data | 364 | data: data |
| 364 | }) | 365 | }) |
| 365 | } | 366 | } |
| 367 | export function savePersonForMyPerson2(data) { | ||
| 368 | return request({ | ||
| 369 | url: `/systemj/personInfo/savePersonForMyPerson2`, | ||
| 370 | method: 'post', | ||
| 371 | data: data | ||
| 372 | }) | ||
| 373 | } | ||
| 366 | 374 | ||
| 367 | // 人员修改 | 375 | // 人员修改 |
| 368 | export function editPersonInfo(params) { | 376 | export function editPersonInfo(params) { |
| ... | @@ -380,6 +388,13 @@ export function delPerson(id) { | ... | @@ -380,6 +388,13 @@ export function delPerson(id) { |
| 380 | method: 'delete' | 388 | method: 'delete' |
| 381 | }) | 389 | }) |
| 382 | } | 390 | } |
| 391 | //个人账号 | ||
| 392 | export function delPersonForPersonal(id) { | ||
| 393 | return request({ | ||
| 394 | url: `/systemj/personInfo/singleDelete/${id}`, | ||
| 395 | method: 'delete' | ||
| 396 | }) | ||
| 397 | } | ||
| 383 | 398 | ||
| 384 | export function singleSignSavePerson(data) { | 399 | export function singleSignSavePerson(data) { |
| 385 | return request({ | 400 | return request({ |
| ... | @@ -650,6 +665,20 @@ export function checkMate(query) { | ... | @@ -650,6 +665,20 @@ export function checkMate(query) { |
| 650 | params:query | 665 | params:query |
| 651 | }) | 666 | }) |
| 652 | } | 667 | } |
| 668 | export function checkIdcCode(query) { | ||
| 669 | return request({ | ||
| 670 | url: `/systemj/personInfo/extractInfo`, | ||
| 671 | method: 'get', | ||
| 672 | params:query | ||
| 673 | }) | ||
| 674 | } | ||
| 675 | export function getProjectByCptId(cptId,query) { | ||
| 676 | return request({ | ||
| 677 | url: `/league/competitionProject/getTableByLanguageSourceAndCptId/${cptId}`, | ||
| 678 | method: 'get', | ||
| 679 | params: query | ||
| 680 | }) | ||
| 681 | } | ||
| 653 | export function addInvitation(data) { | 682 | export function addInvitation(data) { |
| 654 | return request({ | 683 | return request({ |
| 655 | url: `/league/person`, | 684 | url: `/league/person`, | ... | ... |
| ... | @@ -83,7 +83,7 @@ | ... | @@ -83,7 +83,7 @@ |
| 83 | <div @click="goHelpZH"> | 83 | <div @click="goHelpZH"> |
| 84 | <a target="_blank" href="/file/操作指引.zip"> | 84 | <a target="_blank" href="/file/操作指引.zip"> |
| 85 | <img class="kf" src="@/assets/logo/btn02.png"/> | 85 | <img class="kf" src="@/assets/logo/btn02.png"/> |
| 86 | <div class="text-center mt10 gradient-text">操作指引</div> | 86 | <div class="text-center mt10 gradient-text">指南下载</div> |
| 87 | </a> | 87 | </a> |
| 88 | </div> | 88 | </div> |
| 89 | </div> | 89 | </div> |
| ... | @@ -95,7 +95,7 @@ | ... | @@ -95,7 +95,7 @@ |
| 95 | </div> | 95 | </div> |
| 96 | <div @click="goHelp"> | 96 | <div @click="goHelp"> |
| 97 | <img class="kf" src="@/assets/logo/btn02.png"/> | 97 | <img class="kf" src="@/assets/logo/btn02.png"/> |
| 98 | <div class="text-center gradient-text">GUIDELINE</div> | 98 | <div class="text-center gradient-text uppercase">Video Guide</div> |
| 99 | </div> | 99 | </div> |
| 100 | </div> | 100 | </div> |
| 101 | </div> | 101 | </div> |
| ... | @@ -104,18 +104,19 @@ | ... | @@ -104,18 +104,19 @@ |
| 104 | <script setup> | 104 | <script setup> |
| 105 | import {useStorage} from "@vueuse/core/index"; | 105 | import {useStorage} from "@vueuse/core/index"; |
| 106 | import {useRouter} from "vue-router"; | 106 | import {useRouter} from "vue-router"; |
| 107 | import {ElMessage} from "element-plus"; | ||
| 107 | const router = useRouter() | 108 | const router = useRouter() |
| 108 | const language = useStorage('language', 0) | 109 | const language = useStorage('language', 0) |
| 109 | const goHelp = () => { | 110 | const goHelp = () => { |
| 110 | router.push({ | 111 | router.push({ |
| 111 | path: `/news/list/20000100`, | 112 | path: `/news/list/20000100`, |
| 112 | query:{ | 113 | query:{ |
| 113 | kindName: language.value==0?'操作指引':'GUIDELINE' | 114 | kindName: language.value==0?'操作指引':'Video Guide' |
| 114 | } | 115 | } |
| 115 | }) | 116 | }) |
| 116 | } | 117 | } |
| 117 | const goHelpZH = () => { | 118 | const goHelpZH = () => { |
| 118 | 119 | ElMessage.success('已下载文件') | |
| 119 | } | 120 | } |
| 120 | </script> | 121 | </script> |
| 121 | 122 | ... | ... |
| ... | @@ -324,7 +324,7 @@ function getCode() { | ... | @@ -324,7 +324,7 @@ function getCode() { |
| 324 | 324 | ||
| 325 | 325 | ||
| 326 | .ropenbtn{padding: 10px;display: none; | 326 | .ropenbtn{padding: 10px;display: none; |
| 327 | img{ width: 50px;} | 327 | img{ width: 44px;} |
| 328 | } | 328 | } |
| 329 | 329 | ||
| 330 | :deep(.el-input){height: 100%} | 330 | :deep(.el-input){height: 100%} | ... | ... |
| ... | @@ -257,7 +257,7 @@ function getCode() { | ... | @@ -257,7 +257,7 @@ function getCode() { |
| 257 | 257 | ||
| 258 | 258 | ||
| 259 | .ropenbtn{padding: 10px;display: none; | 259 | .ropenbtn{padding: 10px;display: none; |
| 260 | img{ width: 50px;} | 260 | img{ width: 44px;} |
| 261 | } | 261 | } |
| 262 | 262 | ||
| 263 | :deep(.el-input){height: 100%} | 263 | :deep(.el-input){height: 100%} | ... | ... |
| ... | @@ -133,8 +133,6 @@ function goBooking(n) { | ... | @@ -133,8 +133,6 @@ function goBooking(n) { |
| 133 | break; | 133 | break; |
| 134 | case 4: | 134 | case 4: |
| 135 | //化妆 | 135 | //化妆 |
| 136 | building() | ||
| 137 | |||
| 138 | router.push({path: `/booking/makeup/${props.matchId}`}) | 136 | router.push({path: `/booking/makeup/${props.matchId}`}) |
| 139 | break; | 137 | break; |
| 140 | case 5: | 138 | case 5: | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <div> | 2 | <div> |
| 3 | <div class="banner"> | 3 | <div class="banner"> |
| 4 | <el-carousel height="450px" :autoplay="false" arrow="hover" @change="carouselChange"> | 4 | <el-carousel class="forPc" height="450px" :autoplay="false" arrow="hover" @change="carouselChange"> |
| 5 | <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id"> | 5 | <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id"> |
| 6 | <div class="bannerItem"> | 6 | <div class="bannerItem"> |
| 7 | <div class="h100"> | 7 | <div class="h100"> |
| ... | @@ -40,6 +40,45 @@ | ... | @@ -40,6 +40,45 @@ |
| 40 | </div> | 40 | </div> |
| 41 | </el-carousel-item> | 41 | </el-carousel-item> |
| 42 | </el-carousel> | 42 | </el-carousel> |
| 43 | <el-carousel class="forWei" height="160px" :autoplay="false" arrow="hover" @change="carouselChange"> | ||
| 44 | <el-carousel-item style="height: 160px;" v-for="n in maList" :key="n.id"> | ||
| 45 | <div class="bannerItem" style="height:100%"> | ||
| 46 | <div class="h100" style="position: relative"> | ||
| 47 | <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> | ||
| 48 | <img v-else class="bannerImg" src="@/assets/dance/banner.png"> | ||
| 49 | <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> | ||
| 50 | |||
| 51 | <div class="banner-count" v-if="n.time>0" @click="goMatch(n)"> | ||
| 52 | 距离开始还有 | ||
| 53 | <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> | ||
| 54 | <template #default="timeData"> | ||
| 55 | <div class="block">{{ timeData.days }} | ||
| 56 | <span class="colon">天</span> | ||
| 57 | </div> | ||
| 58 | : | ||
| 59 | <div class="block">{{ timeData.hours }} | ||
| 60 | <span class="colon">时</span> | ||
| 61 | </div> | ||
| 62 | : | ||
| 63 | <div class="block">{{ timeData.minutes }} | ||
| 64 | <span class="colon">分</span> | ||
| 65 | </div> | ||
| 66 | : | ||
| 67 | <div class="block">{{ timeData.seconds }} | ||
| 68 | <span class="colon">秒</span> | ||
| 69 | </div> | ||
| 70 | </template> | ||
| 71 | </van-count-down> | ||
| 72 | </div> | ||
| 73 | <div class="banner-count bb" v-else @click="goMatch(n)"> | ||
| 74 | 开始报名 | ||
| 75 | <!-- <el-button class="btn-lineG" style="font-size: 17px;height: 40px" round type="primary">开始报名</el-button>--> | ||
| 76 | </div> | ||
| 77 | </div> | ||
| 78 | </div> | ||
| 79 | </div> | ||
| 80 | </el-carousel-item> | ||
| 81 | </el-carousel> | ||
| 43 | </div> | 82 | </div> |
| 44 | 83 | ||
| 45 | <div class="box zn-bg"> | 84 | <div class="box zn-bg"> |
| ... | @@ -885,7 +924,8 @@ const goGuide = () => { | ... | @@ -885,7 +924,8 @@ const goGuide = () => { |
| 885 | } | 924 | } |
| 886 | .bannerItem .banner-count { | 925 | .bannerItem .banner-count { |
| 887 | flex-direction: column; | 926 | flex-direction: column; |
| 888 | transform: scale(0.8); | 927 | transform: scale(0.5); |
| 928 | width: auto; | ||
| 889 | left: 0; | 929 | left: 0; |
| 890 | right: 0; | 930 | right: 0; |
| 891 | 931 | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <div> | 2 | <div> |
| 3 | <div class="banner"> | 3 | <div class="banner"> |
| 4 | <el-carousel height="450px" :autoplay="false" arrow="hover" @change="carouselChange"> | 4 | <el-carousel height="450px" class="forPc" :autoplay="false" arrow="hover" @change="carouselChange"> |
| 5 | <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id"> | 5 | <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id"> |
| 6 | <div class="bannerItem"> | 6 | <div class="bannerItem"> |
| 7 | <div class="h100"> | 7 | <div class="h100"> |
| ... | @@ -37,6 +37,45 @@ | ... | @@ -37,6 +37,45 @@ |
| 37 | </div> | 37 | </div> |
| 38 | </el-carousel-item> | 38 | </el-carousel-item> |
| 39 | </el-carousel> | 39 | </el-carousel> |
| 40 | <el-carousel class="forWei" height="160px" :autoplay="false" arrow="hover" @change="carouselChange"> | ||
| 41 | <el-carousel-item style="height: 160px;" v-for="n in maList" :key="n.id"> | ||
| 42 | <div class="bannerItem" style="height:100%"> | ||
| 43 | <div class="h100" style="position: relative"> | ||
| 44 | <img v-if="n.bgImgUrl" class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> | ||
| 45 | <img v-else class="bannerImg" src="@/assets/dance/banner.png"> | ||
| 46 | <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> | ||
| 47 | |||
| 48 | <div class="banner-count" v-if="n.time>0" @click="goMatch(n)"> | ||
| 49 | 距离开始还有 | ||
| 50 | <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> | ||
| 51 | <template #default="timeData"> | ||
| 52 | <div class="block">{{ timeData.days }} | ||
| 53 | <span class="colon">天</span> | ||
| 54 | </div> | ||
| 55 | : | ||
| 56 | <div class="block">{{ timeData.hours }} | ||
| 57 | <span class="colon">时</span> | ||
| 58 | </div> | ||
| 59 | : | ||
| 60 | <div class="block">{{ timeData.minutes }} | ||
| 61 | <span class="colon">分</span> | ||
| 62 | </div> | ||
| 63 | : | ||
| 64 | <div class="block">{{ timeData.seconds }} | ||
| 65 | <span class="colon">秒</span> | ||
| 66 | </div> | ||
| 67 | </template> | ||
| 68 | </van-count-down> | ||
| 69 | </div> | ||
| 70 | <div class="banner-count bb" v-else @click="goMatch(n)"> | ||
| 71 | 开始报名 | ||
| 72 | <!-- <el-button class="btn-lineG" style="font-size: 17px;height: 40px" round type="primary">开始报名</el-button>--> | ||
| 73 | </div> | ||
| 74 | </div> | ||
| 75 | </div> | ||
| 76 | </div> | ||
| 77 | </el-carousel-item> | ||
| 78 | </el-carousel> | ||
| 40 | </div> | 79 | </div> |
| 41 | 80 | ||
| 42 | <div class="box zn-bg"> | 81 | <div class="box zn-bg"> |
| ... | @@ -749,7 +788,8 @@ const goGuide = () => { | ... | @@ -749,7 +788,8 @@ const goGuide = () => { |
| 749 | display: none; | 788 | display: none; |
| 750 | } | 789 | } |
| 751 | .bannerItem .banner-count{flex-direction: column; | 790 | .bannerItem .banner-count{flex-direction: column; |
| 752 | transform: scale(0.8); left: 0; | 791 | transform: scale(0.5); width: auto; |
| 792 | left: 0; | ||
| 753 | right: 0; | 793 | right: 0; |
| 754 | .van-count-down{margin: 30px 0 0;} | 794 | .van-count-down{margin: 30px 0 0;} |
| 755 | } | 795 | } | ... | ... |
| ... | @@ -361,6 +361,7 @@ function goNext() { | ... | @@ -361,6 +361,7 @@ function goNext() { |
| 361 | } | 361 | } |
| 362 | 362 | ||
| 363 | function goPrev() { | 363 | function goPrev() { |
| 364 | console.log(languageSource.value) | ||
| 364 | if(languageSource.value=='100'){ | 365 | if(languageSource.value=='100'){ |
| 365 | router.push({ | 366 | router.push({ |
| 366 | name: `teamSignCn`, | 367 | name: `teamSignCn`, |
| ... | @@ -388,10 +389,10 @@ function editPerson(id) { | ... | @@ -388,10 +389,10 @@ function editPerson(id) { |
| 388 | id: id, | 389 | id: id, |
| 389 | groupId: groupId.value || 0 | 390 | groupId: groupId.value || 0 |
| 390 | } | 391 | } |
| 391 | if(language.value==0){ | 392 | if(isNational.value){ |
| 392 | proxy.$refs['dialogAddCoachRef_En'].open(obj) | 393 | proxy.$refs['dialogAddCoachRef_En'].open(obj) |
| 393 | }else { | 394 | }else { |
| 394 | proxy.$refs['dialogAddCoachRef_En'].open(obj) | 395 | proxy.$refs['dialogAddCoachRef'].open(obj) |
| 395 | } | 396 | } |
| 396 | } | 397 | } |
| 397 | 398 | ||
| ... | @@ -402,11 +403,11 @@ function addCoach(n) { | ... | @@ -402,11 +403,11 @@ function addCoach(n) { |
| 402 | label: n, | 403 | label: n, |
| 403 | groupId: groupId.value | 404 | groupId: groupId.value |
| 404 | } | 405 | } |
| 405 | // if(language.value==0){ | 406 | if(isNational.value){ |
| 406 | // proxy.$refs['dialogAddCoachRef'].open(obj) | ||
| 407 | // }else { | ||
| 408 | proxy.$refs['dialogAddCoachRef_En'].open(obj) | 407 | proxy.$refs['dialogAddCoachRef_En'].open(obj) |
| 409 | // } | 408 | }else { |
| 409 | proxy.$refs['dialogAddCoachRef'].open(obj) | ||
| 410 | } | ||
| 410 | } | 411 | } |
| 411 | </script> | 412 | </script> |
| 412 | 413 | ... | ... |
This diff is collapsed.
Click to expand it.
src/viewsPc/match/chooseProject_bak.vue
0 → 100644
This diff is collapsed.
Click to expand it.
| ... | @@ -18,9 +18,10 @@ | ... | @@ -18,9 +18,10 @@ |
| 18 | </el-button> | 18 | </el-button> |
| 19 | </div> | 19 | </div> |
| 20 | <div class="panel-body" style="padding: 10px"> | 20 | <div class="panel-body" style="padding: 10px"> |
| 21 | <div class="tip text-right"> | ||
| 22 | *{{ language == 0?'可通过[选手管理],增加和编辑运动员':'You can add and edit athletes through [Athlete Management]' }} | ||
| 23 | </div> | ||
| 21 | <div style="margin: 0 4px 10px;display: flex"> | 24 | <div style="margin: 0 4px 10px;display: flex"> |
| 22 | <!-- 可通过选手管理,增加和编辑运动员--> | ||
| 23 | |||
| 24 | <el-select multiple v-model="choosedchoosed" collapse-tags-tooltip filterable | 25 | <el-select multiple v-model="choosedchoosed" collapse-tags-tooltip filterable |
| 25 | @change="changechoosed"> | 26 | @change="changechoosed"> |
| 26 | <el-option v-for="c in athletesList" :key="c.id" :label="c.xing + c.ming" :value="c.id"> | 27 | <el-option v-for="c in athletesList" :key="c.id" :label="c.xing + c.ming" :value="c.id"> |
| ... | @@ -601,7 +602,7 @@ function removeCurproject() { | ... | @@ -601,7 +602,7 @@ function removeCurproject() { |
| 601 | projectIds.value = _.without(projectIds.value, currProjectId.value) | 602 | projectIds.value = _.without(projectIds.value, currProjectId.value) |
| 602 | } | 603 | } |
| 603 | function checkTwo(a,b) { | 604 | function checkTwo(a,b) { |
| 604 | match.checkMate({per1Id:a,per2Id:b}).then(res=>{ | 605 | match.checkMate({per1Id:a,per2Id:b,cptId:matchId.value}).then(res=>{ |
| 605 | if(!res.data){ | 606 | if(!res.data){ |
| 606 | ElMessage.warning(language.value == 0 ? '他们不是固定组合':'They\'re not a couple') | 607 | ElMessage.warning(language.value == 0 ? '他们不是固定组合':'They\'re not a couple') |
| 607 | } | 608 | } | ... | ... |
| ... | @@ -8,7 +8,7 @@ | ... | @@ -8,7 +8,7 @@ |
| 8 | <el-row :gutter="30" class="mt30"> | 8 | <el-row :gutter="30" class="mt30"> |
| 9 | <el-col :lg="12" class="touxiang"> | 9 | <el-col :lg="12" class="touxiang"> |
| 10 | 10 | ||
| 11 | <el-form-item prop="picUrl" :label="language==0?'个人照片':'photo'"> | 11 | <el-form-item prop="picUrl" :label="language==0?'个人照片':'photo'" required> |
| 12 | <ImageUpload2 | 12 | <ImageUpload2 |
| 13 | v-model="form.picUrl" :crop-height="280" :crop-width="200" class="threeFour" :limit="1" | 13 | v-model="form.picUrl" :crop-height="280" :crop-width="200" class="threeFour" :limit="1" |
| 14 | :is-show-tip="false" | 14 | :is-show-tip="false" |
| ... | @@ -18,14 +18,11 @@ | ... | @@ -18,14 +18,11 @@ |
| 18 | <span v-if="form.wdsfMin">{{form.wdsfMin}}</span> | 18 | <span v-if="form.wdsfMin">{{form.wdsfMin}}</span> |
| 19 | <el-input v-else v-model="form.wdsfMin" type="number"/> | 19 | <el-input v-else v-model="form.wdsfMin" type="number"/> |
| 20 | </el-form-item> | 20 | </el-form-item> |
| 21 | <el-form-item :label="language==0?'姓氏':'surname'" prop="xing" required> | 21 | <el-form-item :label="language==0?'姓名':'Name'" prop="realName" required> |
| 22 | <el-input v-model="form.xing"/> | 22 | <el-input v-model="form.realName"/> |
| 23 | </el-form-item> | ||
| 24 | <el-form-item :label="language==0?'名':'name'" prop="ming" required> | ||
| 25 | <el-input v-model="form.ming"/> | ||
| 26 | </el-form-item> | 23 | </el-form-item> |
| 27 | <el-form-item :label="language==0?'证件类型':'ID type'" prop="idcType" required> | 24 | <el-form-item :label="language==0?'证件类型':'ID type'" prop="idcType" required> |
| 28 | <el-select v-model="form.idcType" style="width: 100%;" :disabled="editgay"> | 25 | <el-select v-model="form.idcType" style="width: 100%;" :disabled="editgay&&form.idcType=='0'"> |
| 29 | <el-option | 26 | <el-option |
| 30 | v-for="item in certificates" | 27 | v-for="item in certificates" |
| 31 | :key="item.value" | 28 | :key="item.value" |
| ... | @@ -35,10 +32,11 @@ | ... | @@ -35,10 +32,11 @@ |
| 35 | </el-select> | 32 | </el-select> |
| 36 | </el-form-item> | 33 | </el-form-item> |
| 37 | <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode" required> | 34 | <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode" required> |
| 38 | <el-input v-model="form.idcCode" @blur="checkCode" :disabled="editgay"/> | 35 | <el-input v-model="form.idcCode" @blur="checkCode" :disabled="editgay&&form.idcType=='0'"/> |
| 39 | </el-form-item> | 36 | </el-form-item> |
| 40 | <el-form-item :label="language==0?'有效证件':'Valid Passport'" required :required="form.idcType!='0'"> | 37 | <el-form-item :label="language==0?'有效证件':'Valid Passport'" :required="form.idcType!='0'"> |
| 41 | <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" /> | 38 | <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" /> |
| 39 | <span class="tip">*请上传有效证件扫描件</span> | ||
| 42 | </el-form-item> | 40 | </el-form-item> |
| 43 | <el-form-item :label="language==0?'性别':'Gender'" prop="sex"> | 41 | <el-form-item :label="language==0?'性别':'Gender'" prop="sex"> |
| 44 | <el-radio-group v-model="form.sex" :disabled="form.idcType=='0'"> | 42 | <el-radio-group v-model="form.sex" :disabled="form.idcType=='0'"> |
| ... | @@ -60,8 +58,9 @@ | ... | @@ -60,8 +58,9 @@ |
| 60 | <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/> | 58 | <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/> |
| 61 | </el-select> | 59 | </el-select> |
| 62 | </el-form-item> | 60 | </el-form-item> |
| 63 | <el-form-item :label="language==0?'手机号码':'Phone'" prop="phone"> | 61 | <el-form-item :label="language==0?'手机号码':'Phone'" prop="phone" required> |
| 64 | <el-input v-model="form.phone" type="number"/> | 62 | <el-input v-model="form.phone" type="number"/> |
| 63 | <span class="tip">*若未成年人没有手机号,请填写家长号码</span> | ||
| 65 | </el-form-item> | 64 | </el-form-item> |
| 66 | 65 | ||
| 67 | 66 | ||
| ... | @@ -133,8 +132,7 @@ const data = reactive({ | ... | @@ -133,8 +132,7 @@ const data = reactive({ |
| 133 | sex:'0' | 132 | sex:'0' |
| 134 | }, | 133 | }, |
| 135 | rules: { | 134 | rules: { |
| 136 | xing: [{required: true, message: '必填', trigger: 'blur'}], | 135 | realName: [{required: true, message: '必填', trigger: 'blur'}], |
| 137 | ming: [{required: true, message: '必填', trigger: 'blur'}], | ||
| 138 | // countryId: [{required: true, message: '必填', trigger: 'change'}], | 136 | // countryId: [{required: true, message: '必填', trigger: 'change'}], |
| 139 | idcType: [{required: true, message: '必填', trigger: 'change'}], | 137 | idcType: [{required: true, message: '必填', trigger: 'change'}], |
| 140 | idcCode: [{required: true, message: '必填', trigger: 'blur'}], | 138 | idcCode: [{required: true, message: '必填', trigger: 'blur'}], |
| ... | @@ -142,13 +140,12 @@ const data = reactive({ | ... | @@ -142,13 +140,12 @@ const data = reactive({ |
| 142 | // regionId: [{ required: true, message: '必填', trigger: 'change' }], | 140 | // regionId: [{ required: true, message: '必填', trigger: 'change' }], |
| 143 | birth: [{required: true, message: '必填', trigger: 'change'}], | 141 | birth: [{required: true, message: '必填', trigger: 'change'}], |
| 144 | // address: [{ required: true, message: '必填', trigger: 'blur' }], | 142 | // address: [{ required: true, message: '必填', trigger: 'blur' }], |
| 145 | // picUrl: [{required: true, message: '必填', trigger: 'blur'}], | 143 | picUrl: [{required: true, message: '必填', trigger: 'blur'}], |
| 146 | sex: [{required: true, message: '必填', trigger: 'change'}], | 144 | sex: [{required: true, message: '必填', trigger: 'change'}], |
| 147 | labelArr: [{required: true, message: '必填', trigger: 'change'}] | 145 | labelArr: [{required: true, message: '必填', trigger: 'change'}] |
| 148 | }, | 146 | }, |
| 149 | rules_cn:{ | 147 | rules_cn:{ |
| 150 | xing: [{required: true, message: 'required', trigger: 'blur'}], | 148 | realName: [{required: true, message: 'required', trigger: 'blur'}], |
| 151 | ming: [{required: true, message: 'required', trigger: 'blur'}], | ||
| 152 | // countryId: [{required: true, message: 'required', trigger: 'change'}], | 149 | // countryId: [{required: true, message: 'required', trigger: 'change'}], |
| 153 | idcType: [{required: true, message: 'required', trigger: 'change'}], | 150 | idcType: [{required: true, message: 'required', trigger: 'change'}], |
| 154 | idcCode: [{required: true, message: 'required', trigger: 'blur'}], | 151 | idcCode: [{required: true, message: 'required', trigger: 'blur'}], |
| ... | @@ -156,7 +153,7 @@ const data = reactive({ | ... | @@ -156,7 +153,7 @@ const data = reactive({ |
| 156 | // regionId: [{ required: true, message: 'required', trigger: 'change' }], | 153 | // regionId: [{ required: true, message: 'required', trigger: 'change' }], |
| 157 | birth: [{required: true, message: 'required', trigger: 'change'}], | 154 | birth: [{required: true, message: 'required', trigger: 'change'}], |
| 158 | // address: [{ required: true, message: 'required', trigger: 'blur' }], | 155 | // address: [{ required: true, message: 'required', trigger: 'blur' }], |
| 159 | // picUrl: [{required: true, message: 'required', trigger: 'blur'}], | 156 | picUrl: [{required: true, message: 'required', trigger: 'blur'}], |
| 160 | sex: [{required: true, message: 'required', trigger: 'change'}], | 157 | sex: [{required: true, message: 'required', trigger: 'change'}], |
| 161 | labelArr: [{required: true, message: 'required', trigger: 'change'}] | 158 | labelArr: [{required: true, message: 'required', trigger: 'change'}] |
| 162 | }, | 159 | }, |
| ... | @@ -185,13 +182,14 @@ onMounted(() => { | ... | @@ -185,13 +182,14 @@ onMounted(() => { |
| 185 | }) | 182 | }) |
| 186 | const editgay = ref(false) | 183 | const editgay = ref(false) |
| 187 | const open = (params) => { | 184 | const open = (params) => { |
| 188 | console.log(params.label) | ||
| 189 | show.value = true | 185 | show.value = true |
| 190 | title.value = params.title | 186 | title.value = params.title |
| 191 | groupId.value = params.groupId || '0' | 187 | groupId.value = params.groupId || '0' |
| 192 | isMe.value = params.isMe | 188 | isMe.value = params.isMe |
| 193 | if(params.label){ | 189 | if(params.label){ |
| 194 | form.value.labelArr= [params.label] | 190 | form.value.labelArr= [params.label] |
| 191 | } else { | ||
| 192 | form.value.labelArr = [] | ||
| 195 | } | 193 | } |
| 196 | if(language.value == 0){ | 194 | if(language.value == 0){ |
| 197 | form.value.countryId = 240 | 195 | form.value.countryId = 240 |
| ... | @@ -261,20 +259,17 @@ function getRegionsList() { | ... | @@ -261,20 +259,17 @@ function getRegionsList() { |
| 261 | function checkCode() { | 259 | function checkCode() { |
| 262 | 260 | ||
| 263 | if (form.value.idcType=='0' && form.value.idcCode) { | 261 | if (form.value.idcType=='0' && form.value.idcCode) { |
| 264 | giveBirthDay() | 262 | // giveBirthDay() |
| 265 | var obj = { | 263 | var obj = { |
| 266 | idcType: form.value.idcType, | 264 | idcCode: form.value.idcCode, |
| 267 | idcCode: form.value.idcCode | 265 | name: form.value.realName |
| 268 | } | 266 | } |
| 269 | // match.checkPerson(obj).then(res => { | 267 | match.checkIdcCode(obj).then(res => { |
| 270 | // if (res.data.idcCode != null) { | 268 | if (res.data) { |
| 271 | // form.value = res.data | 269 | form.value.birth = res.data.birth |
| 272 | // if (form.value.label != null) { | 270 | form.value.sex = res.data.sex |
| 273 | // form.value.labelArr = form.value.label.split(',') | 271 | } |
| 274 | // } | 272 | }) |
| 275 | // form.value.groupId = groupId.value | ||
| 276 | // } | ||
| 277 | // }) | ||
| 278 | } | 273 | } |
| 279 | } | 274 | } |
| 280 | 275 | ||
| ... | @@ -324,10 +319,10 @@ function submitForm() { | ... | @@ -324,10 +319,10 @@ function submitForm() { |
| 324 | return | 319 | return |
| 325 | } | 320 | } |
| 326 | } | 321 | } |
| 327 | if(!form.value.passportUrl){ | 322 | // if(!form.value.passportUrl){ |
| 328 | ElMessage.warning(language.value == 0 ? '请上传有效证件' :'Please upload your passport file') | 323 | // ElMessage.warning(language.value == 0 ? '请上传有效证件' :'Please upload your passport file') |
| 329 | return | 324 | // return |
| 330 | } | 325 | // } |
| 331 | if (typeof (form.value.regionId) === 'object') { | 326 | if (typeof (form.value.regionId) === 'object') { |
| 332 | form.value.regionId = _.last(form.value.regionId) | 327 | form.value.regionId = _.last(form.value.regionId) |
| 333 | } | 328 | } | ... | ... |
| ... | @@ -281,7 +281,7 @@ function submitForm() { | ... | @@ -281,7 +281,7 @@ function submitForm() { |
| 281 | } | 281 | } |
| 282 | } | 282 | } |
| 283 | function addPersonal() { | 283 | function addPersonal() { |
| 284 | match.savePersonForMyPerson(form.value).then(res => { | 284 | match.savePersonForMyPerson2(form.value).then(res => { |
| 285 | ElMessage.success('保存成功') | 285 | ElMessage.success('保存成功') |
| 286 | show.value = false | 286 | show.value = false |
| 287 | emit('submitForm', res.data) | 287 | emit('submitForm', res.data) | ... | ... |
| ... | @@ -38,7 +38,7 @@ | ... | @@ -38,7 +38,7 @@ |
| 38 | <el-table ref="allSportmenTable" v-loading="loading" :data="tableData" height="60vh" | 38 | <el-table ref="allSportmenTable" v-loading="loading" :data="tableData" height="60vh" |
| 39 | @selection-change="handleSelectionChange"> | 39 | @selection-change="handleSelectionChange"> |
| 40 | <!-- <el-table-column type="selection" :label="language==0?'选择':'Selection'" :selectable="selectable"/>--> | 40 | <!-- <el-table-column type="selection" :label="language==0?'选择':'Selection'" :selectable="selectable"/>--> |
| 41 | <el-table-column align="center" type="index" :label="language==0?'序号':'Index'" width="60" :selectable="selectable"/> | 41 | <el-table-column align="center" type="index" :label="language==0?'序号':'Index'" width="70" :selectable="selectable"/> |
| 42 | <el-table-column v-if="isNational" :label="language==0?'WDSF 会员号':'WDSF MIN'" prop="wdsfMin" width="100"/> | 42 | <el-table-column v-if="isNational" :label="language==0?'WDSF 会员号':'WDSF MIN'" prop="wdsfMin" width="100"/> |
| 43 | <el-table-column align="center" :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> | 43 | <el-table-column align="center" :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> |
| 44 | <el-table-column align="center" :label="language==0?'名':'Name'" prop="ming" min-width="100"/> | 44 | <el-table-column align="center" :label="language==0?'名':'Name'" prop="ming" min-width="100"/> |
| ... | @@ -92,7 +92,9 @@ | ... | @@ -92,7 +92,9 @@ |
| 92 | <!-- </template>--> | 92 | <!-- </template>--> |
| 93 | </el-dialog> | 93 | </el-dialog> |
| 94 | 94 | ||
| 95 | <!-- 国内赛运动员--> | ||
| 95 | <add-coach ref="dialogAddCoach" @submitForm="getList"/> | 96 | <add-coach ref="dialogAddCoach" @submitForm="getList"/> |
| 97 | <!-- 国际赛运动员--> | ||
| 96 | <add-wdsf ref="dialogAddWdsf" @submitForm="getList"/> | 98 | <add-wdsf ref="dialogAddWdsf" @submitForm="getList"/> |
| 97 | <Import ref="dialogImportProps" @submitForm="getList"/> | 99 | <Import ref="dialogImportProps" @submitForm="getList"/> |
| 98 | </template> | 100 | </template> | ... | ... |
This diff is collapsed.
Click to expand it.
| 1 | <template> | 1 | <template> |
| 2 | <div class="collapsebox"> | 2 | <div class="collapsebox"> |
| 3 | <div class="pd20"> | 3 | <div class="pd20"> |
| 4 | <div class="fr mb20"> | ||
| 5 | <el-input size="small" v-model="query.projectName" :prefix-icon="Search" | ||
| 6 | @change="getList" clearable/> | ||
| 7 | </div> | ||
| 4 | <el-table :data="list" border> | 8 | <el-table :data="list" border> |
| 5 | <el-table-column :label="language==0?'组别编号':'Event Code'" prop="code" align="center"></el-table-column> | 9 | <el-table-column :label="language==0?'组别编号':'Event Code'" prop="code" align="center" :min-width="language==0?70:100"> |
| 10 | |||
| 11 | </el-table-column> | ||
| 6 | <el-table-column :label="language==0?'组别名称':'Event'" min-width="150" prop="name" align="center"></el-table-column> | 12 | <el-table-column :label="language==0?'组别名称':'Event'" min-width="150" prop="name" align="center"></el-table-column> |
| 7 | <el-table-column :label="language==0?'舞种':'DISCIPLINE'" width="110" prop="danceType" align="center"> | 13 | <el-table-column :label="language==0?'舞种':'DISCIPLINE'" width="110" prop="danceType" align="center"> |
| 8 | </el-table-column> | 14 | </el-table-column> |
| 9 | <el-table-column :label="language==0?'舞种明细':'Dance Detail'" width="120" prop="danceTypeDetailStr" align="center"></el-table-column> | 15 | <el-table-column :label="language==0?'舞种明细':'Dance Detail'" width="120" prop="danceTypeDetailStr" align="center"> |
| 16 | |||
| 17 | </el-table-column> | ||
| 10 | 18 | ||
| 11 | <el-table-column :label="language==0?'参赛性别':'Sex'" align="center"> | 19 | <el-table-column :label="language==0?'参赛性别':'Sex'" align="center"> |
| 12 | <template #default="scope"> | 20 | <template #default="scope"> |
| ... | @@ -14,7 +22,7 @@ | ... | @@ -14,7 +22,7 @@ |
| 14 | <span v-else>{{ scope.row.playType }}</span> | 22 | <span v-else>{{ scope.row.playType }}</span> |
| 15 | </template> | 23 | </template> |
| 16 | </el-table-column> | 24 | </el-table-column> |
| 17 | <el-table-column :label="language==0?'参赛年龄':'Age'" align="center" min-width="100"> | 25 | <el-table-column :label="language==0?'参赛年龄':'Age'" align="center" :min-width="isNational?100:240"> |
| 18 | <template #default="scope"> | 26 | <template #default="scope"> |
| 19 | <div v-if="isNational"> | 27 | <div v-if="isNational"> |
| 20 | <span v-if="scope.row.ageGroup == '0'" >{{ language==0?'不限制':'Unlimited' }}</span> | 28 | <span v-if="scope.row.ageGroup == '0'" >{{ language==0?'不限制':'Unlimited' }}</span> |
| ... | @@ -34,8 +42,8 @@ | ... | @@ -34,8 +42,8 @@ |
| 34 | <span v-if="scope.row.ageGroup == '14'" >Senior V</span> | 42 | <span v-if="scope.row.ageGroup == '14'" >Senior V</span> |
| 35 | </div> | 43 | </div> |
| 36 | <div v-else> | 44 | <div v-else> |
| 37 | <div>{{ scope.row.birthPeriod }}</div> | 45 | <div>{{ scope.row.birthPeriod.replace(',',language==0?' 至 ':' to ') }}</div> |
| 38 | <div>{{scope.row.birthPeriodSecond}}</div> | 46 | <div>{{scope.row.birthPeriodSecond?.replace(',',language==0?' 至 ':' to ')}}</div> |
| 39 | </div> | 47 | </div> |
| 40 | </template> | 48 | </template> |
| 41 | </el-table-column> | 49 | </el-table-column> |
| ... | @@ -45,76 +53,40 @@ | ... | @@ -45,76 +53,40 @@ |
| 45 | </template> | 53 | </template> |
| 46 | </el-table-column> | 54 | </el-table-column> |
| 47 | </el-table> | 55 | </el-table> |
| 48 | 56 | <PaginationPc | |
| 49 | <!-- <table class="table" cellspacing="0" cellpadding="0" v-if="list.length > 0">--> | 57 | v-show="total>0" |
| 50 | <!-- <tr v-if="language==0">--> | 58 | :total="total" |
| 51 | <!-- <th>组别编号</th>--> | 59 | v-model:page="query.pageNum" |
| 52 | <!-- <th>组别名称</th>--> | 60 | v-model:limit="query.pageSize" |
| 53 | <!-- <th>舞种</th>--> | 61 | @pagination="getList" |
| 54 | <!-- <th>舞种明细</th>--> | 62 | /> |
| 55 | <!-- <th>参赛性别</th>--> | ||
| 56 | <!-- <th>参赛年龄</th>--> | ||
| 57 | <!-- <th>服务费(元)</th>--> | ||
| 58 | <!-- </tr>--> | ||
| 59 | <!-- <tr v-else>--> | ||
| 60 | <!-- <th>EVENT code</th>--> | ||
| 61 | <!-- <th>EVENT</th>--> | ||
| 62 | <!-- <th>DISCIPLINE</th>--> | ||
| 63 | <!-- <th>Dance Detail</th>--> | ||
| 64 | <!-- <th>Sex</th>--> | ||
| 65 | <!-- <th>Age</th>--> | ||
| 66 | <!-- <th>Registration Fee</th>--> | ||
| 67 | <!-- </tr>--> | ||
| 68 | <!-- <tr v-for="(p,index) in list" :key="index">--> | ||
| 69 | <!-- <td>{{ p.code }}</td>--> | ||
| 70 | <!-- <td>{{ p.name }}</td>--> | ||
| 71 | <!-- <td>{{ p.danceType }}</td>--> | ||
| 72 | <!-- <td>{{ p.danceTypeDetailStr }}</td>--> | ||
| 73 | <!-- <td>{{ p.playTypeStr }}</td>--> | ||
| 74 | <!-- <td>--> | ||
| 75 | <!--<!– {{ isNational }}–>--> | ||
| 76 | <!-- <div v-if="isNational">--> | ||
| 77 | <!-- <span v-if="p.ageGroup == '0'" >{{ language==0?'不限制':'Unlimited' }}</span>--> | ||
| 78 | <!-- <span v-if="p.ageGroup == '1'" >Juvenile I</span>--> | ||
| 79 | <!-- <span v-if="p.ageGroup == '2'" >Juvenile II</span>--> | ||
| 80 | <!-- <span v-if="p.ageGroup == '3'" >Juv1& II (comb.)</span>--> | ||
| 81 | <!-- <span v-if="p.ageGroup == '4'" >Junior I</span>--> | ||
| 82 | <!-- <span v-if="p.ageGroup == '5'" >Junior II</span>--> | ||
| 83 | <!-- <span v-if="p.ageGroup == '6'" >Juv I & II (comb.)</span>--> | ||
| 84 | <!-- <span v-if="p.ageGroup == '7'" >Youth</span>--> | ||
| 85 | <!-- <span v-if="p.ageGroup == '8'" >Under 21</span>--> | ||
| 86 | <!-- <span v-if="p.ageGroup == '9'" >Adult</span>--> | ||
| 87 | <!-- <span v-if="p.ageGroup == '10'" >Senior I</span>--> | ||
| 88 | <!-- <span v-if="p.ageGroup == '11'" >Senior II</span>--> | ||
| 89 | <!-- <span v-if="p.ageGroup == '12'" >Senior III</span>--> | ||
| 90 | <!-- <span v-if="p.ageGroup == '13'" >Senior IV</span>--> | ||
| 91 | <!-- <span v-if="p.ageGroup == '14'" >Senior V</span>--> | ||
| 92 | <!-- </div>--> | ||
| 93 | <!-- <div v-else>--> | ||
| 94 | <!-- <div>{{ p.birthPeriod }}</div>--> | ||
| 95 | <!-- <div>{{p.birthPeriodSecond}}</div>--> | ||
| 96 | <!-- </div>--> | ||
| 97 | |||
| 98 | <!-- <!– <div>{{ p.birthAgeGroup }};{{p.birthAgeSecondGroup}}</div>–>--> | ||
| 99 | <!-- </td>--> | ||
| 100 | <!-- <td>{{ language==0?'¥':'€' }}{{ p.serviceFee }}</td>--> | ||
| 101 | <!-- </tr>--> | ||
| 102 | <!-- </table>--> | ||
| 103 | |||
| 104 | </div> | 63 | </div> |
| 105 | <!-- <el-empty :image="`/img/order_no.png`" :image-size="228" v-if="list.length == 0" description=""/>--> | 64 | <!-- <el-empty :image="`/img/order_no.png`" :image-size="228" v-if="list.length == 0" description=""/>--> |
| 106 | </div> | 65 | </div> |
| 107 | </template> | 66 | </template> |
| 108 | 67 | ||
| 109 | <script setup> | 68 | <script setup> |
| 69 | import {Search} from "@element-plus/icons-vue"; | ||
| 110 | import {useStorage} from "@vueuse/core/index" | 70 | import {useStorage} from "@vueuse/core/index" |
| 71 | import {getProjectByCptId} from "@/apiPc/match"; | ||
| 72 | import PaginationPc from "@/components/PaginationPc"; | ||
| 111 | const language= useStorage('language',0) | 73 | const language= useStorage('language',0) |
| 112 | 74 | const list = ref([]) | |
| 75 | const total = ref(0) | ||
| 76 | const query = ref({ | ||
| 77 | projectName:'', | ||
| 78 | pageSize:10, | ||
| 79 | pageNum:1 | ||
| 80 | }) | ||
| 113 | const props = defineProps({ | 81 | const props = defineProps({ |
| 114 | list: { | 82 | // list: { |
| 115 | type: Array, | 83 | // type: Array, |
| 116 | required: true, | 84 | // required: true, |
| 117 | default:[] | 85 | // default:[] |
| 86 | // }, | ||
| 87 | matchId: { | ||
| 88 | type: String, | ||
| 89 | required: false | ||
| 118 | }, | 90 | }, |
| 119 | isNational: { | 91 | isNational: { |
| 120 | type: Boolean, | 92 | type: Boolean, |
| ... | @@ -122,6 +94,13 @@ const props = defineProps({ | ... | @@ -122,6 +94,13 @@ const props = defineProps({ |
| 122 | default: false | 94 | default: false |
| 123 | }, | 95 | }, |
| 124 | }) | 96 | }) |
| 97 | getList() | ||
| 98 | function getList() { | ||
| 99 | getProjectByCptId(props.matchId,query.value).then(res=>{ | ||
| 100 | list.value = res.rows | ||
| 101 | total.value = res.total | ||
| 102 | }) | ||
| 103 | } | ||
| 125 | </script> | 104 | </script> |
| 126 | 105 | ||
| 127 | <style scoped lang="scss"> | 106 | <style scoped lang="scss"> | ... | ... |
| ... | @@ -82,7 +82,7 @@ | ... | @@ -82,7 +82,7 @@ |
| 82 | <!-- </div>--> | 82 | <!-- </div>--> |
| 83 | <div class="indexTitle" v-if="form.type==1 && form.cptProjectList?.length > 0"><h3 class="leftboderTT">Event settings</h3></div> | 83 | <div class="indexTitle" v-if="form.type==1 && form.cptProjectList?.length > 0"><h3 class="leftboderTT">Event settings</h3></div> |
| 84 | <div v-if="form.type==1 && form.cptProjectList?.length > 0"> | 84 | <div v-if="form.type==1 && form.cptProjectList?.length > 0"> |
| 85 | <match-info-project-list :list="form.cptProjectList" :is-national="form.languageSource!='100'"/> | 85 | <match-info-project-list :match-id="form.id" :is-national="form.languageSource!='100'"/> |
| 86 | </div> | 86 | </div> |
| 87 | </div> | 87 | </div> |
| 88 | </template> | 88 | </template> | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <!-- 已废弃--> | ||
| 2 | <div class="app-container" v-loading="loading"> | 3 | <div class="app-container" v-loading="loading"> |
| 3 | <div class="mt30"/> | 4 | <div class="mt30"/> |
| 4 | <div v-if="error"> | 5 | <div v-if="error"> |
| ... | @@ -99,7 +100,7 @@ | ... | @@ -99,7 +100,7 @@ |
| 99 | </div> | 100 | </div> |
| 100 | <matchInfo :form="matchData" v-if="menu[0].active==1"/> | 101 | <matchInfo :form="matchData" v-if="menu[0].active==1"/> |
| 101 | <div v-if="menu[1].active==1"> | 102 | <div v-if="menu[1].active==1"> |
| 102 | <match-info-project-list :list="matchData.cptProjectList" /> | 103 | <match-info-project-list :match-id="matchData.id" /> |
| 103 | </div> | 104 | </div> |
| 104 | <match-schedule-list :match-data="matchData" v-if="menu[2].active==1"/> | 105 | <match-schedule-list :match-data="matchData" v-if="menu[2].active==1"/> |
| 105 | <div v-if="menu[3].active==1"> | 106 | <div v-if="menu[3].active==1"> | ... | ... |
| ... | @@ -185,31 +185,48 @@ | ... | @@ -185,31 +185,48 @@ |
| 185 | </div> | 185 | </div> |
| 186 | <matchInfo :form="matchData" v-if="menu[0].active==1"/> | 186 | <matchInfo :form="matchData" v-if="menu[0].active==1"/> |
| 187 | <div v-if="menu[1].active==1"> | 187 | <div v-if="menu[1].active==1"> |
| 188 | <match-info-project-list :list="matchData.cptProjectList" :is-national="isNational"/> | 188 | <match-info-project-list :match-id="matchData.id" :is-national="isNational"/> |
| 189 | </div> | 189 | </div> |
| 190 | <match-schedule-list :match-data="matchData" v-if="menu[2].active==1"/> | 190 | <match-schedule-list :match-data="matchData" v-if="menu[2].active==1"/> |
| 191 | <div v-if="menu[3].active==1"> | 191 | <div v-if="menu[3].active==1"> |
| 192 | <el-row :gutter="20" v-if="matchData.signType == '0'"> | 192 | <div v-if="matchData.showPersonFlag=='1'"> |
| 193 | <el-col v-for="t in signDoneGroupList" :key="t.id" :span="8"> | 193 | <el-row :gutter="20" v-if="matchData.signType == '0'"> |
| 194 | <div class="teamItem"> | 194 | <el-col v-for="t in signDoneGroupList" :key="t.id" :span="8"> |
| 195 | <el-avatar :size="60" :src="fillImgUrl(t.imgUrl||t.avatar)"/> | 195 | <div class="teamItem"> |
| 196 | <span class="name">{{ t.name }}</span> | 196 | <el-avatar :size="60" :src="fillImgUrl(t.imgUrl||t.avatar)"/> |
| 197 | </div> | 197 | <span class="name">{{ t.name }}</span> |
| 198 | </el-col> | 198 | </div> |
| 199 | </el-row> | 199 | </el-col> |
| 200 | <el-row :gutter="20" class="pd20" v-else> | 200 | </el-row> |
| 201 | <el-col :span="24"> | 201 | <el-row :gutter="20" class="pd20" v-else> |
| 202 | <el-table :data="signDoneGroupList"> | 202 | <el-col :span="24"> |
| 203 | <el-table-column prop="groupCode" :label="language == 0 ? '组别代码' :'EVENT CODE'" min-width="120"/> | 203 | <div class="fr mb20"> |
| 204 | <el-table-column prop="EVENT" :label="language == 0 ?'组别':'Group'" min-width="120"/> | 204 | <el-input size="small" v-model="queryGroupList.name" :prefix-icon="Search" |
| 205 | <el-table-column prop="maleAthName" :label="language == 0 ?'男运动员':'man name'" min-width="150"/> | 205 | @change="getGroupListByCptId" clearable/> |
| 206 | <el-table-column prop="femaleAthName" :label="language == 0 ?'女运动员':'woman name'" min-width="150"/> | 206 | </div> |
| 207 | <el-table-column prop="danceType" :label="language == 0 ?'舞种':'Division'" min-width="120"/> | 207 | <el-table :data="signDoneGroupList"> |
| 208 | <el-table-column prop="countryName" :label="language == 0 ?'国籍':'Representing'" min-width="130"/> | 208 | <el-table-column prop="groupCode" align="center" :label="language == 0 ? '组别代码' :'EVENT CODE'" min-width="120"/> |
| 209 | <el-table-column prop="groupName" :label="language == 0 ?'参赛队名称':'Team name'" min-width="150"/> | 209 | <el-table-column prop="group" :label="language == 0 ?'组别':'EVENT'" min-width="120"/> |
| 210 | </el-table> | 210 | <el-table-column prop="maleAthName" :label="language == 0 ?'男运动员':'man name'" min-width="150"/> |
| 211 | </el-col> | 211 | <el-table-column prop="femaleAthName" :label="language == 0 ?'女运动员':'woman name'" min-width="150"/> |
| 212 | </el-row> | 212 | <el-table-column prop="danceType" :label="language == 0 ?'舞种':'Division'" min-width="120"/> |
| 213 | <el-table-column prop="countryName" align="center" :label="language == 0 ?'国籍':'Representing'" min-width="130"/> | ||
| 214 | <el-table-column prop="groupName" align="center" :label="language == 0 ?'参赛队名称':'Team name'" min-width="150"/> | ||
| 215 | </el-table> | ||
| 216 | <PaginationPc | ||
| 217 | v-show="signDoneGroupListToTal>0" | ||
| 218 | :total="signDoneGroupListToTal" | ||
| 219 | v-model:page="queryGroupList.pageNum" | ||
| 220 | v-model:limit="queryGroupList.pageSize" | ||
| 221 | @pagination="getGroupListByCptId" | ||
| 222 | /> | ||
| 223 | </el-col> | ||
| 224 | </el-row> | ||
| 225 | </div> | ||
| 226 | <div v-else> | ||
| 227 | <el-empty :image="`/img/order_no.png`" :image-size="228" description=""/> | ||
| 228 | </div> | ||
| 229 | |||
| 213 | </div> | 230 | </div> |
| 214 | <div v-if="menu[4].active==1"> | 231 | <div v-if="menu[4].active==1"> |
| 215 | <!--成绩--> | 232 | <!--成绩--> |
| ... | @@ -309,9 +326,9 @@ const {proxy} = getCurrentInstance() | ... | @@ -309,9 +326,9 @@ const {proxy} = getCurrentInstance() |
| 309 | import * as match from '@/apiPc/match' | 326 | import * as match from '@/apiPc/match' |
| 310 | import {toRefs} from '@vueuse/shared' | 327 | import {toRefs} from '@vueuse/shared' |
| 311 | import {dayjs, ElMessage, ElMessageBox} from 'element-plus' | 328 | import {dayjs, ElMessage, ElMessageBox} from 'element-plus' |
| 312 | import useUserStore from "@/store/modules/user"; | 329 | import useUserStore from "@/store/modules/user" |
| 313 | import {useStorage} from "@vueuse/core/index"; | 330 | import {useStorage} from "@vueuse/core/index" |
| 314 | 331 | import {Search} from "@element-plus/icons-vue" | |
| 315 | const user = useUserStore().user | 332 | const user = useUserStore().user |
| 316 | const group = useUserStore().group | 333 | const group = useUserStore().group |
| 317 | const data = reactive({ | 334 | const data = reactive({ |
| ... | @@ -333,6 +350,12 @@ const data = reactive({ | ... | @@ -333,6 +350,12 @@ const data = reactive({ |
| 333 | {name: 'Event details', cn: '赛事详情', active: 0}, | 350 | {name: 'Event details', cn: '赛事详情', active: 0}, |
| 334 | {name: 'Schedule', cn: '日程', active: 0}], | 351 | {name: 'Schedule', cn: '日程', active: 0}], |
| 335 | signDoneGroupList: [], | 352 | signDoneGroupList: [], |
| 353 | signDoneGroupListToTal:0, | ||
| 354 | queryGroupList:{ | ||
| 355 | name:'', | ||
| 356 | pageSize:10, | ||
| 357 | pageNum:1 | ||
| 358 | }, | ||
| 336 | time: '', | 359 | time: '', |
| 337 | startSign: '', | 360 | startSign: '', |
| 338 | isNational:false | 361 | isNational:false |
| ... | @@ -343,10 +366,9 @@ const { | ... | @@ -343,10 +366,9 @@ const { |
| 343 | matchData, | 366 | matchData, |
| 344 | matchId, | 367 | matchId, |
| 345 | groupId, | 368 | groupId, |
| 346 | activeName2, | ||
| 347 | menu, | 369 | menu, |
| 348 | menu1, | 370 | menu1, |
| 349 | signDoneGroupList, | 371 | signDoneGroupList,signDoneGroupListToTal,queryGroupList, |
| 350 | time, startSign,isNational | 372 | time, startSign,isNational |
| 351 | } = toRefs(data) | 373 | } = toRefs(data) |
| 352 | const signTypePop = ref(false) | 374 | const signTypePop = ref(false) |
| ... | @@ -370,7 +392,7 @@ function getMatchId() { | ... | @@ -370,7 +392,7 @@ function getMatchId() { |
| 370 | match.getMaList({topFlag: 1, status: 1}).then((res) => { | 392 | match.getMaList({topFlag: 1, status: 1}).then((res) => { |
| 371 | matchId.value = res.rows[0].id | 393 | matchId.value = res.rows[0].id |
| 372 | getMatch(matchId.value) | 394 | getMatch(matchId.value) |
| 373 | getGroupListByCptId(matchId.value) | 395 | getGroupListByCptId() |
| 374 | }) | 396 | }) |
| 375 | } | 397 | } |
| 376 | 398 | ||
| ... | @@ -394,9 +416,10 @@ function getMatch(id) { | ... | @@ -394,9 +416,10 @@ function getMatch(id) { |
| 394 | }) | 416 | }) |
| 395 | } | 417 | } |
| 396 | 418 | ||
| 397 | function getGroupListByCptId(id) { | 419 | function getGroupListByCptId() { |
| 398 | match.getGroupListByCptId(id).then(res => { | 420 | match.getGroupListByCptId(matchId.value,queryGroupList.value).then(res => { |
| 399 | signDoneGroupList.value = res.data | 421 | signDoneGroupList.value = res.rows |
| 422 | signDoneGroupListToTal.value = res.total | ||
| 400 | }) | 423 | }) |
| 401 | } | 424 | } |
| 402 | 425 | ||
| ... | @@ -552,7 +575,7 @@ function checkIsSign() { | ... | @@ -552,7 +575,7 @@ function checkIsSign() { |
| 552 | ).then(() => { | 575 | ).then(() => { |
| 553 | withDraw(res.data.orderId) | 576 | withDraw(res.data.orderId) |
| 554 | }) | 577 | }) |
| 555 | // return Promise.reject('rejected message') | 578 | return Promise.reject('rejected message') |
| 556 | break | 579 | break |
| 557 | case '2': | 580 | case '2': |
| 558 | ElMessageBox.confirm( | 581 | ElMessageBox.confirm( | ... | ... |
| ... | @@ -335,9 +335,6 @@ import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row"; | ... | @@ -335,9 +335,6 @@ import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row"; |
| 335 | const {proxy} = getCurrentInstance() | 335 | const {proxy} = getCurrentInstance() |
| 336 | const route = useRoute() | 336 | const route = useRoute() |
| 337 | const router = useRouter() | 337 | const router = useRouter() |
| 338 | const matchInfo = ref({}) | ||
| 339 | const approved = ref(true) | ||
| 340 | const tableData = ref([]) | ||
| 341 | const payType = ref('2') | 338 | const payType = ref('2') |
| 342 | const orderId = ref(route.query.orderId) | 339 | const orderId = ref(route.query.orderId) |
| 343 | const matchId = ref() | 340 | const matchId = ref() | ... | ... |
| ... | @@ -174,7 +174,8 @@ const data = reactive({ | ... | @@ -174,7 +174,8 @@ const data = reactive({ |
| 174 | // address: { required: true, message: 'required', trigger: 'blur' } | 174 | // address: { required: true, message: 'required', trigger: 'blur' } |
| 175 | }, | 175 | }, |
| 176 | coachOrLeaderFlag: '', | 176 | coachOrLeaderFlag: '', |
| 177 | matchInfo:{} | 177 | matchInfo:{}, |
| 178 | languageSource:'' | ||
| 178 | }) | 179 | }) |
| 179 | const { | 180 | const { |
| 180 | isNational,matchData, | 181 | isNational,matchData, |
| ... | @@ -186,7 +187,7 @@ const { | ... | @@ -186,7 +187,7 @@ const { |
| 186 | cptId, | 187 | cptId, |
| 187 | rules,rules_en, | 188 | rules,rules_en, |
| 188 | regionsList,countryList,matchInfo, | 189 | regionsList,countryList,matchInfo, |
| 189 | coachOrLeaderFlag, accept,typeOptions | 190 | coachOrLeaderFlag, accept,typeOptions,languageSource |
| 190 | } = toRefs(data) | 191 | } = toRefs(data) |
| 191 | const uploadUrl = ref('/upload/upLoadToFileServer') | 192 | const uploadUrl = ref('/upload/upLoadToFileServer') |
| 192 | 193 | ||
| ... | @@ -196,6 +197,7 @@ onMounted(() => { | ... | @@ -196,6 +197,7 @@ onMounted(() => { |
| 196 | getGroupInfo() | 197 | getGroupInfo() |
| 197 | signType.value = route.query.signType | 198 | signType.value = route.query.signType |
| 198 | isNational.value = route.query.isNational | 199 | isNational.value = route.query.isNational |
| 200 | languageSource.value = route.query.languageSource | ||
| 199 | 201 | ||
| 200 | getRegionsList() | 202 | getRegionsList() |
| 201 | getCountryList() | 203 | getCountryList() |
| ... | @@ -325,7 +327,8 @@ function goNext() { | ... | @@ -325,7 +327,8 @@ function goNext() { |
| 325 | query: { | 327 | query: { |
| 326 | matchId: cptId.value, | 328 | matchId: cptId.value, |
| 327 | groupId: groupId.value, | 329 | groupId: groupId.value, |
| 328 | isNational: isNational.value | 330 | isNational: isNational.value, |
| 331 | languageSource:languageSource.value | ||
| 329 | } | 332 | } |
| 330 | }) | 333 | }) |
| 331 | } | 334 | } | ... | ... |
| ... | @@ -37,6 +37,9 @@ | ... | @@ -37,6 +37,9 @@ |
| 37 | <el-form-item :label="language==0?'负责人姓名':'Contact Person'" prop="contactPerson"> | 37 | <el-form-item :label="language==0?'负责人姓名':'Contact Person'" prop="contactPerson"> |
| 38 | <el-input v-model="form.contactPerson" :placeholder="language==0?'请输入联系人':''" /> | 38 | <el-input v-model="form.contactPerson" :placeholder="language==0?'请输入联系人':''" /> |
| 39 | </el-form-item> | 39 | </el-form-item> |
| 40 | <el-form-item :label="language==0?'联系电话':'Contact Phone'" required prop="contactTelno"> | ||
| 41 | <el-input v-model="form.contactTelno" type="phone" :placeholder="language==0?'请输入内容':''"/> | ||
| 42 | </el-form-item> | ||
| 40 | <el-form-item :label="language==0?'邮箱':'Email'" required prop="contactEmail"> | 43 | <el-form-item :label="language==0?'邮箱':'Email'" required prop="contactEmail"> |
| 41 | <el-input v-model="form.contactEmail" type="email" :placeholder="language==0?'请输入内容':''"/> | 44 | <el-input v-model="form.contactEmail" type="email" :placeholder="language==0?'请输入内容':''"/> |
| 42 | </el-form-item> | 45 | </el-form-item> |
| ... | @@ -148,13 +151,13 @@ const data = reactive({ | ... | @@ -148,13 +151,13 @@ const data = reactive({ |
| 148 | regionsList: [], | 151 | regionsList: [], |
| 149 | countryList: [], | 152 | countryList: [], |
| 150 | participantsInfoArr: [], | 153 | participantsInfoArr: [], |
| 151 | rankList: [], | ||
| 152 | accept: '.doc, .pdf, .docx, .zip', | 154 | accept: '.doc, .pdf, .docx, .zip', |
| 153 | rules: { | 155 | rules: { |
| 154 | imgUrl: { required: true, message: '请上传', trigger: 'blur' }, | 156 | imgUrl: { required: true, message: '请上传', trigger: 'blur' }, |
| 155 | name: { required: true, message: '请填写', trigger: 'blur' }, | 157 | name: { required: true, message: '请填写', trigger: 'blur' }, |
| 156 | type: { required: true, message: '请选择', trigger: 'change' }, | 158 | type: { required: true, message: '请选择', trigger: 'change' }, |
| 157 | contactPerson: { required: true, message: '请填写内容', trigger: 'blur' }, | 159 | contactPerson: { required: true, message: '请填写内容', trigger: 'blur' }, |
| 160 | contactTelno: { required: true, message: '请填写内容', trigger: 'blur' }, | ||
| 158 | contactEmail: { required: true, message: '请填写内容', trigger: 'blur' }, | 161 | contactEmail: { required: true, message: '请填写内容', trigger: 'blur' }, |
| 159 | abreviations: { required: true, message: '请填写内容', trigger: 'blur' }, | 162 | abreviations: { required: true, message: '请填写内容', trigger: 'blur' }, |
| 160 | address: { required: true, message: '请填写内容', trigger: 'blur' } | 163 | address: { required: true, message: '请填写内容', trigger: 'blur' } |
| ... | @@ -169,11 +172,11 @@ const data = reactive({ | ... | @@ -169,11 +172,11 @@ const data = reactive({ |
| 169 | address: { required: true, message: 'required', trigger: 'blur' } | 172 | address: { required: true, message: 'required', trigger: 'blur' } |
| 170 | }, | 173 | }, |
| 171 | coachOrLeaderFlag: '', | 174 | coachOrLeaderFlag: '', |
| 175 | languageSource: '', | ||
| 172 | matchInfo:{} | 176 | matchInfo:{} |
| 173 | }) | 177 | }) |
| 174 | const { | 178 | const { |
| 175 | isRanks,matchData, | 179 | matchData, |
| 176 | rankList, | ||
| 177 | form, | 180 | form, |
| 178 | groupId, | 181 | groupId, |
| 179 | signType, | 182 | signType, |
| ... | @@ -181,7 +184,7 @@ const { | ... | @@ -181,7 +184,7 @@ const { |
| 181 | cptId, | 184 | cptId, |
| 182 | rules,rules_en, | 185 | rules,rules_en, |
| 183 | regionsList,countryList,matchInfo, | 186 | regionsList,countryList,matchInfo, |
| 184 | coachOrLeaderFlag, accept,typeOptions | 187 | coachOrLeaderFlag, accept,typeOptions,languageSource |
| 185 | } = toRefs(data) | 188 | } = toRefs(data) |
| 186 | const uploadUrl = ref('/upload/upLoadToFileServer') | 189 | const uploadUrl = ref('/upload/upLoadToFileServer') |
| 187 | 190 | ||
| ... | @@ -190,7 +193,7 @@ onMounted(() => { | ... | @@ -190,7 +193,7 @@ onMounted(() => { |
| 190 | // 获取团体信息 | 193 | // 获取团体信息 |
| 191 | getGroupInfo() | 194 | getGroupInfo() |
| 192 | signType.value = route.query.signType | 195 | signType.value = route.query.signType |
| 193 | 196 | languageSource.value = route.query.languageSource | |
| 194 | getRegionsList() | 197 | getRegionsList() |
| 195 | getCountryList() | 198 | getCountryList() |
| 196 | match.getMatchById({ id: cptId.value }).then(res => { | 199 | match.getMatchById({ id: cptId.value }).then(res => { |
| ... | @@ -249,11 +252,6 @@ function getGroupInfo() { | ... | @@ -249,11 +252,6 @@ function getGroupInfo() { |
| 249 | }) | 252 | }) |
| 250 | } | 253 | } |
| 251 | 254 | ||
| 252 | function getTeamList() { | ||
| 253 | return match.getMyTeamList(cptId.value, groupId.value).then(response => { | ||
| 254 | rankList.value = response.data | ||
| 255 | }) | ||
| 256 | } | ||
| 257 | 255 | ||
| 258 | function goPrev() { | 256 | function goPrev() { |
| 259 | router.go(-1) | 257 | router.go(-1) |
| ... | @@ -315,7 +313,8 @@ function goNext() { | ... | @@ -315,7 +313,8 @@ function goNext() { |
| 315 | query: { | 313 | query: { |
| 316 | matchId: cptId.value, | 314 | matchId: cptId.value, |
| 317 | groupId: groupId.value, | 315 | groupId: groupId.value, |
| 318 | signType: signType.value | 316 | signType: signType.value, |
| 317 | languageSource:languageSource.value | ||
| 319 | } | 318 | } |
| 320 | }) | 319 | }) |
| 321 | } | 320 | } | ... | ... |
| ... | @@ -330,7 +330,7 @@ function bigNext(){ | ... | @@ -330,7 +330,7 @@ function bigNext(){ |
| 330 | ElMessage.warning(language.value == 0 ? '请选择性别' : 'Please select your gender') | 330 | ElMessage.warning(language.value == 0 ? '请选择性别' : 'Please select your gender') |
| 331 | return | 331 | return |
| 332 | } | 332 | } |
| 333 | if(user.utype=='3'){ | 333 | if(user&&user.utype=='3'){ |
| 334 | let obj = { | 334 | let obj = { |
| 335 | card: form.value.card, | 335 | card: form.value.card, |
| 336 | userId: user.userId, | 336 | userId: user.userId, | ... | ... |
| ... | @@ -93,7 +93,7 @@ | ... | @@ -93,7 +93,7 @@ |
| 93 | </el-icon> | 93 | </el-icon> |
| 94 | <div v-if="language==0"> | 94 | <div v-if="language==0"> |
| 95 | 我已阅读并接受<a class="text-primary" @click.stop="showAgreeMent">《注册协议》</a> | 95 | 我已阅读并接受<a class="text-primary" @click.stop="showAgreeMent">《注册协议》</a> |
| 96 | 及<a class="text-primary" @click.stop="showAgreeMent">《个人信息保护政策》</a> | 96 | 及<a class="text-primary" @click.stop="showPolicy">《个人信息保护政策》</a> |
| 97 | </div> | 97 | </div> |
| 98 | <div v-else style="white-space: nowrap"> | 98 | <div v-else style="white-space: nowrap"> |
| 99 | I have read and agree to the User | 99 | I have read and agree to the User | ... | ... |
| ... | @@ -76,15 +76,15 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -76,15 +76,15 @@ export default defineConfig(({ mode, command }) => { |
| 76 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') | 76 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') |
| 77 | }, | 77 | }, |
| 78 | '/dev-api/ztx-webSite': { | 78 | '/dev-api/ztx-webSite': { |
| 79 | // target: 'https://dance.itechtop.cn/stage-api', | 79 | target: 'https://dance.itechtop.cn/stage-api', |
| 80 | target: 'http://192.168.1.118:8081/', | 80 | // target: 'http://192.168.1.118:8081/', |
| 81 | changeOrigin: true, | 81 | changeOrigin: true, |
| 82 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') | 82 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') |
| 83 | }, | 83 | }, |
| 84 | '/dev-api': { | 84 | '/dev-api': { |
| 85 | // target: 'http://192.168.1.118:8081/', | 85 | target: 'http://192.168.1.118:8081/', |
| 86 | // target: 'https://dance.itechtop.cn/stage-api', | 86 | // target: 'https://dance.itechtop.cn/stage-api', |
| 87 | target: 'https://wdsfwuxicenter.com/stage-api', | 87 | // target: 'https://wdsfwuxicenter.com/stage-api', |
| 88 | changeOrigin: true, | 88 | changeOrigin: true, |
| 89 | rewrite: (p) => p.replace(/^\/dev-api/, '') | 89 | rewrite: (p) => p.replace(/^\/dev-api/, '') |
| 90 | } | 90 | } | ... | ... |
-
Please register or sign in to post a comment