89201e19 by zhangmeng

票务

1 parent 3856deee
1 <template> 1 <template>
2 <div v-if="language == 0" class="itemBox"> 2 <div v-if="language == 0" class="itemBox">
3 <el-row :gutter="20"> 3 <el-row :gutter="20">
4 <el-col :sm="12" :lg="8" :xs="12"> 4 <el-col :lg="8" :sm="12" :xs="12">
5 <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn01.png">酒店预订</div> 5 <div class="item" @click="popRemark(1)"><img src="@/assets/dance/btn01.png">酒店预订</div>
6 </el-col> 6 </el-col>
7 <el-col :sm="12" :lg="8" :xs="12"> 7 <el-col :lg="8" :sm="12" :xs="12">
8 <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn02.png">车辆预订</div> 8 <div class="item" @click="popRemark(2)"><img src="@/assets/dance/btn02.png">车辆预订</div>
9 </el-col> 9 </el-col>
10 <!-- <el-col :sm="12" :lg="8" :xs="12">--> 10 <!-- <el-col :sm="12" :lg="8" :xs="12">-->
11 <!-- <div class="item" @click="popRemark(3)"><img src="@/assets/dance/btn03.png">餐饮预订</div>--> 11 <!-- <div class="item" @click="popRemark(3)"><img src="@/assets/dance/btn03.png">餐饮预订</div>-->
12 <!-- </el-col>--> 12 <!-- </el-col>-->
13 <el-col :sm="12" :lg="8" :xs="12"> 13 <el-col :lg="8" :sm="12" :xs="12">
14 <div class="item" @click="popRemark(8)"><img src="@/assets/dance/btn08.png">旅游服务</div> 14 <div class="item" @click="popRemark(8)"><img src="@/assets/dance/btn08.png">旅游服务</div>
15 </el-col> 15 </el-col>
16 <el-col :sm="12" :lg="8" :xs="12"> 16 <el-col :lg="8" :sm="12" :xs="12">
17 <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn04.png">票务预订</div> 17 <div class="item" @click="popRemark(0)"><img src="@/assets/dance/btn04.png">票务预订</div>
18 </el-col> 18 </el-col>
19 <el-col :sm="12" :lg="8" :xs="12"> 19 <el-col :lg="8" :sm="12" :xs="12">
20 <div class="item" @click="popRemark(4)"><img src="@/assets/dance/btn05.png">化妆预约</div> 20 <div class="item" @click="popRemark(4)"><img src="@/assets/dance/btn05.png">化妆预约</div>
21 </el-col> 21 </el-col>
22 <el-col :sm="12" :lg="8" :xs="12"> 22 <el-col :lg="8" :sm="12" :xs="12">
23 <div class="item" @click="popRemark(5)"><img src="@/assets/dance/btn06.png">拍照预约</div> 23 <div class="item" @click="popRemark(5)"><img src="@/assets/dance/btn06.png">拍照预约</div>
24 </el-col> 24 </el-col>
25 </el-row> 25 </el-row>
26 </div> 26 </div>
27 <div v-else class="itemBox_en"> 27 <div v-else class="itemBox_en">
28 <el-row :gutter="20"> 28 <el-row :gutter="20">
29 <el-col :sm="12" :lg="8" :xs="12"> 29 <el-col :lg="8" :sm="12" :xs="12">
30 <div class="item_en" @click="popRemark(1)"><img src="@/assets/dance/btn01.png"> 30 <div class="item_en" @click="popRemark(1)"><img src="@/assets/dance/btn01.png">
31 <p>HOTEL RESERVATION</p> 31 <p>HOTEL RESERVATION</p>
32 </div> 32 </div>
33 </el-col> 33 </el-col>
34 <el-col :sm="12" :lg="8" :xs="12"> 34 <el-col :lg="8" :sm="12" :xs="12">
35 <div class="item_en" @click="popRemark(2)"><img src="@/assets/dance/btn02.png"> 35 <div class="item_en" @click="popRemark(2)"><img src="@/assets/dance/btn02.png">
36 <p>TRANSPORTATION RESERVATION</p> 36 <p>TRANSPORTATION RESERVATION</p>
37 </div> 37 </div>
38 </el-col> 38 </el-col>
39 <!-- <el-col :sm="12" :lg="8" :xs="12">--> 39 <!-- <el-col :sm="12" :lg="8" :xs="12">-->
40 <!-- <div class="item_en" @click="popRemark(3)"><img src="@/assets/dance/btn03.png">--> 40 <!-- <div class="item_en" @click="popRemark(3)"><img src="@/assets/dance/btn03.png">-->
41 <!-- <p>DINING RESERVATION</p>--> 41 <!-- <p>DINING RESERVATION</p>-->
42 <!-- </div>--> 42 <!-- </div>-->
43 <!-- </el-col>--> 43 <!-- </el-col>-->
44 <el-col :sm="12" :lg="8" :xs="12"> 44 <el-col :lg="8" :sm="12" :xs="12">
45 <div class="item_en" @click="popRemark(8)"><img src="@/assets/dance/btn08.png"> 45 <div class="item_en" @click="popRemark(8)"><img src="@/assets/dance/btn08.png">
46 <p>TRAVEL SERVICE</p> 46 <p>TRAVEL SERVICE</p>
47 </div> 47 </div>
48 </el-col> 48 </el-col>
49 <el-col :sm="12" :lg="8" :xs="12"> 49 <el-col :lg="8" :sm="12" :xs="12">
50 <div class="item_en" @click="popRemark(0)"> 50 <div class="item_en" @click="popRemark(0)">
51 <img src="@/assets/dance/btn04.png"> 51 <img src="@/assets/dance/btn04.png">
52 <p>TICKET BOOKING</p> 52 <p>TICKET BOOKING</p>
53 </div> 53 </div>
54 </el-col> 54 </el-col>
55 <el-col :sm="12" :lg="8" :xs="12"> 55 <el-col :lg="8" :sm="12" :xs="12">
56 <div class="item_en" @click="popRemark(4)"><img src="@/assets/dance/btn05.png"> 56 <div class="item_en" @click="popRemark(4)"><img src="@/assets/dance/btn05.png">
57 <p>MAKEUP APPOINTMENT</p> 57 <p>MAKEUP APPOINTMENT</p>
58 </div> 58 </div>
59 </el-col> 59 </el-col>
60 <el-col :sm="12" :lg="8" :xs="12"> 60 <el-col :lg="8" :sm="12" :xs="12">
61 <div class="item_en" @click="popRemark(5)"><img src="@/assets/dance/btn06.png"> 61 <div class="item_en" @click="popRemark(5)"><img src="@/assets/dance/btn06.png">
62 <p>PHOTOGRAPHY APPOINTMENT</p> 62 <p>PHOTOGRAPHY APPOINTMENT</p>
63 </div> 63 </div>
...@@ -109,12 +109,11 @@ watch(matchId, (val) => { ...@@ -109,12 +109,11 @@ watch(matchId, (val) => {
109 }) 109 })
110 110
111 onMounted(() => { 111 onMounted(() => {
112 112
113 }) 113 })
114 114
115 function building() { 115 function building() {
116 ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.') 116 ElMessage.warning(language.value == 0 ? '感谢您对本次比赛的关注,该服务暂无可预订信息,敬请期待。' : 'Thank you for your attention to this competition. The service is currently unavailable for booking. Please stay tuned.')
117 return
118 } 117 }
119 118
120 function popRemark(type) { 119 function popRemark(type) {
...@@ -123,12 +122,12 @@ function popRemark(type) { ...@@ -123,12 +122,12 @@ function popRemark(type) {
123 return 122 return
124 } 123 }
125 if ((form.value.isJdView == 0 && type == '1') || 124 if ((form.value.isJdView == 0 && type == '1') ||
126 (form.value.isCarView == 0 && type == '2') || 125 (form.value.isCarView == 0 && type == '2') ||
127 (form.value.isFoodView == 0 && type == '3') || 126 (form.value.isFoodView == 0 && type == '3') ||
128 (form.value.isMealView == 0 && type == '4') || 127 (form.value.isMealView == 0 && type == '4') ||
129 (form.value.isPhotoView == 0 && type == '5') || 128 (form.value.isPhotoView == 0 && type == '5') ||
130 (form.value.isTicket == 0 && type == '0') || 129 (form.value.isTicket == 0 && type == '0') ||
131 (form.value.isScenicView == 0 && type == '8') 130 (form.value.isScenicView == 0 && type == '8')
132 ) { 131 ) {
133 building() 132 building()
134 return 133 return
...@@ -180,14 +179,14 @@ function goBooking(n) { ...@@ -180,14 +179,14 @@ function goBooking(n) {
180 } 179 }
181 </script> 180 </script>
182 181
183 <style scoped lang="scss"> 182 <style lang="scss" scoped>
184 .itemBox { 183 .itemBox {
185 padding: 20px 40px; 184 padding: 20px 40px;
186 } 185 }
187 186
188 .itemBox_en { 187 .itemBox_en {
189 padding: 20px 40px; 188 padding: 20px 40px;
190 189
191 p { 190 p {
192 margin: 0; 191 margin: 0;
193 height: 40px; 192 height: 40px;
...@@ -206,7 +205,7 @@ function goBooking(n) { ...@@ -206,7 +205,7 @@ function goBooking(n) {
206 background: url("@/assets/dance/btn_bg.png") no-repeat left #FFFFFF; 205 background: url("@/assets/dance/btn_bg.png") no-repeat left #FFFFFF;
207 background-size: 100% 100%; 206 background-size: 100% 100%;
208 border-radius: 15px; 207 border-radius: 15px;
209 208
210 img { 209 img {
211 margin: 0 5%; 210 margin: 0 5%;
212 } 211 }
...@@ -227,20 +226,20 @@ function goBooking(n) { ...@@ -227,20 +226,20 @@ function goBooking(n) {
227 background-size: cover; 226 background-size: cover;
228 position: relative; 227 position: relative;
229 border-radius: 15px; 228 border-radius: 15px;
230 229
231 img { 230 img {
232 position: absolute; 231 position: absolute;
233 top: -30px; 232 top: -30px;
234 transition: all 0.2s; 233 transition: all 0.2s;
235 } 234 }
236 235
237 &:hover { 236 &:hover {
238 box-shadow: 0 0 10px #333; 237 box-shadow: 0 0 10px #333;
239 238
240 img { 239 img {
241 transform: rotateY(180deg); 240 transform: rotateY(180deg);
242 } 241 }
243 242
244 p { 243 p {
245 color: #000; 244 color: #000;
246 } 245 }
...@@ -248,9 +247,16 @@ function goBooking(n) { ...@@ -248,9 +247,16 @@ function goBooking(n) {
248 } 247 }
249 248
250 @media screen and (max-width: 768px) { 249 @media screen and (max-width: 768px) {
251 .itemBox,.itemBox_en{padding: 0 20px 20px} 250 .itemBox, .itemBox_en {
252 .item{font-size: 16px; 251 padding: 0 20px 20px
253 img{width: 50px;height: 50px} 252 }
253 .item {
254 font-size: 16px;
255
256 img {
257 width: 50px;
258 height: 50px
259 }
254 } 260 }
255 } 261 }
256 </style> 262 </style>
......
1 <template> 1 <template>
2 <el-dialog :title="title" v-model="show" width="400px" @close="close"> 2 <el-dialog v-model="show" :title="title" destroy-on-close width="400px" @close="close">
3 <div> 3 <div>
4 <h2 class="text-warning text-center" v-if="cptName">{{cptName}}</h2> 4 <h2 v-if="cptName" class="text-warning text-center">{{ cptName }}</h2>
5 5
6 <div v-if="type==1" class="plr20" v-html="form.reserveDes"></div> 6 <div v-if="type==1" class="plr20" v-html="form.reserveDes" />
7 <div v-if="type==2" class="plr20" v-html="form.reserveDesCar"></div> 7 <div v-if="type==2" class="plr20" v-html="form.reserveDesCar" />
8 <div v-if="type==3" class="plr20" v-html="form.reserveDesFood"></div> 8 <div v-if="type==3" class="plr20" v-html="form.reserveDesFood" />
9 <div v-if="type==4" class="plr20" v-html="form.reserveDesMeal"></div> 9 <div v-if="type==4" class="plr20" v-html="form.reserveDesMeal" />
10 <div v-if="type==5" class="plr20" v-html="form.reserveDesPhoto"></div> 10 <div v-if="type==5" class="plr20" v-html="form.reserveDesPhoto" />
11 <div v-if="type==0" class="plr20" v-html="form.reserveDesTitck"></div> 11 <div v-if="type==0" class="plr20" v-html="form.reserveDesTitck" />
12 <div v-if="type==8" class="plr20" v-html="form.reserveDesTravel"></div> 12 <div v-if="type==8" class="plr20" v-html="form.reserveDesScenic" />
13 </div> 13 </div>
14 <template #footer> 14 <template #footer>
15 <div class="dialog-footer text-center"> 15 <div class="dialog-footer text-center">
16 <el-button type="primary" class="btn-lineG w200px" round @click="ok">{{language==0?'确定':'Confirm'}}</el-button> 16 <el-button class="btn-lineG w200px" round type="primary" @click="ok">{{ language == 0 ? '确定' : 'Confirm' }}
17 </div> 17 </el-button>
18 </template> 18 </div>
19 </el-dialog> 19 </template>
20 </el-dialog>
20 </template> 21 </template>
21 22
22 <script setup> 23 <script setup>
23 import {getBaseInfoByActiveId} from "@/apiPc/booking"; 24 import { getBaseInfoByActiveId } from '@/apiPc/booking'
24 import {getCurrentInstance} from "@vue/runtime-core"; 25 import { getCurrentInstance } from '@vue/runtime-core'
25 import {useStorage} from "@vueuse/core/index"; 26 import { useStorage } from '@vueuse/core/index'
26 const emit = defineEmits([ 'submit']) 27
27 const {proxy} = getCurrentInstance() 28 const emit = defineEmits(['submit'])
28 const language= useStorage('language',0) 29 const { proxy } = getCurrentInstance()
29 import useUserStore from "@/store/modules/user"; 30 const language = useStorage('language', 0)
31 import useUserStore from '@/store/modules/user'
32
30 const user = useUserStore().user 33 const user = useUserStore().user
31 const title = ref('') 34 const title = ref('')
32 const cptName = ref('') 35 const cptName = ref('')
...@@ -48,28 +51,30 @@ defineExpose({ ...@@ -48,28 +51,30 @@ defineExpose({
48 51
49 function getData() { 52 function getData() {
50 console.log(matchId) 53 console.log(matchId)
51 getBaseInfoByActiveId(matchId).then(res=>{ 54 getBaseInfoByActiveId(matchId).then(res => {
52 form.value = res.data || {} 55 form.value = res.data || {}
53 console.log(form.value) 56 console.log(form.value)
54 }).catch(err=>{ 57 }).catch(err => {
55 console.log(err) 58 console.log(err)
56 }) 59 })
57 } 60 }
61
58 function close() { 62 function close() {
59 show.value = false 63 show.value = false
60 } 64 }
65
61 function ok() { 66 function ok() {
62 // type 67 // type
63 show.value = false 68 show.value = false
64 69
65 // if(!user){ 70 // if(!user){
66 // useUserStore().setVisitor() 71 // useUserStore().setVisitor()
67 // } else { 72 // } else {
68 emit('submit', type) 73 emit('submit', type)
69 // } 74 // }
70 } 75 }
71 </script> 76 </script>
72 77
73 <style scoped lang="scss"> 78 <style lang="scss" scoped>
74 79
75 </style> 80 </style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!