no message
Showing
8 changed files
with
66 additions
and
43 deletions
| ... | @@ -276,14 +276,14 @@ export const comList = [{text: '国资企业(含央企和本地)', value: '0'}, | ... | @@ -276,14 +276,14 @@ export const comList = [{text: '国资企业(含央企和本地)', value: '0'}, |
| 276 | 276 | ||
| 277 | export const rankList = [ | 277 | export const rankList = [ |
| 278 | { | 278 | { |
| 279 | index: '1', | 279 | index: '1',//名次 |
| 280 | code: 'lt', | 280 | code: 'lt',//国旗code |
| 281 | name: 'Evaldas Sodeika - Ieva Zukauskaite', | 281 | name: 'Evaldas Sodeika - Ieva Zukauskaite',//组合 |
| 282 | gj: '立陶宛', | 282 | gj: '立陶宛',//国家 |
| 283 | en_gj: 'LTU', | 283 | en_gj: 'LTU',//国家简称 |
| 284 | jin: '1', | 284 | jin: '1',//金 |
| 285 | yin: '0', | 285 | yin: '0',//银 |
| 286 | tong: '0' | 286 | tong: '0'//铜 |
| 287 | }, | 287 | }, |
| 288 | { | 288 | { |
| 289 | index: '1', | 289 | index: '1', | ... | ... |
| ... | @@ -28,7 +28,7 @@ | ... | @@ -28,7 +28,7 @@ |
| 28 | <el-upload | 28 | <el-upload |
| 29 | ref="imageUpload" | 29 | ref="imageUpload" |
| 30 | :multiple="limit > 1" | 30 | :multiple="limit > 1" |
| 31 | :action="uploadImgUrl" | 31 | :action="actionUrl || uploadImgUrl" |
| 32 | list-type="picture-card" | 32 | list-type="picture-card" |
| 33 | :on-success="handleUploadSuccess" | 33 | :on-success="handleUploadSuccess" |
| 34 | :before-upload="handleBeforeUpload" | 34 | :before-upload="handleBeforeUpload" |
| ... | @@ -79,7 +79,7 @@ | ... | @@ -79,7 +79,7 @@ |
| 79 | 79 | ||
| 80 | <script setup> | 80 | <script setup> |
| 81 | import { getToken } from '@/utils/auth' | 81 | import { getToken } from '@/utils/auth' |
| 82 | import { computed, getCurrentInstance, ref, watch } from 'vue' | 82 | import { computed, getCurrentInstance, ref, watch, defineProps, defineEmits } from 'vue' |
| 83 | import _ from 'lodash' | 83 | import _ from 'lodash' |
| 84 | 84 | ||
| 85 | const props = defineProps({ | 85 | const props = defineProps({ |
| ... | @@ -107,6 +107,10 @@ const props = defineProps({ | ... | @@ -107,6 +107,10 @@ const props = defineProps({ |
| 107 | disabled: { | 107 | disabled: { |
| 108 | type: Boolean, | 108 | type: Boolean, |
| 109 | default: false | 109 | default: false |
| 110 | }, | ||
| 111 | action: { | ||
| 112 | type: String, | ||
| 113 | default: '' | ||
| 110 | } | 114 | } |
| 111 | }) | 115 | }) |
| 112 | 116 | ||
| ... | @@ -119,16 +123,18 @@ const accept = computed(() => { | ... | @@ -119,16 +123,18 @@ const accept = computed(() => { |
| 119 | } | 123 | } |
| 120 | }).join(',') | 124 | }).join(',') |
| 121 | }) | 125 | }) |
| 122 | 126 | const actionUrl = computed(() => { | |
| 127 | return props.action ? baseUrl + props.action : '' | ||
| 128 | }) | ||
| 123 | const { proxy } = getCurrentInstance() | 129 | const { proxy } = getCurrentInstance() |
| 124 | const emit = defineEmits(['update:modelValue']) | 130 | const emit = defineEmits(['update:modelValue', 'response']) |
| 125 | const number = ref(0) | 131 | const number = ref(0) |
| 126 | const uploadList = ref([]) | 132 | const uploadList = ref([]) |
| 127 | const dialogImageUrl = ref('') | 133 | const dialogImageUrl = ref('') |
| 128 | const dialogVisible = ref(false) | 134 | const dialogVisible = ref(false) |
| 129 | const baseUrl = import.meta.env.VITE_APP_BASE_API | 135 | const baseUrl = import.meta.env.VITE_APP_BASE_API |
| 130 | const uploadImgUrl = ref( | 136 | const uploadImgUrl = ref( |
| 131 | import.meta.env.VITE_APP_BASE_API + '/upload/uploadImgToLocalServer' | 137 | baseUrl + '/upload/uploadImgToLocalServer' |
| 132 | ) // 上传的图片服务器地址 | 138 | ) // 上传的图片服务器地址 |
| 133 | const headers = ref({ Authorization: 'Bearer ' + getToken() }) | 139 | const headers = ref({ Authorization: 'Bearer ' + getToken() }) |
| 134 | const fileList = ref([]) | 140 | const fileList = ref([]) |
| ... | @@ -167,6 +173,7 @@ watch( | ... | @@ -167,6 +173,7 @@ watch( |
| 167 | 173 | ||
| 168 | // 上传前loading加载 | 174 | // 上传前loading加载 |
| 169 | function handleBeforeUpload(file) { | 175 | function handleBeforeUpload(file) { |
| 176 | console.log('handleBeforeUpload', props) | ||
| 170 | let isImg = false | 177 | let isImg = false |
| 171 | if (props.fileType.length) { | 178 | if (props.fileType.length) { |
| 172 | let fileExtension = '' | 179 | let fileExtension = '' |
| ... | @@ -205,16 +212,22 @@ function handleExceed() { | ... | @@ -205,16 +212,22 @@ function handleExceed() { |
| 205 | 212 | ||
| 206 | // 上传成功回调 | 213 | // 上传成功回调 |
| 207 | function handleUploadSuccess(res, file) { | 214 | function handleUploadSuccess(res, file) { |
| 208 | if (res.code === 200) { | 215 | if (!actionUrl.value) { |
| 209 | uploadList.value.push({ name: file.name, url: res.data || res.msg }) | 216 | if (res.code === 200) { |
| 210 | uploadedSuccessfully() | 217 | uploadList.value.push({ name: file.name, url: res.data || res.msg }) |
| 211 | } else { | 218 | uploadedSuccessfully() |
| 212 | number.value-- | 219 | } else { |
| 213 | proxy.$modal.closeLoading() | 220 | number.value-- |
| 214 | proxy.$modal.msgError(res.msg) | 221 | proxy.$modal.closeLoading() |
| 215 | proxy.$refs.imageUpload.handleRemove(file) | 222 | proxy.$modal.msgError(res.msg) |
| 216 | uploadedSuccessfully() | 223 | proxy.$refs.imageUpload.handleRemove(file) |
| 224 | uploadedSuccessfully() | ||
| 225 | } | ||
| 226 | }else { | ||
| 227 | proxy?.$modal.closeLoading() | ||
| 228 | emit('response', res) | ||
| 217 | } | 229 | } |
| 230 | |||
| 218 | } | 231 | } |
| 219 | 232 | ||
| 220 | // 删除图片 | 233 | // 删除图片 | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <div class="footAll"> | 2 | <div class="footAll"> |
| 3 | <div class="box" style="max-width: 90%"> | 3 | <div class="box" style="max-width: 90%"> |
| 4 | <el-row style="align-items: center;" v-if="language==0"> | 4 | <el-row align="middle" v-if="language==0"> |
| 5 | <el-col :lg="10" :md="10" :xs="10"> | 5 | <el-col :lg="10" :md="10" :xs="10"> |
| 6 | <ul> | 6 | <ul> |
| 7 | <li>邮编:214000</li> | 7 | <li>邮编:214000</li> |
| ... | @@ -11,7 +11,7 @@ | ... | @@ -11,7 +11,7 @@ |
| 11 | </ul> | 11 | </ul> |
| 12 | </el-col> | 12 | </el-col> |
| 13 | <el-col :lg="10" :md="10" :xs="10"> | 13 | <el-col :lg="10" :md="10" :xs="10"> |
| 14 | <ul style="text-align: right"> | 14 | <ul class="text-right"> |
| 15 | <li>客服及报障电话:15606190026</li> | 15 | <li>客服及报障电话:15606190026</li> |
| 16 | <li>客服及报障邮箱: info@wdsfwuxicenter.com</li> | 16 | <li>客服及报障邮箱: info@wdsfwuxicenter.com</li> |
| 17 | </ul> | 17 | </ul> |
| ... | @@ -22,14 +22,14 @@ | ... | @@ -22,14 +22,14 @@ |
| 22 | <p class="text-center mt10">微博关注</p> | 22 | <p class="text-center mt10">微博关注</p> |
| 23 | </div> | 23 | </div> |
| 24 | </el-col> | 24 | </el-col> |
| 25 | <el-col :span="24" style="border-top: 1px solid #fff"> | 25 | <el-col :span="24" style="border-top: 1px solid #d0d0d0"> |
| 26 | <div class="text-center copyright pd10">版权所有@无锡和畅赛事运营有限公司 | 26 | <div class="text-center copyright pd10">版权所有@无锡和畅赛事运营有限公司 |
| 27 |  &ensp | 27 |  &ensp |
| 28 | <a target="_blank" href="https://beian.miit.gov.cn/">ICP备案号:苏ICP备2023054420号-2</a></div> | 28 | <a target="_blank" href="https://beian.miit.gov.cn/">ICP备案号:苏ICP备2023054420号-2</a></div> |
| 29 | </el-col> | 29 | </el-col> |
| 30 | </el-row> | 30 | </el-row> |
| 31 | 31 | ||
| 32 | <el-row style="align-items: center;" v-if="language===1"> | 32 | <el-row align="middle" v-if="language===1"> |
| 33 | <el-col :span="14"> | 33 | <el-col :span="14"> |
| 34 | <ul> | 34 | <ul> |
| 35 | <li>Postal code:214000</li> | 35 | <li>Postal code:214000</li> |
| ... | @@ -37,7 +37,7 @@ | ... | @@ -37,7 +37,7 @@ |
| 37 | </ul> | 37 | </ul> |
| 38 | </el-col> | 38 | </el-col> |
| 39 | <el-col :span="6"> | 39 | <el-col :span="6"> |
| 40 | <ul style="text-align: right"> | 40 | <ul class="text-right"> |
| 41 | <li>Telephone:086-15606190026</li> | 41 | <li>Telephone:086-15606190026</li> |
| 42 | <li>E-mail:info@wdsfwuxicenter.com</li> | 42 | <li>E-mail:info@wdsfwuxicenter.com</li> |
| 43 | </ul> | 43 | </ul> |
| ... | @@ -48,7 +48,7 @@ | ... | @@ -48,7 +48,7 @@ |
| 48 | <p class="text-center mt10">Weibo</p> | 48 | <p class="text-center mt10">Weibo</p> |
| 49 | </div> | 49 | </div> |
| 50 | </el-col> | 50 | </el-col> |
| 51 | <el-col :span="24" style="border-top: 1px solid #fff"> | 51 | <el-col :span="24" style="border-top: 1px solid #d0d0d0"> |
| 52 | <div class="text-center copyright pd10">Copyright@Wuxi Hechang Sports Operations Co., Ltd | 52 | <div class="text-center copyright pd10">Copyright@Wuxi Hechang Sports Operations Co., Ltd |
| 53 | <a target="_blank" href="https://beian.miit.gov.cn/">ICP:苏ICP备2023054420号-2</a></div> | 53 | <a target="_blank" href="https://beian.miit.gov.cn/">ICP:苏ICP备2023054420号-2</a></div> |
| 54 | </el-col> | 54 | </el-col> | ... | ... |
| ... | @@ -128,6 +128,10 @@ | ... | @@ -128,6 +128,10 @@ |
| 128 | <el-form-item :label="language==0?'联系电话':'Contact Phone Number'" prop="downOffBo.phone" required> | 128 | <el-form-item :label="language==0?'联系电话':'Contact Phone Number'" prop="downOffBo.phone" required> |
| 129 | <el-input v-model="form.downOffBo.phone"/> | 129 | <el-input v-model="form.downOffBo.phone"/> |
| 130 | </el-form-item> | 130 | </el-form-item> |
| 131 | <!-- todo 增加邮箱字段,登记成功后发送邮件通知--> | ||
| 132 | <el-form-item :label="language==0?'联系邮箱':'Contact Email'" prop="downOffBo.email" required> | ||
| 133 | <el-input v-model="form.downOffBo.email"/> | ||
| 134 | </el-form-item> | ||
| 131 | <el-form-item :label="language==0?'送机人数':'Number of People'" prop="downOffBo.counts" required> | 135 | <el-form-item :label="language==0?'送机人数':'Number of People'" prop="downOffBo.counts" required> |
| 132 | <el-input-number v-model="form.downOffBo.counts"/> | 136 | <el-input-number v-model="form.downOffBo.counts"/> |
| 133 | 137 | ... | ... |
| ... | @@ -125,7 +125,7 @@ | ... | @@ -125,7 +125,7 @@ |
| 125 | <download/> | 125 | <download/> |
| 126 | </el-icon> | 126 | </el-icon> |
| 127 | </a> | 127 | </a> |
| 128 | <!-- <a class="zn-btn ml20 btn-q forPc" v-show="matchData?.id=='1778253367748993026'" @click="popMaster">青少年公益课报名</a>--> | 128 | <a class="zn-btn ml20 btn-q forPc" v-if="matchData.isCourseView==1" @click="popMaster">青少年公益课报名</a> |
| 129 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">背号查询</a> | 129 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">背号查询</a> |
| 130 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="schSearch">日程查询</a> | 130 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="schSearch">日程查询</a> |
| 131 | </div> | 131 | </div> | ... | ... |
| ... | @@ -96,9 +96,9 @@ | ... | @@ -96,9 +96,9 @@ |
| 96 | GUIDELINE | 96 | GUIDELINE |
| 97 | <el-icon><download /></el-icon> | 97 | <el-icon><download /></el-icon> |
| 98 | </a> | 98 | </a> |
| 99 | <!-- <a class="zn-btn ml20 btn-q forPc" v-show="matchData?.id=='1778253367748993026'" style="font-size: 15px;margin-right: 20px" @click="popMaster">--> | 99 | <a class="zn-btn ml20 btn-q forPc" v-if="matchData.isCourseView==1" style="font-size: 15px;margin-right: 20px" @click="popMaster"> |
| 100 | <!-- Junior &Youth Camp REGISTER<el-icon><Edit /></el-icon>--> | 100 | Junior &Youth Camp REGISTER<el-icon><Edit /></el-icon> |
| 101 | <!-- </a>--> | 101 | </a> |
| 102 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">Competition Number</a> | 102 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">Competition Number</a> |
| 103 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="schSearchSearch">Schedule Inquiry</a> | 103 | <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="schSearchSearch">Schedule Inquiry</a> |
| 104 | 104 | ... | ... |
| ... | @@ -73,16 +73,10 @@ | ... | @@ -73,16 +73,10 @@ |
| 73 | </el-radio-group> | 73 | </el-radio-group> |
| 74 | </el-form-item> | 74 | </el-form-item> |
| 75 | 75 | ||
| 76 | <el-form-item :label="language==0?'出生日期':'Date of Birth'" required> | ||
| 77 | <el-date-picker | ||
| 78 | v-model="form.birth" | ||
| 79 | style="width: 100%;" :disabled-date="disabledBirth" | ||
| 80 | type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" | ||
| 81 | /> | ||
| 82 | </el-form-item> | ||
| 83 | <el-form-item :label="language==0?'有效证件':'Valid Passport'" required> | 76 | <el-form-item :label="language==0?'有效证件':'Valid Passport'" required> |
| 84 | <image-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" | 77 | <image-upload action="/common/getPersonInfoFromCert/3" v-model="form.passportUrl" :limit="1" :is-show-tip="false" |
| 85 | :button-text="language==0?'上传':'Upload'"/> | 78 | :button-text="language==0?'上传':'Upload'" |
| 79 | @response="ocrSuccess"/> | ||
| 86 | <div class="tip"> | 80 | <div class="tip"> |
| 87 | <span v-if="language==0">请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等 </span> | 81 | <span v-if="language==0">请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等 </span> |
| 88 | <span v-else> | 82 | <span v-else> |
| ... | @@ -91,6 +85,14 @@ | ... | @@ -91,6 +85,14 @@ |
| 91 | </div> | 85 | </div> |
| 92 | 86 | ||
| 93 | </el-form-item> | 87 | </el-form-item> |
| 88 | <el-form-item :label="language==0?'出生日期':'Date of Birth'" required> | ||
| 89 | <el-date-picker | ||
| 90 | v-model="form.birth" | ||
| 91 | style="width: 100%;" :disabled-date="disabledBirth" | ||
| 92 | type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" | ||
| 93 | /> | ||
| 94 | </el-form-item> | ||
| 95 | |||
| 94 | <el-form-item :label="language==0?'证件号':'Passport number'" required> | 96 | <el-form-item :label="language==0?'证件号':'Passport number'" required> |
| 95 | <el-input v-model="form.passportNumber"/> | 97 | <el-input v-model="form.passportNumber"/> |
| 96 | </el-form-item> | 98 | </el-form-item> |
| ... | @@ -224,6 +226,10 @@ watch(show, (value) => { | ... | @@ -224,6 +226,10 @@ watch(show, (value) => { |
| 224 | proxy.$refs['dialogRef'].clearValidate() | 226 | proxy.$refs['dialogRef'].clearValidate() |
| 225 | }) | 227 | }) |
| 226 | }) | 228 | }) |
| 229 | const ocrSuccess = (res) => { | ||
| 230 | // todo 增加护照ocr识别 识别外国人护照姓名,出生年月 | ||
| 231 | console.log(res) | ||
| 232 | } | ||
| 227 | 233 | ||
| 228 | function submitForm() { | 234 | function submitForm() { |
| 229 | if (!form.value.passportNumber) { | 235 | if (!form.value.passportNumber) { | ... | ... |
| ... | @@ -336,8 +336,8 @@ | ... | @@ -336,8 +336,8 @@ |
| 336 | </div> | 336 | </div> |
| 337 | </el-dialog> | 337 | </el-dialog> |
| 338 | 338 | ||
| 339 | <!-- v-if="matchData.leagueId==0&&matchId=='1802602359043600385'"--> | 339 | <!-- v-if="matchData.leagueId==0"--> |
| 340 | <a class="ding" @click="openPickup" >{{ language==0?'接 / 送机服务':'Pick-up/drop-off service' }}</a> | 340 | <a class="ding" v-if="matchData.isAirView" @click="openPickup" >{{ language==0?'接 / 送机服务':'Pick-up/drop-off service' }}</a> |
| 341 | <pickup ref="pickupRef"></pickup> | 341 | <pickup ref="pickupRef"></pickup> |
| 342 | </div> | 342 | </div> |
| 343 | </template> | 343 | </template> | ... | ... |
-
Please register or sign in to post a comment