Merge branch 'devmatch' into 中分支
# Conflicts: # src/viewsPc/index.vue # src/viewsPc/index_en.vue # src/viewsPc/match/detail_en.vue # vite.config.js
Showing
28 changed files
with
457 additions
and
286 deletions
| ... | @@ -33,6 +33,7 @@ export function getExamRegionsList() { | ... | @@ -33,6 +33,7 @@ export function getExamRegionsList() { |
| 33 | method: 'get' | 33 | method: 'get' |
| 34 | }) | 34 | }) |
| 35 | } | 35 | } |
| 36 | |||
| 36 | export function getIndexScheduleList(params) { | 37 | export function getIndexScheduleList(params) { |
| 37 | return request({ | 38 | return request({ |
| 38 | url: '/league/competitionSchedule/getIndexScheduleList', | 39 | url: '/league/competitionSchedule/getIndexScheduleList', |
| ... | @@ -40,6 +41,7 @@ export function getIndexScheduleList(params) { | ... | @@ -40,6 +41,7 @@ export function getIndexScheduleList(params) { |
| 40 | params: params | 41 | params: params |
| 41 | }) | 42 | }) |
| 42 | } | 43 | } |
| 44 | |||
| 43 | export function newbilllist(query) { | 45 | export function newbilllist(query) { |
| 44 | return request({ | 46 | return request({ |
| 45 | url: `/ota/norder/list`, | 47 | url: `/ota/norder/list`, |
| ... | @@ -55,6 +57,7 @@ export function vistorRegister(data) { | ... | @@ -55,6 +57,7 @@ export function vistorRegister(data) { |
| 55 | data: data | 57 | data: data |
| 56 | }) | 58 | }) |
| 57 | } | 59 | } |
| 60 | |||
| 58 | export function upgradePersonal(data) { | 61 | export function upgradePersonal(data) { |
| 59 | return request({ | 62 | return request({ |
| 60 | url: `/upgradeAccountToSingle`, | 63 | url: `/upgradeAccountToSingle`, |
| ... | @@ -62,6 +65,7 @@ export function upgradePersonal(data) { | ... | @@ -62,6 +65,7 @@ export function upgradePersonal(data) { |
| 62 | data: data | 65 | data: data |
| 63 | }) | 66 | }) |
| 64 | } | 67 | } |
| 68 | |||
| 65 | export function upgradeTeam(data) { | 69 | export function upgradeTeam(data) { |
| 66 | return request({ | 70 | return request({ |
| 67 | url: `/upgradeAccountToTeam`, | 71 | url: `/upgradeAccountToTeam`, |
| ... | @@ -77,6 +81,7 @@ export function submitMasterApply(data) { | ... | @@ -77,6 +81,7 @@ export function submitMasterApply(data) { |
| 77 | data: data | 81 | data: data |
| 78 | }) | 82 | }) |
| 79 | } | 83 | } |
| 84 | |||
| 80 | export function masterClassList(query) { | 85 | export function masterClassList(query) { |
| 81 | return request({ | 86 | return request({ |
| 82 | // url: `/league/courseItem/list`, | 87 | // url: `/league/courseItem/list`, |
| ... | @@ -85,6 +90,7 @@ export function masterClassList(query) { | ... | @@ -85,6 +90,7 @@ export function masterClassList(query) { |
| 85 | params: query | 90 | params: query |
| 86 | }) | 91 | }) |
| 87 | } | 92 | } |
| 93 | |||
| 88 | export function getByCard(query) { | 94 | export function getByCard(query) { |
| 89 | return request({ | 95 | return request({ |
| 90 | url: `/league/courseUser/getByCard`, | 96 | url: `/league/courseUser/getByCard`, |
| ... | @@ -92,6 +98,7 @@ export function getByCard(query) { | ... | @@ -92,6 +98,7 @@ export function getByCard(query) { |
| 92 | params: query | 98 | params: query |
| 93 | }) | 99 | }) |
| 94 | } | 100 | } |
| 101 | |||
| 95 | export function getMasterApply(query) { | 102 | export function getMasterApply(query) { |
| 96 | return request({ | 103 | return request({ |
| 97 | url: `/league/courseUser/getCourseByUser`, | 104 | url: `/league/courseUser/getCourseByUser`, |
| ... | @@ -99,12 +106,14 @@ export function getMasterApply(query) { | ... | @@ -99,12 +106,14 @@ export function getMasterApply(query) { |
| 99 | params: query | 106 | params: query |
| 100 | }) | 107 | }) |
| 101 | } | 108 | } |
| 109 | |||
| 102 | export function delByCard(card) { | 110 | export function delByCard(card) { |
| 103 | return request({ | 111 | return request({ |
| 104 | url: `/league/courseUser/delByCard?card=${card}`, | 112 | url: `/league/courseUser/delByCard?card=${card}`, |
| 105 | method: 'delete' | 113 | method: 'delete' |
| 106 | }) | 114 | }) |
| 107 | } | 115 | } |
| 116 | |||
| 108 | export function addPickup(data) { | 117 | export function addPickup(data) { |
| 109 | return request({ | 118 | return request({ |
| 110 | url: `/league/pickup`, | 119 | url: `/league/pickup`, |
| ... | @@ -112,27 +121,31 @@ export function addPickup(data) { | ... | @@ -112,27 +121,31 @@ export function addPickup(data) { |
| 112 | data | 121 | data |
| 113 | }) | 122 | }) |
| 114 | } | 123 | } |
| 124 | |||
| 115 | export function getBackNumber(qy) { | 125 | export function getBackNumber(qy) { |
| 116 | return request({ | 126 | return request({ |
| 117 | url: `/league/backNumber/query`, | 127 | url: `/league/backNumber/query/${qy.cptId}`, |
| 118 | method: 'get', | 128 | method: 'get', |
| 119 | params: qy | 129 | params: qy |
| 120 | }) | 130 | }) |
| 121 | } | 131 | } |
| 132 | |||
| 122 | export function getTeamBackNumber(qy) { | 133 | export function getTeamBackNumber(qy) { |
| 123 | return request({ | 134 | return request({ |
| 124 | url: `/league/backNumber/teamQuery`, | 135 | url: `/league/backNumber/teamQuery/${qy.cptId}`, |
| 125 | method: 'get', | 136 | method: 'get', |
| 126 | params: qy | 137 | params: qy |
| 127 | }) | 138 | }) |
| 128 | } | 139 | } |
| 140 | |||
| 129 | export function getTeamBackNumberPre(qy) { | 141 | export function getTeamBackNumberPre(qy) { |
| 130 | return request({ | 142 | return request({ |
| 131 | url: `/league/backNumber/teamQueryPre`, | 143 | url: `/league/backNumber/teamQueryPre/${qy.cptId}`, |
| 132 | method: 'get', | 144 | method: 'get', |
| 133 | params: qy | 145 | params: qy |
| 134 | }) | 146 | }) |
| 135 | } | 147 | } |
| 148 | |||
| 136 | export function getqySchedule(qy) { | 149 | export function getqySchedule(qy) { |
| 137 | return request({ | 150 | return request({ |
| 138 | url: `/league/schedule/querySchedule`, | 151 | url: `/league/schedule/querySchedule`, |
| ... | @@ -140,6 +153,7 @@ export function getqySchedule(qy) { | ... | @@ -140,6 +153,7 @@ export function getqySchedule(qy) { |
| 140 | params: qy | 153 | params: qy |
| 141 | }) | 154 | }) |
| 142 | } | 155 | } |
| 156 | |||
| 143 | export function getqySchedule2(qy) { | 157 | export function getqySchedule2(qy) { |
| 144 | return request({ | 158 | return request({ |
| 145 | url: `/league/schedule/querySchedule2`, | 159 | url: `/league/schedule/querySchedule2`, |
| ... | @@ -147,6 +161,7 @@ export function getqySchedule2(qy) { | ... | @@ -147,6 +161,7 @@ export function getqySchedule2(qy) { |
| 147 | params: qy | 161 | params: qy |
| 148 | }) | 162 | }) |
| 149 | } | 163 | } |
| 164 | |||
| 150 | export function getquerySchedule2Pre(qy) { | 165 | export function getquerySchedule2Pre(qy) { |
| 151 | return request({ | 166 | return request({ |
| 152 | url: `/league/schedule/querySchedule2Pre`, | 167 | url: `/league/schedule/querySchedule2Pre`, |
| ... | @@ -154,9 +169,10 @@ export function getquerySchedule2Pre(qy) { | ... | @@ -154,9 +169,10 @@ export function getquerySchedule2Pre(qy) { |
| 154 | params: qy | 169 | params: qy |
| 155 | }) | 170 | }) |
| 156 | } | 171 | } |
| 172 | |||
| 157 | export function queryScheduleSingle(qy) { | 173 | export function queryScheduleSingle(qy) { |
| 158 | return request({ | 174 | return request({ |
| 159 | url: `/league/schedule/queryScheduleSingle`, | 175 | url: `/league/schedule/queryScheduleSingle/${qy.cptId}`, |
| 160 | method: 'get', | 176 | method: 'get', |
| 161 | params: qy | 177 | params: qy |
| 162 | }) | 178 | }) | ... | ... |
src/assets/nationalFlag/hk.jpg
0 → 100644
44.6 KB
src/assets/nationalFlag/hk.png
0 → 100644
91.7 KB
| ... | @@ -381,7 +381,15 @@ | ... | @@ -381,7 +381,15 @@ |
| 381 | </div> | 381 | </div> |
| 382 | </el-col> | 382 | </el-col> |
| 383 | <el-col :lg="24"> | 383 | <el-col :lg="24"> |
| 384 | <div class="text-center" /> | 384 | <el-link |
| 385 | v-if="(form.viewStatus=='1'||form.viewStatus=='5')&&language!=0" type="primary" | ||
| 386 | @click="exportPdf" | ||
| 387 | > | ||
| 388 | <el-icon> | ||
| 389 | <Upload /> | ||
| 390 | </el-icon> | ||
| 391 | {{ language == 0 ? '导出酒店预订单' : 'Export PDF' }} | ||
| 392 | </el-link> | ||
| 385 | </el-col> | 393 | </el-col> |
| 386 | </el-row> | 394 | </el-row> |
| 387 | </div> | 395 | </div> | ... | ... |
| ... | @@ -20,43 +20,12 @@ | ... | @@ -20,43 +20,12 @@ |
| 20 | <label class="blueTag">{{ paymentType != 3 ? '票务订单' : 'Ticket' }}</label> | 20 | <label class="blueTag">{{ paymentType != 3 ? '票务订单' : 'Ticket' }}</label> |
| 21 | <h3>{{ matchForm.name }}</h3> | 21 | <h3>{{ matchForm.name }}</h3> |
| 22 | <div> | 22 | <div> |
| 23 | <p>地址:{{ matchForm.address }}</p> | 23 | <p>票档:{{ ticketForm.extJson?.atName }}</p> |
| 24 | <p>票档:{{ ticketForm.extJson?.ticketType?.name }}</p> | 24 | <p>场馆:{{ ticketForm.extJson?.atsName }}</p> |
| 25 | <p>时间:{{ ticketForm.extJson?.ticketDate.name }}</p> | 25 | <p>场次:{{ ticketForm.extJson?.sessionType =='1000'? '日间场' : '夜间场' }}</p> |
| 26 | <p>通票:{{ | 26 | <p>票型:{{ ticketForm.extJson?.atstName }}</p> |
| 27 | paymentType != 3 ? '¥' : '€' | ||
| 28 | }} | ||
| 29 | {{ | ||
| 30 | paymentType != 3 ? ticketForm.extJson?.ticketDate.price : ticketForm.extJson?.ticketDate.priceEn | ||
| 31 | }} | ||
| 32 | /1张</p> | ||
| 33 | <p>优惠票:{{ | ||
| 34 | paymentType != 3 ? '¥' : '€' | ||
| 35 | }} | ||
| 36 | {{ | ||
| 37 | paymentType != 3 ? ticketForm.extJson?.ticketDate.rebatePrice : ticketForm.extJson?.ticketDate.rebatePriceEn | ||
| 38 | }} | ||
| 39 | /1张</p> | ||
| 40 | |||
| 41 | <p class="poPrice">{{ paymentType != 3 ? '¥' : '€' }}{{ totalMoney }}</p> | ||
| 42 | </div> | 27 | </div> |
| 43 | <div> | 28 | <div> |
| 44 | <el-row v-for="v in message" style="width: 100%"> | ||
| 45 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | ||
| 46 | <div>{{ v.name }} | ||
| 47 | </div> | ||
| 48 | </el-col> | ||
| 49 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | ||
| 50 | <div>{{ !v.discount ? '通票' : '优惠票' }} | ||
| 51 | </div> | ||
| 52 | </el-col> | ||
| 53 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | ||
| 54 | {{ | ||
| 55 | !v.discount ? paymentType != 3 ? ticketForm.extJson?.ticketDate.price : ticketForm.extJson?.ticketDate.priceEn : paymentType != 3 ? ticketForm.extJson?.ticketDate.rebatePrice : ticketForm.extJson?.ticketDate.rebatePriceEn | ||
| 56 | }} | ||
| 57 | {{ paymentType != 3 ? '¥' : '€' }}/张 | ||
| 58 | </el-col> | ||
| 59 | </el-row> | ||
| 60 | <el-row style="width: 100%"> | 29 | <el-row style="width: 100%"> |
| 61 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | 30 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> |
| 62 | <div>购票数量:{{ ticketForm.num }}张 | 31 | <div>购票数量:{{ ticketForm.num }}张 |
| ... | @@ -65,8 +34,8 @@ | ... | @@ -65,8 +34,8 @@ |
| 65 | <el-col :lg="8" :md="12" :sm="12" :xs="24">联系方式:{{ ticketForm.phone }} | 34 | <el-col :lg="8" :md="12" :sm="12" :xs="24">联系方式:{{ ticketForm.phone }} |
| 66 | </el-col> | 35 | </el-col> |
| 67 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | 36 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> |
| 68 | 共计:{{ (totalMoney * 1).toFixed(2) }}{{ | 37 | 共计:{{ (totalMoney*1).toFixed(2) }}{{ |
| 69 | paymentType != 3 ? '¥' : '€' | 38 | paymentType == 1 ? '¥' : '€' |
| 70 | }} | 39 | }} |
| 71 | </el-col> | 40 | </el-col> |
| 72 | </el-row> | 41 | </el-row> |
| ... | @@ -82,7 +51,7 @@ | ... | @@ -82,7 +51,7 @@ |
| 82 | class="mw500" | 51 | class="mw500" |
| 83 | > | 52 | > |
| 84 | <el-form-item :label="language==0 ?'开票金额':'Amount'"> | 53 | <el-form-item :label="language==0 ?'开票金额':'Amount'"> |
| 85 | <span class="bigprice">{{ paymentType != 3 ? '¥' : '€' }}{{ totalMoney }}</span> | 54 | <span class="bigprice">{{ paymentType != 3 ? '¥' : '€' }}{{ paymentType != 3?ticketForm.total:ticketForm.totalEn }}</span> |
| 86 | </el-form-item> | 55 | </el-form-item> |
| 87 | 56 | ||
| 88 | <el-form-item :label="language==0 ?`发票形式`:'Invoice Form'" prop="invoiceForm" required> | 57 | <el-form-item :label="language==0 ?`发票形式`:'Invoice Form'" prop="invoiceForm" required> |
| ... | @@ -248,16 +217,16 @@ async function getTickInfo() { | ... | @@ -248,16 +217,16 @@ async function getTickInfo() { |
| 248 | ticketForm.value = res.data | 217 | ticketForm.value = res.data |
| 249 | try { | 218 | try { |
| 250 | ticketForm.value.extJson = JSON.parse(ticketForm.value.extJson) | 219 | ticketForm.value.extJson = JSON.parse(ticketForm.value.extJson) |
| 251 | ticketForm.value.extJson.ticketDate = JSON.parse(ticketForm.value.extJson.ticketDate) | 220 | // ticketForm.value.extJson.ticketDate = JSON.parse(ticketForm.value.extJson.ticketDate) |
| 252 | ticketForm.value.extJson.ticketType = JSON.parse(ticketForm.value.extJson.ticketType) | 221 | // ticketForm.value.extJson.ticketType = JSON.parse(ticketForm.value.extJson.ticketType) |
| 253 | cptId = ticketForm.value.extJson.ticketDate.activityId | 222 | cptId = ticketForm.value.activeId |
| 254 | totalMoney.value.val = ticketForm.value.extJson.total | 223 | totalMoney.value = ticketForm.value.paymentType != 3 ? ticketForm.value.total : ticketForm.value.totalEn |
| 255 | message.value = JSON.parse(ticketForm.value.extJson.message) | 224 | // message.value = JSON.parse(ticketForm.value.extJson.message) |
| 256 | console.log(message.value) | 225 | // console.log(message.value) |
| 257 | paymentType.value = ticketForm.value.paymentType | 226 | paymentType.value = ticketForm.value.paymentType |
| 258 | totalMoney.value = paymentType.value == 3 ? ticketForm.value.totalEn : ticketForm.value.total | 227 | |
| 259 | await getDetail(ticketForm.value.extJson.ticketDate.activityId) | 228 | await getDetail(ticketForm.value.activeId) |
| 260 | console.log(ticketForm.value) | 229 | // console.log(ticketForm.value) |
| 261 | } catch (e) { | 230 | } catch (e) { |
| 262 | console.log(e) | 231 | console.log(e) |
| 263 | } finally { | 232 | } finally { |
| ... | @@ -268,7 +237,7 @@ async function getTickInfo() { | ... | @@ -268,7 +237,7 @@ async function getTickInfo() { |
| 268 | async function getDetail(activeId) { | 237 | async function getDetail(activeId) { |
| 269 | const res = await getTicketInfoByActivityId({ activityId: activeId }) | 238 | const res = await getTicketInfoByActivityId({ activityId: activeId }) |
| 270 | matchForm.value = res.data | 239 | matchForm.value = res.data |
| 271 | console.log(matchForm.value) | 240 | // console.log(matchForm.value) |
| 272 | } | 241 | } |
| 273 | 242 | ||
| 274 | function getList() { | 243 | function getList() { | ... | ... |
| ... | @@ -316,7 +316,7 @@ async function customerList() { | ... | @@ -316,7 +316,7 @@ async function customerList() { |
| 316 | // 提交 | 316 | // 提交 |
| 317 | async function paymentHandle() { | 317 | async function paymentHandle() { |
| 318 | if (!user.value) { | 318 | if (!user.value) { |
| 319 | useStore().setVisitor() | 319 | useStore.setVisitor() |
| 320 | return | 320 | return |
| 321 | } | 321 | } |
| 322 | 322 | ... | ... |
| ... | @@ -74,6 +74,8 @@ | ... | @@ -74,6 +74,8 @@ |
| 74 | :key="index" | 74 | :key="index" |
| 75 | :class="[ | 75 | :class="[ |
| 76 | it.id == selectForm.latId ? 'tagActive' : 'tag', | 76 | it.id == selectForm.latId ? 'tagActive' : 'tag', |
| 77 | it.overdueView=='0' ? 'forbid' : '', | ||
| 78 | (it.ticketPackage==1 && overdueView=='0') ?'forbid':'' | ||
| 77 | ]" | 79 | ]" |
| 78 | @click="select(it)" | 80 | @click="select(it)" |
| 79 | > | 81 | > |
| ... | @@ -151,17 +153,6 @@ | ... | @@ -151,17 +153,6 @@ |
| 151 | <div class="label"> | 153 | <div class="label"> |
| 152 | {{ triggerLanguage(language, "票型", "Ticket Type") }} : | 154 | {{ triggerLanguage(language, "票型", "Ticket Type") }} : |
| 153 | </div> | 155 | </div> |
| 154 | <div> | ||
| 155 | <!-- <span--> | ||
| 156 | <!-- v-if="currTick?.images"--> | ||
| 157 | <!-- style="color: #493ceb;cursor:pointer;font-weight:600;font-size: 14px"--> | ||
| 158 | <!-- @click="showUrl=currTick.images;show=true"--> | ||
| 159 | <!-- > <span style="color: red;font-size: 18px">*</span>--> | ||
| 160 | <!-- {{--> | ||
| 161 | <!-- language == 0 ? '点击查看区域布局' : 'View Area Layout'--> | ||
| 162 | <!-- }}--> | ||
| 163 | <!-- </span>--> | ||
| 164 | </div> | ||
| 165 | </div> | 156 | </div> |
| 166 | <div class="select_item_box"> | 157 | <div class="select_item_box"> |
| 167 | <div class="select_item"> | 158 | <div class="select_item"> |
| ... | @@ -219,21 +210,26 @@ | ... | @@ -219,21 +210,26 @@ |
| 219 | </div> | 210 | </div> |
| 220 | 211 | ||
| 221 | <div | 212 | <div |
| 222 | v-if="endTime<=0" class="btn" style="margin-left: 40px;opacity: 0.5;cursor: not-allowed;margin-top: 10px" | 213 | v-if="isOver" class="btn" |
| 223 | @click="toSelectClosed" | 214 | style="margin-left: 40px;opacity: 0.5;cursor: not-allowed;margin-top: 10px" |
| 224 | > | 215 | > |
| 225 | {{ | 216 | {{ |
| 226 | triggerLanguage(language, "售票结束", "Sale closed") | 217 | triggerLanguage(language, "售票结束", "Sale closed") |
| 227 | }} | 218 | }} |
| 228 | </div> | 219 | </div> |
| 220 | <template v-else> | ||
| 221 | <div v-if="leftCount<=0 && leftCount!=-999" class="btn" style="margin-left: 40px;margin-top: 10px"> | ||
| 222 | {{ | ||
| 223 | triggerLanguage(language, "票已售罄", "Sale out") | ||
| 224 | }} | ||
| 225 | </div> | ||
| 229 | <div v-else class="btn" style="margin-left: 40px;margin-top: 10px" @click="toSelectSeat()"> | 226 | <div v-else class="btn" style="margin-left: 40px;margin-top: 10px" @click="toSelectSeat()"> |
| 230 | {{ | 227 | {{ |
| 231 | triggerLanguage(language, "立即购票", "Buy tickets now") | 228 | triggerLanguage(language, "立即购票", "Buy tickets now") |
| 232 | }} | 229 | }} |
| 233 | </div> | 230 | </div> |
| 234 | 231 | </template> | |
| 235 | </div> | 232 | </div> |
| 236 | |||
| 237 | </div> | 233 | </div> |
| 238 | </div> | 234 | </div> |
| 239 | 235 | ||
| ... | @@ -263,25 +259,27 @@ | ... | @@ -263,25 +259,27 @@ |
| 263 | 259 | ||
| 264 | 260 | ||
| 265 | <script setup> | 261 | <script setup> |
| 266 | import { ref, computed, watch } from 'vue' | 262 | import { ref, computed, watch, getCurrentInstance } from 'vue' |
| 267 | import { | 263 | import { |
| 268 | getTicketInfoByActivityId, | 264 | getTicketInfoByActivityId, |
| 269 | getTicketListApi, | 265 | getTicketListApi, |
| 270 | checkNonPayment, | 266 | checkNonPayment, |
| 271 | getStadiumList, | 267 | getStadiumList, |
| 272 | getActivityTypeVoListByLatsId, | 268 | getActivityTypeVoListByLatsId, |
| 273 | getBaseInfoByActiveId | 269 | getBaseInfoByActiveId, getListByAtstId |
| 274 | } from '@/apiPc/booking' | 270 | } from '@/apiPc/booking' |
| 271 | import _ from 'lodash' | ||
| 272 | |||
| 275 | 273 | ||
| 276 | import { dayjs } from 'element-plus' | 274 | import { dayjs } from 'element-plus' |
| 277 | import { ElMessageBox } from 'element-plus' | 275 | import { ElMessageBox } from 'element-plus' |
| 278 | import { getDayName } from '@/viewsPc/seat/utils/language' | 276 | import { getDayName } from '@/viewsPc/seat/utils/language' |
| 279 | import { fillImgUrl } from '/@/utils/ruoyi' | 277 | import { fillImgUrl, triggerLanguage } from '/@/utils/ruoyi' |
| 280 | import useUserStore from '/@/store/modules/user' | 278 | import useUserStore from '/@/store/modules/user' |
| 281 | import { triggerLanguage } from '@/utils/ruoyi' | ||
| 282 | import { useStorage } from '@vueuse/core/index' | 279 | import { useStorage } from '@vueuse/core/index' |
| 283 | import { useRoute, useRouter } from 'vue-router' | 280 | import { useRoute, useRouter } from 'vue-router' |
| 284 | 281 | ||
| 282 | const { proxy } = getCurrentInstance() | ||
| 285 | const language = useStorage('language', 0) | 283 | const language = useStorage('language', 0) |
| 286 | const useStore = useUserStore() | 284 | const useStore = useUserStore() |
| 287 | const user = computed(() => useUserStore().user) | 285 | const user = computed(() => useUserStore().user) |
| ... | @@ -291,9 +289,6 @@ const show = ref(false) | ... | @@ -291,9 +289,6 @@ const show = ref(false) |
| 291 | const showUrl = ref('') | 289 | const showUrl = ref('') |
| 292 | const activeId = ref(route.params.activeId) | 290 | const activeId = ref(route.params.activeId) |
| 293 | const active = ref(1) | 291 | const active = ref(1) |
| 294 | const props = defineProps({ | ||
| 295 | activityId: [String, Number] | ||
| 296 | }) | ||
| 297 | const remarks = ref() | 292 | const remarks = ref() |
| 298 | const timeData = ref() | 293 | const timeData = ref() |
| 299 | const endTime = ref() | 294 | const endTime = ref() |
| ... | @@ -312,6 +307,9 @@ const tickList = ref([]) | ... | @@ -312,6 +307,9 @@ const tickList = ref([]) |
| 312 | const currVenue = ref(null) | 307 | const currVenue = ref(null) |
| 313 | const currTick = ref(null) | 308 | const currTick = ref(null) |
| 314 | const matchData = ref({}) | 309 | const matchData = ref({}) |
| 310 | const overdueView = ref('1') | ||
| 311 | const isOver = ref(false) | ||
| 312 | const leftCount = ref(-999) | ||
| 315 | 313 | ||
| 316 | watch(show, (val) => { | 314 | watch(show, (val) => { |
| 317 | if (!val) { | 315 | if (!val) { |
| ... | @@ -325,7 +323,7 @@ getDetail() | ... | @@ -325,7 +323,7 @@ getDetail() |
| 325 | async function getDetail() { | 323 | async function getDetail() { |
| 326 | const res = await getTicketInfoByActivityId({ activityId: activeId.value }) | 324 | const res = await getTicketInfoByActivityId({ activityId: activeId.value }) |
| 327 | matchForm.value = res.data | 325 | matchForm.value = res.data |
| 328 | console.log(res) | 326 | // console.log(res) |
| 329 | const today = dayjs().format('YYYY-MM-DD HH:mm:ss') | 327 | const today = dayjs().format('YYYY-MM-DD HH:mm:ss') |
| 330 | timeData.value = dayjs(res.data.ticketStart).diff(today, 'millisecond') | 328 | timeData.value = dayjs(res.data.ticketStart).diff(today, 'millisecond') |
| 331 | endTime.value = dayjs(res.data.ticketEnd).diff(today, 'millisecond') | 329 | endTime.value = dayjs(res.data.ticketEnd).diff(today, 'millisecond') |
| ... | @@ -341,9 +339,18 @@ async function getTicketList() { | ... | @@ -341,9 +339,18 @@ async function getTicketList() { |
| 341 | activityId: activeId.value, status: 1 | 339 | activityId: activeId.value, status: 1 |
| 342 | }) | 340 | }) |
| 343 | tickClass.value = res.rows | 341 | tickClass.value = res.rows |
| 344 | if (tickClass.value.length > 0) { | 342 | |
| 345 | selectForm.value.latId = tickClass.value?.[0]?.id | 343 | if (_.some(tickClass.value, (item) => item.overdueView == '0') |
| 344 | ) { | ||
| 345 | overdueView.value = '0' | ||
| 346 | } | ||
| 347 | |||
| 348 | const item = _.find(tickClass.value, (item) => item.overdueView == '1') | ||
| 349 | if (item) { | ||
| 350 | selectForm.value.latId = item.id | ||
| 346 | await getVenueList() | 351 | await getVenueList() |
| 352 | } else { | ||
| 353 | isOver.value = true | ||
| 347 | } | 354 | } |
| 348 | } | 355 | } |
| 349 | 356 | ||
| ... | @@ -362,14 +369,13 @@ async function getTicketListType() { | ... | @@ -362,14 +369,13 @@ async function getTicketListType() { |
| 362 | const res = await getActivityTypeVoListByLatsId({ latsId: selectForm.value.latsId }) | 369 | const res = await getActivityTypeVoListByLatsId({ latsId: selectForm.value.latsId }) |
| 363 | tickList.value = res.data | 370 | tickList.value = res.data |
| 364 | selectForm.value.sessionType = Object.keys(res.data)[0] | 371 | selectForm.value.sessionType = Object.keys(res.data)[0] |
| 365 | console.log(tickList.value) | ||
| 366 | // currTick.value = tickList.value[selectForm.value.sessionType][0] | ||
| 367 | // selectForm.value.latstId = currTick.value?.id | ||
| 368 | // selectForm.value.price = currTick.value?.price | ||
| 369 | // selectForm.value.priceEn = currTick.value?.priceEn | ||
| 370 | } | 372 | } |
| 371 | 373 | ||
| 372 | function select(v) { | 374 | function select(v) { |
| 375 | if (v.id == selectForm.value.latId) { | ||
| 376 | return | ||
| 377 | } | ||
| 378 | |||
| 373 | selectForm.value.latId = v.id | 379 | selectForm.value.latId = v.id |
| 374 | selectForm.value.latsId = null | 380 | selectForm.value.latsId = null |
| 375 | selectForm.value.sessionType = null | 381 | selectForm.value.sessionType = null |
| ... | @@ -377,11 +383,16 @@ function select(v) { | ... | @@ -377,11 +383,16 @@ function select(v) { |
| 377 | selectForm.value.id = null | 383 | selectForm.value.id = null |
| 378 | selectForm.value.price = '--' | 384 | selectForm.value.price = '--' |
| 379 | selectForm.value.priceEn = '--' | 385 | selectForm.value.priceEn = '--' |
| 386 | currTick.value = null | ||
| 380 | 387 | ||
| 381 | getVenueList() | 388 | getVenueList() |
| 382 | } | 389 | } |
| 383 | 390 | ||
| 384 | function selectVenue(v) { | 391 | function selectVenue(v) { |
| 392 | if (v.id == selectForm.value.latsId) { | ||
| 393 | return | ||
| 394 | } | ||
| 395 | |||
| 385 | currVenue.value = v | 396 | currVenue.value = v |
| 386 | selectForm.value.latsId = v.id | 397 | selectForm.value.latsId = v.id |
| 387 | selectForm.value.sessionType = null | 398 | selectForm.value.sessionType = null |
| ... | @@ -390,27 +401,58 @@ function selectVenue(v) { | ... | @@ -390,27 +401,58 @@ function selectVenue(v) { |
| 390 | selectForm.value.price = '--' | 401 | selectForm.value.price = '--' |
| 391 | selectForm.value.priceEn = '--' | 402 | selectForm.value.priceEn = '--' |
| 392 | remarks.value = v.remarks | 403 | remarks.value = v.remarks |
| 404 | currTick.value = null | ||
| 405 | |||
| 393 | getTicketListType() | 406 | getTicketListType() |
| 394 | } | 407 | } |
| 395 | 408 | ||
| 396 | function selectSessionType(key) { | 409 | function selectSessionType(key) { |
| 410 | if (key == selectForm.value.sessionType) { | ||
| 411 | return | ||
| 412 | } | ||
| 413 | |||
| 397 | selectForm.value.sessionType = key | 414 | selectForm.value.sessionType = key |
| 398 | 415 | ||
| 399 | // currTick.value = tickList.value[selectForm.value.sessionType][0] | 416 | // currTick.value = tickList.value[selectForm.value.sessionType][0] |
| 400 | selectForm.value.latstId = currTick.value?.id | 417 | selectForm.value.latstId = currTick.value?.id |
| 401 | selectForm.value.price = currTick.value?.price | 418 | selectForm.value.price = currTick.value?.price |
| 402 | selectForm.value.priceEn = currTick.value?.priceEn | 419 | selectForm.value.priceEn = currTick.value?.priceEn |
| 420 | currTick.value = null | ||
| 403 | } | 421 | } |
| 404 | 422 | ||
| 405 | // 选择票型 | 423 | // 选择票型 |
| 406 | function selectTick(v) { | 424 | function selectTick(v) { |
| 425 | if (v.id == selectForm.value.latstId) { | ||
| 426 | return | ||
| 427 | } | ||
| 428 | |||
| 407 | currTick.value = v | 429 | currTick.value = v |
| 408 | selectForm.value.latstId = v.id | 430 | selectForm.value.latstId = v.id |
| 409 | selectForm.value.price = v.price | 431 | selectForm.value.price = v.price |
| 410 | selectForm.value.priceEn = v.priceEn | 432 | selectForm.value.priceEn = v.priceEn |
| 411 | // console.log(v) | 433 | |
| 434 | // vip票 | ||
| 435 | if (currTick.value.ticketType == '1') { | ||
| 412 | showUrl.value = v.images | 436 | showUrl.value = v.images |
| 413 | show.value = true | 437 | show.value = true |
| 438 | leftCount.value = -999 | ||
| 439 | } else { | ||
| 440 | checkNonPayment().then(res => { | ||
| 441 | if (res.data) { | ||
| 442 | getListByAtstId({ | ||
| 443 | atstId: selectForm.value.latstId | ||
| 444 | }).then(res => { | ||
| 445 | leftCount.value = res.data | ||
| 446 | if (leftCount.value > 0) { | ||
| 447 | showUrl.value = v.images | ||
| 448 | show.value = true | ||
| 449 | } | ||
| 450 | }) | ||
| 451 | } else { | ||
| 452 | leftCount.value = -999 | ||
| 453 | } | ||
| 454 | }) | ||
| 455 | } | ||
| 414 | } | 456 | } |
| 415 | 457 | ||
| 416 | function toSelectSeat() { | 458 | function toSelectSeat() { |
| ... | @@ -420,6 +462,9 @@ function toSelectSeat() { | ... | @@ -420,6 +462,9 @@ function toSelectSeat() { |
| 420 | useStore.setVisitor() | 462 | useStore.setVisitor() |
| 421 | return | 463 | return |
| 422 | } | 464 | } |
| 465 | if (!selectForm.value.latstId) { | ||
| 466 | return proxy.$modal.confirm(language.value == 0 ? '请选择票型' : 'Please select a ticket type') | ||
| 467 | } | ||
| 423 | checkNonPayment().then(res => { | 468 | checkNonPayment().then(res => { |
| 424 | if (res.data) { | 469 | if (res.data) { |
| 425 | router.push({ | 470 | router.push({ |
| ... | @@ -449,7 +494,7 @@ function toSelectClosed() { | ... | @@ -449,7 +494,7 @@ function toSelectClosed() { |
| 449 | async function getmatchData() { | 494 | async function getmatchData() { |
| 450 | const res = await getBaseInfoByActiveId(route.params.activeId) | 495 | const res = await getBaseInfoByActiveId(route.params.activeId) |
| 451 | matchData.value = res.data | 496 | matchData.value = res.data |
| 452 | console.log(res) | 497 | // console.log(res) |
| 453 | } | 498 | } |
| 454 | 499 | ||
| 455 | function handleImage() { | 500 | function handleImage() { |
| ... | @@ -548,6 +593,7 @@ getmatchData() | ... | @@ -548,6 +593,7 @@ getmatchData() |
| 548 | } | 593 | } |
| 549 | 594 | ||
| 550 | .forbid { | 595 | .forbid { |
| 596 | pointer-events: none; | ||
| 551 | opacity: 0.5 !important; | 597 | opacity: 0.5 !important; |
| 552 | cursor: not-allowed !important; | 598 | cursor: not-allowed !important; |
| 553 | } | 599 | } |
| ... | @@ -798,4 +844,10 @@ getmatchData() | ... | @@ -798,4 +844,10 @@ getmatchData() |
| 798 | line-height: 40px; | 844 | line-height: 40px; |
| 799 | color: #2b2f3a; | 845 | color: #2b2f3a; |
| 800 | } | 846 | } |
| 847 | |||
| 848 | .disabled { | ||
| 849 | background: #878787 !important; | ||
| 850 | color: #4a4a4a !important; | ||
| 851 | cursor: no-drop !important; | ||
| 852 | } | ||
| 801 | </style> | 853 | </style> | ... | ... |
| ... | @@ -6,7 +6,7 @@ | ... | @@ -6,7 +6,7 @@ |
| 6 | <div class="bg-lineg"> | 6 | <div class="bg-lineg"> |
| 7 | <div class="pl-back" @click="goBack"> | 7 | <div class="pl-back" @click="goBack"> |
| 8 | <el-icon> | 8 | <el-icon> |
| 9 | <ArrowLeftBold/> | 9 | <ArrowLeftBold /> |
| 10 | </el-icon> | 10 | </el-icon> |
| 11 | 返回 | 11 | 返回 |
| 12 | </div> | 12 | </div> |
| ... | @@ -21,52 +21,22 @@ | ... | @@ -21,52 +21,22 @@ |
| 21 | <label class="blueTag">票务订单</label> | 21 | <label class="blueTag">票务订单</label> |
| 22 | <h3>{{ matchForm.name }}</h3> | 22 | <h3>{{ matchForm.name }}</h3> |
| 23 | <div> | 23 | <div> |
| 24 | <p>地址:{{ matchForm.address }}</p> | 24 | <p>票档:{{ ticketForm.extJson?.atName }}</p> |
| 25 | <p>票档:{{ ticketForm.extJson?.ticketType?.name }}</p> | 25 | <p>场馆:{{ ticketForm.extJson?.atsName }}</p> |
| 26 | <p>时间:{{ ticketForm.extJson?.ticketDate.name }}</p> | 26 | <p>场次:{{ ticketForm.extJson?.sessionType =='1000'? '日间场' : '夜间场' }}</p> |
| 27 | <p>通票:{{ paymentType != 3 ? '¥' : '€' }} | 27 | <p>票型:{{ ticketForm.extJson?.atstName }}</p> |
| 28 | {{ | ||
| 29 | paymentType != 3 ? ticketForm.extJson?.ticketDate.price : ticketForm.extJson?.ticketDate.priceEn | ||
| 30 | }} | ||
| 31 | /1张</p> | ||
| 32 | <p>优惠票:{{ paymentType != 3 ? '¥' : '€' }} | ||
| 33 | {{ | ||
| 34 | paymentType != 3 ? ticketForm.extJson?.ticketDate.rebatePrice : ticketForm.extJson?.ticketDate.rebatePriceEn | ||
| 35 | }} | ||
| 36 | /1张</p> | ||
| 37 | <p class="poPrice">{{ paymentType != 3 ? '¥' : '€' }}{{ totalMoney }}</p> | ||
| 38 | </div> | 28 | </div> |
| 39 | <div> | 29 | <div> |
| 40 | <el-row v-for="v in message" style="width: 100%"> | ||
| 41 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | ||
| 42 | <div>{{ v.name }} | ||
| 43 | </div> | ||
| 44 | </el-col> | ||
| 45 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | ||
| 46 | <div>{{ !v.discount ? '通票' : '优惠票' }} | ||
| 47 | </div> | ||
| 48 | </el-col> | ||
| 49 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | ||
| 50 | {{ | ||
| 51 | !v.discount ? paymentType != 3 ? ticketForm.extJson?.ticketDate.price : ticketForm.extJson?.ticketDate.priceEn : paymentType != 3 ? ticketForm.extJson?.ticketDate.rebatePrice : ticketForm.extJson?.ticketDate.rebatePriceEn | ||
| 52 | }} | ||
| 53 | {{ paymentType != 3 ? '¥' : '€' }}/张 | ||
| 54 | </el-col> | ||
| 55 | </el-row> | ||
| 56 | <el-row style="width: 100%"> | 30 | <el-row style="width: 100%"> |
| 57 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | 31 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> |
| 58 | <div>{{ | 32 | <div>购票数量:{{ ticketForm.num }}张 |
| 59 | language == 0 ? '购票数量' : 'Number of tickets purchased' | ||
| 60 | }}:{{ ticketForm.num }}张 | ||
| 61 | </div> | 33 | </div> |
| 62 | </el-col> | 34 | </el-col> |
| 63 | <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ | 35 | <el-col :lg="8" :md="12" :sm="12" :xs="24">联系方式:{{ ticketForm.phone }} |
| 64 | language == 0 ? '联系方式' : 'Contact Information' | ||
| 65 | }}:{{ ticketForm.phone }} | ||
| 66 | </el-col> | 36 | </el-col> |
| 67 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> | 37 | <el-col :lg="8" :md="12" :sm="12" :xs="24"> |
| 68 | 共计:{{ (totalMoney * 1).toFixed(2) }}{{ | 38 | 共计:{{ (totalMoney*1).toFixed(2) }}{{ |
| 69 | paymentType != 3 ? '¥' : '€' | 39 | paymentType == 1 ? '¥' : '€' |
| 70 | }} | 40 | }} |
| 71 | </el-col> | 41 | </el-col> |
| 72 | </el-row> | 42 | </el-row> |
| ... | @@ -74,8 +44,10 @@ | ... | @@ -74,8 +44,10 @@ |
| 74 | </div> | 44 | </div> |
| 75 | <div class="leftboderTT">{{ language == 0 ? '开票信息' : 'Invoice information' }}</div> | 45 | <div class="leftboderTT">{{ language == 0 ? '开票信息' : 'Invoice information' }}</div> |
| 76 | <div class="border-rr mt20 pd20"> | 46 | <div class="border-rr mt20 pd20"> |
| 77 | <el-form ref="formRef" :label-width="language == 0 ?'100':'150'" :model="form" :rules="rules" | 47 | <el-form |
| 78 | class="mw500"> | 48 | ref="formRef" :label-width="language == 0 ?'100':'150'" :model="form" :rules="rules" |
| 49 | class="mw500" | ||
| 50 | > | ||
| 79 | <el-form-item :label="'开票金额'"> | 51 | <el-form-item :label="'开票金额'"> |
| 80 | <span class="bigprice">{{ paymentType != 3 ? '¥' : '€' }}{{ totalMoney }}</span> | 52 | <span class="bigprice">{{ paymentType != 3 ? '¥' : '€' }}{{ totalMoney }}</span> |
| 81 | </el-form-item> | 53 | </el-form-item> |
| ... | @@ -124,27 +96,27 @@ | ... | @@ -124,27 +96,27 @@ |
| 124 | <el-button plain round type="primary" @click="backList">返回</el-button> | 96 | <el-button plain round type="primary" @click="backList">返回</el-button> |
| 125 | </div> | 97 | </div> |
| 126 | </el-card> | 98 | </el-card> |
| 127 | <div style="height: 60px;"></div> | 99 | <div style="height: 60px;" /> |
| 128 | </div> | 100 | </div> |
| 129 | </div> | 101 | </div> |
| 130 | </template> | 102 | </template> |
| 131 | 103 | ||
| 132 | <script setup> | 104 | <script setup> |
| 133 | import {useRouter, useRoute} from "vue-router"; | 105 | import { useRouter, useRoute } from 'vue-router' |
| 134 | import {ref, onMounted} from "vue"; | 106 | import { ref, onMounted } from 'vue' |
| 135 | import {useStorage} from "@vueuse/core/index"; | 107 | import { useStorage } from '@vueuse/core/index' |
| 136 | import dayjs from 'dayjs' | 108 | import dayjs from 'dayjs' |
| 137 | import {ElMessage, ElMessageBox} from "element-plus"; | 109 | import { ElMessage, ElMessageBox } from 'element-plus' |
| 138 | import useUserStore from "@/store/modules/user"; | 110 | import useUserStore from '@/store/modules/user' |
| 139 | import {getCurrentInstance} from "@vue/runtime-core"; | 111 | import { getCurrentInstance } from '@vue/runtime-core' |
| 140 | import { | 112 | import { |
| 141 | getInvoiceDetail, | 113 | getInvoiceDetail, |
| 142 | getTicketOrderInfo, | 114 | getTicketOrderInfo, |
| 143 | getTicketInfoByActivityId | 115 | getTicketInfoByActivityId |
| 144 | } from "@/apiPc/booking"; | 116 | } from '@/apiPc/booking' |
| 145 | import {getOrderDetail} from "@/viewsPc/seat/api/index"; | 117 | import { getOrderDetail } from '@/viewsPc/seat/api/index' |
| 146 | 118 | ||
| 147 | const {proxy} = getCurrentInstance() | 119 | const { proxy } = getCurrentInstance() |
| 148 | 120 | ||
| 149 | const user = useUserStore().user | 121 | const user = useUserStore().user |
| 150 | const language = useStorage('language', 0) | 122 | const language = useStorage('language', 0) |
| ... | @@ -164,58 +136,57 @@ const invoiceId = ref() | ... | @@ -164,58 +136,57 @@ const invoiceId = ref() |
| 164 | 136 | ||
| 165 | const rules = ref({ | 137 | const rules = ref({ |
| 166 | invoiceType: [ | 138 | invoiceType: [ |
| 167 | {required: true, message: language.value == 0 ? '请选择发票类型' : 'Please select invoice type', trigger: 'change'} | 139 | { required: true, message: language.value == 0 ? '请选择发票类型' : 'Please select invoice type', trigger: 'change' } |
| 168 | ], | 140 | ], |
| 169 | invoiceEmail: [ | 141 | invoiceEmail: [ |
| 170 | {required: true, message: language.value == 0 ? '请输入邮箱' : 'Please enter email', trigger: 'blur'} | 142 | { required: true, message: language.value == 0 ? '请输入邮箱' : 'Please enter email', trigger: 'blur' } |
| 171 | ], | 143 | ], |
| 172 | invoiceForm: [ | 144 | invoiceForm: [ |
| 173 | {required: true, message: language.value == 0 ? '请选择发票形式' : 'Please select invoice form', trigger: 'change'} | 145 | { required: true, message: language.value == 0 ? '请选择发票形式' : 'Please select invoice form', trigger: 'change' } |
| 174 | ], | 146 | ], |
| 175 | invoiceTitle: [ | 147 | invoiceTitle: [ |
| 176 | {required: true, message: language.value == 0 ? '请输入发票抬头' : 'Please enter invoice title', trigger: 'blur'} | 148 | { required: true, message: language.value == 0 ? '请输入发票抬头' : 'Please enter invoice title', trigger: 'blur' } |
| 177 | ], | 149 | ], |
| 178 | invoiceTfn: [ | 150 | invoiceTfn: [ |
| 179 | {required: true, message: language.value == 0 ? '请输入税号' : 'Please enter TFN', trigger: 'blur'} | 151 | { required: true, message: language.value == 0 ? '请输入税号' : 'Please enter TFN', trigger: 'blur' } |
| 180 | ], | 152 | ], |
| 181 | invoiceAddress: [ | 153 | invoiceAddress: [ |
| 182 | {required: true, message: language.value == 0 ? '请输入地址' : 'Please enter address', trigger: 'blur'} | 154 | { required: true, message: language.value == 0 ? '请输入地址' : 'Please enter address', trigger: 'blur' } |
| 183 | ], | 155 | ], |
| 184 | invoicePhone: [ | 156 | invoicePhone: [ |
| 185 | {required: true, message: language.value == 0 ? '请输入电话' : 'Please enter phone', trigger: 'blur'} | 157 | { required: true, message: language.value == 0 ? '请输入电话' : 'Please enter phone', trigger: 'blur' } |
| 186 | ], | 158 | ], |
| 187 | invoiceBank: [ | 159 | invoiceBank: [ |
| 188 | {required: true, message: language.value == 0 ? '请输入开户行' : 'Please enter bank', trigger: 'blur'} | 160 | { required: true, message: language.value == 0 ? '请输入开户行' : 'Please enter bank', trigger: 'blur' } |
| 189 | ], | 161 | ], |
| 190 | invoiceAccount: [ | 162 | invoiceAccount: [ |
| 191 | {required: true, message: language.value == 0 ? '请输入账户' : 'Please enter account', trigger: 'blur'} | 163 | { required: true, message: language.value == 0 ? '请输入账户' : 'Please enter account', trigger: 'blur' } |
| 192 | ], | 164 | ] |
| 193 | }) | 165 | }) |
| 194 | onMounted(() => { | 166 | onMounted(() => { |
| 195 | if (route.query.invoiceId) { | 167 | if (route.query.invoiceId) { |
| 196 | invoiceId.value = route.query.invoiceId | 168 | invoiceId.value = route.query.invoiceId |
| 197 | getList() | 169 | getList() |
| 198 | } | 170 | } |
| 199 | // 获取票务订单信息 | 171 | // 获取票务订单信息 |
| 200 | getTickInfo() | 172 | getTickInfo() |
| 201 | }) | 173 | }) |
| 202 | 174 | ||
| 203 | 175 | ||
| 204 | // 票务订单详情 | 176 | // 票务订单详情 |
| 205 | async function getTickInfo() { | 177 | async function getTickInfo() { |
| 206 | const res = await getTicketOrderInfo({orderId: route.query.orderId}) | 178 | const res = await getTicketOrderInfo({ orderId: route.query.orderId }) |
| 207 | ticketForm.value = res.data | 179 | ticketForm.value = res.data |
| 208 | try { | 180 | try { |
| 209 | ticketForm.value.extJson = JSON.parse(ticketForm.value.extJson) | 181 | ticketForm.value.extJson = JSON.parse(ticketForm.value.extJson) |
| 210 | ticketForm.value.extJson.ticketDate = JSON.parse(ticketForm.value.extJson.ticketDate) | 182 | // ticketForm.value.extJson.ticketDate = JSON.parse(ticketForm.value.extJson.ticketDate) |
| 211 | ticketForm.value.extJson.ticketType = JSON.parse(ticketForm.value.extJson.ticketType) | 183 | // ticketForm.value.extJson.ticketType = JSON.parse(ticketForm.value.extJson.ticketType) |
| 212 | cptId = ticketForm.value.extJson.ticketDate.activityId | 184 | cptId = ticketForm.value.activeId |
| 213 | totalMoney.val = ticketForm.value.extJson.total | 185 | totalMoney.value = ticketForm.value.paymentType != 3 ? ticketForm.value.total : ticketForm.value.totalEn |
| 214 | message.value = JSON.parse(ticketForm.value.extJson.message) | 186 | // message.value = JSON.parse(ticketForm.value.extJson.message) |
| 215 | paymentType.value = ticketForm.value.paymentType | 187 | paymentType.value = ticketForm.value.paymentType |
| 216 | totalMoney.value = paymentType.value == 3 ? ticketForm.value.totalEn : ticketForm.value.total | 188 | await getDetail(cptId) |
| 217 | await getDetail(ticketForm.value.extJson.ticketDate.activityId) | 189 | // console.log(ticketForm.value) |
| 218 | console.log(ticketForm.value) | ||
| 219 | } catch (e) { | 190 | } catch (e) { |
| 220 | console.log(e) | 191 | console.log(e) |
| 221 | } finally { | 192 | } finally { |
| ... | @@ -224,19 +195,19 @@ async function getTickInfo() { | ... | @@ -224,19 +195,19 @@ async function getTickInfo() { |
| 224 | } | 195 | } |
| 225 | 196 | ||
| 226 | async function getDetail(activeId) { | 197 | async function getDetail(activeId) { |
| 227 | const res = await getTicketInfoByActivityId({activityId: activeId}) | 198 | const res = await getTicketInfoByActivityId({ activityId: activeId }) |
| 228 | matchForm.value = res.data | 199 | matchForm.value = res.data |
| 229 | console.log(matchForm.value) | 200 | console.log(matchForm.value) |
| 230 | } | 201 | } |
| 231 | 202 | ||
| 232 | async function getDataInfo() { | 203 | async function getDataInfo() { |
| 233 | const res = await getOrderDetail({orderSn: route.query.orderSn}) | 204 | const res = await getOrderDetail({ orderSn: route.query.orderSn }) |
| 234 | formDate.value = res.data | 205 | formDate.value = res.data |
| 235 | } | 206 | } |
| 236 | 207 | ||
| 237 | function getList() { | 208 | function getList() { |
| 238 | getInvoiceDetail(invoiceId.value).then(res => { | 209 | getInvoiceDetail(invoiceId.value).then(res => { |
| 239 | form.value = res.data; | 210 | form.value = res.data |
| 240 | totalMoney.value = form.value.total | 211 | totalMoney.value = form.value.total |
| 241 | }) | 212 | }) |
| 242 | } | 213 | } | ... | ... |
| ... | @@ -137,6 +137,7 @@ import { triggerLanguage } from '@/utils/ruoyi' | ... | @@ -137,6 +137,7 @@ import { triggerLanguage } from '@/utils/ruoyi' |
| 137 | import { useStorage } from '@vueuse/core/index' | 137 | import { useStorage } from '@vueuse/core/index' |
| 138 | import { useRoute, useRouter } from 'vue-router' | 138 | import { useRoute, useRouter } from 'vue-router' |
| 139 | import { getCurrentInstance } from '@vue/runtime-core' | 139 | import { getCurrentInstance } from '@vue/runtime-core' |
| 140 | import dayjs from 'dayjs' | ||
| 140 | 141 | ||
| 141 | const language = useStorage('language', 0) | 142 | const language = useStorage('language', 0) |
| 142 | const useStore = useUserStore() | 143 | const useStore = useUserStore() |
| ... | @@ -170,7 +171,9 @@ onMounted(() => { | ... | @@ -170,7 +171,9 @@ onMounted(() => { |
| 170 | async function getLogexScenicVoById() { | 171 | async function getLogexScenicVoById() { |
| 171 | const res = await booking.getLogexScenicVoById({ id: lasId.value }) | 172 | const res = await booking.getLogexScenicVoById({ id: lasId.value }) |
| 172 | travel.value = res.data | 173 | travel.value = res.data |
| 174 | const nowDate = dayjs().format('YYYY-MM-DD') | ||
| 173 | selectForm.value.lasId = lasId.value | 175 | selectForm.value.lasId = lasId.value |
| 176 | travel.value.dateList = travel.value.dateList.filter(val => dayjs(val).format('YYYY-MM-DD') >= nowDate) | ||
| 174 | if (travel.value.dateList && travel.value.dateList.length > 0) { | 177 | if (travel.value.dateList && travel.value.dateList.length > 0) { |
| 175 | selectForm.value.scenicDate = travel.value.dateList[0] | 178 | selectForm.value.scenicDate = travel.value.dateList[0] |
| 176 | await getGateListByLasId() | 179 | await getGateListByLasId() |
| ... | @@ -183,6 +186,7 @@ async function getGateListByLasId() { | ... | @@ -183,6 +186,7 @@ async function getGateListByLasId() { |
| 183 | scenicDate: selectForm.value.scenicDate | 186 | scenicDate: selectForm.value.scenicDate |
| 184 | }) | 187 | }) |
| 185 | ticketList.value = res.data | 188 | ticketList.value = res.data |
| 189 | console.log(33333, ticketList.value) | ||
| 186 | for (const v of ticketList.value) { | 190 | for (const v of ticketList.value) { |
| 187 | v.leftNum = v.num - v.orderCount | 191 | v.leftNum = v.num - v.orderCount |
| 188 | v.count = 0 | 192 | v.count = 0 |
| ... | @@ -230,6 +234,12 @@ async function toSelectSeat() { | ... | @@ -230,6 +234,12 @@ async function toSelectSeat() { |
| 230 | await proxy.$modal.confirm(language.value == 0 ? '请选择日期' : 'Please select a date') | 234 | await proxy.$modal.confirm(language.value == 0 ? '请选择日期' : 'Please select a date') |
| 231 | return | 235 | return |
| 232 | } | 236 | } |
| 237 | |||
| 238 | if (ticketList.value.length <= 0) { | ||
| 239 | await proxy.$modal.confirm(language.value == 0 ? `${selectForm.value.scenicDate}的票型已售完,请选择其它日期。` : `The ticket type for ${selectForm.value.scenicDate} is sold out. Please select another date.`) | ||
| 240 | return | ||
| 241 | } | ||
| 242 | |||
| 233 | if (!selectForm.value.price == '--' || selectForm.value.price == '--') { | 243 | if (!selectForm.value.price == '--' || selectForm.value.price == '--') { |
| 234 | await proxy.$modal.confirm(language.value == 0 ? '请选择购票数量' : 'Please select the number of tickets to purchase') | 244 | await proxy.$modal.confirm(language.value == 0 ? '请选择购票数量' : 'Please select the number of tickets to purchase') |
| 235 | return | 245 | return | ... | ... |
| ... | @@ -86,10 +86,10 @@ | ... | @@ -86,10 +86,10 @@ |
| 86 | <el-col :lg="9" :md="12" :sm="12" :xs="24"> | 86 | <el-col :lg="9" :md="12" :sm="12" :xs="24"> |
| 87 | <h3 class="m0">{{ b.name }}</h3> | 87 | <h3 class="m0">{{ b.name }}</h3> |
| 88 | <p> {{ language == 0 ? "时间" : "Event Date & Time" }}:{{ | 88 | <p> {{ language == 0 ? "时间" : "Event Date & Time" }}:{{ |
| 89 | b.messageObj.ticketDate.name | 89 | b.messageObj.atName |
| 90 | }}</p> | 90 | }}</p> |
| 91 | <p class="common"> | 91 | <p class="common"> |
| 92 | {{ language == 0 ? "张数" : "Location" }}:{{ b.messageObj.num }}{{ language == 0 ? "张" : "tickets" }} | 92 | {{ language == 0 ? "张数" : "Location" }}:{{ b.messageObj.orderCustomerList.length }}{{ language == 0 ? "张" : "tickets" }} |
| 93 | </p> | 93 | </p> |
| 94 | </el-col> | 94 | </el-col> |
| 95 | <el-col :lg="3" :md="6" :sm="6" :xs="6" class="text-center"> | 95 | <el-col :lg="3" :md="6" :sm="6" :xs="6" class="text-center"> |
| ... | @@ -336,8 +336,6 @@ const getList = () => { | ... | @@ -336,8 +336,6 @@ const getList = () => { |
| 336 | list.value = res.rows | 336 | list.value = res.rows |
| 337 | for (const b of list.value) { | 337 | for (const b of list.value) { |
| 338 | b.messageObj = JSON.parse(b.extJson) | 338 | b.messageObj = JSON.parse(b.extJson) |
| 339 | b.messageObj.ticketDate = JSON.parse(b.messageObj.ticketDate) | ||
| 340 | b.messageObj.ticketType = JSON.parse(b.messageObj.ticketType) | ||
| 341 | } | 339 | } |
| 342 | loading.value = false | 340 | loading.value = false |
| 343 | console.log(list.value) | 341 | console.log(list.value) | ... | ... |
| ... | @@ -126,7 +126,7 @@ function popRemark(type) { | ... | @@ -126,7 +126,7 @@ function popRemark(type) { |
| 126 | (form.value.isFoodView == 0 && type == '3') || | 126 | (form.value.isFoodView == 0 && type == '3') || |
| 127 | (form.value.isMealView == 0 && type == '4') || | 127 | (form.value.isMealView == 0 && type == '4') || |
| 128 | (form.value.isPhotoView == 0 && type == '5') || | 128 | (form.value.isPhotoView == 0 && type == '5') || |
| 129 | (form.value.isTicket == 0 && type == '0') || | 129 | (form.value.isTicketView == 0 && type == '0') || |
| 130 | (form.value.isScenicView == 0 && type == '8') | 130 | (form.value.isScenicView == 0 && type == '8') |
| 131 | ) { | 131 | ) { |
| 132 | building() | 132 | building() | ... | ... |
| ... | @@ -5,26 +5,28 @@ | ... | @@ -5,26 +5,28 @@ |
| 5 | close-icon="CircleClose" destroy-on-close | 5 | close-icon="CircleClose" destroy-on-close |
| 6 | width="460px" | 6 | width="460px" |
| 7 | > | 7 | > |
| 8 | <div style="min-height: 300px" v-loading="loading"> | 8 | <div v-loading="loading" style="min-height: 300px"> |
| 9 | 9 | ||
| 10 | <div v-if="!type||type==''"> | 10 | <div v-if="!type||type==''"> |
| 11 | <div @click="type='0'" class="rItem">{{ language == 0 ? '个人查询' : 'Personal Query' }}</div> | 11 | <div class="rItem" @click="type='0'">{{ language == 0 ? '个人查询' : 'Personal Query' }}</div> |
| 12 | <div @click="type='1'" class="rItem">{{ language == 0 ? '团队查询' : 'Team Query' }}</div> | 12 | <div class="rItem" @click="type='1'">{{ language == 0 ? '团队查询' : 'Team Query' }}</div> |
| 13 | </div> | 13 | </div> |
| 14 | 14 | ||
| 15 | <div v-if="type=='0'"> | 15 | <div v-if="type=='0'"> |
| 16 | <div class="flex mt30"> | 16 | <div class="flex mt30"> |
| 17 | <el-input :placeholder="language==0?'输入会员号 / 姓名查询':'Enter WDSF MIN / Name to Query'" v-model="query" | 17 | <el-input |
| 18 | v-model="query" :placeholder="language==0?'输入会员号 / 姓名查询':'Enter WDSF MIN / Name to Query'" | ||
| 18 | clearable | 19 | clearable |
| 19 | @enter="search" @blur="search" @empty="search"/> | 20 | @blur="search" @empty="search" @enter="search" |
| 20 | <el-button @click="search" class="btn-lineG" style="color: #fff">{{ | 21 | /> |
| 22 | <el-button class="btn-lineG" style="color: #fff" @click="search">{{ | ||
| 21 | language == 0 ? '查询' : 'Search' | 23 | language == 0 ? '查询' : 'Search' |
| 22 | }} | 24 | }} |
| 23 | </el-button> | 25 | </el-button> |
| 24 | </div> | 26 | </div> |
| 25 | 27 | ||
| 26 | <div v-if="list.length>0"> | 28 | <div v-if="list.length>0"> |
| 27 | <div class="nowteamItem" v-for="(form, index) in list" :key="index"> | 29 | <div v-for="(form, index) in list" :key="index" class="nowteamItem"> |
| 28 | <div class="info"> | 30 | <div class="info"> |
| 29 | <div class="nowName text-center"> | 31 | <div class="nowName text-center"> |
| 30 | <span class="text-primary">{{ form.number }}</span> | 32 | <span class="text-primary">{{ form.number }}</span> |
| ... | @@ -48,36 +50,38 @@ | ... | @@ -48,36 +50,38 @@ |
| 48 | </div> | 50 | </div> |
| 49 | </div> | 51 | </div> |
| 50 | <div v-else> | 52 | <div v-else> |
| 51 | <el-empty/> | 53 | <el-empty /> |
| 52 | </div> | 54 | </div> |
| 53 | </div> | 55 | </div> |
| 54 | <div v-if="type=='1'"> | 56 | <div v-if="type=='1'"> |
| 55 | <div class="flex mt20"> | 57 | <div class="flex mt20"> |
| 56 | <el-input | 58 | <el-input |
| 59 | v-model="query2" | ||
| 57 | :placeholder="language==0?'请输入代表队名称至少两字符':'Enter the representing team name,At least two characters'" | 60 | :placeholder="language==0?'请输入代表队名称至少两字符':'Enter the representing team name,At least two characters'" |
| 58 | v-model="query2" clearable | 61 | clearable |
| 59 | @enter="searchTeam" @blur="searchTeam" @empty="searchTeam"/> | 62 | @blur="searchTeam" @empty="searchTeam" @enter="searchTeam" |
| 60 | <el-button @click="searchTeam" class="btn-lineG" style="color: #fff"> | 63 | /> |
| 64 | <el-button class="btn-lineG" style="color: #fff" @click="searchTeam"> | ||
| 61 | {{ language == 0 ? '查询' : 'Search' }} | 65 | {{ language == 0 ? '查询' : 'Search' }} |
| 62 | </el-button> | 66 | </el-button> |
| 63 | </div> | 67 | </div> |
| 64 | <span class="tip">*{{ language == 0 ? '模糊查询' : 'Fuzzy query' }}</span> | 68 | <span class="tip">*{{ language == 0 ? '模糊查询' : 'Fuzzy query' }}</span> |
| 65 | <div class="text-danger text-center" v-if="showGroupList"> | 69 | <div v-if="showGroupList" class="text-danger text-center"> |
| 66 | {{ language == 0 ? '找到多个团体' : 'Found multiple teams' }} | 70 | {{ language == 0 ? '找到多个团体' : 'Found multiple teams' }} |
| 67 | </div> | 71 | </div> |
| 68 | <div class="groupList" v-if="showGroupList"> | 72 | <div v-if="showGroupList" class="groupList"> |
| 69 | <ul> | 73 | <ul> |
| 70 | <li v-for="(item, index) in groupList" @click="showDetail(item)" :key="index">{{ item }} | 74 | <li v-for="(item, index) in groupList" :key="index" @click="showDetail(item)">{{ item }} |
| 71 | <el-icon class="fr"> | 75 | <el-icon class="fr"> |
| 72 | <ArrowRight/> | 76 | <ArrowRight /> |
| 73 | </el-icon> | 77 | </el-icon> |
| 74 | </li> | 78 | </li> |
| 75 | </ul> | 79 | </ul> |
| 76 | </div> | 80 | </div> |
| 77 | <div v-if="teamlist.length>0" class="temell mt20"> | 81 | <div v-if="teamlist.length>0" class="temell mt20"> |
| 78 | <el-collapse v-model="activeNames" accordion> | 82 | <el-collapse v-model="activeNames" accordion> |
| 79 | <el-collapse-item :name="index" :title="team[0][0].groupName" v-for="(team,index) in teamlist" :key="index"> | 83 | <el-collapse-item v-for="(team,index) in teamlist" :key="index" :name="index" :title="team[0][0].groupName"> |
| 80 | <div class="nowteamItem" v-for="(p,jndex) in team" :key="jndex"> | 84 | <div v-for="(p,jndex) in team" :key="jndex" class="nowteamItem"> |
| 81 | <div class="fontSize14 text-bold">{{ p[0].zuInfo }}</div> | 85 | <div class="fontSize14 text-bold">{{ p[0].zuInfo }}</div> |
| 82 | <div v-for="f in p" :key="f.id"> | 86 | <div v-for="f in p" :key="f.id"> |
| 83 | <span class="nowName text-primary">{{ f.number }}</span> | 87 | <span class="nowName text-primary">{{ f.number }}</span> |
| ... | @@ -94,10 +98,10 @@ | ... | @@ -94,10 +98,10 @@ |
| 94 | </template> | 98 | </template> |
| 95 | 99 | ||
| 96 | <script setup> | 100 | <script setup> |
| 97 | import {ref} from "vue"; | 101 | import { ref } from 'vue' |
| 98 | import {ElMessage} from "element-plus"; | 102 | import { ElMessage } from 'element-plus' |
| 99 | import {getBackNumber, getTeamBackNumber, getTeamBackNumberPre} from "@/apiPc/common"; | 103 | import { getBackNumber, getTeamBackNumber, getTeamBackNumberPre } from '@/apiPc/common' |
| 100 | import {useStorage} from "@vueuse/core/index"; | 104 | import { useStorage } from '@vueuse/core/index' |
| 101 | 105 | ||
| 102 | const language = useStorage('language', 0) | 106 | const language = useStorage('language', 0) |
| 103 | const show = ref(false) | 107 | const show = ref(false) |
| ... | @@ -109,23 +113,24 @@ const teamlist = ref([]) | ... | @@ -109,23 +113,24 @@ const teamlist = ref([]) |
| 109 | const query = ref('') | 113 | const query = ref('') |
| 110 | const query2 = ref('') | 114 | const query2 = ref('') |
| 111 | const type = ref('') | 115 | const type = ref('') |
| 116 | const cptId = ref('') | ||
| 112 | const activeNames = ref(0) | 117 | const activeNames = ref(0) |
| 113 | const showGroupList = ref(false) | 118 | const showGroupList = ref(false) |
| 119 | |||
| 114 | const search = () => { | 120 | const search = () => { |
| 115 | if (!query.value) { | 121 | if (!query.value) { |
| 116 | ElMessage.warning(language.value == 0 ? '请输入会员号/姓名' : 'Please enter WDSF MIN / Name') | 122 | ElMessage.warning(language.value == 0 ? '请输入会员号/姓名' : 'Please enter WDSF MIN / Name') |
| 117 | return | 123 | return |
| 118 | } | 124 | } |
| 119 | getBackNumber({query: query.value}).then(res => { | 125 | getBackNumber({ query: query.value, cptId: cptId.value }).then(res => { |
| 120 | if (!res.data || res.data.length == 0) { | 126 | if (!res.data || res.data.length == 0) { |
| 121 | list.value = [] | 127 | list.value = [] |
| 122 | //提示 '未找到结果,请重新查询' | 128 | // 提示 '未找到结果,请重新查询' |
| 123 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') | 129 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') |
| 124 | return | 130 | return |
| 125 | } | 131 | } |
| 126 | list.value = res.data | 132 | list.value = res.data |
| 127 | }) | 133 | }) |
| 128 | |||
| 129 | } | 134 | } |
| 130 | const searchTeam = () => { | 135 | const searchTeam = () => { |
| 131 | teamlist.value = [] | 136 | teamlist.value = [] |
| ... | @@ -134,11 +139,11 @@ const searchTeam = () => { | ... | @@ -134,11 +139,11 @@ const searchTeam = () => { |
| 134 | return | 139 | return |
| 135 | } | 140 | } |
| 136 | loading.value = true | 141 | loading.value = true |
| 137 | getTeamBackNumberPre({query: query2.value}).then(res => { | 142 | getTeamBackNumberPre({ query: query2.value, cptId: cptId.value }).then(res => { |
| 138 | loading.value = false | 143 | loading.value = false |
| 139 | if (!res.data || res.data.length == 0) { | 144 | if (!res.data || res.data.length == 0) { |
| 140 | groupList.value = [] | 145 | groupList.value = [] |
| 141 | //提示 '未找到结果,请重新查询' | 146 | // 提示 '未找到结果,请重新查询' |
| 142 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') | 147 | ElMessage.warning(language.value == 0 ? '未找到结果,请重新查询' : 'No result') |
| 143 | return | 148 | return |
| 144 | } | 149 | } |
| ... | @@ -149,10 +154,12 @@ const searchTeam = () => { | ... | @@ -149,10 +154,12 @@ const searchTeam = () => { |
| 149 | if (groupList.value.length > 1) { | 154 | if (groupList.value.length > 1) { |
| 150 | showGroupList.value = true | 155 | showGroupList.value = true |
| 151 | } | 156 | } |
| 152 | |||
| 153 | }) | 157 | }) |
| 154 | } | 158 | } |
| 159 | |||
| 155 | const open = (param) => { | 160 | const open = (param) => { |
| 161 | console.log(param) | ||
| 162 | cptId.value = param.cptId | ||
| 156 | show.value = true | 163 | show.value = true |
| 157 | list.value = [] | 164 | list.value = [] |
| 158 | teamlist.value = [] | 165 | teamlist.value = [] |
| ... | @@ -168,14 +175,14 @@ function showDetail(name) { | ... | @@ -168,14 +175,14 @@ function showDetail(name) { |
| 168 | query2.value = name | 175 | query2.value = name |
| 169 | showGroupList.value = false | 176 | showGroupList.value = false |
| 170 | loading.value = true | 177 | loading.value = true |
| 171 | getTeamBackNumber({query: name}).then(res => { | 178 | getTeamBackNumber({ query: name, cptId: cptId.value }).then(res => { |
| 172 | loading.value = false | 179 | loading.value = false |
| 173 | teamlist.value = res.data | 180 | teamlist.value = res.data |
| 174 | }) | 181 | }) |
| 175 | } | 182 | } |
| 176 | </script> | 183 | </script> |
| 177 | 184 | ||
| 178 | <style scoped lang="scss"> | 185 | <style lang="scss" scoped> |
| 179 | .tip { | 186 | .tip { |
| 180 | font-size: 12px; | 187 | font-size: 12px; |
| 181 | margin: 4px 0 0; | 188 | margin: 4px 0 0; | ... | ... |
This diff is collapsed.
Click to expand it.
| ... | @@ -153,10 +153,10 @@ | ... | @@ -153,10 +153,10 @@ |
| 153 | <!-- @click="popMaster"--> | 153 | <!-- @click="popMaster"--> |
| 154 | <!-- >青少年公益课报名</a>--> | 154 | <!-- >青少年公益课报名</a>--> |
| 155 | <a | 155 | <a |
| 156 | v-show="matchData?.id=='1778253367748993026'" class="zn-btn ml20 btn-q" | 156 | v-show="matchData?.id" class="zn-btn ml20 btn-q" |
| 157 | @click="backNumberSearch" | 157 | @click="backNumberSearch" |
| 158 | >背号查询</a> | 158 | >背号查询</a> |
| 159 | <a v-show="matchData?.id=='1778253367748993026'" class="zn-btn ml20 btn-q" @click="schSearch">日程查询</a> | 159 | <a v-show="matchData?.id" class="zn-btn ml20 btn-q" @click="schSearch">日程查询</a> |
| 160 | </div> | 160 | </div> |
| 161 | </el-col> | 161 | </el-col> |
| 162 | <el-col :lg="14" :sm="24"> | 162 | <el-col :lg="14" :sm="24"> |
| ... | @@ -192,8 +192,13 @@ | ... | @@ -192,8 +192,13 @@ |
| 192 | <el-table-column label="国家" prop="name"> | 192 | <el-table-column label="国家" prop="name"> |
| 193 | <template #default="scope"> | 193 | <template #default="scope"> |
| 194 | <div> | 194 | <div> |
| 195 | <span :class="`flag-icon flag-icon-${scope.row.code}`" /> | 195 | <span v-if="scope.row.code!='tw'" :class="`flag-icon flag-icon-${scope.row.code}`" /> |
| 196 | {{ language == 0 ? scope.row.name : scope.row.enName }} | 196 | <span v-else class="flag-icon"> |
| 197 | <img :src="hkImage" alt="" class="hkimg"> | ||
| 198 | </span> | ||
| 199 | <span> | ||
| 200 | {{ language == 0 ? scope.row.code != 'tw' ? scope.row.name : '中华台北' : scope.row.enName }} | ||
| 201 | </span> | ||
| 197 | </div> | 202 | </div> |
| 198 | </template> | 203 | </template> |
| 199 | </el-table-column> | 204 | </el-table-column> |
| ... | @@ -490,6 +495,7 @@ import 'swiper/css' | ... | @@ -490,6 +495,7 @@ import 'swiper/css' |
| 490 | import { dayjs } from 'element-plus' | 495 | import { dayjs } from 'element-plus' |
| 491 | import * as match from '@/apiPc/match' | 496 | import * as match from '@/apiPc/match' |
| 492 | import { getAboutUs, getppInfo, getZNList } from '@/apiPc/match' | 497 | import { getAboutUs, getppInfo, getZNList } from '@/apiPc/match' |
| 498 | import hkImage from '@/assets/nationalFlag/hk.png' | ||
| 493 | 499 | ||
| 494 | import AffixInvitation from '/@/viewsPc/match/components/affix-invitation.vue' | 500 | import AffixInvitation from '/@/viewsPc/match/components/affix-invitation.vue' |
| 495 | import { useStorage } from '@vueuse/core/index' | 501 | import { useStorage } from '@vueuse/core/index' |
| ... | @@ -1301,6 +1307,13 @@ function applyInvitation() { | ... | @@ -1301,6 +1307,13 @@ function applyInvitation() { |
| 1301 | top: 40%; | 1307 | top: 40%; |
| 1302 | } | 1308 | } |
| 1303 | 1309 | ||
| 1310 | .hkimg { | ||
| 1311 | width: 19px; | ||
| 1312 | height: 14px; | ||
| 1313 | position: absolute; | ||
| 1314 | top: 0; | ||
| 1315 | } | ||
| 1316 | |||
| 1304 | .btn2 { | 1317 | .btn2 { |
| 1305 | cursor: pointer; | 1318 | cursor: pointer; |
| 1306 | padding: 10px 80px; | 1319 | padding: 10px 80px; | ... | ... |
| ... | @@ -184,7 +184,11 @@ | ... | @@ -184,7 +184,11 @@ |
| 184 | <el-table-column label="COUNTRY" min-width="200"> | 184 | <el-table-column label="COUNTRY" min-width="200"> |
| 185 | <template #default="scope"> | 185 | <template #default="scope"> |
| 186 | <div> | 186 | <div> |
| 187 | <span :class="`flag-icon flag-icon-${scope.row.code}`" /> | 187 | <!-- <span :class="`flag-icon flag-icon-${scope.row.code}`" />--> |
| 188 | <span v-if="scope.row.code!='tw'" :class="`flag-icon flag-icon-${scope.row.code}`" /> | ||
| 189 | <span v-else class="flag-icon"> | ||
| 190 | <img :src="hkImage" alt="" class="hkimg"> | ||
| 191 | </span> | ||
| 188 | {{ language == 0 ? scope.row.name : scope.row.enName }} | 192 | {{ language == 0 ? scope.row.name : scope.row.enName }} |
| 189 | </div> | 193 | </div> |
| 190 | </template> | 194 | </template> |
| ... | @@ -472,6 +476,7 @@ import { useStorage } from '@vueuse/core/index' | ... | @@ -472,6 +476,7 @@ import { useStorage } from '@vueuse/core/index' |
| 472 | import useUserStore from '/@/store/modules/user' | 476 | import useUserStore from '/@/store/modules/user' |
| 473 | import clubImage from '@/assets/logo/club.png' | 477 | import clubImage from '@/assets/logo/club.png' |
| 474 | import { fillImgUrl } from '/@/utils/ruoyi' | 478 | import { fillImgUrl } from '/@/utils/ruoyi' |
| 479 | import hkImage from '/@/assets/nationalFlag/hk.png' | ||
| 475 | 480 | ||
| 476 | 481 | ||
| 477 | const language = useStorage('language', 0) | 482 | const language = useStorage('language', 0) |
| ... | @@ -1418,6 +1423,13 @@ function applyInvitation() { | ... | @@ -1418,6 +1423,13 @@ function applyInvitation() { |
| 1418 | 1423 | ||
| 1419 | } | 1424 | } |
| 1420 | 1425 | ||
| 1426 | .hkimg { | ||
| 1427 | width: 19px; | ||
| 1428 | height: 14px; | ||
| 1429 | position: absolute; | ||
| 1430 | top: 0; | ||
| 1431 | } | ||
| 1432 | |||
| 1421 | .club { | 1433 | .club { |
| 1422 | width: 130px; | 1434 | width: 130px; |
| 1423 | right: 0; | 1435 | right: 0; | ... | ... |
| ... | @@ -20,7 +20,7 @@ | ... | @@ -20,7 +20,7 @@ |
| 20 | <el-col :span="10"> | 20 | <el-col :span="10"> |
| 21 | <el-form-item v-if="language!=0" label="WDSF code" prop="wdsfMin"> | 21 | <el-form-item v-if="language!=0" label="WDSF code" prop="wdsfMin"> |
| 22 | <span v-if="form.wdsfMin">{{ form.wdsfMin }}</span> | 22 | <span v-if="form.wdsfMin">{{ form.wdsfMin }}</span> |
| 23 | <el-input v-else v-model="form.wdsfMin" type="text" /> | 23 | <el-input v-else v-model.trim="form.wdsfMin" type="text" /> |
| 24 | </el-form-item> | 24 | </el-form-item> |
| 25 | <el-form-item :label="language==0?'姓名':'Name'" prop="realName" required> | 25 | <el-form-item :label="language==0?'姓名':'Name'" prop="realName" required> |
| 26 | <el-input v-model="form.realName" :disabled="editgay&&form.labelArr.indexOf('0')>-1" /> | 26 | <el-input v-model="form.realName" :disabled="editgay&&form.labelArr.indexOf('0')>-1" /> | ... | ... |
| ... | @@ -101,9 +101,11 @@ | ... | @@ -101,9 +101,11 @@ |
| 101 | <el-input v-model="form.certName" :disabled="editgay" /> | 101 | <el-input v-model="form.certName" :disabled="editgay" /> |
| 102 | </el-form-item> | 102 | </el-form-item> |
| 103 | <el-form-item | 103 | <el-form-item |
| 104 | v-if="form.idcType!=3 " | ||
| 104 | :label="language==0?'证件类型':'ID Type'" :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1" | 105 | :label="language==0?'证件类型':'ID Type'" :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1" |
| 105 | prop="idcType" | 106 | prop="idcType" |
| 106 | > | 107 | > |
| 108 | |||
| 107 | <el-select v-model="form.idcType" :disabled="editgay" style="width: 100%;"> | 109 | <el-select v-model="form.idcType" :disabled="editgay" style="width: 100%;"> |
| 108 | <el-option | 110 | <el-option |
| 109 | v-for="item in certificates" | 111 | v-for="item in certificates" |
| ... | @@ -114,6 +116,7 @@ | ... | @@ -114,6 +116,7 @@ |
| 114 | </el-select> | 116 | </el-select> |
| 115 | </el-form-item> | 117 | </el-form-item> |
| 116 | <el-form-item | 118 | <el-form-item |
| 119 | v-if="form.idcType!=3 " | ||
| 117 | :label="language==0?'证件号码':'ID NO'" :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1" | 120 | :label="language==0?'证件号码':'ID NO'" :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1" |
| 118 | prop="idcCode" | 121 | prop="idcCode" |
| 119 | > | 122 | > |
| ... | @@ -286,14 +289,15 @@ const open = (params) => { | ... | @@ -286,14 +289,15 @@ const open = (params) => { |
| 286 | if (form.value.wdsfMin) { | 289 | if (form.value.wdsfMin) { |
| 287 | editDis.value = true | 290 | editDis.value = true |
| 288 | } | 291 | } |
| 289 | if (form.value.idcType == '3') { | 292 | // if (form.value.idcType == '3') { |
| 290 | form.value.idcType = '' | 293 | // form.value.idcType = '' |
| 291 | form.value.idcCode = '' | 294 | // form.value.idcCode = '' |
| 292 | } | 295 | // } |
| 293 | if (form.value.label) { | 296 | if (form.value.label) { |
| 294 | // {0:0,1:1,2:3} | 297 | // {0:0,1:1,2:3} |
| 295 | form.value.labelArr = form.value.label.split(',') | 298 | form.value.labelArr = form.value.label.split(',') |
| 296 | } | 299 | } |
| 300 | console.log(form.value) | ||
| 297 | }) | 301 | }) |
| 298 | } else { | 302 | } else { |
| 299 | editgay.value = false | 303 | editgay.value = false | ... | ... |
| ... | @@ -20,7 +20,7 @@ | ... | @@ -20,7 +20,7 @@ |
| 20 | {{ form.wdsfMin }} | 20 | {{ form.wdsfMin }} |
| 21 | </el-form-item> | 21 | </el-form-item> |
| 22 | <el-form-item v-else :label="language==0?'WDSF会员号':'WDSF MIN'" required> | 22 | <el-form-item v-else :label="language==0?'WDSF会员号':'WDSF MIN'" required> |
| 23 | <el-input v-model="form.wdsfMin" type="text" @change="resetCode"> | 23 | <el-input v-model.trim="form.wdsfMin" type="text" @change="resetCode"> |
| 24 | <template #append> | 24 | <template #append> |
| 25 | <el-button plain style="width: 110px" type="primary" @click="checkCard"> | 25 | <el-button plain style="width: 110px" type="primary" @click="checkCard"> |
| 26 | <el-icon v-if="isCodeTrue" color="#67C23A" size="16"> | 26 | <el-icon v-if="isCodeTrue" color="#67C23A" size="16"> | ... | ... |
| ... | @@ -12,7 +12,7 @@ | ... | @@ -12,7 +12,7 @@ |
| 12 | {{ form.wdsfMin }} | 12 | {{ form.wdsfMin }} |
| 13 | </el-form-item> | 13 | </el-form-item> |
| 14 | <el-form-item v-else :label="language==0?'WDSF卡号':'WDSF MIN'" required> | 14 | <el-form-item v-else :label="language==0?'WDSF卡号':'WDSF MIN'" required> |
| 15 | <el-input v-model="card" type="text" @change="resetCode"> | 15 | <el-input v-model.trim="card" type="text" @change="resetCode"> |
| 16 | <template #append> | 16 | <template #append> |
| 17 | <el-button plain style="width: 110px" type="primary" @click="checkCard"> | 17 | <el-button plain style="width: 110px" type="primary" @click="checkCard"> |
| 18 | <el-icon v-if="isCodeTrue" color="#67C23A" size="16"> | 18 | <el-icon v-if="isCodeTrue" color="#67C23A" size="16"> | ... | ... |
| ... | @@ -157,7 +157,7 @@ const emit = defineEmits(['transfer']) | ... | @@ -157,7 +157,7 @@ const emit = defineEmits(['transfer']) |
| 157 | const data = reactive({ | 157 | const data = reactive({ |
| 158 | query: { | 158 | query: { |
| 159 | label: '0', | 159 | label: '0', |
| 160 | pageSize: 10, | 160 | pageSize: 9999, |
| 161 | pageNum: 1 | 161 | pageNum: 1 |
| 162 | }, | 162 | }, |
| 163 | tableData: [], | 163 | tableData: [], | ... | ... |
| 1 | <template> | ||
| 2 | <div style="padding: 30px 20px 20px"> | ||
| 3 | <!--成绩--> | ||
| 4 | <div v-html="matchData.scoreUrl" /> | ||
| 5 | <el-empty | ||
| 6 | v-if="!matchData.scoreUrl" :image="`/img/order_no.png`" :image-size="228" | ||
| 7 | description="" | ||
| 8 | /> | ||
| 9 | |||
| 10 | </div> | ||
| 11 | </template> | ||
| 12 | |||
| 13 | <script setup> | ||
| 14 | |||
| 15 | const props = defineProps({ | ||
| 16 | matchData: { | ||
| 17 | type: Object, | ||
| 18 | required: true | ||
| 19 | } | ||
| 20 | }) | ||
| 21 | </script> | ||
| 22 | |||
| 23 | <style lang="scss" scoped> | ||
| 24 | .time-address { | ||
| 25 | color: #666; | ||
| 26 | } | ||
| 27 | |||
| 28 | .indexTitle { | ||
| 29 | margin: 20px 0 12px; | ||
| 30 | |||
| 31 | h3 { | ||
| 32 | font-size: 20px; | ||
| 33 | color: var(--el-color-primary); | ||
| 34 | } | ||
| 35 | } | ||
| 36 | |||
| 37 | p img { | ||
| 38 | max-width: 100%; | ||
| 39 | } | ||
| 40 | |||
| 41 | .table { | ||
| 42 | width: 100%; | ||
| 43 | border-left: 1px solid #e1e1e1; | ||
| 44 | border-top: 1px solid #e1e1e1; | ||
| 45 | |||
| 46 | th { | ||
| 47 | background: #eee; | ||
| 48 | padding: 6px 10px; | ||
| 49 | border-right: 1px solid #e1e1e1; | ||
| 50 | border-bottom: 1px solid #e1e1e1; | ||
| 51 | font-size: 15px; | ||
| 52 | } | ||
| 53 | |||
| 54 | td { | ||
| 55 | padding: 6px 10px; | ||
| 56 | border-right: 1px solid #e1e1e1; | ||
| 57 | font-size: 15px; | ||
| 58 | border-bottom: 1px solid #e1e1e1; | ||
| 59 | vertical-align: middle; | ||
| 60 | text-align: center; | ||
| 61 | |||
| 62 | span { | ||
| 63 | margin-right: 10px | ||
| 64 | } | ||
| 65 | |||
| 66 | span::after { | ||
| 67 | content: ',' | ||
| 68 | } | ||
| 69 | |||
| 70 | span:last-child::after { | ||
| 71 | content: '' | ||
| 72 | } | ||
| 73 | } | ||
| 74 | } | ||
| 75 | </style> |
| 1 | <template> | 1 | <template> |
| 2 | <div style="filter: opacity(1)"> | 2 | <div style="filter: opacity(1)"> |
| 3 | <el-row v-if="language==0" class="btnbox" justify='space-between' :gutter="15"> | 3 | <el-row v-if="language==0" class="btnbox" justify="space-between" :gutter="15"> |
| 4 | <el-col :lg="3" :md="6" :sm="12" :xs="12"> | 4 | <el-col :lg="3" :md="6" :sm="12" :xs="12"> |
| 5 | <div class="funcBtn" @click="popRemark(0)"> | 5 | <div class="funcBtn" @click="popRemark(0)"> |
| 6 | <img src="@/assets/dance/btn04.png"/> | 6 | <img src="@/assets/dance/btn04.png"> |
| 7 | <h4>票务预订</h4> | 7 | <h4>票务预订</h4> |
| 8 | </div> | 8 | </div> |
| 9 | </el-col> | 9 | </el-col> |
| 10 | <el-col :lg="3" :md="6" :sm="12" :xs="12"> | 10 | <el-col :lg="3" :md="6" :sm="12" :xs="12"> |
| 11 | <div class="funcBtn" @click="popRemark(1)"> | 11 | <div class="funcBtn" @click="popRemark(1)"> |
| 12 | <img src="@/assets/dance/btn01.png"/> | 12 | <img src="@/assets/dance/btn01.png"> |
| 13 | <h4>酒店预订</h4> | 13 | <h4>酒店预订</h4> |
| 14 | </div> | 14 | </div> |
| 15 | </el-col> | 15 | </el-col> |
| 16 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> | 16 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> |
| 17 | <div class="funcBtn" @click="popRemark(8)"> | 17 | <div class="funcBtn" @click="popRemark(8)"> |
| 18 | <img src="@/assets/dance/btn08.png"/> | 18 | <img src="@/assets/dance/btn08.png"> |
| 19 | <h4>旅游服务</h4> | 19 | <h4>旅游服务</h4> |
| 20 | </div> | 20 | </div> |
| 21 | </el-col> | 21 | </el-col> |
| 22 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> | 22 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> |
| 23 | <div class="funcBtn" @click="popRemark(2)"> | 23 | <div class="funcBtn" @click="popRemark(2)"> |
| 24 | <img src="@/assets/dance/btn02.png"/> | 24 | <img src="@/assets/dance/btn02.png"> |
| 25 | <h4>车辆预订</h4> | 25 | <h4>车辆预订</h4> |
| 26 | </div> | 26 | </div> |
| 27 | </el-col> | 27 | </el-col> |
| 28 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> | 28 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> |
| 29 | <div class="funcBtn" @click="popRemark(6)"> | 29 | <div class="funcBtn" @click="popRemark(6)"> |
| 30 | <img src="@/assets/dance/btn07.png"/> | 30 | <img src="@/assets/dance/btn07.png"> |
| 31 | <h4>预订查询</h4> | 31 | <h4>预订查询</h4> |
| 32 | </div> | 32 | </div> |
| 33 | </el-col> | 33 | </el-col> |
| 34 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> | 34 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> |
| 35 | <div class="funcBtn" @click="popRemark(3)"> | 35 | <div class="funcBtn" @click="popRemark(3)"> |
| 36 | <img src="@/assets/dance/btn03.png"/> | 36 | <img src="@/assets/dance/btn03.png"> |
| 37 | <h4>餐饮预订</h4> | 37 | <h4>餐饮预订</h4> |
| 38 | </div> | 38 | </div> |
| 39 | </el-col> | 39 | </el-col> |
| 40 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> | 40 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> |
| 41 | <div class="funcBtn" @click="popRemark(4)"> | 41 | <div class="funcBtn" @click="popRemark(4)"> |
| 42 | <img src="@/assets/dance/btn05.png"/> | 42 | <img src="@/assets/dance/btn05.png"> |
| 43 | <h4>化妆预约</h4> | 43 | <h4>化妆预约</h4> |
| 44 | </div> | 44 | </div> |
| 45 | </el-col> | 45 | </el-col> |
| 46 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> | 46 | <el-col :lg="3" :md="6" :sm="12" :xs="11"> |
| 47 | <div class="funcBtn" @click="popRemark(5)"> | 47 | <div class="funcBtn" @click="popRemark(5)"> |
| 48 | <img src="@/assets/dance/btn06.png"/> | 48 | <img src="@/assets/dance/btn06.png"> |
| 49 | <h4>拍照预约</h4> | 49 | <h4>拍照预约</h4> |
| 50 | </div> | 50 | </div> |
| 51 | </el-col> | 51 | </el-col> |
| 52 | </el-row> | 52 | </el-row> |
| 53 | 53 | ||
| 54 | 54 | ||
| 55 | <el-row v-else class="btnbox enBtnbox" justify='space-between' :gutter="15"> | 55 | <el-row v-else class="btnbox enBtnbox" justify="space-between" :gutter="15"> |
| 56 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 56 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 57 | <div class="funcBtn" @click="popRemark(0)"> | 57 | <div class="funcBtn" @click="popRemark(0)"> |
| 58 | <img src="@/assets/dance/btn04.png"/> | 58 | <img src="@/assets/dance/btn04.png"> |
| 59 | <h4>TICKET BOOKING</h4> | 59 | <h4>TICKET BOOKING</h4> |
| 60 | </div> | 60 | </div> |
| 61 | </el-col> | 61 | </el-col> |
| 62 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 62 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 63 | <div class="funcBtn" @click="popRemark(1)"> | 63 | <div class="funcBtn" @click="popRemark(1)"> |
| 64 | <img src="@/assets/dance/btn01.png"/> | 64 | <img src="@/assets/dance/btn01.png"> |
| 65 | <h4>HOTEL RESERVATION</h4> | 65 | <h4>HOTEL RESERVATION</h4> |
| 66 | </div> | 66 | </div> |
| 67 | </el-col> | 67 | </el-col> |
| 68 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 68 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 69 | <div class="funcBtn" @click="popRemark(8)"> | 69 | <div class="funcBtn" @click="popRemark(8)"> |
| 70 | <img src="@/assets/dance/btn08.png"/> | 70 | <img src="@/assets/dance/btn08.png"> |
| 71 | <h4>TRAVEL SERVICE</h4> | 71 | <h4>TRAVEL SERVICE</h4> |
| 72 | </div> | 72 | </div> |
| 73 | </el-col> | 73 | </el-col> |
| 74 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 74 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 75 | <div class="funcBtn" @click="popRemark(2)"> | 75 | <div class="funcBtn" @click="popRemark(2)"> |
| 76 | <img src="@/assets/dance/btn02.png"/> | 76 | <img src="@/assets/dance/btn02.png"> |
| 77 | <h4>TRANSPORTATION RESERVATION</h4> | 77 | <h4>TRANSPORTATION RESERVATION</h4> |
| 78 | </div> | 78 | </div> |
| 79 | </el-col> | 79 | </el-col> |
| 80 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 80 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 81 | <div class="funcBtn" @click="popRemark(6)"> | 81 | <div class="funcBtn" @click="popRemark(6)"> |
| 82 | <img src="@/assets/dance/btn07.png"/> | 82 | <img src="@/assets/dance/btn07.png"> |
| 83 | <h4>RESERVATION SEARCH</h4> | 83 | <h4>RESERVATION SEARCH</h4> |
| 84 | </div> | 84 | </div> |
| 85 | </el-col> | 85 | </el-col> |
| 86 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 86 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 87 | <div class="funcBtn" @click="popRemark(3)"> | 87 | <div class="funcBtn" @click="popRemark(3)"> |
| 88 | <img src="@/assets/dance/btn03.png"/> | 88 | <img src="@/assets/dance/btn03.png"> |
| 89 | <h4>DINING RESERVATION</h4> | 89 | <h4>DINING RESERVATION</h4> |
| 90 | </div> | 90 | </div> |
| 91 | </el-col> | 91 | </el-col> |
| 92 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 92 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 93 | <div class="funcBtn" @click="popRemark(4)"> | 93 | <div class="funcBtn" @click="popRemark(4)"> |
| 94 | <img src="@/assets/dance/btn05.png"/> | 94 | <img src="@/assets/dance/btn05.png"> |
| 95 | <h4>MAKEUP APPOINTMENT</h4> | 95 | <h4>MAKEUP APPOINTMENT</h4> |
| 96 | </div> | 96 | </div> |
| 97 | </el-col> | 97 | </el-col> |
| 98 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> | 98 | <el-col :lg="3" :md="8" :sm="12" :xs="12"> |
| 99 | <div class="funcBtn" @click="popRemark(5)"> | 99 | <div class="funcBtn" @click="popRemark(5)"> |
| 100 | <img src="@/assets/dance/btn06.png"/> | 100 | <img src="@/assets/dance/btn06.png"> |
| 101 | <h4>PHOTOGRAPHY APPOINTMENT</h4> | 101 | <h4>PHOTOGRAPHY APPOINTMENT</h4> |
| 102 | </div> | 102 | </div> |
| 103 | </el-col> | 103 | </el-col> |
| 104 | </el-row> | 104 | </el-row> |
| 105 | </div> | 105 | </div> |
| 106 | <order-remark ref="orderRemarkRef" @submit="goBooking"/> | 106 | <order-remark ref="orderRemarkRef" @submit="goBooking" /> |
| 107 | 107 | ||
| 108 | <!-- <div class="fixedKP" @click="addInvoice">--> | 108 | <!-- <div class="fixedKP" @click="addInvoice">--> |
| 109 | <!-- <img src="@/assets/img/kp.svg"/>--> | 109 | <!-- <img src="@/assets/img/kp.svg"/>--> |
| ... | @@ -112,15 +112,15 @@ | ... | @@ -112,15 +112,15 @@ |
| 112 | </template> | 112 | </template> |
| 113 | 113 | ||
| 114 | <script setup> | 114 | <script setup> |
| 115 | import {ElMessage} from "element-plus"; | 115 | import { ElMessage } from 'element-plus' |
| 116 | import {useRouter} from "vue-router"; | 116 | import { useRouter } from 'vue-router' |
| 117 | import {useStorage} from "@vueuse/core/index"; | 117 | import { useStorage } from '@vueuse/core/index' |
| 118 | import OrderRemark from '@/viewsPc/components/orderRemark' | 118 | import OrderRemark from '@/viewsPc/components/orderRemark' |
| 119 | import {getBaseInfoByActiveId} from "@/apiPc/booking"; | 119 | import { getBaseInfoByActiveId } from '@/apiPc/booking' |
| 120 | import {getCurrentInstance} from "@vue/runtime-core"; | 120 | import { getCurrentInstance } from '@vue/runtime-core' |
| 121 | import {onMounted} from "vue"; | 121 | import { onMounted } from 'vue' |
| 122 | 122 | ||
| 123 | const {proxy} = getCurrentInstance() | 123 | const { proxy } = getCurrentInstance() |
| 124 | 124 | ||
| 125 | const router = useRouter() | 125 | const router = useRouter() |
| 126 | const language = useStorage('language', 0) | 126 | const language = useStorage('language', 0) |
| ... | @@ -148,7 +148,6 @@ onMounted(() => { | ... | @@ -148,7 +148,6 @@ onMounted(() => { |
| 148 | 148 | ||
| 149 | function building() { | 149 | function building() { |
| 150 | ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.') | 150 | ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.') |
| 151 | |||
| 152 | } | 151 | } |
| 153 | 152 | ||
| 154 | function popRemark(type) { | 153 | function popRemark(type) { |
| ... | @@ -156,7 +155,7 @@ function popRemark(type) { | ... | @@ -156,7 +155,7 @@ function popRemark(type) { |
| 156 | return router.push({ | 155 | return router.push({ |
| 157 | path: '/match/list/reservationSearch', | 156 | path: '/match/list/reservationSearch', |
| 158 | query: { | 157 | query: { |
| 159 | matchId: props.matchId, | 158 | matchId: props.matchId |
| 160 | } | 159 | } |
| 161 | }) | 160 | }) |
| 162 | } | 161 | } |
| ... | @@ -165,13 +164,13 @@ function popRemark(type) { | ... | @@ -165,13 +164,13 @@ function popRemark(type) { |
| 165 | return | 164 | return |
| 166 | } | 165 | } |
| 167 | 166 | ||
| 168 | if ((form.value.isJdView == 0 && type == '1') | 167 | if ((form.value.isJdView == 0 && type == '1') || |
| 169 | || (form.value.isCarView == 0 && type == '2') | 168 | (form.value.isCarView == 0 && type == '2') || |
| 170 | || (form.value.isFoodView == 0 && type == '3') | 169 | (form.value.isFoodView == 0 && type == '3') || |
| 171 | || (form.value.isMealView == 0 && type == '4') | 170 | (form.value.isMealView == 0 && type == '4') || |
| 172 | || (form.value.isPhotoView == 0 && type == '5') | 171 | (form.value.isPhotoView == 0 && type == '5') || |
| 173 | || (form.value.isTicket == 0 && type == '0') | 172 | (form.value.isTicketView == 0 && type == '0') || |
| 174 | || (form.value.isScenicView == 0 && type == '8') | 173 | (form.value.isScenicView == 0 && type == '8') |
| 175 | ) { | 174 | ) { |
| 176 | building() | 175 | building() |
| 177 | return | 176 | return |
| ... | @@ -184,7 +183,6 @@ function popRemark(type) { | ... | @@ -184,7 +183,6 @@ function popRemark(type) { |
| 184 | cptName: props.cptName | 183 | cptName: props.cptName |
| 185 | } | 184 | } |
| 186 | proxy.$refs['orderRemarkRef'].open(params) | 185 | proxy.$refs['orderRemarkRef'].open(params) |
| 187 | |||
| 188 | } | 186 | } |
| 189 | 187 | ||
| 190 | function goBooking(n) { | 188 | function goBooking(n) { |
| ... | @@ -192,33 +190,33 @@ function goBooking(n) { | ... | @@ -192,33 +190,33 @@ function goBooking(n) { |
| 192 | case 0: | 190 | case 0: |
| 193 | // 票务 | 191 | // 票务 |
| 194 | router.push({ | 192 | router.push({ |
| 195 | path: `/booking/ticket/${props.matchId}`, | 193 | path: `/booking/ticket/${props.matchId}` |
| 196 | }) | 194 | }) |
| 197 | break; | 195 | break |
| 198 | case 1: | 196 | case 1: |
| 199 | //酒店 | 197 | // 酒店 |
| 200 | router.push({path: `/booking/hotel/${props.matchId}`}) | 198 | router.push({ path: `/booking/hotel/${props.matchId}` }) |
| 201 | break; | 199 | break |
| 202 | case 2: | 200 | case 2: |
| 203 | //车辆 | 201 | // 车辆 |
| 204 | router.push({path: `/booking/car/${props.matchId}`}) | 202 | router.push({ path: `/booking/car/${props.matchId}` }) |
| 205 | break; | 203 | break |
| 206 | case 3: | 204 | case 3: |
| 207 | //餐饮 | 205 | // 餐饮 |
| 208 | router.push({path: `/booking/dinner/${props.matchId}`}) | 206 | router.push({ path: `/booking/dinner/${props.matchId}` }) |
| 209 | break; | 207 | break |
| 210 | case 4: | 208 | case 4: |
| 211 | //化妆 | 209 | // 化妆 |
| 212 | router.push({path: `/booking/makeup/${props.matchId}`}) | 210 | router.push({ path: `/booking/makeup/${props.matchId}` }) |
| 213 | break; | 211 | break |
| 214 | case 5: | 212 | case 5: |
| 215 | //拍照 | 213 | // 拍照 |
| 216 | router.push({path: `/booking/photography/${props.matchId}`}) | 214 | router.push({ path: `/booking/photography/${props.matchId}` }) |
| 217 | break; | 215 | break |
| 218 | case 8: | 216 | case 8: |
| 219 | //旅游 | 217 | // 旅游 |
| 220 | router.push({path: `/booking/travel/${props.matchId}`}) | 218 | router.push({ path: `/booking/travel/${props.matchId}` }) |
| 221 | break; | 219 | break |
| 222 | } | 220 | } |
| 223 | } | 221 | } |
| 224 | 222 | ... | ... |
| ... | @@ -380,8 +380,10 @@ | ... | @@ -380,8 +380,10 @@ |
| 380 | 380 | ||
| 381 | </div> | 381 | </div> |
| 382 | <div v-if="menu[4].active==1"> | 382 | <div v-if="menu[4].active==1"> |
| 383 | <!--成绩--> | 383 | <!-- <!–成绩–>--> |
| 384 | <el-empty :image="`/img/order_no.png`" :image-size="228" description="" /> | 384 | <!-- <el-empty :image="`/img/order_no.png`" :image-size="228" description="" />--> |
| 385 | |||
| 386 | <matchPerformance :match-data="matchData" /> | ||
| 385 | </div> | 387 | </div> |
| 386 | <div v-if="menu[5].active==1" class="pd20"> | 388 | <div v-if="menu[5].active==1" class="pd20"> |
| 387 | <div class="xzbox"> | 389 | <div class="xzbox"> |
| ... | @@ -422,6 +424,7 @@ | ... | @@ -422,6 +424,7 @@ |
| 422 | <substation-list v-if="menu1[0].active==1" :list="matchData.cpts" /> | 424 | <substation-list v-if="menu1[0].active==1" :list="matchData.cpts" /> |
| 423 | <matchInfo v-if="menu1[1].active==1" :form="matchData" /> | 425 | <matchInfo v-if="menu1[1].active==1" :form="matchData" /> |
| 424 | <match-schedule-list v-if="menu1[2].active==1" :match-data="matchData" /> | 426 | <match-schedule-list v-if="menu1[2].active==1" :match-data="matchData" /> |
| 427 | <matchPerformance v-if="menu1[3].active==1" :match-data="matchData" /> | ||
| 425 | </el-card> | 428 | </el-card> |
| 426 | </el-col> | 429 | </el-col> |
| 427 | </el-row> | 430 | </el-row> |
| ... | @@ -482,6 +485,9 @@ import SubstationList from '@/viewsPc/match/components/substation-list' | ... | @@ -482,6 +485,9 @@ import SubstationList from '@/viewsPc/match/components/substation-list' |
| 482 | import MatchInfoProjectList from '@/viewsPc/match/components/matchInfo-projectList' | 485 | import MatchInfoProjectList from '@/viewsPc/match/components/matchInfo-projectList' |
| 483 | import QuickRow from '@/viewsPc/match/components/quick-row' | 486 | import QuickRow from '@/viewsPc/match/components/quick-row' |
| 484 | import Pickup from '@/viewsPc/components/pickup' | 487 | import Pickup from '@/viewsPc/components/pickup' |
| 488 | import matchPerformance from '@/viewsPc/match/components/matchPerformance.vue' | ||
| 489 | |||
| 490 | |||
| 485 | import { getCurrentInstance, ref, watch } from 'vue' | 491 | import { getCurrentInstance, ref, watch } from 'vue' |
| 486 | import { reactive, onMounted } from '@vue/runtime-core' | 492 | import { reactive, onMounted } from '@vue/runtime-core' |
| 487 | import { useRoute, useRouter } from 'vue-router' | 493 | import { useRoute, useRouter } from 'vue-router' |
| ... | @@ -518,11 +524,15 @@ const data = reactive({ | ... | @@ -518,11 +524,15 @@ const data = reactive({ |
| 518 | { name: 'Schedule', cn: '日程', active: 0 }, | 524 | { name: 'Schedule', cn: '日程', active: 0 }, |
| 519 | { name: 'Participating teams', cn: '参赛人员', active: 0 }, | 525 | { name: 'Participating teams', cn: '参赛人员', active: 0 }, |
| 520 | { name: 'Achievement', cn: '成绩', active: 0 }, | 526 | { name: 'Achievement', cn: '成绩', active: 0 }, |
| 521 | { name: 'Notes', cn: '报名须知', active: 0 }], | 527 | { name: 'Notes', cn: '报名须知', active: 0 } |
| 528 | ], | ||
| 522 | menu1: [ | 529 | menu1: [ |
| 523 | { name: 'Tournaments', cn: '分站赛', active: 1 }, | 530 | { name: 'Tournaments', cn: '分站赛', active: 1 }, |
| 524 | { name: 'Event details', cn: '赛事详情', active: 0 }, | 531 | { name: 'Event details', cn: '赛事详情', active: 0 }, |
| 525 | { name: 'Schedule', cn: '日程', active: 0 }], | 532 | { name: 'Schedule', cn: '日程', active: 0 }, |
| 533 | { name: 'Achievement', cn: '成绩', active: 0 } | ||
| 534 | ], | ||
| 535 | |||
| 526 | signDoneGroupList: [], | 536 | signDoneGroupList: [], |
| 527 | signDoneGroupListToTal: 0, | 537 | signDoneGroupListToTal: 0, |
| 528 | queryGroupList: { | 538 | queryGroupList: { |
| ... | @@ -577,7 +587,7 @@ function getMatch(id) { | ... | @@ -577,7 +587,7 @@ function getMatch(id) { |
| 577 | loading.value = true | 587 | loading.value = true |
| 578 | match.getMatchById({ id: id }).then(res => { | 588 | match.getMatchById({ id: id }).then(res => { |
| 579 | matchData.value = res.data | 589 | matchData.value = res.data |
| 580 | console.log(matchData.value) | 590 | console.log(666666, matchData.value) |
| 581 | loading.value = false | 591 | loading.value = false |
| 582 | const today = dayjs().format('YYYY-MM-DD HH:mm:ss') | 592 | const today = dayjs().format('YYYY-MM-DD HH:mm:ss') |
| 583 | time.value = dayjs(res.data.signEndTime).diff(today, 'millisecond') | 593 | time.value = dayjs(res.data.signEndTime).diff(today, 'millisecond') |
| ... | @@ -603,12 +613,12 @@ function getGroupListByCptId() { | ... | @@ -603,12 +613,12 @@ function getGroupListByCptId() { |
| 603 | 613 | ||
| 604 | function changeMenu(menu, l) { | 614 | function changeMenu(menu, l) { |
| 605 | console.log(matchData.value.leagueId, l.name) | 615 | console.log(matchData.value.leagueId, l.name) |
| 606 | if ( | 616 | // if ( |
| 607 | matchData.value.leagueId == '1778253367748993026' && | 617 | // matchData.value.leagueId == '1778253367748993026' && |
| 608 | (l.name == '成绩' || l.name == 'Achievement') | 618 | // (l.name == '成绩' || l.name == 'Achievement') |
| 609 | ) { | 619 | // ) { |
| 610 | window.open('http://www.cdsf.org.cn/h5/sscj.index?matchID=526') | 620 | // window.open('http://www.cdsf.org.cn/h5/sscj.index?matchID=526') |
| 611 | } | 621 | // } |
| 612 | for (const n of menu) { | 622 | for (const n of menu) { |
| 613 | if (n == l) { | 623 | if (n == l) { |
| 614 | n.active = 1 | 624 | n.active = 1 | ... | ... |
| ... | @@ -12,7 +12,7 @@ | ... | @@ -12,7 +12,7 @@ |
| 12 | size="large" style="max-width: 560px;margin: auto" | 12 | size="large" style="max-width: 560px;margin: auto" |
| 13 | > | 13 | > |
| 14 | <el-form-item :label="language==0?'WDSF会员号':'WDSF MIN'" required> | 14 | <el-form-item :label="language==0?'WDSF会员号':'WDSF MIN'" required> |
| 15 | <el-input v-model="form.card" type="text" @blur="verifyCode" @change="resetCode(0)"> | 15 | <el-input v-model.trim="form.card" type="text" @blur="verifyCode" @change="resetCode(0)"> |
| 16 | <template #append> | 16 | <template #append> |
| 17 | <el-button plain style="width: 110px" type="primary" @click="checkCard"> | 17 | <el-button plain style="width: 110px" type="primary" @click="checkCard"> |
| 18 | <el-icon v-if="wdsfData.wdsfFlag=='1'" color="#67C23A" size="16"> | 18 | <el-icon v-if="wdsfData.wdsfFlag=='1'" color="#67C23A" size="16"> | ... | ... |
| ... | @@ -63,8 +63,13 @@ | ... | @@ -63,8 +63,13 @@ |
| 63 | <el-table-column :label="language==0?'国家':'Country'" min-width="200" prop="name"> | 63 | <el-table-column :label="language==0?'国家':'Country'" min-width="200" prop="name"> |
| 64 | <template #default="scope"> | 64 | <template #default="scope"> |
| 65 | <div> | 65 | <div> |
| 66 | <span :class="`flag-icon flag-icon-${scope.row.code}`" /> | 66 | <span v-if="scope.row.code!='tw'" :class="`flag-icon flag-icon-${scope.row.code}`" /> |
| 67 | {{ language == 0 ? scope.row.name : scope.row.enName }} | 67 | <span v-else class="flag-icon"> |
| 68 | <img :src="hkImage" alt="" class="hkimg"> | ||
| 69 | </span> | ||
| 70 | <span> | ||
| 71 | {{ language == 0 ? scope.row.code != 'tw' ? scope.row.name : '中华台北' : scope.row.enName }} | ||
| 72 | </span> | ||
| 68 | </div> | 73 | </div> |
| 69 | </template> | 74 | </template> |
| 70 | </el-table-column> | 75 | </el-table-column> |
| ... | @@ -160,6 +165,7 @@ import { cjList } from '@/assets/js/data' | ... | @@ -160,6 +165,7 @@ import { cjList } from '@/assets/js/data' |
| 160 | import { ArrowRight } from '@element-plus/icons-vue' | 165 | import { ArrowRight } from '@element-plus/icons-vue' |
| 161 | import { dayjs } from 'element-plus' | 166 | import { dayjs } from 'element-plus' |
| 162 | import * as match from '@/apiPc/match' | 167 | import * as match from '@/apiPc/match' |
| 168 | import hkImage from '@/assets/nationalFlag/hk.png' | ||
| 163 | 169 | ||
| 164 | const router = useRouter() | 170 | const router = useRouter() |
| 165 | import { useStorage } from '@vueuse/core/index' | 171 | import { useStorage } from '@vueuse/core/index' |
| ... | @@ -441,4 +447,11 @@ h3 { | ... | @@ -441,4 +447,11 @@ h3 { |
| 441 | background-clip: text; /* 标准语法 */ | 447 | background-clip: text; /* 标准语法 */ |
| 442 | -webkit-text-fill-color: transparent; /* 文字颜色透明 */ | 448 | -webkit-text-fill-color: transparent; /* 文字颜色透明 */ |
| 443 | } | 449 | } |
| 450 | |||
| 451 | .hkimg { | ||
| 452 | width: 19px; | ||
| 453 | height: 14px; | ||
| 454 | position: absolute; | ||
| 455 | top: 0; | ||
| 456 | } | ||
| 444 | </style> | 457 | </style> | ... | ... |
| ... | @@ -4,7 +4,10 @@ | ... | @@ -4,7 +4,10 @@ |
| 4 | <div class="mt20" /> | 4 | <div class="mt20" /> |
| 5 | <el-card class="mt20 mb20"> | 5 | <el-card class="mt20 mb20"> |
| 6 | 6 | ||
| 7 | <h3 style="text-align: center">{{ language == 0 ? query.name : query.enName }}</h3> | 7 | <h3 style="text-align: center"> |
| 8 | <!-- {{ // language == 0 ? query.name : query.enName }}--> | ||
| 9 | {{ language == 0 ? query.code != 'tw' ? query.name : '中华台北' : query.enName }} | ||
| 10 | </h3> | ||
| 8 | <div class="mt20" /> | 11 | <div class="mt20" /> |
| 9 | <el-table :data="rank" stripe> | 12 | <el-table :data="rank" stripe> |
| 10 | <el-table-column :label="language==0?'组别':'Group'" align="center" min-width="200"> | 13 | <el-table-column :label="language==0?'组别':'Group'" align="center" min-width="200"> |
| ... | @@ -20,8 +23,13 @@ | ... | @@ -20,8 +23,13 @@ |
| 20 | <el-table-column :label="language==0?'国家':'Country'" prop="name"> | 23 | <el-table-column :label="language==0?'国家':'Country'" prop="name"> |
| 21 | <template #default="scope"> | 24 | <template #default="scope"> |
| 22 | <div> | 25 | <div> |
| 23 | <span :class="`flag-icon flag-icon-${query.code}`" /> | 26 | <!-- <span :class="`flag-icon flag-icon-${query.code}`" />--> |
| 24 | {{ language == 0 ? scope.row.countryName : scope.row.countryNameEn }} | 27 | <span v-if="query.code!='tw'" :class="`flag-icon flag-icon-${query.code}`" /> |
| 28 | <span v-else class="flag-icon"> | ||
| 29 | <img :src="hkImage" alt="" class="hkimg"> | ||
| 30 | </span> | ||
| 31 | {{ language == 0 ? query.code != 'tw' ? scope.row.name : '中华台北' : scope.row.enName }} | ||
| 32 | <!-- {{ language == 0 ? scope.row.countryName : scope.row.countryNameEn }}--> | ||
| 25 | </div> | 33 | </div> |
| 26 | </template> | 34 | </template> |
| 27 | </el-table-column> | 35 | </el-table-column> |
| ... | @@ -49,6 +57,7 @@ | ... | @@ -49,6 +57,7 @@ |
| 49 | import { onMounted, ref } from 'vue' | 57 | import { onMounted, ref } from 'vue' |
| 50 | import * as match from '@/apiPc/match' | 58 | import * as match from '@/apiPc/match' |
| 51 | import { useRoute } from 'vue-router' | 59 | import { useRoute } from 'vue-router' |
| 60 | import hkImage from '@/assets/nationalFlag/hk.png' | ||
| 52 | 61 | ||
| 53 | const route = useRoute() | 62 | const route = useRoute() |
| 54 | import { useStorage } from '@vueuse/core/index' | 63 | import { useStorage } from '@vueuse/core/index' |
| ... | @@ -227,4 +236,11 @@ h3 { | ... | @@ -227,4 +236,11 @@ h3 { |
| 227 | .w15 { | 236 | .w15 { |
| 228 | width: 15%; | 237 | width: 15%; |
| 229 | } | 238 | } |
| 239 | |||
| 240 | .hkimg { | ||
| 241 | width: 19px; | ||
| 242 | height: 14px; | ||
| 243 | position: absolute; | ||
| 244 | top: 0; | ||
| 245 | } | ||
| 230 | </style> | 246 | </style> | ... | ... |
| ... | @@ -64,8 +64,8 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -64,8 +64,8 @@ export default defineConfig(({ mode, command }) => { |
| 64 | proxy: { | 64 | proxy: { |
| 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://jijin.wtwuxicenter.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 | }, |
| ... | @@ -83,11 +83,10 @@ export default defineConfig(({ mode, command }) => { | ... | @@ -83,11 +83,10 @@ export default defineConfig(({ mode, command }) => { |
| 83 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') | 83 | rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') |
| 84 | }, | 84 | }, |
| 85 | '/dev-api': { | 85 | '/dev-api': { |
| 86 | // target: 'http://192.168.1.118:8081/', | 86 | // target: 'http://192.168.1.213:8081/', |
| 87 | // target: 'http://192.168.1.129:8081', | 87 | // target: 'http://192.168.1.118:8081', |
| 88 | // target: 'https://jijin.wtwuxicenter.com/stage-api', | 88 | target: 'https://jijin.wtwuxicenter.com/stage-api', |
| 89 | // target: 'https://wdsfwuxicenter.com/stage-api/', | 89 | // target: 'https://wdsfwuxicenter.com/stage-api/', |
| 90 | target: 'http://7s18uou5jv74.ngrok.xiaomiqiu123.top/', | ||
| 91 | changeOrigin: true, | 90 | changeOrigin: true, |
| 92 | rewrite: (p) => p.replace(/^\/dev-api/, '') | 91 | rewrite: (p) => p.replace(/^\/dev-api/, '') |
| 93 | }, | 92 | }, | ... | ... |
-
Please register or sign in to post a comment