Merge branch '世锦赛' of https://code.itechtop.cn/yangyang/dance-pc into 世锦赛
# Conflicts: # src/viewsPc/components/homeQuick.vue
Showing
9 changed files
with
200 additions
and
159 deletions
| ... | @@ -6,23 +6,23 @@ | ... | @@ -6,23 +6,23 @@ |
| 6 | </div> | 6 | </div> |
| 7 | <div class="box"> | 7 | <div class="box"> |
| 8 | <div class="searchBar"> | 8 | <div class="searchBar"> |
| 9 | <el-input :placeholder="language==0?'请输入关键字搜索':'Search'" v-model="query.name" class="no-border"> | 9 | <el-input v-model="query.name" :placeholder="language==0?'请输入关键字搜索':'Search'" class="no-border"> |
| 10 | </el-input> | 10 | </el-input> |
| 11 | <el-button size="large" type="primary" class="btn-lineG" icon="search" @click="getList"> | 11 | <el-button class="btn-lineG" icon="search" size="large" type="primary" @click="getList"> |
| 12 | {{ language == 0 ? '搜索' : 'Search' }} | 12 | {{ language == 0 ? '搜索' : 'Search' }} |
| 13 | </el-button> | 13 | </el-button> |
| 14 | </div> | 14 | </div> |
| 15 | </div> | 15 | </div> |
| 16 | 16 | ||
| 17 | <div class="box" v-loading="loading"> | 17 | <div v-loading="loading" class="box"> |
| 18 | <el-row :gutter="20"> | 18 | <el-row :gutter="20"> |
| 19 | <el-col :lg="24" :md="24" :sm="24" :xs="24" :xl="24" v-for="(h,index) in list" class="mb20"> | 19 | <el-col v-for="(h,index) in list" :lg="24" :md="24" :sm="24" :xl="24" :xs="24" class="mb20"> |
| 20 | <el-card @click="goDetail(h)"> | 20 | <el-card @click="goDetail(h)"> |
| 21 | <!-- 酒店列表--> | 21 | <!-- 酒店列表--> |
| 22 | <el-row class="hotel" align="middle" :gutter="20"> | 22 | <el-row :gutter="20" align="middle" class="hotel"> |
| 23 | <el-col :lg="6" :md="6"> | 23 | <el-col :lg="6" :md="6"> |
| 24 | <div class="imgbox"> | 24 | <div class="imgbox"> |
| 25 | <img class="w100" :src="fillImgUrl(h.photos?.split(',')[0])"/> | 25 | <img :src="fillImgUrl(h.photos?.split(',')[0])" class="w100"/> |
| 26 | </div> | 26 | </div> |
| 27 | </el-col> | 27 | </el-col> |
| 28 | <el-col :lg="12" :md="12"> | 28 | <el-col :lg="12" :md="12"> |
| ... | @@ -35,7 +35,7 @@ | ... | @@ -35,7 +35,7 @@ |
| 35 | <a v-show="h.label?.split(',').length>4">{{ language == 0 ? '更多' : 'MORE' }} ></a> | 35 | <a v-show="h.label?.split(',').length>4">{{ language == 0 ? '更多' : 'MORE' }} ></a> |
| 36 | </div> | 36 | </div> |
| 37 | <p class="esp addr mt20"> | 37 | <p class="esp addr mt20"> |
| 38 | <el-icon size="16" style="position: relative;top: 2px" color="#929AA0"> | 38 | <el-icon color="#929AA0" size="16" style="position: relative;top: 2px"> |
| 39 | <LocationFilled/> | 39 | <LocationFilled/> |
| 40 | </el-icon> | 40 | </el-icon> |
| 41 | {{ h.address }} | 41 | {{ h.address }} |
| ... | @@ -74,7 +74,7 @@ const route = useRoute() | ... | @@ -74,7 +74,7 @@ const route = useRoute() |
| 74 | const useStore = useUserStore() | 74 | const useStore = useUserStore() |
| 75 | const user = useStore.user | 75 | const user = useStore.user |
| 76 | 76 | ||
| 77 | const flag = useRouteQuery('flag') | 77 | // const flag = useRouteQuery('flag') |
| 78 | 78 | ||
| 79 | const language = useStorage('language', 0) | 79 | const language = useStorage('language', 0) |
| 80 | const query = ref({ | 80 | const query = ref({ |
| ... | @@ -90,9 +90,7 @@ onMounted(() => { | ... | @@ -90,9 +90,7 @@ onMounted(() => { |
| 90 | 90 | ||
| 91 | function getList() { | 91 | function getList() { |
| 92 | loading.value = true | 92 | loading.value = true |
| 93 | booking.getHotelList(Object.assign({ | 93 | booking.getHotelList(Object.assign({}, query.value)).then(res => { |
| 94 | meeting: flag.value, | ||
| 95 | },query.value)).then(res => { | ||
| 96 | list.value = res.rows | 94 | list.value = res.rows |
| 97 | loading.value = false | 95 | loading.value = false |
| 98 | console.log(list.value) | 96 | console.log(list.value) |
| ... | @@ -107,24 +105,7 @@ function goDetail(item) { | ... | @@ -107,24 +105,7 @@ function goDetail(item) { |
| 107 | useStore.setVisitor() | 105 | useStore.setVisitor() |
| 108 | return | 106 | return |
| 109 | } | 107 | } |
| 110 | if (item.meeting == '1') { | 108 | |
| 111 | ElMessageBox.confirm(item.meetText, '', { | ||
| 112 | cancelButtonText: language.value == 1 ? 'Close ' : '关闭', | ||
| 113 | confirmButtonText: language.value == 1 ? 'Continue to book' : '继续预订', | ||
| 114 | dangerouslyUseHTMLString: true, | ||
| 115 | type: 'warning', | ||
| 116 | }).then((res) => { | ||
| 117 | router.push({ | ||
| 118 | name: 'hotelDetail', | ||
| 119 | params: { | ||
| 120 | hotelId: item.hotelId, | ||
| 121 | }, | ||
| 122 | query: { | ||
| 123 | id: item.id | ||
| 124 | } | ||
| 125 | }) | ||
| 126 | }) | ||
| 127 | } else { | ||
| 128 | router.push({ | 109 | router.push({ |
| 129 | name: 'hotelDetail', | 110 | name: 'hotelDetail', |
| 130 | params: { | 111 | params: { |
| ... | @@ -134,11 +115,39 @@ function goDetail(item) { | ... | @@ -134,11 +115,39 @@ function goDetail(item) { |
| 134 | id: item.id | 115 | id: item.id |
| 135 | } | 116 | } |
| 136 | }) | 117 | }) |
| 137 | } | 118 | |
| 119 | // if (item.meeting == '1') { | ||
| 120 | // ElMessageBox.confirm(item.meetText, '', { | ||
| 121 | // cancelButtonText: language.value == 1 ? 'Close ' : '关闭', | ||
| 122 | // confirmButtonText: language.value == 1 ? 'Continue to book' : '继续预订', | ||
| 123 | // dangerouslyUseHTMLString: true, | ||
| 124 | // type: 'warning', | ||
| 125 | // }).then((res) => { | ||
| 126 | // router.push({ | ||
| 127 | // name: 'hotelDetail', | ||
| 128 | // params: { | ||
| 129 | // hotelId: item.hotelId, | ||
| 130 | // }, | ||
| 131 | // query: { | ||
| 132 | // id: item.id | ||
| 133 | // } | ||
| 134 | // }) | ||
| 135 | // }) | ||
| 136 | // } else { | ||
| 137 | // router.push({ | ||
| 138 | // name: 'hotelDetail', | ||
| 139 | // params: { | ||
| 140 | // hotelId: item.hotelId, | ||
| 141 | // }, | ||
| 142 | // query: { | ||
| 143 | // id: item.id | ||
| 144 | // } | ||
| 145 | // }) | ||
| 146 | // } | ||
| 138 | } | 147 | } |
| 139 | </script> | 148 | </script> |
| 140 | 149 | ||
| 141 | <style scoped lang="scss"> | 150 | <style lang="scss" scoped> |
| 142 | .hotel { | 151 | .hotel { |
| 143 | h3 { | 152 | h3 { |
| 144 | margin: 0 0 10px; | 153 | margin: 0 0 10px; | ... | ... |
| ... | @@ -355,7 +355,8 @@ | ... | @@ -355,7 +355,8 @@ |
| 355 | <div class="mt10">{{ language == 0 ? '支付方式' : 'Payment Method' }}: | 355 | <div class="mt10">{{ language == 0 ? '支付方式' : 'Payment Method' }}: |
| 356 | <span v-if="form.paymentType=='1'">{{ language == 0 ? '微信支付' : 'WePay' }}</span> | 356 | <span v-if="form.paymentType=='1'">{{ language == 0 ? '微信支付' : 'WePay' }}</span> |
| 357 | <span v-else-if="form.paymentType=='3'">PayPal</span> | 357 | <span v-else-if="form.paymentType=='3'">PayPal</span> |
| 358 | <span v-else-if="form.paymentType=='4'|| form.paymentType=='5'">{{language == 0 ?'对公转账':'Bank Transfer'}}</span> | 358 | <span |
| 359 | v-else-if="form.paymentType=='4'|| form.paymentType=='5'">{{ language == 0 ? '对公转账' : 'Bank Transfer' }}</span> | ||
| 359 | <span v-else>--</span> | 360 | <span v-else>--</span> |
| 360 | </div> | 361 | </div> |
| 361 | </el-col> | 362 | </el-col> |
| ... | @@ -412,7 +413,9 @@ | ... | @@ -412,7 +413,9 @@ |
| 412 | </el-button> | 413 | </el-button> |
| 413 | </div> | 414 | </div> |
| 414 | 415 | ||
| 415 | <div v-if="form.viewStatus == '0'&&(form.surplus!='0,0'&&form.surplus!='0')&&form.paymentType!='4'&&form.paymentType!='5'" class="pd20"> | 416 | <div |
| 417 | v-if="form.viewStatus == '0'&&(form.surplus!='0,0'&&form.surplus!='0')&&form.paymentType!='4'&&form.paymentType!='5'" | ||
| 418 | class="pd20"> | ||
| 416 | 419 | ||
| 417 | <div class="leftboderTT">{{ language == 0 ? '选择支付方式' : 'Choose payment method' }}</div> | 420 | <div class="leftboderTT">{{ language == 0 ? '选择支付方式' : 'Choose payment method' }}</div> |
| 418 | <div class="mt20"> | 421 | <div class="mt20"> |
| ... | @@ -459,10 +462,10 @@ | ... | @@ -459,10 +462,10 @@ |
| 459 | fill="#003087" p-id="22662"></path> | 462 | fill="#003087" p-id="22662"></path> |
| 460 | </svg> | 463 | </svg> |
| 461 | </el-radio> | 464 | </el-radio> |
| 462 | <el-radio value="4" v-if="language==0&&type=='hotel'" border> | 465 | <!-- <el-radio value="4" v-if="language==0&&type=='hotel'" border>--> |
| 463 | 对公打款 | 466 | <!-- 对公打款--> |
| 464 | </el-radio> | 467 | <!-- </el-radio>--> |
| 465 | <el-radio value="5" v-if="language==1&&type=='hotel'" border> | 468 | <el-radio v-if="language==1&&type=='hotel'" border value="5"> |
| 466 | Corporate payment | 469 | Corporate payment |
| 467 | </el-radio> | 470 | </el-radio> |
| 468 | </el-radio-group> | 471 | </el-radio-group> |
| ... | @@ -495,17 +498,17 @@ | ... | @@ -495,17 +498,17 @@ |
| 495 | <el-col :lg="12"> | 498 | <el-col :lg="12"> |
| 496 | <div class="flex"> | 499 | <div class="flex"> |
| 497 | <label style="width: 10em"> | 500 | <label style="width: 10em"> |
| 498 | {{ language==0?'上传缴费凭证:':'Upload proof:' }} | 501 | {{ language == 0 ? '上传缴费凭证:' : 'Upload proof:' }} |
| 499 | </label> | 502 | </label> |
| 500 | <file-upload :is-show-tip="false" v-model="form.pic" :limit="1"/> | 503 | <file-upload v-model="form.pic" :is-show-tip="false" :limit="1"/> |
| 501 | </div> | 504 | </div> |
| 502 | </el-col> | 505 | </el-col> |
| 503 | <el-col :lg="12"> | 506 | <el-col :lg="12"> |
| 504 | <el-button class="fr" text type="primary" @click="downOfflineInvoice" icon="download"> | 507 | <el-button class="fr" icon="download" text type="primary" @click="downOfflineInvoice"> |
| 505 | {{ language == 0 ? '下载缴费单' : 'Download Invoice' }} | 508 | {{ language == 0 ? '下载缴费单' : 'Download Invoice' }} |
| 506 | </el-button> | 509 | </el-button> |
| 507 | </el-col> | 510 | </el-col> |
| 508 | <!-- 如果没审批通过--> | 511 | <!-- 如果没审批通过--> |
| 509 | <el-col :lg="24" align="center" justify="center"> | 512 | <el-col :lg="24" align="center" justify="center"> |
| 510 | <el-button round type="primary" @click="submitProof">提交凭证</el-button> | 513 | <el-button round type="primary" @click="submitProof">提交凭证</el-button> |
| 511 | </el-col> | 514 | </el-col> |
| ... | @@ -726,7 +729,7 @@ function getData() { | ... | @@ -726,7 +729,7 @@ function getData() { |
| 726 | form.value.extJsonObj = JSON.parse(form.value.extJson) || {} | 729 | form.value.extJsonObj = JSON.parse(form.value.extJson) || {} |
| 727 | matchId.value = form.value.extJsonObj?.activeId | 730 | matchId.value = form.value.extJsonObj?.activeId |
| 728 | //如果对公打款- | 731 | //如果对公打款- |
| 729 | if(form.value.paymentType=='4' || form.value.paymentType=='5'){ | 732 | if (form.value.paymentType == '4' || form.value.paymentType == '5') { |
| 730 | hideconfirmbtn.value = true | 733 | hideconfirmbtn.value = true |
| 731 | } | 734 | } |
| 732 | }).catch(err => { | 735 | }).catch(err => { |
| ... | @@ -1023,7 +1026,7 @@ const downOfflineInvoice = () => { | ... | @@ -1023,7 +1026,7 @@ const downOfflineInvoice = () => { |
| 1023 | } | 1026 | } |
| 1024 | const submitProof = () => { | 1027 | const submitProof = () => { |
| 1025 | //提交凭证 | 1028 | //提交凭证 |
| 1026 | if(!form.value.pic){ | 1029 | if (!form.value.pic) { |
| 1027 | ElMessage.warning(language.value == 0 ? '请上传凭证' : 'Please upload a voucher') | 1030 | ElMessage.warning(language.value == 0 ? '请上传凭证' : 'Please upload a voucher') |
| 1028 | return | 1031 | return |
| 1029 | } | 1032 | } |
| ... | @@ -1205,5 +1208,10 @@ const submitProof = () => { | ... | @@ -1205,5 +1208,10 @@ const submitProof = () => { |
| 1205 | .price { | 1208 | .price { |
| 1206 | color: orange; | 1209 | color: orange; |
| 1207 | } | 1210 | } |
| 1208 | .proofBox{padding: 20px;margin: 0 20px;border: 1px dashed #999;} | 1211 | |
| 1212 | .proofBox { | ||
| 1213 | padding: 20px; | ||
| 1214 | margin: 0 20px; | ||
| 1215 | border: 1px dashed #999; | ||
| 1216 | } | ||
| 1209 | </style> | 1217 | </style> | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <div class="itemBox" v-if="language === 0"> | 2 | <div v-if="language === 0" class="itemBox"> |
| 3 | <el-row :gutter="20"> | 3 | <el-row :gutter="20"> |
| 4 | <el-col :sm="12" :lg="4" :xs="12"> | 4 | <el-col :lg="4" :sm="12" :xs="12"> |
| 5 | <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn01.png">签证服务</div> | 5 | <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn01.png">签证服务</div> |
| 6 | </el-col> | 6 | </el-col> |
| 7 | <el-col :sm="12" :lg="4" :xs="12"> | 7 | <el-col :lg="4" :sm="12" :xs="12"> |
| 8 | <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn02.png">酒店预订</div> | 8 | <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn02.png">酒店预订</div> |
| 9 | </el-col> | 9 | </el-col> |
| 10 | <el-col :sm="12" :lg="4" :xs="12"> | 10 | <el-col :lg="4" :sm="12" :xs="12"> |
| 11 | <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn03.png">接送服务</div> | 11 | <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn03.png">接送服务</div> |
| 12 | </el-col> | 12 | </el-col> |
| 13 | <el-col :sm="12" :lg="4" :xs="12"> | 13 | <el-col :lg="4" :sm="12" :xs="12"> |
| 14 | <div class="item" @click="popRemark(10)"><img src="@/assets/dance/btn04.png">票务服务</div> | 14 | <div class="item" @click="popRemark(10)"><img src="@/assets/dance/btn04.png">票务服务</div> |
| 15 | </el-col> | 15 | </el-col> |
| 16 | <el-col :sm="12" :lg="4" :xs="12"> | 16 | <el-col :lg="4" :sm="12" :xs="12"> |
| 17 | <div class="item" @click="goMedia"><img src="@/assets/dance/btn07.png">媒体注册</div> | 17 | <div class="item" @click="goMedia"><img src="@/assets/dance/btn07.png">媒体注册</div> |
| 18 | </el-col> | 18 | </el-col> |
| 19 | <!-- <el-col :sm="12" :lg="4" :xs="12">--> | 19 | <!-- <el-col :sm="12" :lg="4" :xs="12">--> |
| ... | @@ -24,21 +24,21 @@ | ... | @@ -24,21 +24,21 @@ |
| 24 | <!-- </el-col>--> | 24 | <!-- </el-col>--> |
| 25 | </el-row> | 25 | </el-row> |
| 26 | </div> | 26 | </div> |
| 27 | <div class="itemBox_en" v-else> | 27 | <div v-else class="itemBox_en"> |
| 28 | <el-row :gutter="20" justify="space-around"> | 28 | <el-row :gutter="20" justify="space-around"> |
| 29 | <el-col :sm="12" :lg="4" :xs="12"> | 29 | <el-col :lg="4" :sm="12" :xs="12"> |
| 30 | <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn01.png">Visa Services</div> | 30 | <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn01.png">Visa Services</div> |
| 31 | </el-col> | 31 | </el-col> |
| 32 | <el-col :sm="12" :lg="4" :xs="12"> | 32 | <el-col :lg="4" :sm="12" :xs="12"> |
| 33 | <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn02.png">HOTEL RESERVATION</div> | 33 | <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn02.png">HOTEL RESERVATION</div> |
| 34 | </el-col> | 34 | </el-col> |
| 35 | <el-col :sm="12" :lg="4" :xs="12"> | 35 | <el-col :lg="4" :sm="12" :xs="12"> |
| 36 | <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn03.png">TRANSPORTATION RESERVATION</div> | 36 | <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn03.png">TRANSPORTATION RESERVATION</div> |
| 37 | </el-col> | 37 | </el-col> |
| 38 | <el-col :sm="12" :lg="4" :xs="12"> | 38 | <el-col :lg="4" :sm="12" :xs="12"> |
| 39 | <div class="item" @click="popRemark(10)"><img src="@/assets/dance/btn04.png">TICKET SERVICES</div> | 39 | <div class="item" @click="popRemark(10)"><img src="@/assets/dance/btn04.png">TICKET SERVICES</div> |
| 40 | </el-col> | 40 | </el-col> |
| 41 | <el-col :sm="12" :lg="4" :xs="12"> | 41 | <el-col :lg="4" :sm="12" :xs="12"> |
| 42 | <div class="item" @click="goMedia"><img src="@/assets/dance/btn07.png">Media Registration</div> | 42 | <div class="item" @click="goMedia"><img src="@/assets/dance/btn07.png">Media Registration</div> |
| 43 | </el-col> | 43 | </el-col> |
| 44 | <!-- <el-col :sm="12" :lg="4" :xs="12">--> | 44 | <!-- <el-col :sm="12" :lg="4" :xs="12">--> |
| ... | @@ -135,7 +135,7 @@ onMounted(() => { | ... | @@ -135,7 +135,7 @@ onMounted(() => { |
| 135 | 135 | ||
| 136 | function building() { | 136 | function building() { |
| 137 | ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.') | 137 | ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.') |
| 138 | return | 138 | |
| 139 | } | 139 | } |
| 140 | 140 | ||
| 141 | function applyInvitation() { | 141 | function applyInvitation() { |
| ... | @@ -149,9 +149,12 @@ function applyInvitation() { | ... | @@ -149,9 +149,12 @@ function applyInvitation() { |
| 149 | const user = useUserStore().user | 149 | const user = useUserStore().user |
| 150 | 150 | ||
| 151 | function goMedia() { | 151 | function goMedia() { |
| 152 | proxy.$modal.msgWarning(language.value == 0 ? '暂未开放' : 'Not yet open') | 152 | // proxy.$modal.msgWarning(language.value == 0 ? '暂未开放' : 'Not yet open') |
| 153 | return; | 153 | // return; |
| 154 | 154 | if (form.value.isMedia == 0) { | |
| 155 | building() | ||
| 156 | return | ||
| 157 | } | ||
| 155 | //如果没登录 | 158 | //如果没登录 |
| 156 | if (!user) { | 159 | if (!user) { |
| 157 | ElMessage({ | 160 | ElMessage({ |
| ... | @@ -171,13 +174,18 @@ function popRemark(type) { | ... | @@ -171,13 +174,18 @@ function popRemark(type) { |
| 171 | } | 174 | } |
| 172 | 175 | ||
| 173 | if (type == '0') { | 176 | if (type == '0') { |
| 174 | ElMessage.warning('The visa invitation letter application will be available soon. Thank you for your patience.') | 177 | // ElMessage.warning('The visa invitation letter application will be available soon. Thank you for your patience.') |
| 175 | return; | 178 | // return; |
| 176 | // 签证 | 179 | // 签证 |
| 177 | if (language.value === 0) { | 180 | if (language.value == 0) { |
| 178 | ElMessage.warning('请切换英文页面办理') | 181 | ElMessage.warning('请切换英文页面办理') |
| 179 | return | 182 | return |
| 180 | } else { | 183 | } else { |
| 184 | if (form.value.isVisa == 0) { | ||
| 185 | building() | ||
| 186 | return | ||
| 187 | } | ||
| 188 | |||
| 181 | if (!user) { | 189 | if (!user) { |
| 182 | ElMessage({ | 190 | ElMessage({ |
| 183 | type: 'warning', | 191 | type: 'warning', |
| ... | @@ -191,11 +199,6 @@ function popRemark(type) { | ... | @@ -191,11 +199,6 @@ function popRemark(type) { |
| 191 | } | 199 | } |
| 192 | } | 200 | } |
| 193 | 201 | ||
| 194 | if (type == '1') { | ||
| 195 | proxy.$modal.msgWarning(language.value == 0 ? '暂未开放' : 'Not yet open') | ||
| 196 | return; | ||
| 197 | } | ||
| 198 | |||
| 199 | if ((form.value.isJdView == 0 && type == '1') | 202 | if ((form.value.isJdView == 0 && type == '1') |
| 200 | || (form.value.isCarView == 0 && type == '2') | 203 | || (form.value.isCarView == 0 && type == '2') |
| 201 | || (form.value.isFoodView == 0 && type == '3') | 204 | || (form.value.isFoodView == 0 && type == '3') |
| ... | @@ -220,6 +223,8 @@ function popRemark(type) { | ... | @@ -220,6 +223,8 @@ function popRemark(type) { |
| 220 | cptName: props.cptName | 223 | cptName: props.cptName |
| 221 | } | 224 | } |
| 222 | proxy.$refs['orderRemarkRef'].open(params) | 225 | proxy.$refs['orderRemarkRef'].open(params) |
| 226 | |||
| 227 | // goBooking(type) | ||
| 223 | } | 228 | } |
| 224 | 229 | ||
| 225 | function goBooking(n, f) { | 230 | function goBooking(n, f) { |
| ... | @@ -235,7 +240,10 @@ function goBooking(n, f) { | ... | @@ -235,7 +240,10 @@ function goBooking(n, f) { |
| 235 | break; | 240 | break; |
| 236 | case 1: | 241 | case 1: |
| 237 | //酒店 | 242 | //酒店 |
| 238 | router.push({path: `/booking/hotel/${props.matchId}`, query: {flag: f}}) | 243 | router.push({ |
| 244 | path: `/booking/hotel/${props.matchId}` | ||
| 245 | // , query: {flag: f} | ||
| 246 | }) | ||
| 239 | break; | 247 | break; |
| 240 | case 2: | 248 | case 2: |
| 241 | //车辆 | 249 | //车辆 |
| ... | @@ -257,7 +265,7 @@ function goBooking(n, f) { | ... | @@ -257,7 +265,7 @@ function goBooking(n, f) { |
| 257 | } | 265 | } |
| 258 | </script> | 266 | </script> |
| 259 | 267 | ||
| 260 | <style scoped lang="scss"> | 268 | <style lang="scss" scoped> |
| 261 | .itemBox, .itemBox_en { | 269 | .itemBox, .itemBox_en { |
| 262 | padding: 20px; | 270 | padding: 20px; |
| 263 | background: #fff; | 271 | background: #fff; | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <el-dialog :title="title" v-model="show" @close="close"> | 2 | <el-dialog v-model="show" :title="title" @close="close"> |
| 3 | <div> | 3 | <div> |
| 4 | <h2 class="text-warning text-center" v-if="cptName">{{cptName}}</h2> | 4 | <h2 v-if="cptName" class="text-warning text-center">{{ cptName }}</h2> |
| 5 | 5 | ||
| 6 | <div v-if="type==1" class="plr20" v-html="form.reserveDes"></div> | 6 | <div v-if="type==1" class="plr20" v-html="form.reserveDes"></div> |
| 7 | <div v-if="type==2" class="plr20" v-html="form.reserveDesCar"></div> | 7 | <div v-if="type==2" class="plr20" v-html="form.reserveDesCar"></div> |
| ... | @@ -11,17 +11,18 @@ | ... | @@ -11,17 +11,18 @@ |
| 11 | <div v-if="type==10" class="plr20" v-html="form.reserveDesTitck"></div> | 11 | <div v-if="type==10" class="plr20" v-html="form.reserveDesTitck"></div> |
| 12 | 12 | ||
| 13 | 13 | ||
| 14 | <el-row v-if="type==1" justify="center"> | 14 | <!-- <el-row v-if="type==1" justify="center">--> |
| 15 | <el-radio-group v-model="hotelType"> | 15 | <!-- <el-radio-group v-model="hotelType">--> |
| 16 | <el-radio label="0">{{language==0?'运动队酒店':'Team Hotel Reservation'}}</el-radio> | 16 | <!-- <el-radio label="0">{{language==0?'运动队酒店':'Team Hotel Reservation'}}</el-radio>--> |
| 17 | <el-radio label="1">{{language==0?'执委大会酒店':'Conference Hotel Reservation'}}</el-radio> | 17 | <!-- <el-radio label="1">{{language==0?'执委大会酒店':'Conference Hotel Reservation'}}</el-radio>--> |
| 18 | </el-radio-group> | 18 | <!-- </el-radio-group>--> |
| 19 | </el-row> | 19 | <!-- </el-row>--> |
| 20 | 20 | ||
| 21 | </div> | 21 | </div> |
| 22 | <template #footer> | 22 | <template #footer> |
| 23 | <div class="dialog-footer text-center"> | 23 | <div class="dialog-footer text-center"> |
| 24 | <el-button type="primary" class="btn-lineG w200px" round @click="ok">{{language==0?'确定':'Confirm'}}</el-button> | 24 | <el-button class="btn-lineG w200px" round type="primary" @click="ok">{{ language == 0 ? '确定' : 'Confirm' }} |
| 25 | </el-button> | ||
| 25 | </div> | 26 | </div> |
| 26 | </template> | 27 | </template> |
| 27 | </el-dialog> | 28 | </el-dialog> |
| ... | @@ -31,16 +32,18 @@ | ... | @@ -31,16 +32,18 @@ |
| 31 | import {getBaseInfoByActiveId} from "@/apiPc/booking"; | 32 | import {getBaseInfoByActiveId} from "@/apiPc/booking"; |
| 32 | import {getCurrentInstance} from "@vue/runtime-core"; | 33 | import {getCurrentInstance} from "@vue/runtime-core"; |
| 33 | import {useStorage} from "@vueuse/core/index"; | 34 | import {useStorage} from "@vueuse/core/index"; |
| 34 | const emit = defineEmits([ 'submit']) | 35 | |
| 36 | const emit = defineEmits(['submit']) | ||
| 35 | const {proxy} = getCurrentInstance() | 37 | const {proxy} = getCurrentInstance() |
| 36 | const language= useStorage('language',0) | 38 | const language = useStorage('language', 0) |
| 37 | import useUserStore from "@/store/modules/user"; | 39 | import useUserStore from "@/store/modules/user"; |
| 40 | |||
| 38 | const user = useUserStore().user | 41 | const user = useUserStore().user |
| 39 | const title = ref('') | 42 | const title = ref('') |
| 40 | const cptName = ref('') | 43 | const cptName = ref('') |
| 41 | const show = ref(false) | 44 | const show = ref(false) |
| 42 | const form = ref({}) | 45 | const form = ref({}) |
| 43 | const hotelType= ref('1') | 46 | const hotelType = ref('1') |
| 44 | 47 | ||
| 45 | let matchId = '' | 48 | let matchId = '' |
| 46 | let type = '' | 49 | let type = '' |
| ... | @@ -58,16 +61,18 @@ defineExpose({ | ... | @@ -58,16 +61,18 @@ defineExpose({ |
| 58 | 61 | ||
| 59 | function getData() { | 62 | function getData() { |
| 60 | console.log(matchId) | 63 | console.log(matchId) |
| 61 | getBaseInfoByActiveId(matchId).then(res=>{ | 64 | getBaseInfoByActiveId(matchId).then(res => { |
| 62 | form.value = res.data || {} | 65 | form.value = res.data || {} |
| 63 | console.log(form.value) | 66 | console.log(form.value) |
| 64 | }).catch(err=>{ | 67 | }).catch(err => { |
| 65 | console.log(err) | 68 | console.log(err) |
| 66 | }) | 69 | }) |
| 67 | } | 70 | } |
| 71 | |||
| 68 | function close() { | 72 | function close() { |
| 69 | show.value = false | 73 | show.value = false |
| 70 | } | 74 | } |
| 75 | |||
| 71 | function ok() { | 76 | function ok() { |
| 72 | // type | 77 | // type |
| 73 | show.value = false | 78 | show.value = false |
| ... | @@ -80,6 +85,6 @@ function ok() { | ... | @@ -80,6 +85,6 @@ function ok() { |
| 80 | } | 85 | } |
| 81 | </script> | 86 | </script> |
| 82 | 87 | ||
| 83 | <style scoped lang="scss"> | 88 | <style lang="scss" scoped> |
| 84 | 89 | ||
| 85 | </style> | 90 | </style> | ... | ... |
| ... | @@ -22,15 +22,15 @@ | ... | @@ -22,15 +22,15 @@ |
| 22 | </div> | 22 | </div> |
| 23 | <div v-if="form.type?.some(v=>v==1)"> | 23 | <div v-if="form.type?.some(v=>v==1)"> |
| 24 | <h3 class="leftboderTT">{{ language == 0 ? '接机信息' : 'Pick-up information' }}</h3> | 24 | <h3 class="leftboderTT">{{ language == 0 ? '接机信息' : 'Pick-up information' }}</h3> |
| 25 | <!-- <el-form-item :label="language==0?'抵达人员身份':'Role of Person-Arrival'" prop="pickUpBo.standing"--> | 25 | <!-- <el-form-item :label="language==0?'抵达人员身份':'Role of Person-Arrival'" prop="pickUpBo.standing"--> |
| 26 | <!-- required>--> | 26 | <!-- required>--> |
| 27 | <!-- <el-checkbox-group v-model="form.pickUpBo.standing">--> | 27 | <!-- <el-checkbox-group v-model="form.pickUpBo.standing">--> |
| 28 | <!-- <el-checkbox :label="language==0?'运动员':'Athlete'" name="1"/>--> | 28 | <!-- <el-checkbox :label="language==0?'运动员':'Athlete'" name="1"/>--> |
| 29 | <!-- <el-checkbox :label="language==0?'随队人员':'Accompanying Person'" name="2"/>--> | 29 | <!-- <el-checkbox :label="language==0?'随队人员':'Accompanying Person'" name="2"/>--> |
| 30 | <!-- <el-checkbox :label="language==0?'官员':'Official'" name="3"/>--> | 30 | <!-- <el-checkbox :label="language==0?'官员':'Official'" name="3"/>--> |
| 31 | <!-- <el-checkbox :label="language==0?'其他':'Others'" name="4"/>--> | 31 | <!-- <el-checkbox :label="language==0?'其他':'Others'" name="4"/>--> |
| 32 | <!-- </el-checkbox-group>--> | 32 | <!-- </el-checkbox-group>--> |
| 33 | <!-- </el-form-item>--> | 33 | <!-- </el-form-item>--> |
| 34 | 34 | ||
| 35 | <el-form-item :label="language==0?'队伍俱乐部':'Team/Club Name'" prop="pickUpBo.standing" required> | 35 | <el-form-item :label="language==0?'队伍俱乐部':'Team/Club Name'" prop="pickUpBo.standing" required> |
| 36 | <el-input v-model="form.pickUpBo.standing"/> | 36 | <el-input v-model="form.pickUpBo.standing"/> |
| ... | @@ -66,8 +66,8 @@ | ... | @@ -66,8 +66,8 @@ |
| 66 | required> | 66 | required> |
| 67 | <div style="padding: 1px"> | 67 | <div style="padding: 1px"> |
| 68 | <el-date-picker | 68 | <el-date-picker |
| 69 | :disabled-date="disabledDateRZ" default-value="'2024-09-27'" | 69 | v-model="form.pickUpBo.arrivalDate" :disabled-date="disabledDateRZ" |
| 70 | v-model="form.pickUpBo.arrivalDate" format="YYYY-MM-DD" | 70 | default-value="'2024-09-27'" format="YYYY-MM-DD" |
| 71 | placeholder="YYYY-MM-DD" | 71 | placeholder="YYYY-MM-DD" |
| 72 | style="width: 100%;" type="date" value-format="YYYY-MM-DD" | 72 | style="width: 100%;" type="date" value-format="YYYY-MM-DD" |
| 73 | /> | 73 | /> |
| ... | @@ -80,8 +80,8 @@ | ... | @@ -80,8 +80,8 @@ |
| 80 | <!-- format="YYYY-MM-DD" placeholder="YYYY-MM-DD"--> | 80 | <!-- format="YYYY-MM-DD" placeholder="YYYY-MM-DD"--> |
| 81 | <!-- style="width: 100%;" type="date" value-format="YYYY-MM-DD"--> | 81 | <!-- style="width: 100%;" type="date" value-format="YYYY-MM-DD"--> |
| 82 | <!-- />--> | 82 | <!-- />--> |
| 83 | <el-time-picker v-model="form.pickUpBo.arrivaTime" placeholder="HH:mm:ss" value-format="HH:mm:ss" | 83 | <el-time-picker v-model="form.pickUpBo.arrivaTime" format="HH:mm:ss" placeholder="HH:mm:ss" |
| 84 | format="HH:mm:ss" style="width: 100%;"/> | 84 | style="width: 100%;" value-format="HH:mm:ss"/> |
| 85 | </el-form-item> | 85 | </el-form-item> |
| 86 | 86 | ||
| 87 | <el-form-item :label="language==0?'航班/车次':'Flight/Train Number'" prop="pickUpBo.flight" required> | 87 | <el-form-item :label="language==0?'航班/车次':'Flight/Train Number'" prop="pickUpBo.flight" required> |
| ... | @@ -115,17 +115,17 @@ | ... | @@ -115,17 +115,17 @@ |
| 115 | <!-- <el-form-item :label="language == 0 ? '送机信息' : 'Delivery information' ">--> | 115 | <!-- <el-form-item :label="language == 0 ? '送机信息' : 'Delivery information' ">--> |
| 116 | <!-- </el-form-item>--> | 116 | <!-- </el-form-item>--> |
| 117 | <h3 class="leftboderTT">{{ language == 0 ? '送机信息' : 'Delivery information' }}</h3> | 117 | <h3 class="leftboderTT">{{ language == 0 ? '送机信息' : 'Delivery information' }}</h3> |
| 118 | <!-- <el-form-item--> | 118 | <!-- <el-form-item--> |
| 119 | <!-- :label="language==0?'离会人员身份':'Role of Person-Departure'"--> | 119 | <!-- :label="language==0?'离会人员身份':'Role of Person-Departure'"--> |
| 120 | <!-- prop="downOffBo.standing" required>--> | 120 | <!-- prop="downOffBo.standing" required>--> |
| 121 | <!-- <!– <el-input v-model="form.downOffBo.standing"/>–>--> | 121 | <!-- <!– <el-input v-model="form.downOffBo.standing"/>–>--> |
| 122 | <!-- <el-checkbox-group v-model="form.downOffBo.standing">--> | 122 | <!-- <el-checkbox-group v-model="form.downOffBo.standing">--> |
| 123 | <!-- <el-checkbox :label="language==0?'运动员':'Athlete'" name="1"/>--> | 123 | <!-- <el-checkbox :label="language==0?'运动员':'Athlete'" name="1"/>--> |
| 124 | <!-- <el-checkbox :label="language==0?'随队人员':'Accompanying Person'" name="2"/>--> | 124 | <!-- <el-checkbox :label="language==0?'随队人员':'Accompanying Person'" name="2"/>--> |
| 125 | <!-- <el-checkbox :label="language==0?'官员':'Official'" name="3"/>--> | 125 | <!-- <el-checkbox :label="language==0?'官员':'Official'" name="3"/>--> |
| 126 | <!-- <el-checkbox :label="language==0?'其他':'Others'" name="4"/>--> | 126 | <!-- <el-checkbox :label="language==0?'其他':'Others'" name="4"/>--> |
| 127 | <!-- </el-checkbox-group>--> | 127 | <!-- </el-checkbox-group>--> |
| 128 | <!-- </el-form-item>--> | 128 | <!-- </el-form-item>--> |
| 129 | 129 | ||
| 130 | <el-form-item :label="language==0?'队伍俱乐部':'Team/Club Name'" prop="pickUpBo.standing" required> | 130 | <el-form-item :label="language==0?'队伍俱乐部':'Team/Club Name'" prop="pickUpBo.standing" required> |
| 131 | <el-input v-model="form.pickUpBo.standing"/> | 131 | <el-input v-model="form.pickUpBo.standing"/> |
| ... | @@ -161,9 +161,9 @@ | ... | @@ -161,9 +161,9 @@ |
| 161 | required> | 161 | required> |
| 162 | <div style="padding: 1px"> | 162 | <div style="padding: 1px"> |
| 163 | <el-date-picker | 163 | <el-date-picker |
| 164 | v-model="form.downOffBo.arrivalDate" format="YYYY-MM-DD" | 164 | v-model="form.downOffBo.arrivalDate" :disabled-date="disabledDateDP" |
| 165 | placeholder="YYYY-MM-DD" :disabled-date="disabledDateDP" | 165 | default-value="'2024-09-30'" format="YYYY-MM-DD" |
| 166 | default-value="'2024-09-30'" | 166 | placeholder="YYYY-MM-DD" |
| 167 | style="width: 100%;" type="date" value-format="YYYY-MM-DD" | 167 | style="width: 100%;" type="date" value-format="YYYY-MM-DD" |
| 168 | /> | 168 | /> |
| 169 | </div> | 169 | </div> |
| ... | @@ -176,8 +176,8 @@ | ... | @@ -176,8 +176,8 @@ |
| 176 | <!-- format="YYYY-MM-DD" placeholder="YYYY-MM-DD"--> | 176 | <!-- format="YYYY-MM-DD" placeholder="YYYY-MM-DD"--> |
| 177 | <!-- style="width: 100%;" type="date" value-format="YYYY-MM-DD"--> | 177 | <!-- style="width: 100%;" type="date" value-format="YYYY-MM-DD"--> |
| 178 | <!-- />--> | 178 | <!-- />--> |
| 179 | <el-time-picker v-model="form.downOffBo.arrivaTime" placeholder="HH:mm:ss" value-format="HH:mm:ss" | 179 | <el-time-picker v-model="form.downOffBo.arrivaTime" format="HH:mm:ss" placeholder="HH:mm:ss" |
| 180 | format="HH:mm:ss" style="width: 100%;"/> | 180 | style="width: 100%;" value-format="HH:mm:ss"/> |
| 181 | </el-form-item> | 181 | </el-form-item> |
| 182 | 182 | ||
| 183 | <el-form-item :label="language==0?'航班/车次':'Flight/Train Number'" prop="downOffBo.flight" required> | 183 | <el-form-item :label="language==0?'航班/车次':'Flight/Train Number'" prop="downOffBo.flight" required> |
| ... | @@ -389,11 +389,11 @@ const open = (params) => { | ... | @@ -389,11 +389,11 @@ const open = (params) => { |
| 389 | form.value = { | 389 | form.value = { |
| 390 | pickUpBo: { | 390 | pickUpBo: { |
| 391 | serviceType: 1, | 391 | serviceType: 1, |
| 392 | arrivalDate:'2024-09-27' | 392 | arrivalDate: '2024-09-27' |
| 393 | }, | 393 | }, |
| 394 | downOffBo: { | 394 | downOffBo: { |
| 395 | serviceType: 2, | 395 | serviceType: 2, |
| 396 | arrivalDate:'2024-09-30' | 396 | arrivalDate: '2024-09-30' |
| 397 | }, | 397 | }, |
| 398 | type: ['1'], | 398 | type: ['1'], |
| 399 | } | 399 | } |
| ... | @@ -432,11 +432,11 @@ function submitForm() { | ... | @@ -432,11 +432,11 @@ function submitForm() { |
| 432 | // form.value.pickUpBo.serviceType=1 | 432 | // form.value.pickUpBo.serviceType=1 |
| 433 | // form.value.downOffBo.serviceType=2 | 433 | // form.value.downOffBo.serviceType=2 |
| 434 | console.log(form.value) | 434 | console.log(form.value) |
| 435 | let forms = JSON.parse(JSON.stringify(form.value)) | 435 | let forms = {...form.value} |
| 436 | forms.pickUpBo.nationalitys = forms.pickUpBo.nationalitys?.join(',') | 436 | forms.pickUpBo.nationalitys = forms.pickUpBo.nationalitys?.join(',') |
| 437 | forms.pickUpBo.standing = forms.pickUpBo.standing?.join(',') | 437 | // forms.pickUpBo.standing = forms.pickUpBo.standing?.join(',') |
| 438 | forms.downOffBo.nationalitys = forms.downOffBo.nationalitys?.join(',') | 438 | forms.downOffBo.nationalitys = forms.downOffBo.nationalitys?.join(',') |
| 439 | forms.downOffBo.standing = forms.downOffBo.standing?.join(',') | 439 | // forms.downOffBo.standing = forms.downOffBo.standing?.join(',') |
| 440 | forms.type = null | 440 | forms.type = null |
| 441 | if (!form.value.type.includes('1')) forms.pickUpBo = {} | 441 | if (!form.value.type.includes('1')) forms.pickUpBo = {} |
| 442 | if (!form.value.type.includes('2')) forms.downOffBo = {} | 442 | if (!form.value.type.includes('2')) forms.downOffBo = {} | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <div class="syBg"> | 2 | <div class="syBg"> |
| 3 | <div class="banner"> | 3 | <div class="banner"> |
| 4 | <el-carousel class="forPc" autoplay :interval="2000" height="450px" :autoplay="false" arrow="hover" | 4 | <el-carousel :autoplay="false" :interval="2000" arrow="hover" autoplay class="forPc" height="450px" |
| 5 | @change="carouselChange"> | 5 | @change="carouselChange"> |
| 6 | <el-carousel-item style="height: 450px;" v-for="n in maList" :key="n.id"> | 6 | <el-carousel-item v-for="n in maList" :key="n.id" style="height: 450px;"> |
| 7 | <div class="bannerItem"> | 7 | <div class="bannerItem"> |
| 8 | <div class="h100" @click.stop="goMatch(n)"> | 8 | <div class="h100" @click.stop="goMatch(n)"> |
| 9 | <img class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> | 9 | <img :src="fillImgUrl(n.bgImgUrl)" class="bannerImg"> |
| 10 | <div class="box forPc" style="position: absolute;top: 0;left: 0;right: 0;margin: auto;"> | 10 | <div class="box forPc" style="position: absolute;top: 0;left: 0;right: 0;margin: auto;"> |
| 11 | <img class="slogen" src="@/assets/logo/banner-text.png"/> | 11 | <img class="slogen" src="@/assets/logo/banner-text.png"/> |
| 12 | 12 | ||
| ... | @@ -18,7 +18,8 @@ | ... | @@ -18,7 +18,8 @@ |
| 18 | <div v-if="!liveData || liveData.videoStatus==0"> | 18 | <div v-if="!liveData || liveData.videoStatus==0"> |
| 19 | <!-- <div class="banner-count bb"></div>--> | 19 | <!-- <div class="banner-count bb"></div>--> |
| 20 | </div> | 20 | </div> |
| 21 | <div class="banner-count" v-if="currentDateTime < liveData.videoStart" @click.stop="goliveUrl"> | 21 | <div v-if="currentDateTime < liveData.videoStart &&form.isLiveVideo==1" class="banner-count" |
| 22 | @click.stop="goliveUrl"> | ||
| 22 | 距离直播开始 | 23 | 距离直播开始 |
| 23 | <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒"> | 24 | <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒"> |
| 24 | <template #default="timeData"> | 25 | <template #default="timeData"> |
| ... | @@ -42,33 +43,33 @@ | ... | @@ -42,33 +43,33 @@ |
| 42 | </div> | 43 | </div> |
| 43 | <!--如果有直播--> | 44 | <!--如果有直播--> |
| 44 | <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl"> | 45 | <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl"> |
| 45 | <div class="banner-count bb" | 46 | <div v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)" |
| 46 | v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)">直播进行中 | 47 | class="banner-count bb">直播进行中 |
| 47 | </div> | 48 | </div> |
| 48 | <div class="banner-count bb" v-if="currentDateTime > liveData.videoEnd">直播已结束</div> | 49 | <div v-if="currentDateTime > liveData.videoEnd" class="banner-count bb">直播已结束</div> |
| 49 | <!-- <div class="banner-count bb" v-if="currentDateTime < liveData.videoStart">直播即将开始</div>--> | 50 | <!-- <div class="banner-count bb" v-if="currentDateTime < liveData.videoStart">直播即将开始</div>--> |
| 50 | </div> | 51 | </div> |
| 51 | <div v-if="liveData&& liveData.picStatus==1" @click.stop="gopicliveUrl"> | 52 | <div v-if="liveData&& liveData.picStatus==1&&form.isLivePic==1" @click.stop="gopicliveUrl"> |
| 52 | <div class="picliveBtn" v-if="(currentDateTime>liveData.picStart)&&(currentDateTime<liveData.picEnd)"> | 53 | <div v-if="(currentDateTime>liveData.picStart)&&(currentDateTime<liveData.picEnd)" class="picliveBtn"> |
| 53 | 图片直播中 | 54 | 图片直播中 |
| 54 | </div> | 55 | </div> |
| 55 | <div class="picliveBtn" v-if="currentDateTime > liveData.picEnd">图片直播</div> | 56 | <div v-if="currentDateTime > liveData.picEnd" class="picliveBtn">图片直播</div> |
| 56 | <div class="picliveBtn" v-if="currentDateTime < liveData.picStart">图片直播</div> | 57 | <div v-if="currentDateTime < liveData.picStart" class="picliveBtn">图片直播</div> |
| 57 | </div> | 58 | </div> |
| 58 | </div> | 59 | </div> |
| 59 | </div> | 60 | </div> |
| 60 | </div> | 61 | </div> |
| 61 | </el-carousel-item> | 62 | </el-carousel-item> |
| 62 | </el-carousel> | 63 | </el-carousel> |
| 63 | <el-carousel class="forWei" height="160px" autoplay arrow="hover" @change="carouselChange"> | 64 | <el-carousel arrow="hover" autoplay class="forWei" height="160px" @change="carouselChange"> |
| 64 | <el-carousel-item style="height: 160px;" v-for="n in maList" :key="n.id"> | 65 | <el-carousel-item v-for="n in maList" :key="n.id" style="height: 160px;"> |
| 65 | <div class="bannerItem" style="height:100%"> | 66 | <div class="bannerItem" style="height:100%"> |
| 66 | <div class="h100" style="position: relative"> | 67 | <div class="h100" style="position: relative"> |
| 67 | <img class="bannerImg" :src="fillImgUrl(n.bgImgUrl)"> | 68 | <img :src="fillImgUrl(n.bgImgUrl)" class="bannerImg"> |
| 68 | <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> | 69 | <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> |
| 69 | <!-- <img class="slogen" src="@/assets/logo/banner-text.png"/>--> | 70 | <!-- <img class="slogen" src="@/assets/logo/banner-text.png"/>--> |
| 70 | 71 | ||
| 71 | <div class="banner-count" v-if="currentDateTime < liveData.videoStart" @click="goliveUrl"> | 72 | <div v-if="currentDateTime < liveData.videoStart" class="banner-count" @click="goliveUrl"> |
| 72 | 距离直播开始 | 73 | 距离直播开始 |
| 73 | <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒"> | 74 | <van-count-down :time="liveStartTime" format="DD 天 HH 时 mm 分 ss 秒"> |
| 74 | <template #default="timeData"> | 75 | <template #default="timeData"> |
| ... | @@ -91,10 +92,10 @@ | ... | @@ -91,10 +92,10 @@ |
| 91 | </van-count-down> | 92 | </van-count-down> |
| 92 | </div> | 93 | </div> |
| 93 | <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl"> | 94 | <div v-if="liveData&& liveData.videoStatus==1" @click.stop="goliveUrl"> |
| 94 | <div class="banner-count" | 95 | <div v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)" |
| 95 | v-if="(currentDateTime>liveData.videoStart)&&(currentDateTime<liveData.videoEnd)">直播进行中 | 96 | class="banner-count">直播进行中 |
| 96 | </div> | 97 | </div> |
| 97 | <div class="banner-count" v-if="currentDateTime > liveData.videoEnd">直播已结束</div> | 98 | <div v-if="currentDateTime > liveData.videoEnd" class="banner-count">直播已结束</div> |
| 98 | </div> | 99 | </div> |
| 99 | </div> | 100 | </div> |
| 100 | </div> | 101 | </div> |
| ... | @@ -108,12 +109,12 @@ | ... | @@ -108,12 +109,12 @@ |
| 108 | </div> | 109 | </div> |
| 109 | 110 | ||
| 110 | <div class="box"> | 111 | <div class="box"> |
| 111 | <HomeQuick :match-id="matchData?.id" :cpt-name="matchData?.name" @pick-up="handlePickup"/> | 112 | <HomeQuick :cpt-name="matchData?.name" :match-id="matchData?.id" @pick-up="handlePickup"/> |
| 112 | </div> | 113 | </div> |
| 113 | 114 | ||
| 114 | <div id="part0" class="box part"> | 115 | <div id="part0" class="box part"> |
| 115 | <el-row :gutter="20"> | 116 | <el-row :gutter="20"> |
| 116 | <el-col :sm="24" :lg="12"> | 117 | <el-col :lg="12" :sm="24"> |
| 117 | <div class="indexTitle"> | 118 | <div class="indexTitle"> |
| 118 | <h3 class="leftboderTT">通知公告</h3> | 119 | <h3 class="leftboderTT">通知公告</h3> |
| 119 | <a class="more" href="#/notice">MORE</a> | 120 | <a class="more" href="#/notice">MORE</a> |
| ... | @@ -125,7 +126,7 @@ | ... | @@ -125,7 +126,7 @@ |
| 125 | </div> | 126 | </div> |
| 126 | </el-card> | 127 | </el-card> |
| 127 | </el-col> | 128 | </el-col> |
| 128 | <el-col :sm="24" :lg="12"> | 129 | <el-col :lg="12" :sm="24"> |
| 129 | <div class="indexTitle"> | 130 | <div class="indexTitle"> |
| 130 | <h3 class="leftboderTT">竞赛日程</h3> | 131 | <h3 class="leftboderTT">竞赛日程</h3> |
| 131 | <a class="more" href="#/saiC">MORE</a> | 132 | <a class="more" href="#/saiC">MORE</a> |
| ... | @@ -149,8 +150,8 @@ | ... | @@ -149,8 +150,8 @@ |
| 149 | <el-row :gutter="20"> | 150 | <el-row :gutter="20"> |
| 150 | <el-col | 151 | <el-col |
| 151 | v-for="(n,index) in newest2" | 152 | v-for="(n,index) in newest2" |
| 152 | :key="n.id" :xs="24" :sm="8" | 153 | :key="n.id" :lg="8" :sm="8" |
| 153 | :lg="8" | 154 | :xs="24" |
| 154 | > | 155 | > |
| 155 | <div class="activeItem" @click="goDetail(n)"> | 156 | <div class="activeItem" @click="goDetail(n)"> |
| 156 | <div class="imgbox"> | 157 | <div class="imgbox"> |
| ... | @@ -213,9 +214,9 @@ | ... | @@ -213,9 +214,9 @@ |
| 213 | <el-col :lg="16"> | 214 | <el-col :lg="16"> |
| 214 | <div class="swiperPic"> | 215 | <div class="swiperPic"> |
| 215 | <swiper | 216 | <swiper |
| 216 | class="swiper-wrapper" :modules="modules" :slides-per-view="3" :space-between="20" | 217 | :autoplay="true" :loop="true" :modules="modules" :navigation="navigationPic" |
| 217 | :navigation="navigationPic" | 218 | :slides-per-view="3" |
| 218 | :autoplay="true" :loop="true" | 219 | :space-between="20" class="swiper-wrapper" |
| 219 | > | 220 | > |
| 220 | <swiper-slide v-for="(n,i) in picList" :key="i"> | 221 | <swiper-slide v-for="(n,i) in picList" :key="i"> |
| 221 | <div class="picbox" @click="goDetail(n)"> | 222 | <div class="picbox" @click="goDetail(n)"> |
| ... | @@ -229,7 +230,7 @@ | ... | @@ -229,7 +230,7 @@ |
| 229 | </el-col> | 230 | </el-col> |
| 230 | </el-row> | 231 | </el-row> |
| 231 | <el-row class="news-l-r"> | 232 | <el-row class="news-l-r"> |
| 232 | <el-col v-for="(n,index) in livelist" :lg="8" v-show="index>0"> | 233 | <el-col v-for="(n,index) in livelist" v-show="index>0" :lg="8"> |
| 233 | <div class="item" style="padding: 0;margin: 20px 0 0" @click="goDetail(n)"> | 234 | <div class="item" style="padding: 0;margin: 20px 0 0" @click="goDetail(n)"> |
| 234 | <div class="imgbox"> | 235 | <div class="imgbox"> |
| 235 | <i class="playIcon"></i> | 236 | <i class="playIcon"></i> |
| ... | @@ -261,7 +262,7 @@ | ... | @@ -261,7 +262,7 @@ |
| 261 | </div> | 262 | </div> |
| 262 | <div class="mt30 text-center"> | 263 | <div class="mt30 text-center"> |
| 263 | <a class="btn-black" href="#/about/wuDao" style="display: inline-flex;align-items: center;">了解更多<img | 264 | <a class="btn-black" href="#/about/wuDao" style="display: inline-flex;align-items: center;">了解更多<img |
| 264 | style="filter: brightness(2);height: 8px" src="@/assets/v1/more.png"/></a> | 265 | src="@/assets/v1/more.png" style="filter: brightness(2);height: 8px"/></a> |
| 265 | </div> | 266 | </div> |
| 266 | 267 | ||
| 267 | </div> | 268 | </div> |
| ... | @@ -296,7 +297,7 @@ | ... | @@ -296,7 +297,7 @@ |
| 296 | <h3 class="leftboderTT">合作伙伴</h3> | 297 | <h3 class="leftboderTT">合作伙伴</h3> |
| 297 | </div> | 298 | </div> |
| 298 | <el-row :gutter="20"> | 299 | <el-row :gutter="20"> |
| 299 | <el-col :lg="6" :sm="6" :xs="12" v-for="p in partners"> | 300 | <el-col v-for="p in partners" :lg="6" :sm="6" :xs="12"> |
| 300 | <div class="logobox"> | 301 | <div class="logobox"> |
| 301 | <img :src="fillImgUrl(JSON.parse(p.picUrl))"> | 302 | <img :src="fillImgUrl(JSON.parse(p.picUrl))"> |
| 302 | </div> | 303 | </div> |
| ... | @@ -321,6 +322,7 @@ import {dayjs, ElMessage} from 'element-plus' | ... | @@ -321,6 +322,7 @@ import {dayjs, ElMessage} from 'element-plus' |
| 321 | import * as match from "@/apiPc/match"; | 322 | import * as match from "@/apiPc/match"; |
| 322 | import {getAboutUs, getInfoByCptId, getppInfo, getZNList} from "@/apiPc/match"; | 323 | import {getAboutUs, getInfoByCptId, getppInfo, getZNList} from "@/apiPc/match"; |
| 323 | import HomeWeatherBar from "@/viewsPc/components/homeWeatherBar"; | 324 | import HomeWeatherBar from "@/viewsPc/components/homeWeatherBar"; |
| 325 | import {getBaseInfoByActiveId} from "@/apiPc/booking"; | ||
| 324 | 326 | ||
| 325 | const modules = [Autoplay, Navigation] | 327 | const modules = [Autoplay, Navigation] |
| 326 | const navigationPic = ref({ | 328 | const navigationPic = ref({ |
| ... | @@ -352,6 +354,7 @@ const partners = ref([]) | ... | @@ -352,6 +354,7 @@ const partners = ref([]) |
| 352 | const liveData = ref({}) | 354 | const liveData = ref({}) |
| 353 | const aboutUsContent = ref('') | 355 | const aboutUsContent = ref('') |
| 354 | const liveStartTime = ref(0) | 356 | const liveStartTime = ref(0) |
| 357 | const form = ref({}) | ||
| 355 | 358 | ||
| 356 | onMounted(() => { | 359 | onMounted(() => { |
| 357 | init() | 360 | init() |
| ... | @@ -391,6 +394,12 @@ const init = () => { | ... | @@ -391,6 +394,12 @@ const init = () => { |
| 391 | newsList.value = res.rows | 394 | newsList.value = res.rows |
| 392 | }) | 395 | }) |
| 393 | 396 | ||
| 397 | async function getMatchSet(id) { | ||
| 398 | const res = await getBaseInfoByActiveId(id) | ||
| 399 | form.value = res.data ?? null | ||
| 400 | console.log(form.value) | ||
| 401 | } | ||
| 402 | |||
| 394 | match.getMaList({topFlag: 1}).then((res) => { | 403 | match.getMaList({topFlag: 1}).then((res) => { |
| 395 | maList.value = res.rows | 404 | maList.value = res.rows |
| 396 | for (let n of maList.value) { | 405 | for (let n of maList.value) { |
| ... | @@ -408,6 +417,7 @@ const init = () => { | ... | @@ -408,6 +417,7 @@ const init = () => { |
| 408 | } | 417 | } |
| 409 | matchData.value = maList.value[0] | 418 | matchData.value = maList.value[0] |
| 410 | getMatchInfo(matchData.value.id) | 419 | getMatchInfo(matchData.value.id) |
| 420 | getMatchSet(matchData.value.id) | ||
| 411 | }) | 421 | }) |
| 412 | 422 | ||
| 413 | match.getLabelList().then(res => { | 423 | match.getLabelList().then(res => { |
| ... | @@ -535,7 +545,7 @@ const gopicliveUrl = () => { | ... | @@ -535,7 +545,7 @@ const gopicliveUrl = () => { |
| 535 | 545 | ||
| 536 | </script> | 546 | </script> |
| 537 | 547 | ||
| 538 | <style scoped lang="scss"> | 548 | <style lang="scss" scoped> |
| 539 | .syBg { | 549 | .syBg { |
| 540 | background: url("@/assets/dance/logo_l.png") no-repeat bottom left, | 550 | background: url("@/assets/dance/logo_l.png") no-repeat bottom left, |
| 541 | url("@/assets/dance/logo_r1.png") no-repeat bottom right; | 551 | url("@/assets/dance/logo_r1.png") no-repeat bottom right; | ... | ... |
This diff is collapsed.
Click to expand it.
| ... | @@ -252,6 +252,7 @@ | ... | @@ -252,6 +252,7 @@ |
| 252 | 252 | ||
| 253 | <div v-if="payType == '3'"> | 253 | <div v-if="payType == '3'"> |
| 254 | <table cellpadding="0" cellspacing="0" class="table-border table"> | 254 | <table cellpadding="0" cellspacing="0" class="table-border table"> |
| 255 | <tbody> | ||
| 255 | <tr> | 256 | <tr> |
| 256 | <th class="head" colspan="2"> | 257 | <th class="head" colspan="2"> |
| 257 | {{ language == 0 ? '线下缴费的收款信息' : 'Offline Payment Collection Information' }} | 258 | {{ language == 0 ? '线下缴费的收款信息' : 'Offline Payment Collection Information' }} |
| ... | @@ -313,8 +314,8 @@ | ... | @@ -313,8 +314,8 @@ |
| 313 | <span v-else class="text-danger size12">*You can confirm with the contact person by phone after uploading the remittance form. The specific payment results can be viewed in the My Registration section of the personal center to check the progress</span> | 314 | <span v-else class="text-danger size12">*You can confirm with the contact person by phone after uploading the remittance form. The specific payment results can be viewed in the My Registration section of the personal center to check the progress</span> |
| 314 | </td> | 315 | </td> |
| 315 | </tr> | 316 | </tr> |
| 317 | </tbody> | ||
| 316 | </table> | 318 | </table> |
| 317 | |||
| 318 | <div class="text-center"> | 319 | <div class="text-center"> |
| 319 | <el-button class="btn-lineG w200px" round type="primary" @click="upRR">{{ | 320 | <el-button class="btn-lineG w200px" round type="primary" @click="upRR">{{ |
| 320 | language == 0 ? '保存' : 'Save' | 321 | language == 0 ? '保存' : 'Save' | ... | ... |
| 1 | import { defineConfig, loadEnv } from 'vite' | 1 | import {defineConfig, loadEnv} from 'vite' |
| 2 | import path, { resolve } from 'path' | 2 | import path, {resolve} from 'path' |
| 3 | import createVitePlugins from './vite/plugins' | 3 | import createVitePlugins from './vite/plugins' |
| 4 | import inject from '@rollup/plugin-inject' | 4 | import inject from '@rollup/plugin-inject' |
| 5 | import commonjs from '@rollup/plugin-commonjs' | 5 | import commonjs from '@rollup/plugin-commonjs' |
| 6 | // import legacy from '@vitejs/plugin-legacy' | 6 | // import legacy from '@vitejs/plugin-legacy' |
| 7 | 7 | ||
| 8 | // https://vitejs.dev/config/ | 8 | // https://vitejs.dev/config/ |
| 9 | export default defineConfig(({ mode, command }) => { | 9 | export default defineConfig(({mode, command}) => { |
| 10 | const env = loadEnv(mode, process.cwd()) | 10 | const env = loadEnv(mode, process.cwd()) |
| 11 | return { | 11 | return { |
| 12 | // 部署生产环境和开发环境下的URL。 | 12 | // 部署生产环境和开发环境下的URL。 |
| ... | @@ -76,24 +76,24 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -76,24 +76,24 @@ export default defineConfig(({ mode, command }) => { |
| 76 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') | 76 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') |
| 77 | }, | 77 | }, |
| 78 | '/dev-api/ztx-webSite': { | 78 | '/dev-api/ztx-webSite': { |
| 79 | target: 'http://192.168.1.118:8082/', | 79 | // target: 'http://192.168.1.118:8082/', |
| 80 | // target: 'https://ces.2025wtcwuxi.com/stage-api/', | 80 | target: 'https://ces.2025wtcwuxi.com/stage-api/', |
| 81 | changeOrigin: true, | 81 | changeOrigin: true, |
| 82 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') | 82 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') |
| 83 | }, | 83 | }, |
| 84 | '/dev-api': { | 84 | '/dev-api': { |
| 85 | target: 'http://192.168.1.118:8082/', | 85 | // target: 'http://192.168.1.118:8082/', |
| 86 | // target: 'http://192.168.1.131:8081/', | 86 | // target: 'http://192.168.1.131:8081/', |
| 87 | // target: 'https://ces.2025wtcwuxi.com/stage-api/', | 87 | // target: 'https://ces.2025wtcwuxi.com/stage-api/', |
| 88 | // target: 'http://124.70.181.90:1880/stage-api', | 88 | // target: 'http://124.70.181.90:1880/stage-api', |
| 89 | // target: 'https://wdsfwuxicenter.com/stage-api/', | 89 | target: 'https://sys.2025wtcwuxi.com/stage-api/', |
| 90 | changeOrigin: true, | 90 | changeOrigin: true, |
| 91 | rewrite: (p) => p.replace(/^\/dev-api/, '') | 91 | rewrite: (p) => p.replace(/^\/dev-api/, '') |
| 92 | }, | 92 | }, |
| 93 | '/ticket': { | 93 | '/ticket': { |
| 94 | // target: 'http://192.168.1.131:8098/', | 94 | // target: 'http://192.168.1.131:8098/', |
| 95 | // target: 'http://192.168.1.131:8081/', | 95 | target: 'http://36.153.235.222:8899/', |
| 96 | target: 'https://jijin.wtwuxicenter.com/h5/', | 96 | // target: 'https://jijin.wtwuxicenter.com/h5/', |
| 97 | // target: 'https://ticketh5.wdsfwuxicenter.com/h5/', | 97 | // target: 'https://ticketh5.wdsfwuxicenter.com/h5/', |
| 98 | changeOrigin: true, | 98 | changeOrigin: true, |
| 99 | rewrite: (p) => p.replace(/^\/ticket/, '') | 99 | rewrite: (p) => p.replace(/^\/ticket/, '') | ... | ... |
-
Please register or sign in to post a comment