首页配置
Showing
6 changed files
with
510 additions
and
58 deletions
src/viewsPc/components/bookingSearch.vue
0 → 100644
| 1 | <template> | ||
| 2 | <el-dialog | ||
| 3 | v-model="show" | ||
| 4 | :close-on-click-modal="false" | ||
| 5 | :title="language==0?'日程查询':'Schedule inquiry'" | ||
| 6 | align-center | ||
| 7 | append-to-body | ||
| 8 | center | ||
| 9 | class="pcloginpop" | ||
| 10 | close-icon="CircleClose" | ||
| 11 | destroy-on-close | ||
| 12 | style="min-width:350px;max-width: 500px" | ||
| 13 | > | ||
| 14 | <div v-loading="loading" style="min-height: 500px;height: 50vh;"> | ||
| 15 | |||
| 16 | <div v-if="!type||type==''"> | ||
| 17 | <div class="rItem" @click="type='0'">{{ language == 0 ? '按项目查询' : 'Query by project' }}</div> | ||
| 18 | <div class="rItem" @click="type='1'">{{ language == 0 ? '按团队查询' : 'Query by team' }}</div> | ||
| 19 | <div class="rItem" @click="type='2'">{{ language == 0 ? '按姓名查询' : 'Query by name' }}</div> | ||
| 20 | </div> | ||
| 21 | |||
| 22 | <div v-if="type=='0'"> | ||
| 23 | <div class="flex mt30"> | ||
| 24 | <el-input | ||
| 25 | v-model="query" | ||
| 26 | :placeholder="language==0?'输入项目/ 项目编号查询':'Enter project name or code to Query'" clearable | ||
| 27 | @blur="search" @empty="search" @enter="search" | ||
| 28 | /> | ||
| 29 | <el-button class="btn-lineG" style="color: #fff" @click="search">{{ | ||
| 30 | language == 0 ? '查询' : 'Search' | ||
| 31 | }} | ||
| 32 | </el-button> | ||
| 33 | </div> | ||
| 34 | |||
| 35 | <div v-if="list.length>0" class="mt30 rollY"> | ||
| 36 | <el-timeline> | ||
| 37 | <el-timeline-item | ||
| 38 | v-for="(form, index) in list" | ||
| 39 | :key="index" :timestamp="form.date + ' ' + form.timeStr" | ||
| 40 | placement="top" | ||
| 41 | > | ||
| 42 | <div class="text-primary"> | ||
| 43 | <span v-if="language==1&&form.projectNameEn">{{ form.projectNameEn }}</span> | ||
| 44 | <span v-else-if="form.projectName">{{ form.projectName }}</span> | ||
| 45 | <span class="fr">{{ form.changCi }} <i | ||
| 46 | v-if="form.changCi" | ||
| 47 | >/ </i> {{ language == 0 ? form.lun : form.lunEn }} </span> | ||
| 48 | </div> | ||
| 49 | <div>{{ form.danceType }}</div> | ||
| 50 | <div>{{ form.address }}</div> | ||
| 51 | </el-timeline-item> | ||
| 52 | </el-timeline> | ||
| 53 | </div> | ||
| 54 | <div v-else> | ||
| 55 | <el-empty /> | ||
| 56 | </div> | ||
| 57 | </div> | ||
| 58 | <div class="searchBox"> | ||
| 59 | <div v-if="type=='1'"> | ||
| 60 | <div class="flex mt20"> | ||
| 61 | <el-input | ||
| 62 | v-model="query2" | ||
| 63 | :placeholder="language==0?'请输入代表队名称至少两字符':'Enter the representing team name,At least two characters'" | ||
| 64 | clearable | ||
| 65 | @blur="searchTeam" @empty="searchTeam" @enter="searchTeam" | ||
| 66 | /> | ||
| 67 | <el-button class="btn-lineG" style="color: #fff" @click="searchTeam"> | ||
| 68 | {{ language == 0 ? '查询' : 'Search' }} | ||
| 69 | </el-button> | ||
| 70 | </div> | ||
| 71 | <span class="tip">*{{ language == 0 ? '模糊查询' : 'Fuzzy query' }}</span> | ||
| 72 | <div v-if="showGroupList" class="text-danger text-center"> | ||
| 73 | {{ language == 0 ? '找到多个团体' : 'Found multiple teams' }} | ||
| 74 | </div> | ||
| 75 | <div v-if="showGroupList" class="groupList rollY"> | ||
| 76 | <ul> | ||
| 77 | <li v-for="(item, index) in groupList" :key="index" @click="showDetail(item)">{{ item }} | ||
| 78 | <el-icon class="fr"> | ||
| 79 | <ArrowRight /> | ||
| 80 | </el-icon> | ||
| 81 | </li> | ||
| 82 | </ul> | ||
| 83 | </div> | ||
| 84 | <div v-if="teamlist.length>0" class="temell mt20 rollY"> | ||
| 85 | <el-collapse accordion> | ||
| 86 | <el-collapse-item v-for="(team,index) in teamlist" :key="index" :name="index" :title="team[0].title"> | ||
| 87 | <el-timeline> | ||
| 88 | <el-timeline-item v-for="(form, index) in team" :key="index" placement="top"> | ||
| 89 | |||
| 90 | <div class="text-primary" style="position: relative;top:-15px"> | ||
| 91 | {{ form.date + ' ' + form.timeStr + ' / ' + form.address }} | ||
| 92 | <span v-if="form.lunEn"> / {{ form.lunEn }}</span> | ||
| 93 | <span v-else-if="form.lun"> / {{ form.lun }}</span> | ||
| 94 | <span v-if="form.changCi "> / {{ language == 0 ? '场次' : 'Session' }}:{{ form.changCi }}</span> | ||
| 95 | </div> | ||
| 96 | <div v-if="form.projectNameEn" class="tname">{{ form.projectNameEn }}</div> | ||
| 97 | <div v-if="form.projectName" class="tname">{{ form.projectName }}</div> | ||
| 98 | <div>{{ form.danceType }}</div> | ||
| 99 | </el-timeline-item> | ||
| 100 | </el-timeline> | ||
| 101 | </el-collapse-item> | ||
| 102 | </el-collapse> | ||
| 103 | </div> | ||
| 104 | </div> | ||
| 105 | |||
| 106 | <div v-if="type=='2'"> | ||
| 107 | <div class="flex mt30"> | ||
| 108 | <el-input | ||
| 109 | v-model="query3" | ||
| 110 | :placeholder="language==0?'输入选手姓名查询':'Enter the name of the player to Query'" clearable | ||
| 111 | @blur="personalSearch" @empty="personalSearch" @enter="personalSearch" | ||
| 112 | /> | ||
| 113 | <el-button class="btn-lineG" style="color: #fff" @click="personalSearch">{{ | ||
| 114 | language == 0 ? '查询' : 'Search' | ||
| 115 | }} | ||
| 116 | </el-button> | ||
| 117 | </div> | ||
| 118 | <div v-if="list.length>0" class="temell mt20 rollY"> | ||
| 119 | <el-timeline> | ||
| 120 | <el-timeline-item v-for="(team,j) in list" :key="j" placement="top"> | ||
| 121 | <div v-for="(form, index) in team" v-show="index==0" :key="index"> | ||
| 122 | <div class="text-primary" style="position: relative;top:-15px"> | ||
| 123 | {{ form.date + ' ' + form.timeStr + ' / ' + form.address }} | ||
| 124 | <span v-if="form.lunEn"> / {{ form.lunEn }}</span> | ||
| 125 | <span v-else-if="form.lun"> / {{ form.lun }}</span> | ||
| 126 | <span v-if="form.changCi "> / {{ language == 0 ? '场次' : 'Session' }}:{{ form.changCi }}</span> | ||
| 127 | </div> | ||
| 128 | <div v-if="form.projectNameEn" class="tname">{{ form.projectNameEn }}</div> | ||
| 129 | <div v-if="form.projectName" class="tname">{{ form.projectName }}</div> | ||
| 130 | <div>{{ form.danceType }}</div> | ||
| 131 | </div> | ||
| 132 | <div v-for="(form, index) in team" v-show="index>0" :key="index" style="margin: 8px 0 0"> | ||
| 133 | {{ form.date + ' ' + form.timeStr + ' / ' + form.address }} | ||
| 134 | <span v-if="form.lunEn"> / {{ form.lunEn }}</span> | ||
| 135 | <span v-else-if="form.lun"> / {{ form.lun }}</span> | ||
| 136 | <span v-if="form.changCi "> / {{ language == 0 ? '场次' : 'Session' }}:{{ form.changCi }}</span> | ||
| 137 | </div> | ||
| 138 | </el-timeline-item> | ||
| 139 | </el-timeline> | ||
| 140 | </div> | ||
| 141 | </div> | ||
| 142 | </div> | ||
| 143 | </div> | ||
| 144 | <div v-if="list.length>0||showGroupList.length>0||teamlist.length>0||groupList.length>0" class="text-center"> | ||
| 145 | {{ | ||
| 146 | language == 0 ? '下滑查看更多' : 'Scroll down to view more' | ||
| 147 | }} | ||
| 148 | </div> | ||
| 149 | </el-dialog> | ||
| 150 | </template> | ||
| 151 | |||
| 152 | <script setup> | ||
| 153 | import { ref } from 'vue' | ||
| 154 | import { ElMessage } from 'element-plus' | ||
| 155 | import { | ||
| 156 | getquerySchedule2Pre, | ||
| 157 | getqySchedule, | ||
| 158 | getqySchedule2, | ||
| 159 | getTeamBackNumber, | ||
| 160 | getTeamBackNumberPre, queryScheduleSingle | ||
| 161 | } from '@/apiPc/common' | ||
| 162 | import { useStorage } from '@vueuse/core/index' | ||
| 163 | |||
| 164 | const language = useStorage('language', 0) | ||
| 165 | const show = ref(false) | ||
| 166 | // const form = ref({}) | ||
| 167 | const list = ref([]) | ||
| 168 | const loading = ref(false) | ||
| 169 | const groupList = ref([]) | ||
| 170 | const teamlist = ref([]) | ||
| 171 | const query = ref('') | ||
| 172 | const query2 = ref('') | ||
| 173 | const query3 = ref('') | ||
| 174 | const type = ref('') | ||
| 175 | const showGroupList = ref(false) | ||
| 176 | const cptId = ref() | ||
| 177 | |||
| 178 | const search = () => { | ||
| 179 | if (!query.value) { | ||
| 180 | ElMessage.warning(language.value == 0 ? '请输入搜索关键词' : 'Enter project name or code to Query') | ||
| 181 | return | ||
| 182 | } | ||
| 183 | getqySchedule({ projectName: query.value, cptId: cptId.value }).then(res => { | ||
| 184 | if (!res.data || res.data.length == 0) { | ||
| 185 | list.value = [] | ||
| 186 | // 提示 '未找到结果,请重新查询' | ||
| 187 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') | ||
| 188 | return | ||
| 189 | } | ||
| 190 | list.value = res.data | ||
| 191 | }).catch(e => { | ||
| 192 | loading.value = false | ||
| 193 | }) | ||
| 194 | } | ||
| 195 | const searchTeam = () => { | ||
| 196 | teamlist.value = [] | ||
| 197 | if (!query2.value || query2.value.length < 2) { | ||
| 198 | ElMessage.warning(language.value == 0 ? '请输入代表队名称至少两字符' : 'Enter the representing team name,At least two characters') | ||
| 199 | return | ||
| 200 | } | ||
| 201 | loading.value = true | ||
| 202 | getquerySchedule2Pre({ groupName: query2.value, cptId: cptId.value }).then(res => { | ||
| 203 | loading.value = false | ||
| 204 | if (!res.data || res.data.length == 0) { | ||
| 205 | groupList.value = [] | ||
| 206 | // 提示 '未找到结果,请重新查询' | ||
| 207 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') | ||
| 208 | return | ||
| 209 | } | ||
| 210 | groupList.value = res.data | ||
| 211 | if (groupList.value.length == 1) { | ||
| 212 | showDetail(groupList.value[0]) | ||
| 213 | } | ||
| 214 | if (groupList.value.length > 1) { | ||
| 215 | showGroupList.value = true | ||
| 216 | } | ||
| 217 | }).catch(e => { | ||
| 218 | loading.value = false | ||
| 219 | }) | ||
| 220 | } | ||
| 221 | const personalSearch = () => { | ||
| 222 | if (!query3.value) { | ||
| 223 | ElMessage.warning(language.value == 0 ? '请输入搜索关键词' : 'Enter project name or code to Query') | ||
| 224 | return | ||
| 225 | } | ||
| 226 | loading.value = true | ||
| 227 | queryScheduleSingle({ query: query3.value, cptId: cptId.value }).then(res => { | ||
| 228 | loading.value = false | ||
| 229 | if (!res.data || res.data.length == 0) { | ||
| 230 | list.value = [] | ||
| 231 | // 提示 '未找到结果,请重新查询' | ||
| 232 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') | ||
| 233 | return | ||
| 234 | } | ||
| 235 | list.value = res.data | ||
| 236 | }) | ||
| 237 | } | ||
| 238 | const open = (param) => { | ||
| 239 | console.log(param) | ||
| 240 | cptId.value = param.cptId | ||
| 241 | show.value = true | ||
| 242 | list.value = [] | ||
| 243 | teamlist.value = [] | ||
| 244 | groupList.value = [] | ||
| 245 | query.value = '' | ||
| 246 | type.value = '' | ||
| 247 | loading.value = false | ||
| 248 | } | ||
| 249 | defineExpose({ | ||
| 250 | open | ||
| 251 | }) | ||
| 252 | |||
| 253 | function showDetail(name) { | ||
| 254 | query2.value = name | ||
| 255 | showGroupList.value = false | ||
| 256 | loading.value = true | ||
| 257 | getqySchedule2({ groupName: name, cptId: cptId.value }).then(res => { | ||
| 258 | loading.value = false | ||
| 259 | teamlist.value = res.data | ||
| 260 | }).catch(e => { | ||
| 261 | loading.value = false | ||
| 262 | }) | ||
| 263 | } | ||
| 264 | </script> | ||
| 265 | |||
| 266 | <style lang="scss" scoped> | ||
| 267 | .tname { | ||
| 268 | font-size: 14px; | ||
| 269 | font-weight: bold; | ||
| 270 | position: relative; | ||
| 271 | top: -8px | ||
| 272 | } | ||
| 273 | |||
| 274 | .tip { | ||
| 275 | font-size: 12px; | ||
| 276 | margin: 4px 0 0; | ||
| 277 | display: inline-block; | ||
| 278 | } | ||
| 279 | |||
| 280 | .rItem { | ||
| 281 | max-height: 130px; | ||
| 282 | cursor: pointer; | ||
| 283 | border: 1px solid #e1e1e1; | ||
| 284 | border-radius: 4px; | ||
| 285 | max-width: 350px; | ||
| 286 | text-align: center; | ||
| 287 | line-height: 130px; | ||
| 288 | padding: 1px; | ||
| 289 | font-size: 30px; | ||
| 290 | color: #fff; | ||
| 291 | margin: 20px auto; | ||
| 292 | background: linear-gradient(90deg, #8623FC, #453DEA); | ||
| 293 | |||
| 294 | &:hover { | ||
| 295 | background: linear-gradient(90deg, #453DEA, #8623FC); | ||
| 296 | box-shadow: 0 4px 10px #453DEA; | ||
| 297 | border: none; | ||
| 298 | } | ||
| 299 | } | ||
| 300 | |||
| 301 | .nowteamItem { | ||
| 302 | width: 100%; | ||
| 303 | border: 1px solid #c8c5ff; | ||
| 304 | margin-top: 20px; | ||
| 305 | position: relative; | ||
| 306 | border-radius: 4px; | ||
| 307 | padding: 0 0 20px; | ||
| 308 | background: #FFFFFF; | ||
| 309 | box-sizing: border-box; | ||
| 310 | |||
| 311 | .info { | ||
| 312 | .nowName { | ||
| 313 | font-family: "DIN Alternate"; | ||
| 314 | font-size: 60px; | ||
| 315 | font-weight: bold; | ||
| 316 | overflow: hidden; | ||
| 317 | display: block; | ||
| 318 | margin: 10px; | ||
| 319 | } | ||
| 320 | |||
| 321 | label { | ||
| 322 | text-align: right; | ||
| 323 | font-size: 14px; | ||
| 324 | padding-left: 7% | ||
| 325 | } | ||
| 326 | |||
| 327 | div { | ||
| 328 | font-size: 14px; | ||
| 329 | color: #333; | ||
| 330 | margin: 6px 0 0; | ||
| 331 | } | ||
| 332 | } | ||
| 333 | } | ||
| 334 | |||
| 335 | .temell { | ||
| 336 | .nowteamItem { | ||
| 337 | padding: 10px; | ||
| 338 | margin: 0 0 10px; | ||
| 339 | |||
| 340 | .nowName { | ||
| 341 | font-size: 15px; | ||
| 342 | font-weight: bold; | ||
| 343 | margin-right: 10px | ||
| 344 | } | ||
| 345 | |||
| 346 | .text-bold { | ||
| 347 | font-weight: bold; | ||
| 348 | } | ||
| 349 | |||
| 350 | .fontsize14 { | ||
| 351 | font-size: 14px; | ||
| 352 | } | ||
| 353 | } | ||
| 354 | } | ||
| 355 | |||
| 356 | .groupList { | ||
| 357 | max-height: 70vh; | ||
| 358 | overflow: auto; | ||
| 359 | border: 1px solid #e1e1e1; | ||
| 360 | margin-top: 10px; | ||
| 361 | |||
| 362 | li { | ||
| 363 | padding: 10px; | ||
| 364 | border-bottom: 1px solid #e1e1e1; | ||
| 365 | cursor: pointer; | ||
| 366 | } | ||
| 367 | } | ||
| 368 | |||
| 369 | .searchBox { | ||
| 370 | height: 50vh; | ||
| 371 | //overflow-y: auto; | ||
| 372 | } | ||
| 373 | |||
| 374 | .rollY { | ||
| 375 | height: 45vh; | ||
| 376 | overflow-y: auto; | ||
| 377 | } | ||
| 378 | </style> |
| ... | @@ -3,7 +3,7 @@ | ... | @@ -3,7 +3,7 @@ |
| 3 | v-model="show" :close-on-click-modal="false" :title="title" append-to-body center | 3 | v-model="show" :close-on-click-modal="false" :title="title" append-to-body center |
| 4 | class="pcloginpop" | 4 | class="pcloginpop" |
| 5 | close-icon="CircleClose" destroy-on-close | 5 | close-icon="CircleClose" destroy-on-close |
| 6 | width="600px" | 6 | :width="isMobile ? '90%' : '600px'" |
| 7 | > | 7 | > |
| 8 | <div class="boxInvitation pd20"> | 8 | <div class="boxInvitation pd20"> |
| 9 | <el-steps :active="activeStep" align-center class="mb20"> | 9 | <el-steps :active="activeStep" align-center class="mb20"> |
| ... | @@ -183,7 +183,7 @@ | ... | @@ -183,7 +183,7 @@ |
| 183 | 183 | ||
| 184 | <script setup> | 184 | <script setup> |
| 185 | import { useStorage } from '@vueuse/core/index' | 185 | import { useStorage } from '@vueuse/core/index' |
| 186 | import { getCurrentInstance, watch } from 'vue' | 186 | import { getCurrentInstance, watch ,onMounted} from 'vue' |
| 187 | import { nextTick } from '@vue/runtime-core' | 187 | import { nextTick } from '@vue/runtime-core' |
| 188 | import { ElMessage, ElMessageBox } from 'element-plus' | 188 | import { ElMessage, ElMessageBox } from 'element-plus' |
| 189 | import { addInvitation, countryList } from '@/apiPc/match' | 189 | import { addInvitation, countryList } from '@/apiPc/match' |
| ... | @@ -203,6 +203,7 @@ const countrys = ref([]) | ... | @@ -203,6 +203,7 @@ const countrys = ref([]) |
| 203 | const courseList = ref([]) | 203 | const courseList = ref([]) |
| 204 | const loading = ref(false) | 204 | const loading = ref(false) |
| 205 | const cptId = ref('') | 205 | const cptId = ref('') |
| 206 | const isMobile = ref(false) | ||
| 206 | const rules = ref( | 207 | const rules = ref( |
| 207 | { | 208 | { |
| 208 | nationality: [{ required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose' }], | 209 | nationality: [{ required: true, trigger: 'change', message: language.value == 0 ? '请选择' : 'Please choose' }], |
| ... | @@ -221,6 +222,13 @@ const open = (params) => { | ... | @@ -221,6 +222,13 @@ const open = (params) => { |
| 221 | cptId.value = params.cptId | 222 | cptId.value = params.cptId |
| 222 | getCourse() | 223 | getCourse() |
| 223 | } | 224 | } |
| 225 | const checkMobile = () => { | ||
| 226 | isMobile.value = window.innerWidth < 768 | ||
| 227 | } | ||
| 228 | onMounted(() => { | ||
| 229 | checkMobile() | ||
| 230 | window.addEventListener('resize', checkMobile) | ||
| 231 | }) | ||
| 224 | defineExpose({ open }) | 232 | defineExpose({ open }) |
| 225 | watch(show, (value) => { | 233 | watch(show, (value) => { |
| 226 | if (!value) { | 234 | if (!value) { |
| ... | @@ -251,6 +259,10 @@ function setActive(n) { | ... | @@ -251,6 +259,10 @@ function setActive(n) { |
| 251 | return | 259 | return |
| 252 | } | 260 | } |
| 253 | activeStep.value = n | 261 | activeStep.value = n |
| 262 | // 在移动设备上,切换步骤时滚动到顶部 | ||
| 263 | if (isMobile.value) { | ||
| 264 | window.scrollTo({ top: 0, behavior: 'smooth' }) | ||
| 265 | } | ||
| 254 | } | 266 | } |
| 255 | 267 | ||
| 256 | function courseChange(e) { | 268 | function courseChange(e) { | ... | ... |
| ... | @@ -2,9 +2,9 @@ | ... | @@ -2,9 +2,9 @@ |
| 2 | <div> | 2 | <div> |
| 3 | <index-Ch | 3 | <index-Ch |
| 4 | v-if="language ==0" @backNumber="openBackNumber" @pickup="openPickup" @pop="openMaster" | 4 | v-if="language ==0" @backNumber="openBackNumber" @pickup="openPickup" @pop="openMaster" |
| 5 | @schSearch="openSchSearch" | 5 | @schSearch="openSchSearch" @reserveSearch="bookingSearchOpen" |
| 6 | /> | 6 | /> |
| 7 | <index-En v-else @backNumber="openBackNumber" @pickup="openPickup" @pop="openMaster" @schSearch="openSchSearch" /> | 7 | <index-En v-else @backNumber="openBackNumber" @pickup="openPickup" @pop="openMaster" @reserveSearch="bookingSearchOpen" @schSearch="openSchSearch" /> |
| 8 | <div v-if="showgg" class="fixed_gg"> | 8 | <div v-if="showgg" class="fixed_gg"> |
| 9 | <!--天气--> | 9 | <!--天气--> |
| 10 | <el-icon class="cclose" @click.stop="showgg=false"> | 10 | <el-icon class="cclose" @click.stop="showgg=false"> |
| ... | @@ -80,6 +80,7 @@ | ... | @@ -80,6 +80,7 @@ |
| 80 | <pick-up ref="pickupRef" /> | 80 | <pick-up ref="pickupRef" /> |
| 81 | <back-number ref="backNumberRef" /> | 81 | <back-number ref="backNumberRef" /> |
| 82 | <sch-search ref="schSearchRef" /> | 82 | <sch-search ref="schSearchRef" /> |
| 83 | <bookingSearch ref="bookingSearchRef" /> | ||
| 83 | </div> | 84 | </div> |
| 84 | 85 | ||
| 85 | </template> | 86 | </template> |
| ... | @@ -92,6 +93,7 @@ import DialogMasterClass from '@/viewsPc/components/masterClass' | ... | @@ -92,6 +93,7 @@ import DialogMasterClass from '@/viewsPc/components/masterClass' |
| 92 | import PickUp from '@/viewsPc/components/pickup' | 93 | import PickUp from '@/viewsPc/components/pickup' |
| 93 | import BackNumber from '@/viewsPc/components/querybackNumber' | 94 | import BackNumber from '@/viewsPc/components/querybackNumber' |
| 94 | import SchSearch from '@/viewsPc/components/schSearch' | 95 | import SchSearch from '@/viewsPc/components/schSearch' |
| 96 | import bookingSearch from '@/viewsPc/components/bookingSearch' | ||
| 95 | import { useStorage } from '@vueuse/core/index' | 97 | import { useStorage } from '@vueuse/core/index' |
| 96 | import { ref } from 'vue' | 98 | import { ref } from 'vue' |
| 97 | import { getWeather } from '@/apiPc/webSite' | 99 | import { getWeather } from '@/apiPc/webSite' |
| ... | @@ -152,6 +154,14 @@ const openSchSearch = (params) => { | ... | @@ -152,6 +154,14 @@ const openSchSearch = (params) => { |
| 152 | } | 154 | } |
| 153 | proxy.$refs['schSearchRef'].open(obj) | 155 | proxy.$refs['schSearchRef'].open(obj) |
| 154 | } | 156 | } |
| 157 | const bookingSearchOpen= (params) => { | ||
| 158 | console.log(params) | ||
| 159 | const obj = { | ||
| 160 | title: '日程查询', | ||
| 161 | cptId: params.cptId | ||
| 162 | } | ||
| 163 | proxy.$refs['bookingSearchRef'].open(obj) | ||
| 164 | } | ||
| 155 | </script> | 165 | </script> |
| 156 | 166 | ||
| 157 | <style lang="scss" scoped> | 167 | <style lang="scss" scoped> | ... | ... |
| ... | @@ -48,14 +48,13 @@ | ... | @@ -48,14 +48,13 @@ |
| 48 | style="position: absolute;bottom:22%;right:5%;z-index: 999;display: flex;width: 580px;justify-content: space-around" | 48 | style="position: absolute;bottom:22%;right:5%;z-index: 999;display: flex;width: 580px;justify-content: space-around" |
| 49 | > | 49 | > |
| 50 | <a | 50 | <a |
| 51 | v-if="matchData.liveQrcode" | ||
| 52 | class=" btn2" | 51 | class=" btn2" |
| 53 | style="z-index: 999999" | 52 | style="z-index: 999999" |
| 54 | @click.stop="liveQrcodeShow=true" | 53 | @click.stop="liveQrcodeShowBtn" |
| 55 | >赛事直播 | 54 | >赛事直播 |
| 56 | </a> | 55 | </a> |
| 57 | <a | 56 | <a |
| 58 | v-if="matchData.isCourseView==1" | 57 | |
| 59 | class=" btn2" | 58 | class=" btn2" |
| 60 | @click.stop="popMaster" | 59 | @click.stop="popMaster" |
| 61 | >公益课 | 60 | >公益课 |
| ... | @@ -73,7 +72,7 @@ | ... | @@ -73,7 +72,7 @@ |
| 73 | <div class="h100" style="position: relative"> | 72 | <div class="h100" style="position: relative"> |
| 74 | <img v-if="n.bgImgUrl" :src="fillImgUrl(n.bgImgUrl)" class="bannerImg"> | 73 | <img v-if="n.bgImgUrl" :src="fillImgUrl(n.bgImgUrl)" class="bannerImg"> |
| 75 | <img v-else class="bannerImg" src="@/assets/dance/banner.png"> | 74 | <img v-else class="bannerImg" src="@/assets/dance/banner.png"> |
| 76 | <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> | 75 | <div style="position: absolute;left: 0;right: 0;top: 100px;margin: auto;"> |
| 77 | <div v-if="n.time>0" class="banner-count" @click="goMatch(n)"> | 76 | <div v-if="n.time>0" class="banner-count" @click="goMatch(n)"> |
| 78 | 距离开始还有 | 77 | 距离开始还有 |
| 79 | <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> | 78 | <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> |
| ... | @@ -97,31 +96,7 @@ | ... | @@ -97,31 +96,7 @@ |
| 97 | </van-count-down> | 96 | </van-count-down> |
| 98 | </div> | 97 | </div> |
| 99 | <div v-if="n.timeEnd<0"> | 98 | <div v-if="n.timeEnd<0"> |
| 100 | <!-- <a target="_blank" href="https://wx.vzan.com/live/page/1151815649?v=1720589464698" class="banner-count" v-if="time>0&&n.id=='1778253367748993026'" @click="goMatch(n)">--> | 99 | |
| 101 | <!-- <van-count-down :time="time" format="DD 天 HH 时 mm 分 ss 秒">--> | ||
| 102 | <!-- <template #default="timeData">--> | ||
| 103 | <!-- <div class="block">{{ timeData.days }}--> | ||
| 104 | <!-- <span class="colon">天</span>--> | ||
| 105 | <!-- </div>--> | ||
| 106 | <!-- :--> | ||
| 107 | <!-- <div class="block">{{ timeData.hours }}--> | ||
| 108 | <!-- <span class="colon">时</span>--> | ||
| 109 | <!-- </div>--> | ||
| 110 | <!-- :--> | ||
| 111 | <!-- <div class="block">{{ timeData.minutes }}--> | ||
| 112 | <!-- <span class="colon">分</span>--> | ||
| 113 | <!-- </div>--> | ||
| 114 | <!-- :--> | ||
| 115 | <!-- <div class="block">{{ timeData.seconds }}--> | ||
| 116 | <!-- <span class="colon">秒</span>--> | ||
| 117 | <!-- </div>--> | ||
| 118 | <!-- </template>--> | ||
| 119 | <!-- </van-count-down>--> | ||
| 120 | <!-- 开始直播--> | ||
| 121 | <!-- </a>--> | ||
| 122 | <!-- <a target="_blank" href="https://wx.vzan.com/live/page/1151815649?v=1720589464698" class="banner-count bb" v-else-if="time<=0&&n.id=='1778253367748993026'" @click="goMatch(n)">--> | ||
| 123 | <!-- 直播进行中--> | ||
| 124 | <!-- </a>--> | ||
| 125 | <div class="banner-count bb" @click="goMatch(n)"> | 100 | <div class="banner-count bb" @click="goMatch(n)"> |
| 126 | 报名已结束 | 101 | 报名已结束 |
| 127 | </div> | 102 | </div> |
| ... | @@ -129,6 +104,23 @@ | ... | @@ -129,6 +104,23 @@ |
| 129 | <div v-if="n.time<=0 && n.timeEnd>=0" class="banner-count bb" @click="goMatch(n)"> | 104 | <div v-if="n.time<=0 && n.timeEnd>=0" class="banner-count bb" @click="goMatch(n)"> |
| 130 | 开始报名 | 105 | 开始报名 |
| 131 | </div> | 106 | </div> |
| 107 | |||
| 108 | </div> | ||
| 109 | <div | ||
| 110 | style="position: absolute;bottom:20px;z-index: 999;display: flex;width: 380px;justify-content: space-around" | ||
| 111 | > | ||
| 112 | <a | ||
| 113 | class=" btn2-phone" | ||
| 114 | style="z-index: 999999" | ||
| 115 | @click.stop="liveQrcodeShowBtn" | ||
| 116 | >赛事直播 | ||
| 117 | </a> | ||
| 118 | <a | ||
| 119 | |||
| 120 | class=" btn2-phone" | ||
| 121 | @click.stop="popMaster" | ||
| 122 | >公益课 | ||
| 123 | </a> | ||
| 132 | </div> | 124 | </div> |
| 133 | </div> | 125 | </div> |
| 134 | </div> | 126 | </div> |
| ... | @@ -148,12 +140,13 @@ | ... | @@ -148,12 +140,13 @@ |
| 148 | <download /> | 140 | <download /> |
| 149 | </el-icon> | 141 | </el-icon> |
| 150 | </a> | 142 | </a> |
| 151 | <!-- <a--> | ||
| 152 | <!-- v-if="matchData.isCourseView==1" class="zn-btn ml20 btn-q forPc"--> | ||
| 153 | <!-- @click="popMaster"--> | ||
| 154 | <!-- >青少年公益课报名</a>--> | ||
| 155 | <a | 143 | <a |
| 156 | v-show="matchData?.id" class="zn-btn ml20 btn-q" | 144 | class="zn-btn ml20 btn-q" |
| 145 | @click="reserveSearch" | ||
| 146 | >预定查询</a> | ||
| 147 | <br/> | ||
| 148 | <a | ||
| 149 | v-show="matchData?.id" class="zn-btn btn-q mt20" | ||
| 157 | @click="backNumberSearch" | 150 | @click="backNumberSearch" |
| 158 | >背号查询</a> | 151 | >背号查询</a> |
| 159 | <a v-show="matchData?.id" class="zn-btn ml20 btn-q" @click="schSearch">日程查询</a> | 152 | <a v-show="matchData?.id" class="zn-btn ml20 btn-q" @click="schSearch">日程查询</a> |
| ... | @@ -440,8 +433,10 @@ | ... | @@ -440,8 +433,10 @@ |
| 440 | 433 | ||
| 441 | <!-- 邀请函--> | 434 | <!-- 邀请函--> |
| 442 | <div class="fixed_gg_l yaoQing"> | 435 | <div class="fixed_gg_l yaoQing"> |
| 443 | <img src="@/assets/logo/Invitation_c.png" @click="applyInvitation"> | 436 | <!-- v-if="maList.invitationSw == '1'" --> |
| 444 | <div v-if="clubImage" style="padding-left: 7px;"> | 437 | <img src="@/assets/logo/Invitation_c.png" @click="applyInvitation" v-if="matchData.invitationSw == '1'"> |
| 438 | <!-- && maList.invitationSw == '1' --> | ||
| 439 | <div v-if="clubImage && matchData.visaSw == '1'" style="padding-left: 7px;"> | ||
| 445 | <el-image | 440 | <el-image |
| 446 | :preview-src-list="[clubImage]" | 441 | :preview-src-list="[clubImage]" |
| 447 | :src="clubImage" | 442 | :src="clubImage" |
| ... | @@ -465,12 +460,12 @@ | ... | @@ -465,12 +460,12 @@ |
| 465 | </div> | 460 | </div> |
| 466 | 461 | ||
| 467 | <affix-invitation ref="dialogInvitationRef" /> | 462 | <affix-invitation ref="dialogInvitationRef" /> |
| 468 | <el-dialog v-model="liveQrcodeShow" :title="language==0?'赛事直播' :'Live QR Code'" width="500px"> | 463 | <el-dialog v-model="liveQrcodeShow" :title="language==0?'赛事直播' :'Live QR Code'" width="350px"> |
| 469 | <div v-if="matchData.liveQrcode" style="display: flex;justify-content: space-between"> | 464 | <div v-if="matchData.liveQrcode" style="display: flex;justify-content: space-between"> |
| 470 | <el-image | 465 | <el-image |
| 471 | :src="fillImgUrl(matchData.liveQrcode)" | 466 | :src="fillImgUrl(matchData.liveQrcode)" |
| 472 | fit="cover" | 467 | fit="cover" |
| 473 | style="width: 450px;" | 468 | style="width: 350px;" |
| 474 | /> | 469 | /> |
| 475 | </div> | 470 | </div> |
| 476 | 471 | ||
| ... | @@ -510,7 +505,7 @@ const navigationPic = ref({ | ... | @@ -510,7 +505,7 @@ const navigationPic = ref({ |
| 510 | }) | 505 | }) |
| 511 | const router = useRouter() | 506 | const router = useRouter() |
| 512 | const { proxy } = getCurrentInstance() | 507 | const { proxy } = getCurrentInstance() |
| 513 | const emit = defineEmits(['pop', 'pickup', 'backNumber', 'schSearch']) | 508 | const emit = defineEmits(['pop', 'pickup', 'backNumber', 'schSearch','reserveSearch']) |
| 514 | const time = ref(0) | 509 | const time = ref(0) |
| 515 | const etime = ref(0) | 510 | const etime = ref(0) |
| 516 | const personList = ref([ | 511 | const personList = ref([ |
| ... | @@ -589,6 +584,7 @@ const init = () => { | ... | @@ -589,6 +584,7 @@ const init = () => { |
| 589 | }) | 584 | }) |
| 590 | match.getMaList({ topFlag: 1 }).then((res) => { | 585 | match.getMaList({ topFlag: 1 }).then((res) => { |
| 591 | maList.value = res.rows | 586 | maList.value = res.rows |
| 587 | console.log(333,maList.value) | ||
| 592 | for (const n of maList.value) { | 588 | for (const n of maList.value) { |
| 593 | const today = dayjs().format('YYYY-MM-DD HH:mm:ss') | 589 | const today = dayjs().format('YYYY-MM-DD HH:mm:ss') |
| 594 | if (n.signBeginTime) { | 590 | if (n.signBeginTime) { |
| ... | @@ -668,6 +664,14 @@ const goGuide = () => { | ... | @@ -668,6 +664,14 @@ const goGuide = () => { |
| 668 | } | 664 | } |
| 669 | }) | 665 | }) |
| 670 | } | 666 | } |
| 667 | const liveQrcodeShowBtn = () => { | ||
| 668 | if(!matchData.value.liveQrcode){ | ||
| 669 | ElMessage.warning('当前赛事暂无直播') | ||
| 670 | return | ||
| 671 | }else{ | ||
| 672 | liveQrcodeShow.value=true | ||
| 673 | } | ||
| 674 | } | ||
| 671 | const popMaster = () => { | 675 | const popMaster = () => { |
| 672 | var params = { | 676 | var params = { |
| 673 | cptId: matchData.value.id | 677 | cptId: matchData.value.id |
| ... | @@ -680,6 +684,12 @@ const backNumberSearch = () => { | ... | @@ -680,6 +684,12 @@ const backNumberSearch = () => { |
| 680 | } | 684 | } |
| 681 | emit('backNumber', params) | 685 | emit('backNumber', params) |
| 682 | } | 686 | } |
| 687 | const reserveSearch = () => { | ||
| 688 | var params = { | ||
| 689 | cptId: matchData.value.id | ||
| 690 | } | ||
| 691 | emit('reserveSearch', params); // 向父组件发射事件+参数 | ||
| 692 | }; | ||
| 683 | const schSearch = () => { | 693 | const schSearch = () => { |
| 684 | var params = { | 694 | var params = { |
| 685 | cptId: matchData.value.id | 695 | cptId: matchData.value.id |
| ... | @@ -1326,6 +1336,22 @@ function applyInvitation() { | ... | @@ -1326,6 +1336,22 @@ function applyInvitation() { |
| 1326 | flex-wrap: nowrap; | 1336 | flex-wrap: nowrap; |
| 1327 | right: 5%; | 1337 | right: 5%; |
| 1328 | color: #fff; | 1338 | color: #fff; |
| 1339 | border-radius: 20px; | ||
| 1340 | } | ||
| 1341 | .btn2-phone { | ||
| 1342 | cursor: pointer; | ||
| 1343 | padding: 10px 20px; | ||
| 1344 | font-size: 14px; | ||
| 1345 | align-items: center; | ||
| 1346 | overflow: hidden; | ||
| 1347 | background: url(/src/assets/dance/time_bg.png) no-repeat center; | ||
| 1348 | background-size: 100% 100%; | ||
| 1349 | border-radius: 20px; | ||
| 1350 | // bottom: 40%; | ||
| 1351 | display: flex; | ||
| 1352 | flex-wrap: nowrap; | ||
| 1353 | // right: 5%; | ||
| 1354 | color: #fff; | ||
| 1329 | } | 1355 | } |
| 1330 | 1356 | ||
| 1331 | @media (max-width: 767px) { | 1357 | @media (max-width: 767px) { | ... | ... |
| ... | @@ -48,15 +48,13 @@ | ... | @@ -48,15 +48,13 @@ |
| 48 | style="position: absolute;bottom:22%;right:5%;z-index: 999;display: flex;width: 580px;justify-content: space-around" | 48 | style="position: absolute;bottom:22%;right:5%;z-index: 999;display: flex;width: 580px;justify-content: space-around" |
| 49 | > | 49 | > |
| 50 | <a | 50 | <a |
| 51 | v-if="matchData.liveQrcode" | ||
| 52 | class=" btn2" | 51 | class=" btn2" |
| 53 | style="z-index: 999999" @click.stop="liveQrcodeShow=true" | 52 | style="z-index: 999999" @click.stop="liveQrcodeShowBtn" |
| 54 | > | 53 | > |
| 55 | <!-- 赛事直播--> | 54 | <!-- 赛事直播--> |
| 56 | Live Qrcode | 55 | Live Qrcode |
| 57 | </a> | 56 | </a> |
| 58 | <a | 57 | <a |
| 59 | v-if="matchData.isCourseView==1" | ||
| 60 | class=" btn2" | 58 | class=" btn2" |
| 61 | @click.stop="popMaster" | 59 | @click.stop="popMaster" |
| 62 | >Junior &Youth Camp REGISTER | 60 | >Junior &Youth Camp REGISTER |
| ... | @@ -73,7 +71,7 @@ | ... | @@ -73,7 +71,7 @@ |
| 73 | <div class="h100" style="position: relative"> | 71 | <div class="h100" style="position: relative"> |
| 74 | <img v-if="n.bgImgUrl" :src="fillImgUrl(n.bgImgUrl)" class="bannerImg"> | 72 | <img v-if="n.bgImgUrl" :src="fillImgUrl(n.bgImgUrl)" class="bannerImg"> |
| 75 | <img v-else class="bannerImg" src="@/assets/dance/banner.png"> | 73 | <img v-else class="bannerImg" src="@/assets/dance/banner.png"> |
| 76 | <div style="position: absolute;left: 0;right: 0;bottom: 0;margin: auto;"> | 74 | <div style="position: absolute;left: 0;right: 0;top: 100px;margin: auto;"> |
| 77 | <div v-if="n.time>0" class="banner-count"> | 75 | <div v-if="n.time>0" class="banner-count"> |
| 78 | Countdown | 76 | Countdown |
| 79 | <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> | 77 | <van-count-down :time="n.time" format="DD 天 HH 时 mm 分 ss 秒"> |
| ... | @@ -107,6 +105,22 @@ | ... | @@ -107,6 +105,22 @@ |
| 107 | </div> | 105 | </div> |
| 108 | 106 | ||
| 109 | </div> | 107 | </div> |
| 108 | <div | ||
| 109 | style="position: absolute;bottom:20px;z-index: 999;display: flex;width: 380px;justify-content: space-around" | ||
| 110 | > | ||
| 111 | |||
| 112 | <a | ||
| 113 | class=" btn2-phone" | ||
| 114 | style="z-index: 999999" @click.stop="liveQrcodeShowBtn" | ||
| 115 | > | ||
| 116 | Live Qrcode | ||
| 117 | </a> | ||
| 118 | <a | ||
| 119 | class=" btn2-phone" | ||
| 120 | @click.stop="popMaster" | ||
| 121 | >Junior &Youth Camp REGISTER | ||
| 122 | </a> | ||
| 123 | </div> | ||
| 110 | </div> | 124 | </div> |
| 111 | </div> | 125 | </div> |
| 112 | </el-carousel-item> | 126 | </el-carousel-item> |
| ... | @@ -127,7 +141,8 @@ | ... | @@ -127,7 +141,8 @@ |
| 127 | <download /> | 141 | <download /> |
| 128 | </el-icon> | 142 | </el-icon> |
| 129 | </a> | 143 | </a> |
| 130 | <a | 144 | <a class="zn-btn ml20 btn-q" @click="popMaster">Booking Inquiry</a> |
| 145 | <!-- <a | ||
| 131 | v-if="matchData.isCourseView==1" class="zn-btn ml20 btn-q forPc" | 146 | v-if="matchData.isCourseView==1" class="zn-btn ml20 btn-q forPc" |
| 132 | style="font-size: 15px;margin-right: 20px" @click="popMaster" | 147 | style="font-size: 15px;margin-right: 20px" @click="popMaster" |
| 133 | > | 148 | > |
| ... | @@ -135,7 +150,8 @@ | ... | @@ -135,7 +150,8 @@ |
| 135 | <el-icon> | 150 | <el-icon> |
| 136 | <Edit /> | 151 | <Edit /> |
| 137 | </el-icon> | 152 | </el-icon> |
| 138 | </a> | 153 | </a> --> |
| 154 | |||
| 139 | <a class="zn-btn ml20 btn-q" @click="backNumberSearch">Competition | 155 | <a class="zn-btn ml20 btn-q" @click="backNumberSearch">Competition |
| 140 | Number</a> | 156 | Number</a> |
| 141 | <a class="zn-btn ml20 btn-q" @click="schSearchSearch">Schedule | 157 | <a class="zn-btn ml20 btn-q" @click="schSearchSearch">Schedule |
| ... | @@ -421,10 +437,11 @@ | ... | @@ -421,10 +437,11 @@ |
| 421 | 437 | ||
| 422 | <!-- 邀请函--> | 438 | <!-- 邀请函--> |
| 423 | <div class="fixed_gg_l yaoQing"> | 439 | <div class="fixed_gg_l yaoQing"> |
| 424 | <img src="@/assets/logo/Invitation_e.png" @click="applyInvitation"> | 440 | <img src="@/assets/logo/Invitation_e.png" @click="applyInvitation" v-if="matchData.invitationSw == '1'"> |
| 425 | <div style="padding-left: 7px;"> | 441 | <div style="padding-left: 7px;"> |
| 442 | |||
| 426 | <el-image | 443 | <el-image |
| 427 | v-if="clubImage" | 444 | v-if="clubImage && matchData.visaSw == '1'" |
| 428 | :preview-src-list="[clubImage]" | 445 | :preview-src-list="[clubImage]" |
| 429 | :src="clubImage" | 446 | :src="clubImage" |
| 430 | fit="cover" | 447 | fit="cover" |
| ... | @@ -445,13 +462,13 @@ | ... | @@ -445,13 +462,13 @@ |
| 445 | </div> | 462 | </div> |
| 446 | <affix-invitation ref="dialogInvitationRef" /> | 463 | <affix-invitation ref="dialogInvitationRef" /> |
| 447 | 464 | ||
| 448 | <el-dialog v-model="liveQrcodeShow" :title="language==0?'赛事直播' :'Live QR Code'" width="500px"> | 465 | <el-dialog v-model="liveQrcodeShow" :title="language==0?'赛事直播' :'Live QR Code'" width="350px"> |
| 449 | <div style="display: flex;justify-content: space-between"> | 466 | <div style="display: flex;justify-content: space-between"> |
| 450 | <el-image | 467 | <el-image |
| 451 | v-if="matchData.liveQrcode" | 468 | v-if="matchData.liveQrcode" |
| 452 | :src="fillImgUrl(matchData.liveQrcode)" | 469 | :src="fillImgUrl(matchData.liveQrcode)" |
| 453 | fit="cover" | 470 | fit="cover" |
| 454 | style="width: 450px;" | 471 | style="max-width: 350px;" |
| 455 | /> | 472 | /> |
| 456 | </div> | 473 | </div> |
| 457 | 474 | ||
| ... | @@ -641,6 +658,14 @@ const goGuide = () => { | ... | @@ -641,6 +658,14 @@ const goGuide = () => { |
| 641 | } | 658 | } |
| 642 | }) | 659 | }) |
| 643 | } | 660 | } |
| 661 | const liveQrcodeShowBtn = () => { | ||
| 662 | if(!matchData.value.liveQrcode){ | ||
| 663 | ElMessage.warning('There is currently no live broadcast of the event') | ||
| 664 | return | ||
| 665 | }else{ | ||
| 666 | liveQrcodeShow.value=true | ||
| 667 | } | ||
| 668 | } | ||
| 644 | 669 | ||
| 645 | const popMaster = () => { | 670 | const popMaster = () => { |
| 646 | var params = { | 671 | var params = { |
| ... | @@ -779,7 +804,7 @@ function applyInvitation() { | ... | @@ -779,7 +804,7 @@ function applyInvitation() { |
| 779 | 804 | ||
| 780 | .banner-count { | 805 | .banner-count { |
| 781 | position: absolute; | 806 | position: absolute; |
| 782 | padding: 20px 40px; | 807 | padding: 20px; |
| 783 | font-size: 20px; | 808 | font-size: 20px; |
| 784 | align-items: center; | 809 | align-items: center; |
| 785 | overflow: hidden; | 810 | overflow: hidden; |
| ... | @@ -1450,6 +1475,7 @@ function applyInvitation() { | ... | @@ -1450,6 +1475,7 @@ function applyInvitation() { |
| 1450 | flex-wrap: nowrap; | 1475 | flex-wrap: nowrap; |
| 1451 | right: 5%; | 1476 | right: 5%; |
| 1452 | color: #fff; | 1477 | color: #fff; |
| 1478 | border-radius: 20px; | ||
| 1453 | } | 1479 | } |
| 1454 | 1480 | ||
| 1455 | 1481 | ... | ... |
| ... | @@ -65,20 +65,20 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -65,20 +65,20 @@ export default defineConfig(({ mode, command }) => { |
| 65 | // https://cn.vitejs.dev/config/#server-proxy | 65 | // https://cn.vitejs.dev/config/#server-proxy |
| 66 | '/dev-api/ztx-train': { | 66 | '/dev-api/ztx-train': { |
| 67 | // target: 'http://192.168.1.118:1896/stage-api', | 67 | // target: 'http://192.168.1.118:1896/stage-api', |
| 68 | target: 'https://jijin.wtwuxicenter.com/stage-api', | 68 | target: 'https://wdsfwuxicenter.com/stage-api', |
| 69 | changeOrigin: true, | 69 | changeOrigin: true, |
| 70 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-train/, '') | 70 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-train/, '') |
| 71 | }, | 71 | }, |
| 72 | '/dev-api/ztx-match': { | 72 | '/dev-api/ztx-match': { |
| 73 | // target: 'http://192.168.1.118:8081', | 73 | // target: 'http://192.168.1.118:8081', |
| 74 | target: 'https://jijin.wtwuxicenter.com/stage-api', | 74 | target: 'https://wdsfwuxicenter.com/stage-api', |
| 75 | // target: 'https://wdsfwuxicenter.com/stage-api/', | 75 | // target: 'https://wdsfwuxicenter.com/stage-api/', |
| 76 | changeOrigin: true, | 76 | changeOrigin: true, |
| 77 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') | 77 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') |
| 78 | }, | 78 | }, |
| 79 | '/dev-api/ztx-webSite': { | 79 | '/dev-api/ztx-webSite': { |
| 80 | // target: 'http://192.168.1.118:8081', | 80 | // target: 'http://192.168.1.118:8081', |
| 81 | target: 'https://jijin.wtwuxicenter.com/stage-api', | 81 | target: 'https://wdsfwuxicenter.com/stage-api', |
| 82 | changeOrigin: true, | 82 | changeOrigin: true, |
| 83 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') | 83 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') |
| 84 | }, | 84 | }, |
| ... | @@ -92,7 +92,7 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -92,7 +92,7 @@ export default defineConfig(({ mode, command }) => { |
| 92 | }, | 92 | }, |
| 93 | '/ticket': { | 93 | '/ticket': { |
| 94 | // target: 'http://192.168.1.242:8081/', | 94 | // target: 'http://192.168.1.242:8081/', |
| 95 | target: 'https://jijin.wtwuxicenter.com/h5/', | 95 | target: 'https://wdsfwuxicenter.com/h5/', |
| 96 | // target: 'https://ticketh5.wdsfwuxicenter.com/h5/', | 96 | // target: 'https://ticketh5.wdsfwuxicenter.com/h5/', |
| 97 | changeOrigin: true, | 97 | changeOrigin: true, |
| 98 | rewrite: (p) => p.replace(/^\/ticket/, '') | 98 | rewrite: (p) => p.replace(/^\/ticket/, '') | ... | ... |
-
Please register or sign in to post a comment