no message
Showing
20 changed files
with
403 additions
and
73 deletions
| ... | @@ -55,13 +55,26 @@ watch(language,(val)=>{ | ... | @@ -55,13 +55,26 @@ watch(language,(val)=>{ |
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | .box { | 57 | .box { |
| 58 | width: 90%; | 58 | width: 1600px; |
| 59 | max-width: 1600px; | ||
| 60 | margin: auto; | 59 | margin: auto; |
| 61 | } | 60 | } |
| 61 | @media screen and (max-width: 1650px) { | ||
| 62 | .box { | ||
| 63 | width: 1200px; | ||
| 64 | } | ||
| 65 | } | ||
| 66 | @media screen and (max-width: 1200px) { | ||
| 67 | .box { | ||
| 68 | width: 860px; | ||
| 69 | } | ||
| 70 | } | ||
| 71 | @media screen and (max-width: 900px) { | ||
| 72 | .box { | ||
| 73 | width: 750px; | ||
| 74 | } | ||
| 75 | } | ||
| 62 | 76 | ||
| 63 | 77 | .app-main {min-height: 75vh; | |
| 64 | .app-main { | ||
| 65 | background: #F4F4F4; | 78 | background: #F4F4F4; |
| 66 | } | 79 | } |
| 67 | 80 | ... | ... |
| ... | @@ -1406,3 +1406,22 @@ img{display: block;} | ... | @@ -1406,3 +1406,22 @@ img{display: block;} |
| 1406 | :deep(.el-checkbox__input){position: absolute;right: 0;top: 0;} | 1406 | :deep(.el-checkbox__input){position: absolute;right: 0;top: 0;} |
| 1407 | .name{text-align: center;} | 1407 | .name{text-align: center;} |
| 1408 | } | 1408 | } |
| 1409 | |||
| 1410 | |||
| 1411 | //动画 | ||
| 1412 | @keyframes bounce-down { | ||
| 1413 | 25% { | ||
| 1414 | -webkit-transform: translateY(-5px); | ||
| 1415 | transform: translateY(-5px) | ||
| 1416 | } | ||
| 1417 | |||
| 1418 | 50%,to { | ||
| 1419 | -webkit-transform: translateY(0); | ||
| 1420 | transform: translateY(0) | ||
| 1421 | } | ||
| 1422 | |||
| 1423 | 75% { | ||
| 1424 | -webkit-transform: translateY(5px); | ||
| 1425 | transform: translateY(5px) | ||
| 1426 | } | ||
| 1427 | } | ... | ... |
| ... | @@ -248,7 +248,7 @@ function listToString(list, separator) { | ... | @@ -248,7 +248,7 @@ function listToString(list, separator) { |
| 248 | } | 248 | } |
| 249 | .upload-file-list .el-upload-list__item { | 249 | .upload-file-list .el-upload-list__item { |
| 250 | border: 1px solid #e4e7ed; | 250 | border: 1px solid #e4e7ed; |
| 251 | line-height: 2; | 251 | line-height: 2;padding: 0 10px; |
| 252 | margin-bottom: 10px; | 252 | margin-bottom: 10px; |
| 253 | position: relative; | 253 | position: relative; |
| 254 | } | 254 | } | ... | ... |
| ... | @@ -78,7 +78,6 @@ import {ElMessage, ElMessageBox} from 'element-plus' | ... | @@ -78,7 +78,6 @@ import {ElMessage, ElMessageBox} from 'element-plus' |
| 78 | import _ from 'lodash' | 78 | import _ from 'lodash' |
| 79 | import useUserStore from "@/store/modules/user"; | 79 | import useUserStore from "@/store/modules/user"; |
| 80 | import cache from "@/plugins/cache"; | 80 | import cache from "@/plugins/cache"; |
| 81 | import {recoverMySignFromCancel} from "@/apiPc/match"; | ||
| 82 | const language = ref(cache.local.get('language') || 0) | 81 | const language = ref(cache.local.get('language') || 0) |
| 83 | const router = useRouter() | 82 | const router = useRouter() |
| 84 | const {proxy} = getCurrentInstance() | 83 | const {proxy} = getCurrentInstance() | ... | ... |
| ... | @@ -52,7 +52,7 @@ | ... | @@ -52,7 +52,7 @@ |
| 52 | 52 | ||
| 53 | <!-- 添加人员--> | 53 | <!-- 添加人员--> |
| 54 | <addCoach ref="dialogAddCoach" @submitForm="getList"/> | 54 | <addCoach ref="dialogAddCoach" @submitForm="getList"/> |
| 55 | <Import ref="dialogImportProps" @uploadSuccess="getList"/> | 55 | <Import ref="dialogImportProps" @submitForm="getList"/> |
| 56 | </template> | 56 | </template> |
| 57 | 57 | ||
| 58 | <script setup> | 58 | <script setup> | ... | ... |
| ... | @@ -23,6 +23,12 @@ | ... | @@ -23,6 +23,12 @@ |
| 23 | <el-form-item :label="language==0?'机构名称':'Team Name'" required prop="name"> | 23 | <el-form-item :label="language==0?'机构名称':'Team Name'" required prop="name"> |
| 24 | <el-input type="text" v-model="form.name" :placeholder="language==0?'请输入内容':''"/> | 24 | <el-input type="text" v-model="form.name" :placeholder="language==0?'请输入内容':''"/> |
| 25 | </el-form-item> | 25 | </el-form-item> |
| 26 | <el-form-item :label="language==0?'专业/业余':'Professional/Amateur'" required prop="majorFlag"> | ||
| 27 | <el-select v-model="form.majorFlag"> | ||
| 28 | <el-option :label="language==0?'专业':'Professional'" value="1" /> | ||
| 29 | <el-option :label="language==0?'业余':'Amateur'" value="0" /> | ||
| 30 | </el-select> | ||
| 31 | </el-form-item> | ||
| 26 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type" required> | 32 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type" required> |
| 27 | <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;"> | 33 | <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;"> |
| 28 | <el-option :label="language==0?'普通院校':'School'" value="0" /> | 34 | <el-option :label="language==0?'普通院校':'School'" value="0" /> | ... | ... |
| ... | @@ -15,6 +15,11 @@ | ... | @@ -15,6 +15,11 @@ |
| 15 | <a class="fr" @click="emptyChoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> | 15 | <a class="fr" @click="emptyChoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> |
| 16 | </div> | 16 | </div> |
| 17 | <div class="panel-body" style="padding: 10px"> | 17 | <div class="panel-body" style="padding: 10px"> |
| 18 | <div style="margin: 0 4px 10px"> | ||
| 19 | <el-input size="small" v-model="athletesQuery.name" :prefix-icon="Search" | ||
| 20 | @change="queryAthletes" | ||
| 21 | clearable/> | ||
| 22 | </div> | ||
| 18 | <div class="noPicChooseForm"> | 23 | <div class="noPicChooseForm"> |
| 19 | <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> | 24 | <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> |
| 20 | <el-button plain @click="chooseSportman">+{{ language == 0 ?'选择':'add' }}</el-button> | 25 | <el-button plain @click="chooseSportman">+{{ language == 0 ?'选择':'add' }}</el-button> |
| ... | @@ -37,16 +42,17 @@ | ... | @@ -37,16 +42,17 @@ |
| 37 | <h3 class="panel-title" v-else>Select a Participating team</h3> | 42 | <h3 class="panel-title" v-else>Select a Participating team</h3> |
| 38 | <a class="fr" @click="emptyChangechoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> | 43 | <a class="fr" @click="emptyChangechoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> |
| 39 | </div> | 44 | </div> |
| 40 | <div class="panel-body"> | 45 | <div class="panel-body" style="padding: 10px"> |
| 46 | <div class="mb20"><el-input size="small" v-model="zuQuery.name" :prefix-icon="Search" | ||
| 47 | @change="queryTeam" clearable/></div> | ||
| 41 | <div class="chooseForm"> | 48 | <div class="chooseForm"> |
| 42 | <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> | 49 | <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> |
| 43 | <!-- v-show="choosedchoosed.indexOf(c.id) !== -1"--> | 50 | <!-- v-show="choosedchoosed.indexOf(c.id) !== -1"--> |
| 44 | <el-checkbox v-for="c in choosed2List" :label="c.id" checked> | 51 | <el-checkbox v-for="c in choosed2List" :label="c.id" checked> |
| 45 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> | 52 | <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> |
| 46 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="@/assets/img/head1.png"/> | 53 | <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> |
| 47 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="@/assets/img/head0.png"/> | 54 | <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> |
| 48 | <p class="name">{{ c.realName }} | 55 | <p class="name">{{ c.realName }} |
| 49 | <!-- ({{ c.sexStr }})--> | ||
| 50 | <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> | 56 | <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> |
| 51 | <img v-if="c.sex=='1'" src="@/assets/img/male.png"/> | 57 | <img v-if="c.sex=='1'" src="@/assets/img/male.png"/> |
| 52 | <!-- <el-icon @click.stop="editPerson(c.id)">--> | 58 | <!-- <el-icon @click.stop="editPerson(c.id)">--> |
| ... | @@ -185,6 +191,12 @@ const data = reactive({ | ... | @@ -185,6 +191,12 @@ const data = reactive({ |
| 185 | signInfoList: [], | 191 | signInfoList: [], |
| 186 | zuTableList: [], | 192 | zuTableList: [], |
| 187 | choosedList: [], | 193 | choosedList: [], |
| 194 | athletesQuery: { | ||
| 195 | name:'' | ||
| 196 | }, | ||
| 197 | zuQuery: { | ||
| 198 | name:'' | ||
| 199 | }, | ||
| 188 | extraPersonInfoMapList: [], | 200 | extraPersonInfoMapList: [], |
| 189 | teamList: [], | 201 | teamList: [], |
| 190 | extraform: [], | 202 | extraform: [], |
| ... | @@ -206,7 +218,8 @@ const data = reactive({ | ... | @@ -206,7 +218,8 @@ const data = reactive({ |
| 206 | const { | 218 | const { |
| 207 | activeTeam, names, tableData, signInfoList, zuTableList, choosedList, showExtraForm, extraPersonInfoMapList, teamList, | 219 | activeTeam, names, tableData, signInfoList, zuTableList, choosedList, showExtraForm, extraPersonInfoMapList, teamList, |
| 208 | extraform, groupId, signType, coachOrLeaderFlag, showResult, noPhotoCanSign, extraTableHead, | 220 | extraform, groupId, signType, coachOrLeaderFlag, showResult, noPhotoCanSign, extraTableHead, |
| 209 | coachForm, projectIds, choosedchoosed, activeStep, projectList, choosed2List, loadingProject, projectQuery, tableType | 221 | coachForm, projectIds, choosedchoosed, activeStep, projectList, choosed2List, loadingProject, |
| 222 | projectQuery, tableType,athletesQuery,zuQuery | ||
| 210 | } = toRefs(data) | 223 | } = toRefs(data) |
| 211 | const matchId = ref(route.query.matchId) | 224 | const matchId = ref(route.query.matchId) |
| 212 | let signInfoType = null | 225 | let signInfoType = null |
| ... | @@ -407,7 +420,22 @@ function getProjectList() { | ... | @@ -407,7 +420,22 @@ function getProjectList() { |
| 407 | ElMessage.error(err.msg) | 420 | ElMessage.error(err.msg) |
| 408 | }) | 421 | }) |
| 409 | } | 422 | } |
| 410 | 423 | function queryAthletes() { | |
| 424 | if(athletesQuery.value.name) | ||
| 425 | for(var t of choosedList.value){ | ||
| 426 | if(t.realName.indexOf(athletesQuery.value.name)>-1){ | ||
| 427 | // 筛选 | ||
| 428 | } | ||
| 429 | } | ||
| 430 | } | ||
| 431 | function queryTeam() { | ||
| 432 | if(zuQuery.value.name) | ||
| 433 | for(var t of choosedList.value){ | ||
| 434 | if(t.realName.indexOf(zuQuery.value.name)>-1){ | ||
| 435 | // 筛选 | ||
| 436 | } | ||
| 437 | } | ||
| 438 | } | ||
| 411 | function getChoosed(list) { | 439 | function getChoosed(list) { |
| 412 | console.log(list) | 440 | console.log(list) |
| 413 | choosedList.value = list | 441 | choosedList.value = list |
| ... | @@ -454,6 +482,7 @@ function emptyChangechoosed() { | ... | @@ -454,6 +482,7 @@ function emptyChangechoosed() { |
| 454 | choosedchoosed.value = [] | 482 | choosedchoosed.value = [] |
| 455 | choosed2List.value = [] | 483 | choosed2List.value = [] |
| 456 | projectList.value = [] | 484 | projectList.value = [] |
| 485 | projectIds.value = [] | ||
| 457 | } | 486 | } |
| 458 | 487 | ||
| 459 | function delchoosedchoosed() { | 488 | function delchoosedchoosed() { |
| ... | @@ -466,18 +495,13 @@ function delchoosedchoosed() { | ... | @@ -466,18 +495,13 @@ function delchoosedchoosed() { |
| 466 | choosedchoosed.value = [] | 495 | choosedchoosed.value = [] |
| 467 | } | 496 | } |
| 468 | 497 | ||
| 469 | |||
| 470 | function editMates(row) { | ||
| 471 | const params = { | ||
| 472 | title: '更换队友' | ||
| 473 | } | ||
| 474 | proxy.$refs['dialogMatesRef'].open(params) | ||
| 475 | } | ||
| 476 | |||
| 477 | function signUp() { | 498 | function signUp() { |
| 478 | if (projectIds.value.length == 0) { | 499 | if (projectIds.value.length == 0) { |
| 479 | return | 500 | return |
| 480 | } | 501 | } |
| 502 | if (choosedchoosed.value.length == 0) { | ||
| 503 | return | ||
| 504 | } | ||
| 481 | const obj = { | 505 | const obj = { |
| 482 | athleteIds: choosedchoosed.value.toString(), | 506 | athleteIds: choosedchoosed.value.toString(), |
| 483 | projectIds: projectIds.value.toString(), | 507 | projectIds: projectIds.value.toString(), |
| ... | @@ -487,6 +511,7 @@ function signUp() { | ... | @@ -487,6 +511,7 @@ function signUp() { |
| 487 | choosedchoosed.value = [] | 511 | choosedchoosed.value = [] |
| 488 | choosed2List.value = [] | 512 | choosed2List.value = [] |
| 489 | projectList.value = [] | 513 | projectList.value = [] |
| 514 | projectIds.value = [] | ||
| 490 | getSignInfoList() | 515 | getSignInfoList() |
| 491 | }) | 516 | }) |
| 492 | } | 517 | } |
| ... | @@ -728,7 +753,7 @@ function switchTabletype() { | ... | @@ -728,7 +753,7 @@ function switchTabletype() { |
| 728 | } | 753 | } |
| 729 | } | 754 | } |
| 730 | } | 755 | } |
| 731 | .noPicChooseForm{ | 756 | .noPicChooseForm{overflow: auto;height: 70vh; |
| 732 | .el-checkbox-group{display: flex;flex-wrap: wrap;text-align: justify; | 757 | .el-checkbox-group{display: flex;flex-wrap: wrap;text-align: justify; |
| 733 | .el-button{width: 31%;margin:1%;} | 758 | .el-button{width: 31%;margin:1%;} |
| 734 | .el-checkbox{margin: 1%;width: 31%;overflow: hidden;} | 759 | .el-checkbox{margin: 1%;width: 31%;overflow: hidden;} | ... | ... |
| ... | @@ -128,6 +128,7 @@ const emit = defineEmits(['submitForm']) | ... | @@ -128,6 +128,7 @@ const emit = defineEmits(['submitForm']) |
| 128 | const data = reactive({ | 128 | const data = reactive({ |
| 129 | form: { | 129 | form: { |
| 130 | // countryId: 240 | 130 | // countryId: 240 |
| 131 | sex:'0' | ||
| 131 | }, | 132 | }, |
| 132 | rules: { | 133 | rules: { |
| 133 | xing: [{required: true, message: '必填', trigger: 'blur'}], | 134 | xing: [{required: true, message: '必填', trigger: 'blur'}], | ... | ... |
| ... | @@ -64,13 +64,13 @@ | ... | @@ -64,13 +64,13 @@ |
| 64 | </template> | 64 | </template> |
| 65 | </el-table-column> | 65 | </el-table-column> |
| 66 | </el-table> | 66 | </el-table> |
| 67 | <paginationPc | 67 | <!-- <paginationPc--> |
| 68 | v-show="total>0" | 68 | <!-- v-show="total>0"--> |
| 69 | v-model:page="query.pageNum" | 69 | <!-- v-model:page="query.pageNum"--> |
| 70 | v-model:limit="query.pageSize" | 70 | <!-- v-model:limit="query.pageSize"--> |
| 71 | :total="total" | 71 | <!-- :total="total"--> |
| 72 | @pagination="getList" | 72 | <!-- @pagination="getList"--> |
| 73 | /> | 73 | <!-- />--> |
| 74 | <template #footer> | 74 | <template #footer> |
| 75 | <div class="dialog-footer text-center"> | 75 | <div class="dialog-footer text-center"> |
| 76 | <el-button type="primary" @click="submitForm">{{language==0?'确定':'Confirm'}}</el-button> | 76 | <el-button type="primary" @click="submitForm">{{language==0?'确定':'Confirm'}}</el-button> |
| ... | @@ -80,7 +80,7 @@ | ... | @@ -80,7 +80,7 @@ |
| 80 | </el-dialog> | 80 | </el-dialog> |
| 81 | 81 | ||
| 82 | <addCoach ref="dialogAddCoach" @submitForm="getList"/> | 82 | <addCoach ref="dialogAddCoach" @submitForm="getList"/> |
| 83 | <Import ref="dialogImportProps" @uploadSuccess="getList"/> | 83 | <Import ref="dialogImportProps" @submitForm="getList"/> |
| 84 | </template> | 84 | </template> |
| 85 | 85 | ||
| 86 | <script setup> | 86 | <script setup> |
| ... | @@ -95,12 +95,10 @@ import cache from "@/plugins/cache"; | ... | @@ -95,12 +95,10 @@ import cache from "@/plugins/cache"; |
| 95 | const language = ref(cache.local.get('language') || 0) | 95 | const language = ref(cache.local.get('language') || 0) |
| 96 | 96 | ||
| 97 | const {proxy} = getCurrentInstance() | 97 | const {proxy} = getCurrentInstance() |
| 98 | const emit = defineEmits(['submitForm', 'transfer']) | 98 | const emit = defineEmits([ 'transfer']) |
| 99 | const data = reactive({ | 99 | const data = reactive({ |
| 100 | query: { | 100 | query: { |
| 101 | label:'0', | 101 | label:'0' |
| 102 | pageNum:1, | ||
| 103 | pageSize:10 | ||
| 104 | }, | 102 | }, |
| 105 | tableData: [], | 103 | tableData: [], |
| 106 | show: false, | 104 | show: false, | ... | ... |
| ... | @@ -8,7 +8,8 @@ | ... | @@ -8,7 +8,8 @@ |
| 8 | </el-form-item> | 8 | </el-form-item> |
| 9 | 9 | ||
| 10 | <el-form-item :label="language==0?'上传模板':'Upload template'" prop="discount"> | 10 | <el-form-item :label="language==0?'上传模板':'Upload template'" prop="discount"> |
| 11 | <fileImport :text="language==0?'选取文件':'Select File'" ref="upload" name="excel" :action="action" @uploadSuccess="uploadSuccess" /> | 11 | <fileImport :text="language==0?'选取文件':'Select File'" ref="upload" name="excel" |
| 12 | :action="action" @uploadSuccess="submit" /> | ||
| 12 | </el-form-item> | 13 | </el-form-item> |
| 13 | </el-form> | 14 | </el-form> |
| 14 | 15 | ||
| ... | @@ -25,7 +26,7 @@ import { ElMessage, ElMessageBox } from 'element-plus' | ... | @@ -25,7 +26,7 @@ import { ElMessage, ElMessageBox } from 'element-plus' |
| 25 | 26 | ||
| 26 | const { proxy } = getCurrentInstance() | 27 | const { proxy } = getCurrentInstance() |
| 27 | import useUserStore from '@/store/modules/user' | 28 | import useUserStore from '@/store/modules/user' |
| 28 | const emit = defineEmits(['uploadSuccess']) | 29 | const emit = defineEmits(['submitForm']) |
| 29 | import cache from "@/plugins/cache" | 30 | import cache from "@/plugins/cache" |
| 30 | const language = ref(cache.local.get('language') || 0) | 31 | const language = ref(cache.local.get('language') || 0) |
| 31 | const action = ref('') | 32 | const action = ref('') |
| ... | @@ -37,7 +38,7 @@ let groupId = 0 | ... | @@ -37,7 +38,7 @@ let groupId = 0 |
| 37 | if(useUserStore().group){ | 38 | if(useUserStore().group){ |
| 38 | groupId = useUserStore().group.id | 39 | groupId = useUserStore().group.id |
| 39 | } | 40 | } |
| 40 | function uploadSuccess(res) { | 41 | function submit(res) { |
| 41 | console.log(res) | 42 | console.log(res) |
| 42 | cancel() | 43 | cancel() |
| 43 | if (res.code == 500) { | 44 | if (res.code == 500) { |
| ... | @@ -48,9 +49,6 @@ function uploadSuccess(res) { | ... | @@ -48,9 +49,6 @@ function uploadSuccess(res) { |
| 48 | if(res.data.repeatInSystemColumn.length>0){ | 49 | if(res.data.repeatInSystemColumn.length>0){ |
| 49 | proxy.$modal.msgError(`${res.data.repeatInSystemColumn}${language.value==0?'系统中已存在':'is in system'}`) | 50 | proxy.$modal.msgError(`${res.data.repeatInSystemColumn}${language.value==0?'系统中已存在':'is in system'}`) |
| 50 | } | 51 | } |
| 51 | if(res.data.errCountryColumn.length>0){ | ||
| 52 | proxy.$modal.msgError(`${res.data.errCountryColumn}${language.value==0?'所属国家有误':'error Country'}`) | ||
| 53 | } | ||
| 54 | if(res.data.errIdcTypeColumn.length>0){ | 52 | if(res.data.errIdcTypeColumn.length>0){ |
| 55 | proxy.$modal.msgError(`${res.data.errIdcTypeColumn}${language.value==0?'证件号错误':'error ID type'}`) | 53 | proxy.$modal.msgError(`${res.data.errIdcTypeColumn}${language.value==0?'证件号错误':'error ID type'}`) |
| 56 | } | 54 | } |
| ... | @@ -65,9 +63,8 @@ function uploadSuccess(res) { | ... | @@ -65,9 +63,8 @@ function uploadSuccess(res) { |
| 65 | } | 63 | } |
| 66 | 64 | ||
| 67 | } | 65 | } |
| 68 | |||
| 69 | emit('uploadSuccess') | ||
| 70 | proxy.$refs['upload'].handleClear() | 66 | proxy.$refs['upload'].handleClear() |
| 67 | emit('submitForm') | ||
| 71 | } | 68 | } |
| 72 | 69 | ||
| 73 | const open = (params) => { | 70 | const open = (params) => { | ... | ... |
| ... | @@ -46,6 +46,7 @@ const props = defineProps({ | ... | @@ -46,6 +46,7 @@ const props = defineProps({ |
| 46 | color:var(--el-color-primary); | 46 | color:var(--el-color-primary); |
| 47 | } | 47 | } |
| 48 | } | 48 | } |
| 49 | p img{max-width: 100%;} | ||
| 49 | .table{width: 100%;border-left: 1px solid #e1e1e1;border-top:1px solid #e1e1e1; | 50 | .table{width: 100%;border-left: 1px solid #e1e1e1;border-top:1px solid #e1e1e1; |
| 50 | th{background: #eee;padding: 6px 10px; | 51 | th{background: #eee;padding: 6px 10px; |
| 51 | border-right: 1px solid #e1e1e1; | 52 | border-right: 1px solid #e1e1e1; | ... | ... |
| ... | @@ -5,7 +5,11 @@ | ... | @@ -5,7 +5,11 @@ |
| 5 | <el-table-column :label="language==0?'组别代码':'Group code'" width="120px" prop="zuName"/> | 5 | <el-table-column :label="language==0?'组别代码':'Group code'" width="120px" prop="zuName"/> |
| 6 | <el-table-column :label="language==0?'组别':'Group'" prop="project.name"/> | 6 | <el-table-column :label="language==0?'组别':'Group'" prop="project.name"/> |
| 7 | <el-table-column :label="language==0?'舞种':'Dance Style'" width="120px" prop="project.danceType"/> | 7 | <el-table-column :label="language==0?'舞种':'Dance Style'" width="120px" prop="project.danceType"/> |
| 8 | <el-table-column :label="language==0?'参赛说明':'Participation Instructions'" prop="project.remarks"/> | 8 | <el-table-column :label="language==0?'参赛说明':'Participation Instructions'"> |
| 9 | <template #default="scope"> | ||
| 10 | <div v-html="scope.row.project.remarks"></div> | ||
| 11 | </template> | ||
| 12 | </el-table-column> | ||
| 9 | <el-table-column :label="language==0?'参赛运动员':'Participating athletes'" width="120px"> | 13 | <el-table-column :label="language==0?'参赛运动员':'Participating athletes'" width="120px"> |
| 10 | <template #default="scope"> | 14 | <template #default="scope"> |
| 11 | <div> | 15 | <div> | ... | ... |
| ... | @@ -353,6 +353,21 @@ function checkIsSign() { | ... | @@ -353,6 +353,21 @@ function checkIsSign() { |
| 353 | 353 | ||
| 354 | return Promise.reject('rejected message') | 354 | return Promise.reject('rejected message') |
| 355 | } | 355 | } |
| 356 | if (res.data.type == '2') { | ||
| 357 | ElMessageBox.confirm( | ||
| 358 | '报名审批拒绝,是否重新报名', | ||
| 359 | '提示', | ||
| 360 | { | ||
| 361 | confirmButtonText: '确定', | ||
| 362 | cancelButtonText: '取消', | ||
| 363 | type: 'warning', | ||
| 364 | } | ||
| 365 | ).then(() => { | ||
| 366 | match.recoverMySignFromCancel(n.id).then((res)=>{ | ||
| 367 | |||
| 368 | }) | ||
| 369 | }) | ||
| 370 | } | ||
| 356 | }) | 371 | }) |
| 357 | } | 372 | } |
| 358 | </script> | 373 | </script> | ... | ... |
| ... | @@ -395,6 +395,21 @@ function checkIsSign() { | ... | @@ -395,6 +395,21 @@ function checkIsSign() { |
| 395 | }) | 395 | }) |
| 396 | return Promise.reject('rejected message') | 396 | return Promise.reject('rejected message') |
| 397 | } | 397 | } |
| 398 | if (res.data.type == '2') { | ||
| 399 | ElMessageBox.confirm( | ||
| 400 | 'Registration approval rejected. Do you want to reapply', | ||
| 401 | 'Warning', | ||
| 402 | { | ||
| 403 | confirmButtonText: 'OK', | ||
| 404 | cancelButtonText: 'Cancel', | ||
| 405 | type: 'warning', | ||
| 406 | } | ||
| 407 | ).then(() => { | ||
| 408 | match.recoverMySignFromCancel(n.id).then((res)=>{ | ||
| 409 | |||
| 410 | }) | ||
| 411 | }) | ||
| 412 | } | ||
| 398 | }) | 413 | }) |
| 399 | } | 414 | } |
| 400 | </script> | 415 | </script> | ... | ... |
src/viewsPc/match/import.html
0 → 100644
| 1 | <!DOCTYPE html> | ||
| 2 | <html lang="en"> | ||
| 3 | <head> | ||
| 4 | <meta charset="UTF-8"> | ||
| 5 | <title></title> | ||
| 6 | </head> | ||
| 7 | <style lang="scss"> | ||
| 8 | .row { | ||
| 9 | display: flex; | ||
| 10 | } | ||
| 11 | |||
| 12 | .border-info { | ||
| 13 | .item { | ||
| 14 | margin: 5px 0; | ||
| 15 | color: #4C5359; | ||
| 16 | font-size: 14px; | ||
| 17 | |||
| 18 | label { | ||
| 19 | font-size: 14px; | ||
| 20 | margin-right: 14px | ||
| 21 | } | ||
| 22 | } | ||
| 23 | } | ||
| 24 | .rowSummary{text-align: right;padding: 0 20px; | ||
| 25 | height: 40px;line-height: 40px; | ||
| 26 | background: #FAFBFD;font-size: 16px; | ||
| 27 | color: #95A1A6; | ||
| 28 | border: 1px solid #EEEFF0; | ||
| 29 | span{font-size: 18px;font-family: DIN Alternate; | ||
| 30 | color: #000;} | ||
| 31 | } | ||
| 32 | </style> | ||
| 33 | <body> | ||
| 34 | <!--赛事信息/league/competition/PCDetail--> | ||
| 35 | <div class="border-info" style="margin: 20px"> | ||
| 36 | <div class="row" v-if="language==0"> | ||
| 37 | <div> | ||
| 38 | <div class="item"><label>赛事名称</label>{{ matchInfo.name }}</div> | ||
| 39 | </div> | ||
| 40 | <div> | ||
| 41 | <div class="item"><label>赛事类型</label>{{ matchInfo.level }}</div> | ||
| 42 | </div> | ||
| 43 | <div> | ||
| 44 | <div class="item"><label>赛事时间</label>{{ matchInfo.beginTime?.slice(0, 10) }} 至 | ||
| 45 | {{ matchInfo.endTime?.slice(0, 10) }} | ||
| 46 | </div> | ||
| 47 | </div> | ||
| 48 | <div> | ||
| 49 | <div class="item"><label>报名时间</label>{{ matchInfo.signBeginTime?.slice(0, 10) }} | ||
| 50 | 至{{ matchInfo.signEndTime?.slice(0, 10) }} | ||
| 51 | </div> | ||
| 52 | </div> | ||
| 53 | <div> | ||
| 54 | <div class="item"><label>比赛地址</label>{{ matchInfo.address }}</div> | ||
| 55 | </div> | ||
| 56 | </div> | ||
| 57 | <div v-else> | ||
| 58 | <div> | ||
| 59 | <div class="item"><label>Event Name</label>{{ matchInfo.name }}</div> | ||
| 60 | </div> | ||
| 61 | <div> | ||
| 62 | <div class="item"><label>Event Type</label>{{ matchInfo.level }}</div> | ||
| 63 | </div> | ||
| 64 | <div> | ||
| 65 | <div class="item"><label>Event Date</label>{{ matchInfo.beginTime?.slice(0, 10) }} ~ | ||
| 66 | {{ matchInfo.endTime?.slice(0, 10) }} | ||
| 67 | </div> | ||
| 68 | </div> | ||
| 69 | <div> | ||
| 70 | <div class="item"><label>Registration Period</label>{{ matchInfo.signBeginTime?.slice(0, 10) }} | ||
| 71 | ~{{ matchInfo.signEndTime?.slice(0, 10) }} | ||
| 72 | </div> | ||
| 73 | </div> | ||
| 74 | <div> | ||
| 75 | <div class="item"><label>Event Address</label>{{ matchInfo.address }}</div> | ||
| 76 | </div> | ||
| 77 | </div> | ||
| 78 | </div> | ||
| 79 | <!--团队信息/league/group/getMyGroupForCpt/${groupId}/${cptId}--> | ||
| 80 | <div class="border-info gray" style="margin: 20px"> | ||
| 81 | <div class="row"> | ||
| 82 | <div> | ||
| 83 | <div> | ||
| 84 | <div> | ||
| 85 | <img class="w100" :src="fillImgUrl(groupInfo.imgUrl)"/> | ||
| 86 | </div> | ||
| 87 | <div> | ||
| 88 | <div class="item"><label>{{ language == 0 ? '团体名称' : 'Team Name' }}</label>{{ groupInfo.name }} | ||
| 89 | </div> | ||
| 90 | <div class="item"><label>{{ language == 0 ? '团体类型' : 'Group type' }}</label>{{ | ||
| 91 | groupInfo.typeStr | ||
| 92 | }} | ||
| 93 | </div> | ||
| 94 | </div> | ||
| 95 | </div> | ||
| 96 | </div> | ||
| 97 | <div> | ||
| 98 | <div class="item"><label>{{ | ||
| 99 | language == 0 ? '负责人姓名' : 'Contact Person' | ||
| 100 | }}</label>{{ groupInfo.contactPerson }} | ||
| 101 | </div> | ||
| 102 | <div class="item"><label>{{ | ||
| 103 | language == 0 ? '参赛队名称' : 'Name of participating team' | ||
| 104 | }}</label>{{ groupInfo.abreviations }} | ||
| 105 | </div> | ||
| 106 | |||
| 107 | </div> | ||
| 108 | <div> | ||
| 109 | <div class="item"><label>{{ language == 0 ? '邮箱' : 'Email' }}</label>{{ groupInfo.contactEmail }}</div> | ||
| 110 | <div class="item"><label>{{ language == 0 ? '详细地址' : 'Detailed Address' }}</label>{{ | ||
| 111 | groupInfo.address | ||
| 112 | }} | ||
| 113 | </div> | ||
| 114 | </div> | ||
| 115 | </div> | ||
| 116 | </div> | ||
| 117 | <!--组别报项信息/league/sign/getMySignInfoList zuData--> | ||
| 118 | <div> | ||
| 119 | <table> | ||
| 120 | <tr> | ||
| 121 | <th>{{ language == 0 ? '序号' : 'Index' }}</th> | ||
| 122 | <th>{{ language == 0 ? '组别代码' : 'Group code' }}</th> | ||
| 123 | <th>{{ language == 0 ? '组别' : 'Group' }}</th> | ||
| 124 | <th>{{ language == 0 ? '舞种' : 'Dance Style' }}</th> | ||
| 125 | <th>{{ language == 0 ? '参赛说明' : 'Participation Instructions' }}</th> | ||
| 126 | <th>{{ language == 0 ? '参赛运动员' : 'Participating athletes' }}</th> | ||
| 127 | <th>{{ language == 0 ? '报名费' : 'Registration Fee' }}</th> | ||
| 128 | </tr> | ||
| 129 | <tr v-for="(row,index) in list"> | ||
| 130 | <td>{{ index + 1 }}</td> | ||
| 131 | <td>{{ row.zuName }}</td> | ||
| 132 | <td>{{ row.project.name }}</td> | ||
| 133 | <td>{{ row.project.danceType }}</td> | ||
| 134 | <td>{{ row.project.remarks }}</td> | ||
| 135 | <td> | ||
| 136 | <span v-for="s in row.athletes">{{ s.name }},</span> | ||
| 137 | </td> | ||
| 138 | <td> {{ language == 0 ? '¥' : '€' }}{{ row.project.serviceFee }}</td> | ||
| 139 | </tr> | ||
| 140 | </table> | ||
| 141 | </div> | ||
| 142 | <!--人员报名信息/league/sign/getMySignInfoList singleData--> | ||
| 143 | <!--/league/competition/getCptExtraInfo/${cptId} 补充信息表头--> | ||
| 144 | <div> | ||
| 145 | <table> | ||
| 146 | <tr> | ||
| 147 | <th>{{ language == 0 ? '序号' : 'Index' }}</th> | ||
| 148 | <th>{{ language == 0 ? '姓氏' : 'Surname' }}</th> | ||
| 149 | <th>{{ language == 0 ? '名' : 'Name' }}</th> | ||
| 150 | <th>{{ language == 0 ? '所属国家' : 'Nationality' }}</th> | ||
| 151 | <th>{{ language == 0 ? '性别' : 'Gender' }}</th> | ||
| 152 | <th>{{ language == 0 ? '证件类型' : 'ID Type' }}</th> | ||
| 153 | <th>{{ language == 0 ? '证件号码' : 'ID NO.' }}</th> | ||
| 154 | <th>{{ language == 0 ? '出生日期' : 'Birth' }}</th> | ||
| 155 | <th>{{ language == 0 ? '会员角色' : 'Role' }}</th> | ||
| 156 | <th>{{ language==0?'报项':'Entries' }}</th> | ||
| 157 | <th v-for="(e,index) in extraTableHead">{{e}}</th> | ||
| 158 | </tr> | ||
| 159 | <tr v-for="(row,index) in personList"> | ||
| 160 | <td>{{ index + 1 }}</td> | ||
| 161 | <td>{{row.personInfo.xing}}</td> | ||
| 162 | <td>{{row.personInfo.ming}}</td> | ||
| 163 | <td> | ||
| 164 | <span v-if="row.personInfo.countryName">{{row.personInfo.countryName}}</span> | ||
| 165 | <span v-if="row.personInfo.representing">{{row.personInfo.representing}}</span> | ||
| 166 | </td> | ||
| 167 | <td>{{row.personInfo.sexStr}}</td> | ||
| 168 | <td>{{row.personInfo.idcTypeStr}}</td> | ||
| 169 | <td>{{row.personInfo.idcCode}}</td> | ||
| 170 | <td>{{row.personInfo.birth}}</td> | ||
| 171 | <td> | ||
| 172 | <span v-for="item in row.personInfo.label?.split(',')" :key="item.id" class="text-primary"> | ||
| 173 | <span v-if="item==='0'" class="ml5">{{ language == 0 ? '运动员' : 'athletes' }}</span> | ||
| 174 | <span v-if="item==='1'" class="ml5">{{ language == 0 ? '教练' : 'coach' }}</span> | ||
| 175 | <span v-if="item==='2'" class="ml5">{{ language == 0 ? '领队' : 'team leader' }}</span> | ||
| 176 | <span v-if="item==='3'" class="ml5">{{ language == 0 ? '队医' : 'team doctor' }}</span> | ||
| 177 | <span v-if="item==='4'" class="ml5">{{ language == 0 ? '翻译' : 'translator' }}</span> | ||
| 178 | <span v-if="item==='5'" class="ml5">{{ language == 0 ? '官员' : 'official' }}</span> | ||
| 179 | <span v-if="item==='6'" class="ml5">{{ language == 0 ? '其他' : 'other' }}</span> | ||
| 180 | </span> | ||
| 181 | </td> | ||
| 182 | <td> | ||
| 183 | <ol> | ||
| 184 | <li v-for="s in row.signInfo"> | ||
| 185 | {{ s.cptProjectName }} | ||
| 186 | {{ s.cptGroupName }}{{ s.cptLevelName }} | ||
| 187 | <span v-show="s.cptSonLevelName">[{{ s.cptSonLevelName }}]</span> | ||
| 188 | <span v-show="s.zu">-{{ s.zu }}</span> | ||
| 189 | </li> | ||
| 190 | </ol> | ||
| 191 | </td> | ||
| 192 | <td v-for="(e,index) in extraTableHead" :key="index"> | ||
| 193 | <a v-if="row.signInfo[0].extraPersonInfoMapList[index]?.type=='2'" | ||
| 194 | :herf="row.signInfo[0].extraPersonInfoMapList[index].value.url"> | ||
| 195 | {{ row.signInfo[0].extraPersonInfoMapList[index].value.name }} | ||
| 196 | </a> | ||
| 197 | <img v-else-if="row.signInfo[0].extraPersonInfoMapList[index]?.type=='3'" style="width: 50px;" | ||
| 198 | :src="row.signInfo[0].extraPersonInfoMapList[index].value.url||row.signInfo[0].extraPersonInfoMapList[index].value"> | ||
| 199 | <span v-else>{{ row.signInfo[0].extraPersonInfoMapList[index]?.value }}</span> | ||
| 200 | </td> | ||
| 201 | </tr> | ||
| 202 | </table> | ||
| 203 | <div class="rowSummary"> | ||
| 204 | <div> | ||
| 205 | {{ language==0?'总人数':'Count' }}: <span class="mr20">{{ list.length }}</span> | ||
| 206 | |||
| 207 | {{ language==0?'金额小计':'Amount' }}: <span>{{ language==0?'¥':'€' }}{{ total }}</span> | ||
| 208 | </div> | ||
| 209 | </div> | ||
| 210 | </div> | ||
| 211 | </body> | ||
| 212 | </html> |
| ... | @@ -85,20 +85,20 @@ | ... | @@ -85,20 +85,20 @@ |
| 85 | </div> | 85 | </div> |
| 86 | </div> | 86 | </div> |
| 87 | </el-col> | 87 | </el-col> |
| 88 | <el-col :lg="12"> | 88 | <el-col :lg="12" v-if="Number(form.totalFee)>0"> |
| 89 | <div class="priceb" v-if="form.payStatus=='0'">{{ language==0?'待支付金额':'Amount Due' }}:<span class="price">{{ language==0?'¥':'€' }}{{ Number(totalFee).toFixed(2) }}</span></div> | 89 | <div class="priceb" v-if="form.payStatus=='0'">{{ language==0?'待支付金额':'Amount Due' }}:<span class="price">{{ language==0?'¥':'€' }}{{ Number(totalFee).toFixed(2) }}</span></div> |
| 90 | <div class="priceb" v-if="form.payStatus=='1'">{{ language==0?'已支付金额':'Amount Due' }}:<span class="price">{{ language==0?'¥':'€' }}{{ Number(totalFee).toFixed(2) }}</span></div> | 90 | <div class="priceb" v-if="form.payStatus=='1'">{{ language==0?'已支付金额':'Amount Due' }}:<span class="price">{{ language==0?'¥':'€' }}{{ Number(totalFee).toFixed(2) }}</span></div> |
| 91 | </el-col> | 91 | </el-col> |
| 92 | </el-row> | 92 | </el-row> |
| 93 | </el-card> | 93 | </el-card> |
| 94 | <el-card class="mb60" v-if="form.auditStatus=='2'&&form.payStatus=='0'"> | 94 | <el-card class="mb60" v-if="form.auditStatus=='2'&&form.payStatus=='0'&&Number(form.totalFee)>0"> |
| 95 | <div class="leftboderTT">{{ language==0?'选择支付方式':'Choose payment method' }}</div> | 95 | <div class="leftboderTT">{{ language==0?'选择支付方式':'Choose payment method' }}</div> |
| 96 | <div class="mt20"> | 96 | <div class="mt20"> |
| 97 | <el-radio-group v-model="payType" @change="changePaytype"> | 97 | <el-radio-group v-model="payType" @change="changePaytype"> |
| 98 | <!-- <el-radio label="1" border>--> | 98 | <!-- <el-radio label="1" border>--> |
| 99 | <!-- <svg t="1709003181386" class="icon" viewBox="0 0 3283 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="31015" width="100" height="40"><path d="M1163.122759 94.631724H593.92A133.826207 133.826207 0 0 0 459.034483 228.457931v567.084138a133.473103 133.473103 0 0 0 133.826207 133.826207h570.262069a133.826207 133.826207 0 0 0 134.17931-133.826207v-5.296552s-217.864828-90.394483-328.033103-143.36c-73.445517 90.747586-168.783448 145.478621-267.652414 145.478621-167.017931 0-223.514483-145.831724-144.419311-241.875862a169.136552 169.136552 0 0 1 92.16-51.906207c70.62069-17.302069 184.32 10.946207 290.604138 45.903448A587.211034 587.211034 0 0 0 988.689655 429.373793h-328.73931v-32.838621h168.783448V337.213793h-204.446896v-33.191724h204.446896V219.630345a14.124138 14.124138 0 0 1 14.477241-14.477242h82.273104v98.868966h202.328276v33.191724h-202.328276v59.321379h165.252414a677.605517 677.605517 0 0 1-70.62069 176.551725c50.14069 18.008276 94.984828 35.310345 128.529655 46.256551a930.427586 930.427586 0 0 0 147.950345 42.725518V228.457931a133.826207 133.826207 0 0 0-133.473103-133.826207z" fill="#089fe8" p-id="31016"></path><path d="M663.481379 548.016552a162.78069 162.78069 0 0 0-81.566896 30.366896c-64.617931 55.790345-26.129655 158.190345 104.165517 158.190345 75.917241 0 151.481379-48.375172 211.862069-125.704827-85.804138-40.96-156.424828-70.267586-234.46069-62.852414zM2488.673103 225.28h239.757242v47.668966h85.804138V216.805517a22.951724 22.951724 0 0 0-21.892414-23.304827h-139.122759V149.009655h-89.335172v44.137931h-160.662069v79.80138h85.451034zM1882.394483 360.518621h67.442758v247.172413h73.798621V280.011034h-26.835862l55.437241-126.764137H1970.317241l-87.922758 207.271724zM2824.827586 596.391724l-26.835862-90.747586a13.771034 13.771034 0 0 0-13.064827-10.24h-70.62069l20.48 70.62069H2648.275862v-135.944828h164.546207v-32.132414H2648.275862v-63.55862h164.546207v-32.132414h-409.6v32.132414h164.546207v63.55862h-164.546207v32.132414h164.546207V564.965517h-164.546207v32.132414H2824.827586zM2158.521379 323.442759a16.595862 16.595862 0 0 0-15.183448-9.886897h-63.558621l49.434483 156.424828h75.564138z" fill="#089fe8" p-id="31017"></path><path d="M2319.889655 156.777931h-76.623448v80.154483h-188.557241v32.132414h188.557241v287.426206a13.064828 13.064828 0 0 1-12.358621 12.005518h-38.841379v31.77931h99.222069a30.013793 30.013793 0 0 0 28.601379-29.66069V269.064828h31.073104v-32.132414h-31.073104zM1871.448276 577.677241a913.831724 913.831724 0 0 1-168.783448-80.507586 357.34069 357.34069 0 0 0 141.241379-194.56H1694.896552V249.997241h170.195862v-32.83862H1694.896552V150.422069h-75.211035a15.536552 15.536552 0 0 0-15.183448 15.536552v51.2h-169.136552v32.83862h169.136552v52.612414h-141.241379v32.838621h284.248276a278.951724 278.951724 0 0 1-93.572414 127.470345 360.871724 360.871724 0 0 1-93.572414-94.984828H1483.034483a423.724138 423.724138 0 0 0 122.173793 130.295173 662.775172 662.775172 0 0 1-172.667586 77.329655v39.194482A773.296552 773.296552 0 0 0 1653.230345 529.655172 781.771034 781.771034 0 0 0 1871.448276 614.753103zM1553.655172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.188966-79.095172 26.482758 79.095172zM1796.237241 674.78069h-34.251034v190.675862h115.464827v-26.129655h-81.213793v-164.546207zM2003.155862 674.78069h34.251035v190.322758h-34.251035zM2250.328276 674.78069h-74.151724v190.675862h35.310345v-73.445518h39.900689a58.615172 58.615172 0 1 0 0-117.230344z m-2.118621 91.100689H2210.427586v-64.971034h37.782069a31.073103 31.073103 0 0 1 30.366897 32.485517 30.72 30.72 0 0 1-30.366897 32.485517zM2465.015172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.542069-79.095172 27.188966 79.095172zM2716.071724 755.994483l-38.135172-81.213793H2641.213793l57.555862 112.286896v78.388966h33.897931v-78.388966l0.353104-0.353103 57.555862-111.933793h-37.075862l-37.428966 81.213793z" fill="#089fe8" p-id="31018"></path></svg>--> | 99 | <!-- <svg t="1709003181386" class="icon" viewBox="0 0 3283 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="31015" width="100" height="40"><path d="M1163.122759 94.631724H593.92A133.826207 133.826207 0 0 0 459.034483 228.457931v567.084138a133.473103 133.473103 0 0 0 133.826207 133.826207h570.262069a133.826207 133.826207 0 0 0 134.17931-133.826207v-5.296552s-217.864828-90.394483-328.033103-143.36c-73.445517 90.747586-168.783448 145.478621-267.652414 145.478621-167.017931 0-223.514483-145.831724-144.419311-241.875862a169.136552 169.136552 0 0 1 92.16-51.906207c70.62069-17.302069 184.32 10.946207 290.604138 45.903448A587.211034 587.211034 0 0 0 988.689655 429.373793h-328.73931v-32.838621h168.783448V337.213793h-204.446896v-33.191724h204.446896V219.630345a14.124138 14.124138 0 0 1 14.477241-14.477242h82.273104v98.868966h202.328276v33.191724h-202.328276v59.321379h165.252414a677.605517 677.605517 0 0 1-70.62069 176.551725c50.14069 18.008276 94.984828 35.310345 128.529655 46.256551a930.427586 930.427586 0 0 0 147.950345 42.725518V228.457931a133.826207 133.826207 0 0 0-133.473103-133.826207z" fill="#089fe8" p-id="31016"></path><path d="M663.481379 548.016552a162.78069 162.78069 0 0 0-81.566896 30.366896c-64.617931 55.790345-26.129655 158.190345 104.165517 158.190345 75.917241 0 151.481379-48.375172 211.862069-125.704827-85.804138-40.96-156.424828-70.267586-234.46069-62.852414zM2488.673103 225.28h239.757242v47.668966h85.804138V216.805517a22.951724 22.951724 0 0 0-21.892414-23.304827h-139.122759V149.009655h-89.335172v44.137931h-160.662069v79.80138h85.451034zM1882.394483 360.518621h67.442758v247.172413h73.798621V280.011034h-26.835862l55.437241-126.764137H1970.317241l-87.922758 207.271724zM2824.827586 596.391724l-26.835862-90.747586a13.771034 13.771034 0 0 0-13.064827-10.24h-70.62069l20.48 70.62069H2648.275862v-135.944828h164.546207v-32.132414H2648.275862v-63.55862h164.546207v-32.132414h-409.6v32.132414h164.546207v63.55862h-164.546207v32.132414h164.546207V564.965517h-164.546207v32.132414H2824.827586zM2158.521379 323.442759a16.595862 16.595862 0 0 0-15.183448-9.886897h-63.558621l49.434483 156.424828h75.564138z" fill="#089fe8" p-id="31017"></path><path d="M2319.889655 156.777931h-76.623448v80.154483h-188.557241v32.132414h188.557241v287.426206a13.064828 13.064828 0 0 1-12.358621 12.005518h-38.841379v31.77931h99.222069a30.013793 30.013793 0 0 0 28.601379-29.66069V269.064828h31.073104v-32.132414h-31.073104zM1871.448276 577.677241a913.831724 913.831724 0 0 1-168.783448-80.507586 357.34069 357.34069 0 0 0 141.241379-194.56H1694.896552V249.997241h170.195862v-32.83862H1694.896552V150.422069h-75.211035a15.536552 15.536552 0 0 0-15.183448 15.536552v51.2h-169.136552v32.83862h169.136552v52.612414h-141.241379v32.838621h284.248276a278.951724 278.951724 0 0 1-93.572414 127.470345 360.871724 360.871724 0 0 1-93.572414-94.984828H1483.034483a423.724138 423.724138 0 0 0 122.173793 130.295173 662.775172 662.775172 0 0 1-172.667586 77.329655v39.194482A773.296552 773.296552 0 0 0 1653.230345 529.655172 781.771034 781.771034 0 0 0 1871.448276 614.753103zM1553.655172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.188966-79.095172 26.482758 79.095172zM1796.237241 674.78069h-34.251034v190.675862h115.464827v-26.129655h-81.213793v-164.546207zM2003.155862 674.78069h34.251035v190.322758h-34.251035zM2250.328276 674.78069h-74.151724v190.675862h35.310345v-73.445518h39.900689a58.615172 58.615172 0 1 0 0-117.230344z m-2.118621 91.100689H2210.427586v-64.971034h37.782069a31.073103 31.073103 0 0 1 30.366897 32.485517 30.72 30.72 0 0 1-30.366897 32.485517zM2465.015172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.542069-79.095172 27.188966 79.095172zM2716.071724 755.994483l-38.135172-81.213793H2641.213793l57.555862 112.286896v78.388966h33.897931v-78.388966l0.353104-0.353103 57.555862-111.933793h-37.075862l-37.428966 81.213793z" fill="#089fe8" p-id="31018"></path></svg>--> |
| 100 | <!-- </el-radio>--> | 100 | <!-- </el-radio>--> |
| 101 | <el-radio label="2" border> | 101 | <el-radio label="2" v-if="form.payTypeArr.indexOf('1')>-1" border> |
| 102 | <svg t="1709002960407" class="icon" viewBox="0 0 3152 1024" version="1.1" | 102 | <svg t="1709002960407" class="icon" viewBox="0 0 3152 1024" version="1.1" |
| 103 | xmlns="http://www.w3.org/2000/svg" p-id="24747" width="94" height="40"> | 103 | xmlns="http://www.w3.org/2000/svg" p-id="24747" width="94" height="40"> |
| 104 | <path | 104 | <path |
| ... | @@ -109,7 +109,7 @@ | ... | @@ -109,7 +109,7 @@ |
| 109 | fill="#595757" p-id="24749"></path> | 109 | fill="#595757" p-id="24749"></path> |
| 110 | </svg> | 110 | </svg> |
| 111 | </el-radio> | 111 | </el-radio> |
| 112 | <el-radio label="3" border> | 112 | <el-radio label="3" v-if="form.payTypeArr.indexOf('2')>-1" border> |
| 113 | <svg t="1709003441012" class="icon" viewBox="0 0 3527 1024" version="1.1" | 113 | <svg t="1709003441012" class="icon" viewBox="0 0 3527 1024" version="1.1" |
| 114 | xmlns="http://www.w3.org/2000/svg" p-id="32905" width="90" height="40"> | 114 | xmlns="http://www.w3.org/2000/svg" p-id="32905" width="90" height="40"> |
| 115 | <path | 115 | <path |
| ... | @@ -138,7 +138,7 @@ | ... | @@ -138,7 +138,7 @@ |
| 138 | fill="#4D4D4D" p-id="32913"></path> | 138 | fill="#4D4D4D" p-id="32913"></path> |
| 139 | </svg> | 139 | </svg> |
| 140 | </el-radio> | 140 | </el-radio> |
| 141 | <el-radio label="4" border> | 141 | <el-radio label="4" v-if="form.payTypeArr.indexOf('3')>-1" border> |
| 142 | <svg t="1709002828937" class="icon" viewBox="0 0 4220 1024" version="1.1" | 142 | <svg t="1709002828937" class="icon" viewBox="0 0 4220 1024" version="1.1" |
| 143 | xmlns="http://www.w3.org/2000/svg" p-id="22654" width="94" height="40"> | 143 | xmlns="http://www.w3.org/2000/svg" p-id="22654" width="94" height="40"> |
| 144 | <path | 144 | <path |
| ... | @@ -335,6 +335,7 @@ function getData() { | ... | @@ -335,6 +335,7 @@ function getData() { |
| 335 | return match.getMyOrderDetail({orderId:orderId.value}).then(res => { | 335 | return match.getMyOrderDetail({orderId:orderId.value}).then(res => { |
| 336 | totalFee.value = res.data.totalFee | 336 | totalFee.value = res.data.totalFee |
| 337 | form.value = res.data | 337 | form.value = res.data |
| 338 | form.value.payTypeArr = res.data.payType.split(',') | ||
| 338 | matchId.value = form.value.cptId | 339 | matchId.value = form.value.cptId |
| 339 | groupId.value = form.value.groupId || 0 | 340 | groupId.value = form.value.groupId || 0 |
| 340 | if(isLogin.value){ | 341 | if(isLogin.value){ | ... | ... |
| ... | @@ -43,7 +43,7 @@ | ... | @@ -43,7 +43,7 @@ |
| 43 | <div class="mt20"> | 43 | <div class="mt20"> |
| 44 | <div class="leftboderTT">{{ language==0?'参赛人员清单':'Participant List' }} | 44 | <div class="leftboderTT">{{ language==0?'参赛人员清单':'Participant List' }} |
| 45 | <div class="fr"> | 45 | <div class="fr"> |
| 46 | <el-input size="small" v-model="zuQuery.name" :prefix-icon="Search" | 46 | <el-input size="small" v-model="zuQuery.athName" :prefix-icon="Search" |
| 47 | @change="getSignList" clearable/> | 47 | @change="getSignList" clearable/> |
| 48 | </div> | 48 | </div> |
| 49 | </div> | 49 | </div> |
| ... | @@ -52,7 +52,7 @@ | ... | @@ -52,7 +52,7 @@ |
| 52 | <div class="mt20"> | 52 | <div class="mt20"> |
| 53 | <div class="leftboderTT">{{ language==0?'设项报名清单':'Event Registration List' }} | 53 | <div class="leftboderTT">{{ language==0?'设项报名清单':'Event Registration List' }} |
| 54 | <div class="fr"> | 54 | <div class="fr"> |
| 55 | <el-input size="small" v-model="zuQuery.groupName" :prefix-icon="Search" | 55 | <el-input size="small" v-model="zuQuery.groName" :prefix-icon="Search" |
| 56 | @change="getSignList" clearable/> | 56 | @change="getSignList" clearable/> |
| 57 | </div> | 57 | </div> |
| 58 | </div> | 58 | </div> |
| ... | @@ -64,23 +64,23 @@ | ... | @@ -64,23 +64,23 @@ |
| 64 | </el-card> | 64 | </el-card> |
| 65 | <el-card class="mt20" :body-style="{padding: '0px'}"> | 65 | <el-card class="mt20" :body-style="{padding: '0px'}"> |
| 66 | <el-row class="priceBar"> | 66 | <el-row class="priceBar"> |
| 67 | <el-col :lg="16" :xs="24" class="pd20"> | 67 | <el-col :lg="12" :xs="24" class="pd20"> |
| 68 | <div class="flex"> | 68 | <div class="flex"> |
| 69 | <div class="item"><label>{{ language==0?'报名费':'Registration Fee' }}:</label><span>{{ language==0?'¥':'€' }}{{form.cptRegistrationFee?.totalFee}}</span></div> | 69 | <div class="item"><label>{{ language==0?'报名费':'Registration Fee' }}:</label><span>{{ language==0?'¥':'€' }}{{form.cptRegistrationFee?.totalFee}}</span></div> |
| 70 | <div class="item"><label>{{ language==0?'保险费':'Insurance Fee' }}:</label><span>{{ language==0?'¥':'€' }}{{form.cptInsuranceFee?.totalFee}}</span></div> | 70 | <div class="item"><label>{{ language==0?'保险费':'Insurance Fee' }}:</label><span>{{ language==0?'¥':'€' }}{{form.cptInsuranceFee?.totalFee}}</span></div> |
| 71 | <div class="item"><label>{{ language==0?'费用总计':'Total Cost' }}:</label><span>{{ language==0?'¥':'€' }}{{form.totalFee}}</span></div> | 71 | <div class="item"><label>{{ language==0?'费用总计':'Total Cost' }}:</label><span>{{ language==0?'¥':'€' }}{{form.totalFee}}</span></div> |
| 72 | </div> | 72 | </div> |
| 73 | </el-col> | 73 | </el-col> |
| 74 | <el-col :lg="8" :xs="24" class="text-right pd20"> | 74 | <el-col :lg="12" :xs="24" class="text-right pd20"> |
| 75 | 75 | ||
| 76 | <el-link type="primary" @click="exportSignList(1)"><el-icon><Upload /></el-icon> | 76 | <el-link type="primary" @click="exportSignList(1)"><el-icon><Upload /></el-icon> |
| 77 | {{ language==0?'导出参赛人员清单':'Export Participant List' }}</el-link> | 77 | {{ language==0?'导出参赛人员清单':'Export Participant List' }}</el-link> |
| 78 | <el-link type="primary" @click="exportSignList(2)"><el-icon><Upload /></el-icon> | 78 | <el-link type="primary" @click="exportSignList(2)"><el-icon><Upload /></el-icon> |
| 79 | {{ language==0?'导出设项报名清单':'Registration Fee for Event Entry' }}</el-link> | 79 | {{ language==0?'导出设项报名清单':'Registration Fee for Event Entry' }}</el-link> |
| 80 | 80 | ||
| 81 | <!-- <el-link type="primary" @click="exportPdf"><el-icon><Upload /></el-icon>--> | 81 | <el-link type="primary" @click="exportPdf"><el-icon><Upload /></el-icon> |
| 82 | <!-- {{ language==0?'导出pdf':'Export PDF' }}--> | 82 | {{ language==0?'导出pdf':'Export PDF' }} |
| 83 | <!-- </el-link>--> | 83 | </el-link> |
| 84 | </el-col> | 84 | </el-col> |
| 85 | </el-row> | 85 | </el-row> |
| 86 | <div class="text-center pd20"> | 86 | <div class="text-center pd20"> |
| ... | @@ -261,14 +261,10 @@ function exportPdf() { | ... | @@ -261,14 +261,10 @@ function exportPdf() { |
| 261 | var fileName | 261 | var fileName |
| 262 | if(language.value==0){ | 262 | if(language.value==0){ |
| 263 | fileName = '设项报名清单' | 263 | fileName = '设项报名清单' |
| 264 | proxy.download('/league/sign/exportCn', { | 264 | proxy.download('/pdf/exportMySignInfoList', { |
| 265 | ...obj | 265 | ...obj |
| 266 | }, `${fileName}_${new Date().getTime()}.pdf`) | 266 | }, `${fileName}_${new Date().getTime()}.pdf`) |
| 267 | } else { | 267 | } else { |
| 268 | fileName = 'Participant List' | ||
| 269 | proxy.download('/league/sign/exportEn', { | ||
| 270 | ...obj | ||
| 271 | }, `${fileName}_${new Date().getTime()}.pdf`) | ||
| 272 | } | 268 | } |
| 273 | 269 | ||
| 274 | } | 270 | } | ... | ... |
| ... | @@ -35,21 +35,21 @@ | ... | @@ -35,21 +35,21 @@ |
| 35 | <el-form-item :label="language==0?'邮箱':'Email'" required prop="contactEmail"> | 35 | <el-form-item :label="language==0?'邮箱':'Email'" required prop="contactEmail"> |
| 36 | <el-input v-model="form.contactEmail" type="email" :placeholder="language==0?'请输入内容':''"/> | 36 | <el-input v-model="form.contactEmail" type="email" :placeholder="language==0?'请输入内容':''"/> |
| 37 | </el-form-item> | 37 | </el-form-item> |
| 38 | <el-form-item :label="language==0?'专业/业余':'Professional/Amateur'" required prop="majorFlag"> | ||
| 39 | <el-select v-model="form.majorFlag"> | ||
| 40 | <el-option :label="language==0?'专业':'Professional'" value="1" /> | ||
| 41 | <el-option :label="language==0?'业余':'Amateur'" value="0" /> | ||
| 42 | </el-select> | ||
| 43 | </el-form-item> | ||
| 38 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type"> | 44 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type"> |
| 39 | <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;"> | 45 | <el-select v-model="form.type" :placeholder="typeOptions[language].selectPlaceholder" style="width: 100%;"> |
| 40 | <el-option :label="language==0?'普通院校':'School'" value="0" /> | 46 | <el-option v-for="(o,index) in typeOptions[language].options" :label="o.text" |
| 41 | <el-option :label="language==0?'专业舞蹈学校':'Professional dance school'" value="1" /> | 47 | :key="index" :value="o.value" /> |
| 42 | <el-option :label="language==0?'培训机构/俱乐部':'Company/Club'" value="2" /> | ||
| 43 | <el-option :label="language==0?'地方协会':'Local Association'" value="3" /> | ||
| 44 | <el-option :label="language==0?'国家协会':'National Association'" value="4" /> | ||
| 45 | </el-select> | 48 | </el-select> |
| 46 | </el-form-item> | 49 | </el-form-item> |
| 47 | <el-form-item :label="language==0?'详细地址':'Detailed Address'" required prop="address"> | 50 | <el-form-item :label="language==0?'详细地址':'Detailed Address'" required prop="address"> |
| 48 | <el-input type="textarea" v-model="form.address" class="mt10" :placeholder="language==0?'请输入详细地址':''"/> | 51 | <el-input type="textarea" v-model="form.address" class="mt10" :placeholder="language==0?'请输入详细地址':''"/> |
| 49 | </el-form-item> | 52 | </el-form-item> |
| 50 | |||
| 51 | |||
| 52 | |||
| 53 | </el-col> | 53 | </el-col> |
| 54 | </el-row> | 54 | </el-row> |
| 55 | <el-row v-if="participantsInfoArr&&participantsInfoArr.length>0"> | 55 | <el-row v-if="participantsInfoArr&&participantsInfoArr.length>0"> |
| ... | @@ -110,6 +110,28 @@ const data = reactive({ | ... | @@ -110,6 +110,28 @@ const data = reactive({ |
| 110 | enBo:{} | 110 | enBo:{} |
| 111 | }, | 111 | }, |
| 112 | form: {}, | 112 | form: {}, |
| 113 | typeOptions: { | ||
| 114 | 0: { | ||
| 115 | selectPlaceholder: '请选择团体类型', | ||
| 116 | options: [ | ||
| 117 | {value:'0',text:'普通院校'}, | ||
| 118 | {value:'1',text:'专业舞蹈学校'}, | ||
| 119 | {value:'2',text:'培训机构/俱乐部'}, | ||
| 120 | {value:'3',text:'地方协会'}, | ||
| 121 | {value:'4',text:'国家协会'}, | ||
| 122 | ] | ||
| 123 | }, | ||
| 124 | 1: { | ||
| 125 | selectPlaceholder: 'Please select group type', | ||
| 126 | options: [ | ||
| 127 | {value:'0',text:'School'}, | ||
| 128 | {value:'1',text:'Professional dance school'}, | ||
| 129 | {value:'2',text:'Company/Club'}, | ||
| 130 | {value:'3',text:'Local Association'}, | ||
| 131 | {value:'4',text:'National Association'}, | ||
| 132 | ] | ||
| 133 | } | ||
| 134 | }, | ||
| 113 | groupId: route.query.groupId||0, | 135 | groupId: route.query.groupId||0, |
| 114 | cptId: route.params.id||0, | 136 | cptId: route.params.id||0, |
| 115 | signType: false, | 137 | signType: false, |
| ... | @@ -139,7 +161,7 @@ const { | ... | @@ -139,7 +161,7 @@ const { |
| 139 | cptId, | 161 | cptId, |
| 140 | rules, | 162 | rules, |
| 141 | regionsList,matchInfo, | 163 | regionsList,matchInfo, |
| 142 | coachOrLeaderFlag, accept | 164 | coachOrLeaderFlag, accept,typeOptions |
| 143 | } = toRefs(data) | 165 | } = toRefs(data) |
| 144 | const uploadUrl = ref('/upload/upLoadToFileServer') | 166 | const uploadUrl = ref('/upload/upLoadToFileServer') |
| 145 | 167 | ... | ... |
| ... | @@ -77,7 +77,7 @@ | ... | @@ -77,7 +77,7 @@ |
| 77 | v-if="language==0">(登录时需要验证,保护账户信息)</span></div> | 77 | v-if="language==0">(登录时需要验证,保护账户信息)</span></div> |
| 78 | <div class="h20"></div> | 78 | <div class="h20"></div> |
| 79 | <el-form-item :label="language==0?'邮箱':'E-mail'" required> | 79 | <el-form-item :label="language==0?'邮箱':'E-mail'" required> |
| 80 | <el-input type="text" v-model="wdsfData.email" @change="resetCode(1)" | 80 | <el-input type="text" v-model="wdsfData.email" @change="resetCode(1)" autocomplete="false" |
| 81 | @blur="verifyCode" :disabled="wdsfData.personFlag=='1'"/> | 81 | @blur="verifyCode" :disabled="wdsfData.personFlag=='1'"/> |
| 82 | <div class="tip" v-if="wdsfData.personFlag=='0'"> | 82 | <div class="tip" v-if="wdsfData.personFlag=='0'"> |
| 83 | <div v-if="language==0"> | 83 | <div v-if="language==0"> |
| ... | @@ -107,12 +107,12 @@ | ... | @@ -107,12 +107,12 @@ |
| 107 | </el-form-item> | 107 | </el-form-item> |
| 108 | 108 | ||
| 109 | <el-form-item :label="language==0?'密码':'Password'" required> | 109 | <el-form-item :label="language==0?'密码':'Password'" required> |
| 110 | <el-input type="password" show-password v-model="form.password" | 110 | <el-input type="password" show-password v-model="form.password" autocomplete="false" |
| 111 | :placeholder="language==0?'6-16位密码。区分大小写':'Password'"/> | 111 | :placeholder="language==0?'6-16位密码。区分大小写':'Password'"/> |
| 112 | </el-form-item> | 112 | </el-form-item> |
| 113 | <el-form-item :label="language==0?'确认密码':'Confirm Password'" required | 113 | <el-form-item :label="language==0?'确认密码':'Confirm Password'" required |
| 114 | v-if="wdsfData.personFlag=='0'"> | 114 | v-if="wdsfData.personFlag=='0'"> |
| 115 | <el-input type="password" show-password v-model="form.confirmPassword" @change="vconfirmPassword" | 115 | <el-input type="password" show-password v-model="form.confirmPassword" autocomplete="false" @change="vconfirmPassword" |
| 116 | :placeholder="language==0?'再次输入密码':'Confirm Password'"/> | 116 | :placeholder="language==0?'再次输入密码':'Confirm Password'"/> |
| 117 | <div class="text-danger" v-if="showError">{{ | 117 | <div class="text-danger" v-if="showError">{{ |
| 118 | language == 0 ? '密码不一致' : 'Password inconsistency' | 118 | language == 0 ? '密码不一致' : 'Password inconsistency' | ... | ... |
| ... | @@ -42,6 +42,12 @@ | ... | @@ -42,6 +42,12 @@ |
| 42 | <el-form-item :label="language==0?'机构名称':'Institution name'" required prop="teamName"> | 42 | <el-form-item :label="language==0?'机构名称':'Institution name'" required prop="teamName"> |
| 43 | <el-input type="text" v-model="form.teamName" :placeholder="language==0?'请输入内容':''"/> | 43 | <el-input type="text" v-model="form.teamName" :placeholder="language==0?'请输入内容':''"/> |
| 44 | </el-form-item> | 44 | </el-form-item> |
| 45 | <el-form-item :label="language==0?'专业/业余':'Professional/Amateur'" required prop="majorFlag"> | ||
| 46 | <el-select v-model="form.majorFlag"> | ||
| 47 | <el-option :label="language==0?'专业':'Professional'" value="1" /> | ||
| 48 | <el-option :label="language==0?'业余':'Amateur'" value="0" /> | ||
| 49 | </el-select> | ||
| 50 | </el-form-item> | ||
| 45 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type" required> | 51 | <el-form-item :label="language==0?'团体类型':'Group type'" prop="type" required> |
| 46 | <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;"> | 52 | <el-select v-model="form.type" :placeholder="language==0?'请选择团体类型':''" style="width: 100%;"> |
| 47 | <el-option :label="language==0?'普通院校':'School'" value="0" /> | 53 | <el-option :label="language==0?'普通院校':'School'" value="0" /> | ... | ... |
-
Please register or sign in to post a comment