Merge branch 'dev' into devdev
Showing
19 changed files
with
97 additions
and
87 deletions
| ... | @@ -628,6 +628,13 @@ export function createWePay(data) { | ... | @@ -628,6 +628,13 @@ export function createWePay(data) { |
| 628 | data:data | 628 | data:data |
| 629 | }) | 629 | }) |
| 630 | } | 630 | } |
| 631 | export function createWePayPhone(data) { | ||
| 632 | return request({ | ||
| 633 | url: `/league/signOrder/wxH5Pay`, | ||
| 634 | method: 'post', | ||
| 635 | data:data | ||
| 636 | }) | ||
| 637 | } | ||
| 631 | export function createPalPay(data) { | 638 | export function createPalPay(data) { |
| 632 | return request({ | 639 | return request({ |
| 633 | url: `/league/signOrder/palPay`, | 640 | url: `/league/signOrder/palPay`, | ... | ... |
| ... | @@ -120,7 +120,12 @@ function addMember() { | ... | @@ -120,7 +120,12 @@ function addMember() { |
| 120 | id: 0, | 120 | id: 0, |
| 121 | groupId: groupId.value | 121 | groupId: groupId.value |
| 122 | } | 122 | } |
| 123 | if(language.value==1){ | ||
| 123 | proxy.$refs['dialogAddCoachEn'].open(params) | 124 | proxy.$refs['dialogAddCoachEn'].open(params) |
| 125 | } else { | ||
| 126 | proxy.$refs['dialogAddCoach'].open(params) | ||
| 127 | } | ||
| 128 | |||
| 124 | } | 129 | } |
| 125 | 130 | ||
| 126 | function importSportman() { | 131 | function importSportman() { |
| ... | @@ -156,6 +161,8 @@ function editCoach(row,title) { | ... | @@ -156,6 +161,8 @@ function editCoach(row,title) { |
| 156 | } | 161 | } |
| 157 | if(row.label=='0'&&row.wdsfMin){ | 162 | if(row.label=='0'&&row.wdsfMin){ |
| 158 | proxy.$refs['dialogAddWDSF'].open(params) | 163 | proxy.$refs['dialogAddWDSF'].open(params) |
| 164 | } else if(row.idcType == '0'){ | ||
| 165 | proxy.$refs['dialogAddCoach'].open(params) | ||
| 159 | } else { | 166 | } else { |
| 160 | proxy.$refs['dialogAddCoachEn'].open(params) | 167 | proxy.$refs['dialogAddCoachEn'].open(params) |
| 161 | } | 168 | } | ... | ... |
| ... | @@ -7,7 +7,7 @@ | ... | @@ -7,7 +7,7 @@ |
| 7 | {{userName}} | 7 | {{userName}} |
| 8 | </el-form-item> | 8 | </el-form-item> |
| 9 | <el-form-item :label="language==0?'所属国家/地区':'Country'" required> | 9 | <el-form-item :label="language==0?'所属国家/地区':'Country'" required> |
| 10 | <el-select filterable v-model="form.countryId"> | 10 | <el-select filterable v-model="form.countryId" :disabled="form.type!='4'"> |
| 11 | <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id" /> | 11 | <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id" /> |
| 12 | </el-select> | 12 | </el-select> |
| 13 | </el-form-item> | 13 | </el-form-item> | ... | ... |
| ... | @@ -33,7 +33,7 @@ | ... | @@ -33,7 +33,7 @@ |
| 33 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> | 33 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 34 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> | 34 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 35 | 35 | ||
| 36 | <p class="name">{{ c.xing }}{{c.ming}} | 36 | <p class="name">{{ c.realName }} |
| 37 | <el-icon @click.stop="editPerson(c.id)"> | 37 | <el-icon @click.stop="editPerson(c.id)"> |
| 38 | <Edit/> | 38 | <Edit/> |
| 39 | </el-icon> | 39 | </el-icon> |
| ... | @@ -60,7 +60,7 @@ | ... | @@ -60,7 +60,7 @@ |
| 60 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> | 60 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> |
| 61 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> | 61 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 62 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> | 62 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 63 | <p class="name">{{ c.xing }}{{c.ming}} | 63 | <p class="name">{{ c.realName }} |
| 64 | <el-icon @click.stop="editPerson(c.id)"> | 64 | <el-icon @click.stop="editPerson(c.id)"> |
| 65 | <Edit/> | 65 | <Edit/> |
| 66 | </el-icon> | 66 | </el-icon> |
| ... | @@ -85,7 +85,7 @@ | ... | @@ -85,7 +85,7 @@ |
| 85 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> | 85 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> |
| 86 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> | 86 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 87 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> | 87 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 88 | <p class="name">{{ c.xing }}{{c.ming}} | 88 | <p class="name">{{ c.realName }} |
| 89 | <el-icon @click.stop="editPerson(c.id)"> | 89 | <el-icon @click.stop="editPerson(c.id)"> |
| 90 | <Edit/> | 90 | <Edit/> |
| 91 | </el-icon> | 91 | </el-icon> |
| ... | @@ -110,7 +110,7 @@ | ... | @@ -110,7 +110,7 @@ |
| 110 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> | 110 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> |
| 111 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> | 111 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 112 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> | 112 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 113 | <p class="name">{{ c.xing }}{{c.ming}} | 113 | <p class="name">{{ c.realName }} |
| 114 | <el-icon @click.stop="editPerson(c.id)"> | 114 | <el-icon @click.stop="editPerson(c.id)"> |
| 115 | <Edit/> | 115 | <Edit/> |
| 116 | </el-icon> | 116 | </el-icon> |
| ... | @@ -135,7 +135,7 @@ | ... | @@ -135,7 +135,7 @@ |
| 135 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> | 135 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> |
| 136 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> | 136 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 137 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> | 137 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 138 | <p class="name">{{ c.xing }}{{c.ming}} | 138 | <p class="name">{{ c.realName }} |
| 139 | <el-icon @click.stop="editPerson(c.id)"> | 139 | <el-icon @click.stop="editPerson(c.id)"> |
| 140 | <Edit/> | 140 | <Edit/> |
| 141 | </el-icon> | 141 | </el-icon> |
| ... | @@ -160,7 +160,7 @@ | ... | @@ -160,7 +160,7 @@ |
| 160 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> | 160 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> |
| 161 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> | 161 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 162 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> | 162 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 163 | <p class="name">{{ c.xing }}{{c.ming}} | 163 | <p class="name">{{ c.realName }} |
| 164 | <el-icon @click.stop="editPerson(c.id)"> | 164 | <el-icon @click.stop="editPerson(c.id)"> |
| 165 | <Edit/> | 165 | <Edit/> |
| 166 | </el-icon> | 166 | </el-icon> | ... | ... |
| ... | @@ -18,52 +18,16 @@ | ... | @@ -18,52 +18,16 @@ |
| 18 | </div> | 18 | </div> |
| 19 | <div class="panel-body"> | 19 | <div class="panel-body"> |
| 20 | <div class="chooseForm" style="display: flex;flex-wrap: wrap;"> | 20 | <div class="chooseForm" style="display: flex;flex-wrap: wrap;"> |
| 21 | <!-- <div @click="editPerson" class="mb20" style="width: 50%;text-align: center;">--> | ||
| 22 | <!-- <el-avatar fit="cover" v-if="form.picUrl" :size="60" :src="fillImgUrl(form.picUrl)"/>--> | ||
| 23 | <!-- <div v-else>--> | ||
| 24 | <!-- <el-avatar fit="cover" v-if="form.sex == 0" :size="60" src="/img/head1.png"/>--> | ||
| 25 | <!-- <el-avatar fit="cover" v-if="form.sex == 1" :size="60" src="/img/head0.png"/>--> | ||
| 26 | <!-- </div>--> | ||
| 27 | <!-- <div class="text-center mt10">--> | ||
| 28 | <!-- <span class="mName">{{ form.realName }}</span>--> | ||
| 29 | <!-- <el-icon size="20">--> | ||
| 30 | <!-- <Edit/>--> | ||
| 31 | <!-- </el-icon>--> | ||
| 32 | <!-- </div>--> | ||
| 33 | <!-- </div>--> | ||
| 34 | <!-- <!–舞伴–>--> | ||
| 35 | <!-- <div style="width:50%;text-align: center;" v-if="form.danceMate">--> | ||
| 36 | <!-- <el-checkbox-group v-model="mateChosed" @change="changeMate">--> | ||
| 37 | <!-- <el-checkbox :label="form.danceMate.id">--> | ||
| 38 | <!-- <div>--> | ||
| 39 | <!-- <el-avatar fit="cover" v-if="form.danceMate.picUrl" :size="60" :src="fillImgUrl(form.danceMate.picUrl)"/>--> | ||
| 40 | <!-- <el-avatar fit="cover" v-else-if="form.danceMate.sex == 0" :size="60"--> | ||
| 41 | <!-- src="/img/head1.png"/>--> | ||
| 42 | <!-- <el-avatar fit="cover" v-else-if="form.danceMate.sex == 1" :size="60"--> | ||
| 43 | <!-- src="/img/head0.png"/>--> | ||
| 44 | <!-- <div class="text-center mt10" @click="editMate(form.danceMate)">--> | ||
| 45 | <!-- <span class="mName">{{ form.danceMate.realName }}</span>--> | ||
| 46 | <!-- <el-icon @click.stop="editMate(form.danceMate)" size="20">--> | ||
| 47 | <!-- <Edit/>--> | ||
| 48 | <!-- </el-icon>--> | ||
| 49 | <!--<!– <el-icon @click.stop="delMate(form.danceMate)">–>--> | ||
| 50 | <!--<!– <Delete/>–>--> | ||
| 51 | <!--<!– </el-icon>–>--> | ||
| 52 | <!-- </div>--> | ||
| 53 | <!-- </div>--> | ||
| 54 | <!-- </el-checkbox>--> | ||
| 55 | <!-- </el-checkbox-group>--> | ||
| 56 | <!-- </div>--> | ||
| 57 | <div style="width:50%;text-align: center;" v-for="s in choosedList"> | 21 | <div style="width:50%;text-align: center;" v-for="s in choosedList"> |
| 58 | <div> | 22 | <div> |
| 59 | <el-avatar fit="cover" v-if="s.picUrl" :size="60" :src="fillImgUrl(form.danceMate.picUrl)"/> | 23 | <el-avatar fit="cover" v-if="s.picUrl" :size="60" :src="fillImgUrl(s.picUrl)"/> |
| 60 | <el-avatar fit="cover" v-else-if="s.sex == 0" :size="60" | 24 | <el-avatar fit="cover" v-else-if="s.sex == 0" :size="60" |
| 61 | src="/img/head1.png"/> | 25 | src="/img/head1.png"/> |
| 62 | <el-avatar fit="cover" v-else-if="s.sex == 1" :size="60" | 26 | <el-avatar fit="cover" v-else-if="s.sex == 1" :size="60" |
| 63 | src="/img/head0.png"/> | 27 | src="/img/head0.png"/> |
| 64 | <div class="text-center mt10" @click="editMate(s)"> | 28 | <div class="text-center mt10" @click="editMate(s)"> |
| 65 | <span class="mName">{{ s.realName }}</span> | 29 | <span class="mName">{{ s.realName }}</span> |
| 66 | <el-icon @click.stop="editMate(s)" size="20"> | 30 | <el-icon size="20"> |
| 67 | <Edit/> | 31 | <Edit/> |
| 68 | </el-icon> | 32 | </el-icon> |
| 69 | </div> | 33 | </div> |
| ... | @@ -241,7 +205,6 @@ const data = reactive({ | ... | @@ -241,7 +205,6 @@ const data = reactive({ |
| 241 | teamList: [], | 205 | teamList: [], |
| 242 | extraform: [], | 206 | extraform: [], |
| 243 | groupId: 0, | 207 | groupId: 0, |
| 244 | signType: '', | ||
| 245 | coachOrLeaderFlag: null, | 208 | coachOrLeaderFlag: null, |
| 246 | noPhotoCanSign: null, | 209 | noPhotoCanSign: null, |
| 247 | showResult: false, | 210 | showResult: false, |
| ... | @@ -270,7 +233,6 @@ const { | ... | @@ -270,7 +233,6 @@ const { |
| 270 | choosedList,isNational, | 233 | choosedList,isNational, |
| 271 | extraform, | 234 | extraform, |
| 272 | groupId, | 235 | groupId, |
| 273 | signType, | ||
| 274 | coachOrLeaderFlag, | 236 | coachOrLeaderFlag, |
| 275 | noPhotoCanSign, | 237 | noPhotoCanSign, |
| 276 | projectIds, | 238 | projectIds, |
| ... | @@ -292,7 +254,6 @@ onMounted(() => { | ... | @@ -292,7 +254,6 @@ onMounted(() => { |
| 292 | if (useUserStore().user) { | 254 | if (useUserStore().user) { |
| 293 | userId.value = useUserStore().user.userId | 255 | userId.value = useUserStore().user.userId |
| 294 | } | 256 | } |
| 295 | signType.value = route.query.signType || null | ||
| 296 | getSignInfoList() | 257 | getSignInfoList() |
| 297 | getMatch(matchId.value) | 258 | getMatch(matchId.value) |
| 298 | getMyInfo() | 259 | getMyInfo() |
| ... | @@ -340,7 +301,7 @@ function addAccompany() { | ... | @@ -340,7 +301,7 @@ function addAccompany() { |
| 340 | 301 | ||
| 341 | function changeMeDone(mateId) { | 302 | function changeMeDone(mateId) { |
| 342 | console.log(mateId) | 303 | console.log(mateId) |
| 343 | getMyInfo() | 304 | // getMyInfo() |
| 344 | getProjectList() | 305 | getProjectList() |
| 345 | } | 306 | } |
| 346 | 307 | ||
| ... | @@ -475,6 +436,9 @@ function getChoosed(list) { | ... | @@ -475,6 +436,9 @@ function getChoosed(list) { |
| 475 | getProjectList() | 436 | getProjectList() |
| 476 | } | 437 | } |
| 477 | function getProjectList() { | 438 | function getProjectList() { |
| 439 | if(choosedList.value.length==0){ | ||
| 440 | return | ||
| 441 | } | ||
| 478 | let arr = [] | 442 | let arr = [] |
| 479 | for(var l of choosedList.value){ | 443 | for(var l of choosedList.value){ |
| 480 | arr.push(l.id) | 444 | arr.push(l.id) |
| ... | @@ -596,10 +560,10 @@ function removeThis(id) { | ... | @@ -596,10 +560,10 @@ function removeThis(id) { |
| 596 | } | 560 | } |
| 597 | 561 | ||
| 598 | function switchPerson(){ | 562 | function switchPerson(){ |
| 563 | console.log( choosedList.value) | ||
| 599 | const params = { | 564 | const params = { |
| 600 | title: language.value == 0 ? '选择运动员' : 'Participating athletes', | 565 | title: language.value == 0 ? '选择运动员' : 'Participating athletes', |
| 601 | matchId: matchId.value, | 566 | matchId: matchId.value, |
| 602 | signType: signType.value, | ||
| 603 | noPhotoCanSign: noPhotoCanSign.value, | 567 | noPhotoCanSign: noPhotoCanSign.value, |
| 604 | coachOrLeaderFlag: coachOrLeaderFlag.value, | 568 | coachOrLeaderFlag: coachOrLeaderFlag.value, |
| 605 | choosedList: choosedList.value, | 569 | choosedList: choosedList.value, | ... | ... |
| ... | @@ -24,7 +24,7 @@ | ... | @@ -24,7 +24,7 @@ |
| 24 | <div style="margin: 0 4px 10px;display: flex"> | 24 | <div style="margin: 0 4px 10px;display: flex"> |
| 25 | <el-select multiple v-model="choosedchoosed" collapse-tags-tooltip filterable | 25 | <el-select multiple v-model="choosedchoosed" collapse-tags-tooltip filterable |
| 26 | @change="changechoosed"> | 26 | @change="changechoosed"> |
| 27 | <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.realName" :value="c.id"> |
| 28 | <div class="flexOption"> | 28 | <div class="flexOption"> |
| 29 | {{ c.realName }} | 29 | {{ c.realName }} |
| 30 | <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> | 30 | <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> |
| ... | @@ -602,9 +602,10 @@ function removeCurproject() { | ... | @@ -602,9 +602,10 @@ function removeCurproject() { |
| 602 | projectIds.value = _.without(projectIds.value, currProjectId.value) | 602 | projectIds.value = _.without(projectIds.value, currProjectId.value) |
| 603 | } | 603 | } |
| 604 | function checkTwo(a,b) { | 604 | function checkTwo(a,b) { |
| 605 | match.checkMate({per1Id:a,per2Id:b,cptId:matchId.value}).then(res=>{ | 605 | match.checkMate({per1Id:a.id,per2Id:b.id,cptId:matchId.value}).then(res=>{ |
| 606 | if(!res.data){ | 606 | if(!res.data){ |
| 607 | ElMessage.warning(language.value == 0 ? '他们不是固定组合':'They\'re not a couple') | 607 | // ElMessage.warning(language.value == 0 ? '他们不是固定组合':'They\'re not a couple') |
| 608 | ElMessage.warning(language.value == 0 ? `${a.realName} 已经和其他人组成舞伴,无法报名:请重新选择`:`${a.realName} has already formed a dancer with another person, cannot sign up: please select again`) | ||
| 608 | } | 609 | } |
| 609 | }) | 610 | }) |
| 610 | } | 611 | } |
| ... | @@ -614,7 +615,7 @@ watch(choosedchoosed, (newVal, oldVal) => { | ... | @@ -614,7 +615,7 @@ watch(choosedchoosed, (newVal, oldVal) => { |
| 614 | //如果一男一女,判断是否舞伴 | 615 | //如果一男一女,判断是否舞伴 |
| 615 | if(choosed2List.value.length==2){ | 616 | if(choosed2List.value.length==2){ |
| 616 | if(choosed2List.value[0].sex!=choosed2List.value[1].sex){ | 617 | if(choosed2List.value[0].sex!=choosed2List.value[1].sex){ |
| 617 | checkTwo(newVal[0],newVal[1]) | 618 | checkTwo(choosed2List.value[0],choosed2List.value[1]) |
| 618 | } | 619 | } |
| 619 | } | 620 | } |
| 620 | } | 621 | } | ... | ... |
| ... | @@ -319,10 +319,10 @@ function submitForm() { | ... | @@ -319,10 +319,10 @@ function submitForm() { |
| 319 | return | 319 | return |
| 320 | } | 320 | } |
| 321 | } | 321 | } |
| 322 | // if(!form.value.passportUrl){ | 322 | if(form.value.idcType != 0&&!form.value.passportUrl){ |
| 323 | // ElMessage.warning(language.value == 0 ? '请上传有效证件' :'Please upload your passport file') | 323 | ElMessage.warning(language.value == 0 ? '请上传有效证件' :'Please upload your passport file') |
| 324 | // return | 324 | return |
| 325 | // } | 325 | } |
| 326 | if (typeof (form.value.regionId) === 'object') { | 326 | if (typeof (form.value.regionId) === 'object') { |
| 327 | form.value.regionId = _.last(form.value.regionId) | 327 | form.value.regionId = _.last(form.value.regionId) |
| 328 | } | 328 | } | ... | ... |
| ... | @@ -40,8 +40,9 @@ | ... | @@ -40,8 +40,9 @@ |
| 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="70" :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" v-if="!isNational" :label="language==0?'姓名':'Real Name'" prop="realName" min-width="100"/> |
| 44 | <el-table-column align="center" :label="language==0?'名':'Name'" prop="ming" min-width="100"/> | 44 | <el-table-column align="center" v-if="isNational" :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> |
| 45 | <el-table-column align="center" v-if="isNational" :label="language==0?'名':'Name'" prop="ming" min-width="100"/> | ||
| 45 | <el-table-column align="center" v-if="isNational" :label="language==0?'代表':'Representing'" prop="representing" min-width="120"/> | 46 | <el-table-column align="center" v-if="isNational" :label="language==0?'代表':'Representing'" prop="representing" min-width="120"/> |
| 46 | <el-table-column align="center" v-if="!isNational" :label="language==0?'所属国家/地区':'Nationality'" prop="countryName" min-width="110"/> | 47 | <el-table-column align="center" v-if="!isNational" :label="language==0?'所属国家/地区':'Nationality'" prop="countryName" min-width="110"/> |
| 47 | <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/> | 48 | <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/> | ... | ... |
| ... | @@ -214,7 +214,7 @@ function handleSelectionChange(val) { | ... | @@ -214,7 +214,7 @@ function handleSelectionChange(val) { |
| 214 | //判断是否队友 | 214 | //判断是否队友 |
| 215 | if(val.length==2){ | 215 | if(val.length==2){ |
| 216 | if(val[0].sex!=val[1].sex){ | 216 | if(val[0].sex!=val[1].sex){ |
| 217 | checkTwo(val[0].id,val[1].id) | 217 | checkTwo(val[0],val[1]) |
| 218 | } | 218 | } |
| 219 | } | 219 | } |
| 220 | if(val.length>0){ | 220 | if(val.length>0){ |
| ... | @@ -232,9 +232,9 @@ function handleSelectionChange(val) { | ... | @@ -232,9 +232,9 @@ function handleSelectionChange(val) { |
| 232 | } | 232 | } |
| 233 | } | 233 | } |
| 234 | function checkTwo(a,b) { | 234 | function checkTwo(a,b) { |
| 235 | match.checkMate({per1Id:a,per2Id:b,cptId:matchId}).then(res=>{ | 235 | match.checkMate({per1Id:a.id,per2Id:b.id,cptId:matchId}).then(res=>{ |
| 236 | if(!res.data){ | 236 | if(!res.data){ |
| 237 | ElMessage.warning(language.value == 0 ? '他们不是固定组合':'They\'re not a couple') | 237 | ElMessage.warning(language.value == 0 ? `${a.realName} 已经和其他人组成舞伴,无法报名:请重新选择`:`${a.realName} has already formed a dancer with another person, cannot sign up: please select again`) |
| 238 | proxy.$refs['allSportmenTable'].clearSelection() | 238 | proxy.$refs['allSportmenTable'].clearSelection() |
| 239 | } | 239 | } |
| 240 | }) | 240 | }) | ... | ... |
| ... | @@ -8,7 +8,7 @@ | ... | @@ -8,7 +8,7 @@ |
| 8 | </el-col> | 8 | </el-col> |
| 9 | <el-col :span="20"> | 9 | <el-col :span="20"> |
| 10 | <div class="item" v-if="groupInfo.type=='4'"><label>{{ language==0?'代表队':'Represent' }}</label>{{ groupInfo.name?.substring(0,3) }}</div> | 10 | <div class="item" v-if="groupInfo.type=='4'"><label>{{ language==0?'代表队':'Represent' }}</label>{{ groupInfo.name?.substring(0,3) }}</div> |
| 11 | <div class="item" v-if="groupInfo.type!='4'"><label>{{ language==0?'团体名称':'Team name' }}</label>{{ groupInfo.name?.substring(0,3) }}</div> | 11 | <div class="item" v-if="groupInfo.type!='4'"><label>{{ language==0?'团体名称':'Team name' }}</label>{{ groupInfo.name }}</div> |
| 12 | <div class="item"><label>{{ language==0?'团体类型':'Group type' }}</label> | 12 | <div class="item"><label>{{ language==0?'团体类型':'Group type' }}</label> |
| 13 | <text v-if="groupInfo.type=='0'">{{language==0?'普通院校':'School'}}</text> | 13 | <text v-if="groupInfo.type=='0'">{{language==0?'普通院校':'School'}}</text> |
| 14 | <text v-if="groupInfo.type=='1'">{{language==0?'专业舞蹈学校':'Professional dance school'}}</text> | 14 | <text v-if="groupInfo.type=='1'">{{language==0?'专业舞蹈学校':'Professional dance school'}}</text> |
| ... | @@ -39,7 +39,7 @@ import {useStorage} from "@vueuse/core/index"; | ... | @@ -39,7 +39,7 @@ import {useStorage} from "@vueuse/core/index"; |
| 39 | const language= useStorage('language',0) | 39 | const language= useStorage('language',0) |
| 40 | const props = defineProps({ | 40 | const props = defineProps({ |
| 41 | groupId: { | 41 | groupId: { |
| 42 | type: Object, | 42 | type: String, |
| 43 | required: false | 43 | required: false |
| 44 | }, | 44 | }, |
| 45 | matchId: { | 45 | matchId: { | ... | ... |
| ... | @@ -2,6 +2,7 @@ | ... | @@ -2,6 +2,7 @@ |
| 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?'姓名':'RealName'" prop="realName" min-width="140"/> | ||
| 5 | <el-table-column :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> | 6 | <el-table-column :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> |
| 6 | <el-table-column :label="language==0?'名':'Name'" prop="ming" min-width="100"/> | 7 | <el-table-column :label="language==0?'名':'Name'" prop="ming" min-width="100"/> |
| 7 | <el-table-column :label="language==0?'所属国家/地区':'Nationality'" prop="countryName" min-width="120"/> | 8 | <el-table-column :label="language==0?'所属国家/地区':'Nationality'" prop="countryName" min-width="120"/> | ... | ... |
| ... | @@ -4,8 +4,9 @@ | ... | @@ -4,8 +4,9 @@ |
| 4 | </div> | 4 | </div> |
| 5 | <el-table :data="list" :sum-text="sumText" border style="width: 100%" v-loading="loading"> | 5 | <el-table :data="list" :sum-text="sumText" border style="width: 100%" v-loading="loading"> |
| 6 | <el-table-column :label="language==0?'序号':'Index'" type="index" width="70" align="center"/> | 6 | <el-table-column :label="language==0?'序号':'Index'" type="index" width="70" align="center"/> |
| 7 | <el-table-column :label="language==0?'姓氏':'Surname'" prop="personInfo.xing" min-width="100"/> | 7 | <el-table-column v-if="!isNational" :label="language==0?'姓名':'Real Name'" prop="personInfo.realName" min-width="100"/> |
| 8 | <el-table-column :label="language==0?'名':'Name'" prop="personInfo.ming" min-width="100"/> | 8 | <el-table-column v-if="isNational" :label="language==0?'姓氏':'Surname'" prop="personInfo.xing" min-width="100"/> |
| 9 | <el-table-column v-if="isNational" :label="language==0?'名':'Name'" prop="personInfo.ming" min-width="100"/> | ||
| 9 | <el-table-column :label="language==0?'所属国家/地区':'Country'" min-width="120"> | 10 | <el-table-column :label="language==0?'所属国家/地区':'Country'" min-width="120"> |
| 10 | <template #default="scope"> | 11 | <template #default="scope"> |
| 11 | <span v-if="scope.row.personInfo.countryName">{{scope.row.personInfo.countryName}}</span> | 12 | <span v-if="scope.row.personInfo.countryName">{{scope.row.personInfo.countryName}}</span> | ... | ... |
| ... | @@ -190,19 +190,25 @@ | ... | @@ -190,19 +190,25 @@ |
| 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 | <div v-if="matchData.showPersonFlag=='1'"> | 192 | <div v-if="matchData.showPersonFlag=='1'"> |
| 193 | <el-row :gutter="20" v-if="matchData.signType == '0'"> | 193 | <!-- <el-row :gutter="20" v-if="matchData.signType == '0'">--> |
| 194 | <el-col v-for="t in signDoneGroupList" :key="t.id" :span="8"> | 194 | <!-- <el-col v-for="t in signDoneGroupList" :key="t.id" :span="8">--> |
| 195 | <div class="teamItem"> | 195 | <!-- <div class="teamItem">--> |
| 196 | <el-avatar :size="60" :src="fillImgUrl(t.imgUrl||t.avatar)"/> | 196 | <!-- <el-avatar :size="60" :src="fillImgUrl(t.imgUrl||t.avatar)"/>--> |
| 197 | <span class="name">{{ t.name }}</span> | 197 | <!-- <span class="name">{{ t.name }}</span>--> |
| 198 | </div> | 198 | <!-- </div>--> |
| 199 | </el-col> | 199 | <!-- </el-col>--> |
| 200 | </el-row> | 200 | <!-- </el-row>--> |
| 201 | <el-row :gutter="20" class="pd20" v-else> | 201 | <el-row :gutter="20" class="pd20"> |
| 202 | <el-col :span="24"> | 202 | <el-col :span="24"> |
| 203 | <div class="fr mb20"> | 203 | <div class="fr mb20"> |
| 204 | <el-input size="small" v-model="queryGroupList.name" :prefix-icon="Search" | 204 | <div class="flex"> |
| 205 | <el-input class="mr10" size="small" v-model="queryGroupList.groupName" :prefix-icon="Search" | ||
| 206 | :placeholder="language == 0 ? '请输入参赛队名称' :'Please enter the Team name'" | ||
| 205 | @change="getGroupListByCptId" clearable/> | 207 | @change="getGroupListByCptId" clearable/> |
| 208 | <el-input size="small" v-model="queryGroupList.athleteName" :prefix-icon="Search" | ||
| 209 | :placeholder=" language == 0 ? '请输入运动员查询' :'Please enter the athlete name'" | ||
| 210 | @change="getGroupListByCptId" clearable/> | ||
| 211 | </div> | ||
| 206 | </div> | 212 | </div> |
| 207 | <el-table :data="signDoneGroupList"> | 213 | <el-table :data="signDoneGroupList"> |
| 208 | <el-table-column prop="groupCode" align="center" :label="language == 0 ? '组别代码' :'EVENT CODE'" min-width="120"/> | 214 | <el-table-column prop="groupCode" align="center" :label="language == 0 ? '组别代码' :'EVENT CODE'" min-width="120"/> | ... | ... |
| ... | @@ -361,6 +361,7 @@ const upForm = ref({ | ... | @@ -361,6 +361,7 @@ const upForm = ref({ |
| 361 | }) | 361 | }) |
| 362 | const errorBox = ref(false) | 362 | const errorBox = ref(false) |
| 363 | const hideconfirmbtn = ref(false) | 363 | const hideconfirmbtn = ref(false) |
| 364 | const isphone = ref(false) | ||
| 364 | const insuranceFeeTotal = ref(0) | 365 | const insuranceFeeTotal = ref(0) |
| 365 | const serviceFeeTotal = ref(0) | 366 | const serviceFeeTotal = ref(0) |
| 366 | const zuQuery = ref({ | 367 | const zuQuery = ref({ |
| ... | @@ -382,6 +383,14 @@ onMounted(() => { | ... | @@ -382,6 +383,14 @@ onMounted(() => { |
| 382 | language.value = 1 | 383 | language.value = 1 |
| 383 | } | 384 | } |
| 384 | } | 385 | } |
| 386 | var is_mobile = navigator.userAgent.toLowerCase().match(/(ipod|ipad|iphone|android|coolpad|mmp|smartphone|midp|wap|xoom|symbian|j2me|blackberry|wince)/i) != null; | ||
| 387 | console.log(is_mobile) | ||
| 388 | |||
| 389 | if (is_mobile) { | ||
| 390 | isphone.value = true | ||
| 391 | } else { | ||
| 392 | isphone.value = false | ||
| 393 | } | ||
| 385 | }) | 394 | }) |
| 386 | if (useUserStore().user) { | 395 | if (useUserStore().user) { |
| 387 | isLogin.value = true | 396 | isLogin.value = true |
| ... | @@ -453,11 +462,19 @@ function changePaytype() { | ... | @@ -453,11 +462,19 @@ function changePaytype() { |
| 453 | } | 462 | } |
| 454 | function goPay(){ | 463 | function goPay(){ |
| 455 | if(payType.value=='2' && form.value.payTypeArr.indexOf('2')>-1){ | 464 | if(payType.value=='2' && form.value.payTypeArr.indexOf('2')>-1){ |
| 465 | if(isphone.value){ | ||
| 466 | //拉起移动支付 | ||
| 467 | match.createWePayPhone({orderId:orderId.value}).then(res=>{ | ||
| 468 | hideconfirmbtn.value = true | ||
| 469 | window.location.href = res.data | ||
| 470 | }) | ||
| 471 | } else { | ||
| 456 | match.createWePay({orderId:orderId.value}).then(res=>{ | 472 | match.createWePay({orderId:orderId.value}).then(res=>{ |
| 457 | wePayCodeUrl.value = res.data | 473 | wePayCodeUrl.value = res.data |
| 458 | hideconfirmbtn.value = true | 474 | hideconfirmbtn.value = true |
| 459 | startforGetData() | 475 | startforGetData() |
| 460 | }) | 476 | }) |
| 477 | } | ||
| 461 | } else if(payType.value=='2' && form.value.payTypeArr.indexOf('2')==-1){ | 478 | } else if(payType.value=='2' && form.value.payTypeArr.indexOf('2')==-1){ |
| 462 | ElMessage.warning(language.value == 0 ? '请选择支付方式' : 'Please select payment method') | 479 | ElMessage.warning(language.value == 0 ? '请选择支付方式' : 'Please select payment method') |
| 463 | return | 480 | return | ... | ... |
| ... | @@ -23,8 +23,9 @@ | ... | @@ -23,8 +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?'代表国家/地区':'Representing'" required> | 26 | <el-form-item :label="language==0?'代表国家/地区':'Representing'"> |
| 27 | <el-select filterable v-model="form.countryId" @change="changeCountryId"> | 27 | <el-select filterable v-model="form.countryId" @change="changeCountryId" |
| 28 | :disabled="form.type!='4'"> | ||
| 28 | <!-- <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id"/>--> | 29 | <!-- <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id"/>--> |
| 29 | <el-option v-for="item in countryList" :key="item.id" :label="item.noc||item.enName" :value="item.id"/> | 30 | <el-option v-for="item in countryList" :key="item.id" :label="item.noc||item.enName" :value="item.id"/> |
| 30 | </el-select> | 31 | </el-select> |
| ... | @@ -195,7 +196,6 @@ onMounted(() => { | ... | @@ -195,7 +196,6 @@ onMounted(() => { |
| 195 | console.log(cptId.value,route.query,route.params) | 196 | console.log(cptId.value,route.query,route.params) |
| 196 | // 获取团体信息 | 197 | // 获取团体信息 |
| 197 | getGroupInfo() | 198 | getGroupInfo() |
| 198 | signType.value = route.query.signType | ||
| 199 | isNational.value = route.query.isNational | 199 | isNational.value = route.query.isNational |
| 200 | languageSource.value = route.query.languageSource | 200 | languageSource.value = route.query.languageSource |
| 201 | 201 | ... | ... |
| ... | @@ -30,7 +30,7 @@ | ... | @@ -30,7 +30,7 @@ |
| 30 | <el-input v-model="form.name" :placeholder="language==0?'请输入团体名称':''" /> | 30 | <el-input v-model="form.name" :placeholder="language==0?'请输入团体名称':''" /> |
| 31 | </el-form-item> | 31 | </el-form-item> |
| 32 | <el-form-item :label="language==0?'所属国家/地区':'Country'" required> | 32 | <el-form-item :label="language==0?'所属国家/地区':'Country'" required> |
| 33 | <el-select filterable v-model="form.countryId"> | 33 | <el-select filterable v-model="form.countryId" :disabled="form.type!='4'"> |
| 34 | <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id" /> | 34 | <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id" /> |
| 35 | </el-select> | 35 | </el-select> |
| 36 | </el-form-item> | 36 | </el-form-item> |
| ... | @@ -50,9 +50,9 @@ | ... | @@ -50,9 +50,9 @@ |
| 50 | <!-- </el-select>--> | 50 | <!-- </el-select>--> |
| 51 | <!-- </el-form-item>--> | 51 | <!-- </el-form-item>--> |
| 52 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type"> | 52 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type"> |
| 53 | <el-select :disabled="language==1" v-model="form.type" :placeholder="typeOptions[language].selectPlaceholder" style="width: 100%;"> | 53 | <el-select :disabled="form.type=='4'" v-model="form.type" :placeholder="typeOptions[language].selectPlaceholder" style="width: 100%;"> |
| 54 | <el-option v-for="(o,index) in typeOptions[language].options" :label="o.text" | 54 | <el-option v-for="(o,index) in typeOptions[language].options" :label="o.text" |
| 55 | :key="index" :value="o.value" /> | 55 | :key="index" :value="o.value" :disabled="o.disabled"/> |
| 56 | </el-select> | 56 | </el-select> |
| 57 | </el-form-item> | 57 | </el-form-item> |
| 58 | <el-form-item :label="language==0?'详细地址':'Detailed Address'" prop="address"> | 58 | <el-form-item :label="language==0?'详细地址':'Detailed Address'" prop="address"> |
| ... | @@ -131,7 +131,7 @@ const data = reactive({ | ... | @@ -131,7 +131,7 @@ const data = reactive({ |
| 131 | {value:'1',text:'专业舞蹈学校'}, | 131 | {value:'1',text:'专业舞蹈学校'}, |
| 132 | {value:'2',text:'培训机构/俱乐部'}, | 132 | {value:'2',text:'培训机构/俱乐部'}, |
| 133 | {value:'3',text:'地方协会'}, | 133 | {value:'3',text:'地方协会'}, |
| 134 | {value:'4',text:'国家协会'}, | 134 | {value:'4',text:'国家协会',disabled:true}, |
| 135 | ] | 135 | ] |
| 136 | }, | 136 | }, |
| 137 | 1: { | 137 | 1: { | ... | ... |
| ... | @@ -35,7 +35,7 @@ | ... | @@ -35,7 +35,7 @@ |
| 35 | </div> | 35 | </div> |
| 36 | </el-form-item> | 36 | </el-form-item> |
| 37 | <el-form-item :label="language==0?'代表国家/地区':'Representing'" required prop="countryId"> | 37 | <el-form-item :label="language==0?'代表国家/地区':'Representing'" required prop="countryId"> |
| 38 | <el-select filterable v-model="form.countryId"> | 38 | <el-select filterable v-model="form.countryId" :disabled="language==0&&form.is=='0'"> |
| 39 | <!-- <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id"/>--> | 39 | <!-- <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" :value="item.id"/>--> |
| 40 | <el-option v-for="item in countryList" :key="item.id" :label="item.noc||item.enName" :value="item.id"/> | 40 | <el-option v-for="item in countryList" :key="item.id" :label="item.noc||item.enName" :value="item.id"/> |
| 41 | </el-select> | 41 | </el-select> |
| ... | @@ -321,6 +321,9 @@ const changeIs = (e) => { | ... | @@ -321,6 +321,9 @@ const changeIs = (e) => { |
| 321 | if(e == 1){ | 321 | if(e == 1){ |
| 322 | form.value.type = '4' | 322 | form.value.type = '4' |
| 323 | } else { | 323 | } else { |
| 324 | if(language.value == '0'){ | ||
| 325 | form.value.countryId = 240 | ||
| 326 | } | ||
| 324 | form.value.type = '' | 327 | form.value.type = '' |
| 325 | } | 328 | } |
| 326 | } | 329 | } | ... | ... |
| ... | @@ -82,8 +82,8 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -82,8 +82,8 @@ export default defineConfig(({ mode, command }) => { |
| 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.131: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/, '') | ... | ... |
-
Please register or sign in to post a comment