780a5aef by zhangmeng

酒店

1 parent db6a9a5e
...@@ -6,23 +6,23 @@ ...@@ -6,23 +6,23 @@
6 </div> 6 </div>
7 <div class="box"> 7 <div class="box">
8 <div class="searchBar"> 8 <div class="searchBar">
9 <el-input :placeholder="language==0?'请输入关键字搜索':'Search'" v-model="query.name" class="no-border"> 9 <el-input v-model="query.name" :placeholder="language==0?'请输入关键字搜索':'Search'" class="no-border">
10 </el-input> 10 </el-input>
11 <el-button size="large" type="primary" class="btn-lineG" icon="search" @click="getList"> 11 <el-button class="btn-lineG" icon="search" size="large" type="primary" @click="getList">
12 {{ language == 0 ? '搜索' : 'Search' }} 12 {{ language == 0 ? '搜索' : 'Search' }}
13 </el-button> 13 </el-button>
14 </div> 14 </div>
15 </div> 15 </div>
16 16
17 <div class="box" v-loading="loading"> 17 <div v-loading="loading" class="box">
18 <el-row :gutter="20"> 18 <el-row :gutter="20">
19 <el-col :lg="24" :md="24" :sm="24" :xs="24" :xl="24" v-for="(h,index) in list" class="mb20"> 19 <el-col v-for="(h,index) in list" :lg="24" :md="24" :sm="24" :xl="24" :xs="24" class="mb20">
20 <el-card @click="goDetail(h)"> 20 <el-card @click="goDetail(h)">
21 <!-- 酒店列表--> 21 <!-- 酒店列表-->
22 <el-row class="hotel" align="middle" :gutter="20"> 22 <el-row :gutter="20" align="middle" class="hotel">
23 <el-col :lg="6" :md="6"> 23 <el-col :lg="6" :md="6">
24 <div class="imgbox"> 24 <div class="imgbox">
25 <img class="w100" :src="fillImgUrl(h.photos?.split(',')[0])"/> 25 <img :src="fillImgUrl(h.photos?.split(',')[0])" class="w100"/>
26 </div> 26 </div>
27 </el-col> 27 </el-col>
28 <el-col :lg="12" :md="12"> 28 <el-col :lg="12" :md="12">
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
35 <a v-show="h.label?.split(',').length>4">{{ language == 0 ? '更多' : 'MORE' }} ></a> 35 <a v-show="h.label?.split(',').length>4">{{ language == 0 ? '更多' : 'MORE' }} ></a>
36 </div> 36 </div>
37 <p class="esp addr mt20"> 37 <p class="esp addr mt20">
38 <el-icon size="16" style="position: relative;top: 2px" color="#929AA0"> 38 <el-icon color="#929AA0" size="16" style="position: relative;top: 2px">
39 <LocationFilled/> 39 <LocationFilled/>
40 </el-icon> 40 </el-icon>
41 {{ h.address }} 41 {{ h.address }}
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
55 <el-empty v-show="!loading&&list.length==0" :image="`/img/order_no.png`" :image-size="228" description=""/> 55 <el-empty v-show="!loading&&list.length==0" :image="`/img/order_no.png`" :image-size="228" description=""/>
56 <div style="height: 50px"></div> 56 <div style="height: 50px"></div>
57 </div> 57 </div>
58 58
59 </div> 59 </div>
60 </template> 60 </template>
61 61
...@@ -74,7 +74,7 @@ const route = useRoute() ...@@ -74,7 +74,7 @@ const route = useRoute()
74 const useStore = useUserStore() 74 const useStore = useUserStore()
75 const user = useStore.user 75 const user = useStore.user
76 76
77 const flag = useRouteQuery('flag') 77 // const flag = useRouteQuery('flag')
78 78
79 const language = useStorage('language', 0) 79 const language = useStorage('language', 0)
80 const query = ref({ 80 const query = ref({
...@@ -90,13 +90,11 @@ onMounted(() => { ...@@ -90,13 +90,11 @@ onMounted(() => {
90 90
91 function getList() { 91 function getList() {
92 loading.value = true 92 loading.value = true
93 booking.getHotelList(Object.assign({ 93 booking.getHotelList(Object.assign({}, query.value)).then(res => {
94 meeting: flag.value,
95 },query.value)).then(res => {
96 list.value = res.rows 94 list.value = res.rows
97 loading.value = false 95 loading.value = false
98 console.log(list.value) 96 console.log(list.value)
99 97
100 }).catch(e => { 98 }).catch(e => {
101 loading.value = false 99 loading.value = false
102 }) 100 })
...@@ -107,73 +105,84 @@ function goDetail(item) { ...@@ -107,73 +105,84 @@ function goDetail(item) {
107 useStore.setVisitor() 105 useStore.setVisitor()
108 return 106 return
109 } 107 }
110 if (item.meeting == '1') { 108
111 ElMessageBox.confirm(item.meetText, '', { 109 router.push({
112 cancelButtonText: language.value == 1 ? 'Close ' : '关闭', 110 name: 'hotelDetail',
113 confirmButtonText: language.value == 1 ? 'Continue to book' : '继续预订', 111 params: {
114 dangerouslyUseHTMLString: true, 112 hotelId: item.hotelId,
115 type: 'warning', 113 },
116 }).then((res) => { 114 query: {
117 router.push({ 115 id: item.id
118 name: 'hotelDetail', 116 }
119 params: { 117 })
120 hotelId: item.hotelId, 118
121 }, 119 // if (item.meeting == '1') {
122 query: { 120 // ElMessageBox.confirm(item.meetText, '', {
123 id: item.id 121 // cancelButtonText: language.value == 1 ? 'Close ' : '关闭',
124 } 122 // confirmButtonText: language.value == 1 ? 'Continue to book' : '继续预订',
125 }) 123 // dangerouslyUseHTMLString: true,
126 }) 124 // type: 'warning',
127 } else { 125 // }).then((res) => {
128 router.push({ 126 // router.push({
129 name: 'hotelDetail', 127 // name: 'hotelDetail',
130 params: { 128 // params: {
131 hotelId: item.hotelId, 129 // hotelId: item.hotelId,
132 }, 130 // },
133 query: { 131 // query: {
134 id: item.id 132 // id: item.id
135 } 133 // }
136 }) 134 // })
137 } 135 // })
136 // } else {
137 // router.push({
138 // name: 'hotelDetail',
139 // params: {
140 // hotelId: item.hotelId,
141 // },
142 // query: {
143 // id: item.id
144 // }
145 // })
146 // }
138 } 147 }
139 </script> 148 </script>
140 149
141 <style scoped lang="scss"> 150 <style lang="scss" scoped>
142 .hotel { 151 .hotel {
143 h3 { 152 h3 {
144 margin: 0 0 10px; 153 margin: 0 0 10px;
145 } 154 }
146 155
147 img.w100 { 156 img.w100 {
148 object-fit: cover; 157 object-fit: cover;
149 aspect-ratio: 16/9 158 aspect-ratio: 16/9
150 } 159 }
151 160
152 .addr { 161 .addr {
153 font-size: 14px; 162 font-size: 14px;
154 color: #929AA0; 163 color: #929AA0;
155 font-weight: 400; 164 font-weight: 400;
156 margin: 0 0 10px; 165 margin: 0 0 10px;
157 } 166 }
158 167
159 .price { 168 .price {
160 margin: 0 0 8px; 169 margin: 0 0 8px;
161 color: #FF8124; 170 color: #FF8124;
162 font-size: 18px; 171 font-size: 18px;
163 172
164 span { 173 span {
165 font-size: 36px; 174 font-size: 36px;
166 margin: 0 8px; 175 margin: 0 8px;
167 font-family: 'DINAlternate-Bold'; 176 font-family: 'DINAlternate-Bold';
168 font-weight: 600; 177 font-weight: 600;
169 } 178 }
170 179
171 i { 180 i {
172 font-style: normal; 181 font-style: normal;
173 color: #929AA0; 182 color: #929AA0;
174 } 183 }
175 } 184 }
176 185
177 .blackBtn { 186 .blackBtn {
178 background: #000; 187 background: #000;
179 border: #000; 188 border: #000;
...@@ -188,7 +197,7 @@ function goDetail(item) { ...@@ -188,7 +197,7 @@ function goDetail(item) {
188 display: flex; 197 display: flex;
189 align-items: center; 198 align-items: center;
190 justify-content: center; 199 justify-content: center;
191 200
192 img { 201 img {
193 display: block; 202 display: block;
194 margin: -30px auto 0; 203 margin: -30px auto 0;
...@@ -208,7 +217,7 @@ function goDetail(item) { ...@@ -208,7 +217,7 @@ function goDetail(item) {
208 .no-border { 217 .no-border {
209 border: none; 218 border: none;
210 background: #F5F7F9; 219 background: #F5F7F9;
211 220
212 :deep(.el-input__wrapper) { 221 :deep(.el-input__wrapper) {
213 border: none; 222 border: none;
214 box-shadow: none; 223 box-shadow: none;
...@@ -220,12 +229,12 @@ function goDetail(item) { ...@@ -220,12 +229,12 @@ function goDetail(item) {
220 width: 100%; 229 width: 100%;
221 height: 100%; 230 height: 100%;
222 position: relative; 231 position: relative;
223 232
224 img { 233 img {
225 width: 100%; 234 width: 100%;
226 height: 100%; 235 height: 100%;
227 } 236 }
228 237
229 .starBox { 238 .starBox {
230 position: absolute; 239 position: absolute;
231 bottom: 0; 240 bottom: 0;
...@@ -240,7 +249,7 @@ function goDetail(item) { ...@@ -240,7 +249,7 @@ function goDetail(item) {
240 249
241 .starBox { 250 .starBox {
242 border-radius: 14px 0 0 0; 251 border-radius: 14px 0 0 0;
243 252
244 img { 253 img {
245 display: inline-block; 254 display: inline-block;
246 margin-right: 4px; 255 margin-right: 4px;
...@@ -250,12 +259,12 @@ function goDetail(item) { ...@@ -250,12 +259,12 @@ function goDetail(item) {
250 259
251 .tagbox { 260 .tagbox {
252 margin: 10px 0; 261 margin: 10px 0;
253 262
254 a { 263 a {
255 color: #AFB5B9; 264 color: #AFB5B9;
256 font-size: 12px; 265 font-size: 12px;
257 } 266 }
258 267
259 span { 268 span {
260 border-radius: 13px; 269 border-radius: 13px;
261 font-size: 12px; 270 font-size: 12px;
...@@ -263,22 +272,22 @@ function goDetail(item) { ...@@ -263,22 +272,22 @@ function goDetail(item) {
263 margin-right: 10px; 272 margin-right: 10px;
264 font-weight: 400; 273 font-weight: 400;
265 } 274 }
266 275
267 span:nth-child(4n) { 276 span:nth-child(4n) {
268 background: rgba(50, 177, 108, 0.2); 277 background: rgba(50, 177, 108, 0.2);
269 color: rgba(50, 177, 108, 1); 278 color: rgba(50, 177, 108, 1);
270 } 279 }
271 280
272 span:nth-child(4n+1) { 281 span:nth-child(4n+1) {
273 background: rgba(243, 152, 0, 0.2); 282 background: rgba(243, 152, 0, 0.2);
274 color: rgba(243, 152, 0, 1); 283 color: rgba(243, 152, 0, 1);
275 } 284 }
276 285
277 span:nth-child(4n+2) { 286 span:nth-child(4n+2) {
278 background: rgba(0, 160, 233, 0.2); 287 background: rgba(0, 160, 233, 0.2);
279 color: rgba(0, 160, 233, 1); 288 color: rgba(0, 160, 233, 1);
280 } 289 }
281 290
282 span:nth-child(4n+3) { 291 span:nth-child(4n+3) {
283 background: rgba(247, 64, 166, 0.2); 292 background: rgba(247, 64, 166, 0.2);
284 color: rgba(247, 64, 166, 1); 293 color: rgba(247, 64, 166, 1);
......
...@@ -216,13 +216,15 @@ function popRemark(type) { ...@@ -216,13 +216,15 @@ function popRemark(type) {
216 } 216 }
217 217
218 218
219 const params = { 219 // const params = {
220 matchId: props.matchId, 220 // matchId: props.matchId,
221 title: language.value == 0 ? '预订说明' : 'Booking Instructions', 221 // title: language.value == 0 ? '预订说明' : 'Booking Instructions',
222 type: type, 222 // type: type,
223 cptName: props.cptName 223 // cptName: props.cptName
224 } 224 // }
225 proxy.$refs['orderRemarkRef'].open(params) 225 // proxy.$refs['orderRemarkRef'].open(params)
226
227 goBooking(type)
226 } 228 }
227 229
228 function goBooking(n, f) { 230 function goBooking(n, f) {
...@@ -238,7 +240,10 @@ function goBooking(n, f) { ...@@ -238,7 +240,10 @@ function goBooking(n, f) {
238 break; 240 break;
239 case 1: 241 case 1:
240 //酒店 242 //酒店
241 router.push({path: `/booking/hotel/${props.matchId}`, query: {flag: f}}) 243 router.push({
244 path: `/booking/hotel/${props.matchId}`
245 // , query: {flag: f}
246 })
242 break; 247 break;
243 case 2: 248 case 2:
244 //车辆 249 //车辆
......
...@@ -76,8 +76,8 @@ export default defineConfig(({mode, command}) => { ...@@ -76,8 +76,8 @@ export default defineConfig(({mode, command}) => {
76 rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '') 76 rewrite: (p) => p.replace(/^\/dev-api\/ztx-match/, '')
77 }, 77 },
78 '/dev-api/ztx-webSite': { 78 '/dev-api/ztx-webSite': {
79 target: 'http://192.168.1.118:8082/', 79 // target: 'http://192.168.1.118:8082/',
80 // target: 'https://ces.2025wtcwuxi.com/stage-api/', 80 target: 'https://ces.2025wtcwuxi.com/stage-api/',
81 changeOrigin: true, 81 changeOrigin: true,
82 rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '') 82 rewrite: (p) => p.replace(/^\/dev-api\/ztx-webSite/, '')
83 }, 83 },
...@@ -86,7 +86,7 @@ export default defineConfig(({mode, command}) => { ...@@ -86,7 +86,7 @@ export default defineConfig(({mode, command}) => {
86 // target: 'http://192.168.1.131:8081/', 86 // target: 'http://192.168.1.131:8081/',
87 // target: 'https://ces.2025wtcwuxi.com/stage-api/', 87 // target: 'https://ces.2025wtcwuxi.com/stage-api/',
88 // target: 'http://124.70.181.90:1880/stage-api', 88 // target: 'http://124.70.181.90:1880/stage-api',
89 // target: 'https://wdsfwuxicenter.com/stage-api/', 89 target: 'https://sys.2025wtcwuxi.com/stage-api/',
90 changeOrigin: true, 90 changeOrigin: true,
91 rewrite: (p) => p.replace(/^\/dev-api/, '') 91 rewrite: (p) => p.replace(/^\/dev-api/, '')
92 }, 92 },
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!