5f9e708b by 杨炀

no message

1 parent 8297d405
...@@ -79,7 +79,8 @@ export function submitMasterApply(data) { ...@@ -79,7 +79,8 @@ export function submitMasterApply(data) {
79 } 79 }
80 export function masterClassList(query) { 80 export function masterClassList(query) {
81 return request({ 81 return request({
82 url: `/league/courseItem/list`, 82 // url: `/league/courseItem/list`,
83 url: `/league/courseItem/getCoursrItemByCourseId`,
83 method: 'get', 84 method: 'get',
84 params: query 85 params: query
85 }) 86 })
......
...@@ -440,12 +440,24 @@ export const constantRoutes = [ ...@@ -440,12 +440,24 @@ export const constantRoutes = [
440 meta: { title: 'pay' } 440 meta: { title: 'pay' }
441 }, 441 },
442 { 442 {
443 path: 'payticket',
444 component: () => import('@/viewsPc/booking/payticket'),
445 name: 'payticket',
446 meta: { title: '票务' }
447 },
448 {
443 path: 'payOk', 449 path: 'payOk',
444 component: () => import('@/viewsPc/booking/payOk'), 450 component: () => import('@/viewsPc/booking/payOk'),
445 name: 'bookingPayOk', 451 name: 'bookingPayOk',
446 meta: { title: 'payOk' } 452 meta: { title: 'payOk' }
447 }, 453 },
448 { 454 {
455 path: 'payticketOk',
456 component: () => import('@/viewsPc/booking/payticketOk'),
457 name: 'payticketOk',
458 meta: { title: '票务-paypal' }
459 },
460 {
449 path: 'invoice', 461 path: 'invoice',
450 component: () => import('@/viewsPc/booking/invoicing'), 462 component: () => import('@/viewsPc/booking/invoicing'),
451 name: 'invoice', 463 name: 'invoice',
......
1 <template>
2 <div style="min-height: 100vh">
3 <div class="box" v-if="!errorBox">
4 <el-card :body-style="{ padding: '0px' }" class="mt20 mb60">
5 <div slot="header">
6 <div class="bg-lineg">{{ language == 0 ? '缴费清单' : 'Payment List' }}</div>
7 </div>
8 <div v-if="isLogin">
9 <div class="pd20">
10 <div v-if="type == 'hotel'">
11 <div class="leftboderTT">{{ language == 0 ? '酒店信息' : 'Hotel Information' }}</div>
12 <div class="border-info mt20">
13 <h3>{{ form.hotelName }}</h3>
14 <el-row>
15 <el-col>
16 {{ language == 0 ?'地址':'Address' }}
17 <span v-if="language == 0">{{ form.provinceName }} {{ form.cityName }} {{ form.areaName }} </span>
18 {{ form.address }}
19 </el-col>
20 <el-col>
21 {{ language == 0 ?'入住信息':'Check-in&Check-out' }}{{ form.messageObj?.roomStayDate }}
22 </el-col>
23 <el-col>
24 {{ language == 0 ?'房间信息':'Room Information' }}{{ form.messageObj?.roomName }}{{ form.roomNum }}
25 {{ language == 0 ? '间':'rooms' }}
26 </el-col>
27 </el-row>
28 </div>
29 </div>
30 <div v-if="type == 'car'">
31 <div class="leftboderTT">{{ language == 0 ? '路线信息' : 'Car Information' }}</div>
32 <div class="border-info mt20">
33 <div class="flex aic">
34 <h3 class="esp">{{ form.checkIn }}</h3>
35 <img class="w40px mlr20 " style="height: 40px;" src="@/assets/booking/wf.png"/>
36 <h3 class="esp">{{ form.checkOut }}</h3>
37 </div>
38 </div>
39 </div>
40 <div v-if="type == 'food'">
41 <div class="leftboderTT">{{ language == 0 ? '饭店信息' : 'Restaurant Information' }}</div>
42 <div class="border-info mt20">
43 <h3>{{ form.name }}</h3>
44 <!-- <p>{{ language == 0 ?'地址':'Address' }}{{form.address}}</p>-->
45 <el-row>
46 <el-col :lg="12" :md="12" :sm="12" :xs="24">
47 <div class="mb10">{{ language==0?'送餐地址':'Delivery Address' }}{{ form.address || '-' }}</div>
48 </el-col>
49 <el-col :lg="12" :md="12" :sm="12" :xs="24">
50 <div>{{ language==0?'送餐时间':'Delivery Time' }}{{form.psStart}} ~ {{ form.psEnd}}</div>
51 </el-col>
52 </el-row>
53 </div>
54 </div>
55 <div v-if="type == 'makeUp'">
56 <div class="leftboderTT">{{ language == 0 ? '化妆信息' : 'Hotel Information' }}</div>
57 <div class="border-info mt20">
58 <h3>{{ formInfo.studioName }}</h3>
59 <el-row>
60 <el-col>
61 {{ language == 0 ?'地址':'Address' }}
62 <span >{{ formInfo.remarks }} </span>
63 </el-col>
64 <el-col>
65 {{ language == 0 ?'套餐':'Package' }}{{ formInfo.mealName }} <span style="margin-left: 40px">{{ language==0?'价格':'Price' }}</span><span class="price">{{language==0? '¥'+formInfo.mealPrice:'€'+ formInfo.mealPriceEn}}</span>
66 </el-col>
67 <el-col>
68 {{ language == 0 ?'套餐说明':'Package Description' }}{{ formInfo.introduction}}
69 </el-col>
70 </el-row>
71 </div>
72 </div>
73 <div v-if="type == 'photography'">
74 <div class="leftboderTT">{{ language == 0 ? '拍摄信息' : 'Shooting Information' }}</div>
75 <div class="border-info mt20">
76 <h3>{{ formInfo.shootName }}</h3>
77 <el-row>
78 <el-col>
79 {{ language == 0 ?'地址':'Address' }}
80 <span >{{ formInfo.remarks }} </span>
81 </el-col>
82 <el-col>
83 {{ language == 0 ?'套餐':'Package' }}{{ formInfo.photoName }} <span style="margin-left: 40px">{{ language==0?'价格':'Price' }}</span><span class="price">{{language==0? '¥'+formInfo.photoPrice:'€'+ formInfo.photoPriceEn}}</span>
84 </el-col>
85 <el-col>
86 {{ language == 0 ?'套餐说明':'Package Description' }}{{ formInfo.introduction}}
87 </el-col>
88 </el-row>
89 </div>
90 </div>
91
92 <div class="leftboderTT">{{ language == 0 ? '预订信息' : 'Booking information' }}</div>
93
94 <div class="border-info mt20">
95 <el-row v-if="type == 'hotel'">
96 <el-col :lg="8" :md="12" :sm="12" :xs="24">
97 <div>{{ language == 0 ?'入住人':'Check-in Person' }}{{ form.rzUsers }}</div>
98 </el-col>
99 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ language == 0 ?'联系方式':'Contact Information' }}{{ form.phone }}</el-col>
100 <el-col :lg="8" :md="12" :sm="12" :xs="24"></el-col>
101 </el-row>
102 <el-row v-if="type == 'car'">
103 <el-col :lg="12" :md="12" :sm="12" :xs="24" v-if="form.pickUpBo?.revTime">
104 <h4>{{ language == 0 ?'接站信息':'Pick-up Information' }}</h4>
105 <div class="st-info">
106 <div>{{ language == 0 ?'用车时间':'Delivery Time' }}{{ form.pickUpBo.revTime }}</div>
107 <div class="carLine" v-for="(car,index) in form.pickUpBo.carsList" :key="index">
108 <div v-if="car.num > 0">
109 <label>{{car.name}}</label>
110 <el-tag class="mr10">{{car.carSeat}} {{ language == 0 ?'座 ':'Sets'}}</el-tag>
111 <el-tag>{{car.carColor}}</el-tag>
112 </div>
113
114 <span v-if="car.num > 0"> {{car.num}}{{ language == 0 ?'辆':'Cars' }} * {{ language == 0 ?'¥':'€' }}{{car.price}}</span>
115 </div>
116
117 <div>{{ language == 0 ?'人数':'People' }}{{form.pickUpBo.count}}</div>
118 <div>{{ language == 0 ?'航班/火车班次':'Flight/Train' }}{{form.pickUpBo.no}}</div>
119 <div>{{ language == 0 ?'接机/接站地点':'Pick-up/Drop-off Place' }}{{form.pickUpBo.noAddress}}</div>
120 <div>{{ language == 0 ?'送达地点':'Delivery Place' }}{{form.pickUpBo.deliveryAddress}}</div>
121 <div>{{ language == 0 ?'联系人':'Contact Person' }}{{ form.dropOffBo.contacts }}</div>
122 <div>{{ language == 0 ?'联系电话':'Contact Phone' }}{{ form.dropOffBo.phone }}</div>
123 <div>{{ language == 0 ?'备注':'Remarks' }}{{ form.dropOffBo.remarks ||'-'}}</div>
124 </div>
125 </el-col>
126 <el-col :lg="12" :md="12" :sm="12" :xs="24" v-if="form.dropOffBo?.revTime">
127 <h4>{{ language == 0 ?'送站信息':'Drop-off Information' }}</h4>
128 <div class="st-info">
129 <div>{{ language == 0 ?'用车时间':'Delivery Time' }}{{ form.dropOffBo.revTime }}</div>
130 <div class="carLine" v-for="(car,index) in form.dropOffBo.carsList" :key="index">
131 <div v-if="car.num > 0">
132 <label>{{car.name}}</label>
133 <el-tag class="mr10">{{car.carSeat}} {{ language == 0 ?'座 ':'Sets'}}</el-tag>
134 <el-tag>{{car.carColor}}</el-tag>
135 </div>
136
137 <span v-if="car.num > 0"> {{car.num }}{{ language == 0 ?'辆':'Cars' }} * {{ language == 0 ? '¥' : '€' }}{{car.price}}</span>
138 </div>
139 <div>{{ language == 0 ?'人数':'Counts' }}{{ form.dropOffBo.count }}</div>
140 <div>{{ language == 0 ?'联系人':'Contact Person' }}{{ form.dropOffBo.contacts }}</div>
141 <div>{{ language == 0 ?'联系电话':'Contact Phone' }}{{ form.dropOffBo.phone }}</div>
142 <div>{{ language == 0 ?'备注':'Remarks' }}{{ form.dropOffBo.remarks ||'-'}}</div>
143 </div>
144 </el-col>
145 </el-row>
146 <el-row v-if="type == 'food'">
147 <el-col :lg="8" :md="12" :sm="12" :xs="24">
148 <div v-for="f in form.messageObj?.foodsList">
149 <span v-if="f.category==0">{{language==0?'早餐':'Breakfast'}}</span>
150 <span v-if="f.category==1">{{language==0?'午餐':'Lunch'}}</span>
151 <span v-if="f.category==2">{{language==0?'晚餐':'Dinner'}}</span>
152 {{f.name}} * {{f.num}} {{language==0?'份':'pcs'}}
153 </div>
154 </el-col>
155 <el-col :lg="12" :md="12" :sm="12" :xs="24">
156 <div class="mb10">{{ language==0?'订餐周期':'Check-in date' }}{{ form.extJsonObj?.dcStart || '-' }} ~ {{form.extJsonObj?.dcEnd|| '-'}}</div>
157 </el-col>
158 <el-col :lg="8" :md="12" :sm="12" :xs="24">
159 <div class="mb10">{{ language==0?'联系人':'Contact Person' }}{{ form.contacts }}</div>
160 </el-col>
161 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ language==0?'联系方式':'Contact Phone' }}{{ form.phone }}</el-col>
162 <el-col :span="24" >{{ language==0?'备注':'Remarks' }}{{ form.remarks || '-' }}</el-col>
163 </el-row>
164 <el-row v-if="type == 'makeUp'">
165 <el-col :lg="8" :md="12" :sm="12" :xs="24">
166 <div class="mb10">{{ language==0?'化妆时间':'Makeup time' }}
167 <!-- {{ dayjs(form.dcStart).format('YYYY-MM-DD') +'&nbsp;' }} ~ {{dayjs(form.dcStart).format('YYYY-MM-DD') +'&nbsp;'}}-->
168 {{ dayjs(form.dcStart).format('YYYY-MM-DD') +'&nbsp;'+ form.nameStart }} ~ {{dayjs(form.dcStart).format('YYYY-MM-DD') +'&nbsp;'+form.nameEnd}}
169 </div>
170 </el-col>
171 <el-col :lg="12" :md="12" :sm="12" :xs="24">
172 <div class="mb10">{{ language==0?'预约数':'Number of appointments' }}{{ form.num }} </div>
173 </el-col>
174 <el-col :lg="8" :md="12" :sm="12" :xs="24">
175 <div class="mb10">{{ language==0?'联系人':'Contact Person' }}{{ form.contacts }}</div>
176 </el-col>
177 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ language==0?'联系方式':'Contact Phone' }}{{ form.phone }}</el-col>
178 <el-col :span="24" >{{ language==0?'备注':'Remarks' }}{{ form.remarks }}</el-col>
179 </el-row>
180 <el-row v-if="type == 'photography'">
181 <el-col :lg="8" :md="12" :sm="12" :xs="24">
182 <div class="mb10">{{ language==0?'拍摄时间':'Makeup time' }}
183 {{ dayjs(form.dcStart).format('YYYY-MM-DD') +'&nbsp;'+ form.nameStart }} ~ {{dayjs(form.dcStart).format('YYYY-MM-DD') +'&nbsp;'+form.nameEnd}}
184 </div>
185 </el-col>
186 <el-col :lg="12" :md="12" :sm="12" :xs="24">
187 <div class="mb10">{{ language==0?'预约数':'Number of appointments' }}{{ form.num }} </div>
188 </el-col>
189 <el-col :lg="8" :md="12" :sm="12" :xs="24">
190 <div class="mb10">{{ language==0?'联系人':'Contact Person' }}{{ form.contacts }}</div>
191 </el-col>
192 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ language==0?'联系方式':'Contact Phone' }}{{ form.phone }}</el-col>
193 <el-col :span="24" >{{ language==0?'备注':'Remarks' }}{{ form.remarks }}</el-col>
194 </el-row>
195 </div>
196
197 <el-row justify="space-between" align="middle">
198 <el-col :lg="12">
199 <div v-if="form.payDate">{{ language == 0 ? '支付时间' : 'Payment Time' }}{{form.payDate}}</div>
200 <div class="mt10" v-if="form.payDate">{{ language == 0 ? '支付方式':'Payment Method'}}
201 <span v-if="form.paymentType=='1'">{{language==0?'微信支付':'WePay'}}</span>
202 <span v-if="form.paymentType=='3'">PayPal</span>
203 </div>
204 </el-col>
205 <el-col :lg="12" class="result">
206 <div class="priceb" v-if="form.viewStatus=='0'">{{ language == 0 ? '待支付金额' : 'Amount Due' }}
207 <span class="price">{{ language == 0 ? '¥' : '€' }}{{ Number(totalFee).toFixed(2) }}</span>
208 </div>
209 <div class="priceb" v-if="form.viewStatus=='1'||form.viewStatus=='5'">{{ language == 0 ? '已支付金额' : 'Amount Due' }}
210 <span class="price">{{ language == 0 ? '¥' : '€' }}{{ Number(totalFee).toFixed(2) }}</span>
211 </div>
212 <div class="priceb" v-if="form.viewStatus=='4'">{{ language == 0 ? '已退订' : 'Refunded' }}
213 <span class="price">{{ language == 0 ? '¥' : '€' }}{{ Number(totalFee).toFixed(2) }}</span>
214 </div>
215 <div class="priceb" v-if="form.viewStatus=='2'">{{ language == 0 ? '已取消' : 'Canceled' }}
216 <span class="price">{{ language == 0 ? '¥' : '€' }}{{ Number(totalFee).toFixed(2) }}</span>
217 </div>
218 <div class="priceb" v-if="form.viewStatus=='7'">{{ language == 0 ? '退款审核中' : 'Refund in review' }}
219 <span class="price">{{ language == 0 ? '¥' : '€' }}{{ Number(totalFee).toFixed(2) }}</span>
220 </div>
221 </el-col>
222 </el-row>
223 </div>
224 </div>
225 <div v-else class="pd20 skeletonBox">
226 <el-skeleton :rows="8"/>
227 <el-button type="primary" class="btn-lineG" size="large" :style="language == 0 ?'width:200px':'width:400px'"
228 round @click="showLogin">
229 {{ language == 0 ? '登录后查看明细' : 'View detailed information after logging in' }}
230 </el-button>
231 </div>
232
233 <div class="pd20" v-if="form.viewStatus == '0'&&(form.surplus!='0,0'&&form.surplus!='0')">
234
235 <div class="leftboderTT">{{ language == 0 ? '选择支付方式' : 'Choose payment method' }}</div>
236 <div class="mt20">
237 <el-radio-group v-model="payType" >
238 <el-radio value="2" v-if="language==0" border>
239 <!-- 微信-->
240 <svg t="1709002960407" class="icon" viewBox="0 0 3152 1024" version="1.1"
241 xmlns="http://www.w3.org/2000/svg" p-id="24747" width="94" height="40">
242 <path
243 d="M381.998922 630.960647c-4.416173 2.208086-8.832345 3.312129-14.352561 3.312129-12.144474 0-22.080863-7.17628-28.1531-17.66469l-2.208086-4.968194-87.771428-204.247978c-1.104043-2.208086-1.104043-4.416173-1.104043-6.624259 0-9.384367 6.624259-16.560647 15.456603-16.560647 3.312129 0 6.624259 1.104043 9.936388 3.312129l103.780054 78.387062c7.728302 4.968194 16.560647 8.280323 26.497035 8.280324 5.520216 0 11.040431-1.104043 16.560647-3.312129l486.330998-230.192992C819.752022 131.381132 676.226415 60.17035 513.380054 60.17035 248.409704 59.618329 32.017251 250.61779 32.017251 486.883019c0 128.069003 64.586523 244.545553 166.15849 322.932614 7.728302 6.072237 13.248518 16.560647 13.248518 27.601079 0 3.312129-1.104043 7.17628-2.208086 10.488409-7.728302 32.017251-20.976819 84.459299-20.97682 86.667386-1.104043 3.312129-2.208086 8.280323-2.208086 13.248517 0 9.384367 6.624259 16.560647 15.456604 16.560647 3.312129 0 6.624259-1.104043 8.832345-3.312129l104.884097-65.138545c7.728302-4.968194 16.560647-8.280323 25.392992-8.280323 4.416173 0 9.936388 1.104043 14.35256 2.208086 49.129919 15.456604 102.676011 23.736927 157.326146 23.736927 265.522372 0 481.362803-191.551482 481.362803-427.816711 0-71.210782-19.872776-139.109434-54.650135-198.175741L385.863073 628.752561l-3.864151 2.208086z"
244 fill="#09BB07" p-id="24748"></path>
245 <path
246 d="M1398.822642 381.998922c-9.384367 19.320755-20.424798 38.641509-32.017251 57.962264v263.866307h-31.465229V485.226954c-13.248518 18.216712-27.049057 34.225337-40.297574 48.025876-3.864151-7.17628-14.352561-23.736927-20.424798-30.361186 34.777358-33.673315 71.210782-82.803235 93.843666-131.933153l30.361186 11.040431z m-8.280324-91.63558c-22.632884 36.985445-59.066307 78.939084-91.635579 105.98814-4.416173-7.17628-13.248518-19.320755-19.320755-25.945013 29.809164-23.736927 62.378437-61.274394 78.939083-92.187601l32.017251 12.144474z m181.615094 289.811321c1.656065 7.728302 6.072237 19.320755 8.832345 24.84097-55.754178 37.537466-66.242588 46.369811-72.866846 54.650135-1.656065-7.728302-8.280323-22.080863-12.696496-28.705121 4.968194-3.312129 12.696496-10.48841 12.696496-28.705121v-54.098114h-60.17035v27.049057c0 38.641509-7.728302 91.083558-42.505661 128.069003-4.416173-7.17628-16.560647-19.320755-22.632884-23.184906 29.809164-31.465229 34.225337-72.866846 34.225337-105.436119v-54.098113h118.684636v82.251213l36.433423-22.632884z m123.100809-176.094879c-9.384367 73.970889-23.184906 136.349326-48.025876 187.687332 16.560647 36.433423 39.193531 66.242588 67.346631 83.355256-7.17628 6.072237-17.112668 18.216712-22.632884 27.049057-25.945013-18.216712-46.369811-45.265768-62.930459-78.939084-20.424798 32.017251-45.81779 59.066307-78.939083 81.699191-3.864151-6.624259-13.248518-19.872776-19.872776-25.392992 36.985445-22.632884 64.034501-52.99407 83.907277-89.979514-12.696496-34.777358-22.080863-73.418868-28.705121-115.372507-4.968194 11.040431-10.48841 22.632884-16.560647 31.465229-3.864151-4.416173-10.48841-13.248518-17.112668-20.424798v5.520216h-154.014017v-29.809165h154.014017v9.384367c24.84097-49.129919 37.537466-118.684636 44.713746-191.551483l31.465229 4.968195c-3.864151 31.465229-8.280323 61.274394-13.800539 90.531536h96.051752v29.809164h-14.904582z m-142.973585 22.632884h-145.181671v-110.404312h24.84097v82.251213h35.32938V278.770889h26.497035v119.78868h33.673316V316.308356h25.392992v110.404312z m55.202156-22.632884c-1.656065 6.624259-3.312129 12.696496-4.416172 18.768734 6.072237 46.369811 14.904582 91.083558 28.1531 130.277088 16.560647-43.057682 26.497035-91.63558 32.569272-149.045822h-56.3062zM1882.393531 289.259299c-10.48841 31.465229-24.288949 62.378437-39.193531 91.63558v324.036657h-32.017251V437.201078c-13.800539 22.632884-29.257143 42.50566-44.161725 60.170351-3.312129-7.728302-13.248518-24.288949-19.320754-32.017251 41.953639-45.265768 80.043127-114.820485 103.780053-184.927224l30.913208 8.832345z m288.707278 65.690566v29.257143h-294.779515v-29.257143h294.779515z m-267.730459 199.831806h235.713208v147.941779h-30.913208v-16.560647h-174.438814v18.216712h-30.361186v-149.597844z m231.297035-104.332075H1909.994609v-28.1531h224.672776v28.1531zM1909.994609 486.883019h224.672776v28.1531H1909.994609v-28.1531z m23.736927 96.603773V656.90566h174.438814v-73.418868h-174.438814z m81.699192-231.297035c-6.072237-16.560647-20.424798-43.057682-32.017251-61.826415l29.257143-12.144474c13.248518 19.320755 27.601078 44.161725 34.225337 60.722372l-31.465229 13.248517zM2586.221024 468.114286c-26.497035 63.48248-69.002695 111.508356-122.548787 147.941779 50.785984 25.945013 110.956334 43.609704 180.511051 52.442048-7.728302 8.280323-16.560647 23.184906-21.528841 33.673316-75.074933-11.592453-139.661456-32.569272-192.655525-64.034502-57.962264 32.017251-125.308895 52.99407-195.415634 66.794609-3.312129-9.384367-12.696496-25.392992-19.320754-33.121293 66.242588-10.48841 129.173046-28.1531 183.271159-55.202157-44.161725-32.017251-78.939084-72.866846-103.780054-123.65283l10.48841-3.864151h-49.12992v-34.225337h155.670081V383.654987h-176.6469v-34.225337h176.6469V278.770889h35.32938v70.658761h177.750944v34.225337h-177.750944v71.210781H2555.859838l7.176281-1.656064 23.184905 14.904582z m-255.033962 20.976819c23.184906 43.609704 56.858221 80.043127 100.467925 108.748248 44.161725-28.1531 80.043127-63.48248 104.332075-108.748248h-204.8zM2834.630728 292.571429c-13.800539 34.777358-30.361186 69.554717-49.129919 101.571967v308.580054h-34.225337V447.689488c-14.904582 20.976819-31.465229 40.297574-46.921833 56.306199-4.416173-7.728302-14.904582-25.945013-21.528841-34.225337 47.473854-45.265768 91.63558-115.924528 118.132614-188.239353l33.673316 11.040432z m270.490566 123.65283h-58.514286v240.12938c0 25.945013-7.728302 36.985445-24.84097 41.953639-18.216712 5.520216-49.129919 6.072237-99.915903 5.520215-1.656065-8.832345-8.280323-24.84097-13.248518-34.225337 39.193531 1.656065 77.283019 1.656065 88.32345 1.104043 10.48841-1.104043 14.352561-3.864151 14.352561-14.35256V416.224259h-187.687332v-34.225337h187.687332V283.739084h34.777359v97.707816h58.514285v34.777359z m-184.375202 178.854986c-13.800539-28.705121-43.609704-78.939084-67.346631-115.924528l29.809164-13.800539c24.288949 35.881402 55.202156 84.459299 70.106739 112.612399l-32.569272 17.112668z"
247 fill="#595757" p-id="24749"></path>
248 </svg>
249 </el-radio>
250 <el-radio value="3" v-if="language==1" border>
251 <!--paypal-->
252 <svg t="1709002828937" class="icon" viewBox="0 0 4220 1024" version="1.1"
253 xmlns="http://www.w3.org/2000/svg" p-id="22654" width="94" height="40">
254 <path
255 d="M3249.722604 229.409369h-232.537679c-15.641548 0-29.197556 11.470468-32.325865 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h118.875764c11.470468 0 20.855397-8.342159 21.898167-18.769858l27.112016-168.928717c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641547c41.710794 0 81.336049 0 102.191447 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731z"
256 fill="#009CDE" p-id="22655"></path>
257 <path
258 d="M1594.84684 229.409369h-232.537678c-15.641548 0-29.197556 11.470468-32.325866 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h110.533605c15.641548 0 29.197556-11.470468 32.325866-27.112017l25.026476-160.586558c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641548c41.710794 0 81.336049 0 102.191446 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731zM2288.288795 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.213849 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710794 171.014257 34.411405 39.625255 82.378819 56.309572 139.731161 56.309572 99.063136 0 153.287169-63.608961 153.287169-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480652-380.610998c2.08554-10.427699-6.256619-21.898167-18.769858-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.079429-30.240326-16.684318-19.812627-22.940937-46.924644-17.727088-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z"
259 fill="#003087" p-id="22656"></path>
260 <path
261 d="M3943.164559 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.21385 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710795 171.014257 34.411405 39.625255 82.378819 56.309572 139.73116 56.309572 99.063136 0 153.287169-63.608961 153.28717-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480651-380.610998c2.08554-10.427699-6.256619-21.898167-18.769857-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.07943-30.240326-16.684318-19.812627-22.940937-46.924644-17.727087-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z"
262 fill="#009CDE" p-id="22657"></path>
263 <path
264 d="M2880.582074 443.177189h-111.576375c-10.427699 0-20.855397 5.213849-27.112016 14.598778l-154.329939 227.323829-65.694501-217.9389c-4.171079-13.556008-16.684318-22.940937-31.283096-22.940937h-109.490835c-13.556008 0-22.940937 13.556008-18.769857 26.069247l123.046843 360.79837-115.747454 162.672098c-9.384929 12.513238 0 30.240326 15.641548 30.240326h111.576375c10.427699 0 20.855397-5.213849 26.069246-13.556008l371.226069-535.983707c11.470468-13.556008 2.08554-31.283096-13.556008-31.283096z"
265 fill="#003087" p-id="22658"></path>
266 <path
267 d="M4074.553561 245.050916l-94.892057 605.849288c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h95.934827c15.641548 0 29.197556-11.470468 32.325866-27.112017l93.849287-595.421588c2.08554-11.470468-7.299389-21.898167-18.769857-21.898167h-107.405296c-10.427699 1.04277-18.769857 7.299389-19.812627 16.684317z"
268 fill="#009CDE" p-id="22659"></path>
269 <path
270 d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l-13.556008 85.507128c-2.08554 14.598778 9.384929 27.112016 23.983707 27.112016h165.800407c19.812627 0 36.496945-14.598778 39.625255-33.368635l2.08554-8.342159 31.283095-198.126273 2.08554-10.427699c3.12831-19.812627 19.812627-33.368635 39.625255-33.368635h25.026476c160.586558 0 285.718941-64.651731 322.215886-253.393075 15.641548-79.250509 7.299389-144.94501-33.368635-190.826884-12.513238-13.556008-28.154786-26.069246-45.881874-35.454175"
271 fill="#009CDE" p-id="22660"></path>
272 <path
273 d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958-1.04277 9.384929c3.12831-21.898167 21.898167-38.582485 44.839104-38.582485h93.849287c183.527495 0 327.429735-74.03666 369.140529-289.89002l3.12831-18.769857"
274 fill="#012169" p-id="22661"></path>
275 <path
276 d="M326.838693 260.692464c2.08554-13.556008 10.427699-23.983707 21.898167-30.240326 5.213849-2.08554 11.470468-4.171079 16.684318-4.171079h250.264766c29.197556 0 57.352342 2.08554 82.378819 6.256619 7.299389 1.04277 14.598778 2.08554 20.855397 4.17108 7.299389 1.04277 13.556008 3.12831 19.812627 5.213849l9.384929 3.128309c12.513238 4.171079 23.983707 9.384929 34.411405 14.598779 12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958L326.838693 260.692464z"
277 fill="#003087" p-id="22662"></path>
278 </svg>
279 </el-radio>
280 </el-radio-group>
281 <div v-if="payType == '2'&&wePayCodeUrl">
282 <div class="payImgbox flexCenter">
283 <div>
284 <img width="260" class="border" :src="wePayCodeUrl"/>
285 <img class="mt20" src="@/assets/img/sm.png"/>
286 </div>
287 <div class="ml20">
288 <img height="360" src="@/assets/img/rr.jpg"/>
289 </div>
290 </div>
291 <div class="tip text-center text-danger" v-if="language==0">
292 支付后不要关闭此窗口,等待确认支付成功.
293 若长时间未收到支付成功提醒,请刷新页面
294 </div>
295 <div class="tip text-center text-danger" v-else>
296 After payment, do not close this window and wait for confirmation of successful payment.
297 <br/>
298 If you have not received a notification of successful payment for a long time,
299 please refresh the page
300 </div>
301 </div>
302 </div>
303 </div>
304 <el-row class="mt20 mb60" align="middle" justify="center">
305 <el-col :span="24" class="text-center">
306 <el-button v-if="!hideconfirmbtn&&form.viewStatus == '0'" type="primary" @click="goPay" round class="btn-lineG w200px">
307 {{ language == 0 ? '确定' : 'Submit' }}
308 </el-button>
309 <el-button round @click="unsubscribe" v-if="form.viewStatus == '5'">{{ language==0?'退订':'Unsubscribe' }}</el-button>
310 <el-button link class="underline" @click="cancel" v-if="form.viewStatus == '0'">
311 {{ language==0?'取消订单':'Cancel Order' }}
312 </el-button>
313 </el-col>
314 </el-row>
315
316 <div v-if="form.payDate&&form.viewStatus=='1'">
317 <div class="text-center">
318 <el-icon color="#32B16C" size="80">
319 <SuccessFilled/>
320 </el-icon>
321 <p class="text-success">{{ language == 0 ? '支付成功' : 'successful!' }}</p>
322 <h3 class="wePrice">{{ language == 0 ? '¥' : '€' }}{{ totalFee || 0 }}</h3>
323 </div>
324 </div>
325 </el-card>
326 </div>
327
328 <div class="box" v-if="errorBox">
329 <el-result
330 icon="error"
331 :title="language==0?'未找到对应订单':'No corresponding order found'"
332 :sub-title="language==0?'请确认订单号是否正确':'Please confirm if the order number is correct'"
333 >
334 <template #extra>
335 <el-button type="primary" @click="goHome" class="btn-lineG w200px" round>
336 {{ language == 0 ? '返回首页' : 'Home' }}
337 </el-button>
338 </template>
339 </el-result>
340 </div>
341 </div>
342 </template>
343
344 <script setup>
345 import {Search} from "@element-plus/icons-vue"
346 import {getCurrentInstance, ref} from 'vue'
347 import {onMounted} from "@vue/runtime-core"
348 import {useRoute, useRouter} from "vue-router"
349 import * as booking from "@/apiPc/booking"
350 import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row";
351
352 const {proxy} = getCurrentInstance()
353 const route = useRoute()
354 const router = useRouter()
355 const matchInfo = ref({})
356 const approved = ref(true)
357 const tableData = ref([])
358 const payType = ref('2')
359 const orderId = ref(route.query.orderId)
360 const matchId = ref()
361 const groupId = ref()
362 import useUserStore from "@/store/modules/user";
363 import FileUpload from "@/components/FileUpload";
364 import {useStorage} from "@vueuse/core/index";
365 import {ElMessage} from "element-plus";
366 import {
367 cancelOrder,
368 cancelOrder2,
369 getCarBilldetailbyId,
370 getFoodBilldetailbyId,
371 getMealOrderInfoByLogex, getPhotoOrderInfo, getPhotoOrderInfoByLogex
372 } from "@/apiPc/booking";
373 import dayjs from 'dayjs'
374 import {delPerson} from "@/api/exam/person";
375
376 const isLogin = ref(false)
377 const language = useStorage('language', 0)
378 const totalFee = ref('')
379 const wePayCodeUrl = ref('')
380 const form = ref({})
381 const formInfo=ref({})
382 const type = ref('')
383 const errorBox = ref(false)
384 const hideconfirmbtn = ref(false)
385
386 const user = useUserStore().user
387 if (useUserStore().user) {
388 isLogin.value = true
389 }
390 onMounted(() => {
391 if (language.value == 0) {
392 payType.value = '2'
393 } else {
394 payType.value = '3'
395 }
396 if(route.query.type){
397 type.value = route.query.type
398 }
399 if(route.query.orderType){
400 switch (route.query.orderType){
401 case '0':
402 type.value = 'hotel'
403 break
404 case '1':
405 type.value = 'car'
406 break
407 case '2':
408 type.value = 'food'
409 break
410 case '3':
411 type.value = 'makeUp'
412 break
413 case '4':
414 type.value = 'photography'
415 break
416 }
417 }
418
419 getData()
420 })
421
422 function getData() {
423 if(type.value=='car') {
424 return booking.getCarBilldetailbyId({orderId: orderId.value}).then(res => {
425 form.value = res.data
426 if(language.value==0){
427 totalFee.value = res.data.total
428 } else {
429 totalFee.value = res.data.totalEn
430 }
431 }).catch(err => {
432 console.log(err)
433 errorBox.value = true
434 })
435 }
436 if(type.value=='food') {
437 return booking.getFoodBilldetailbyId({orderId: orderId.value}).then(res => {
438 if(language.value==0){
439 totalFee.value = res.data.total
440 } else {
441 totalFee.value = res.data.totalEn
442 }
443 form.value = res.data
444 form.value.messageObj = JSON.parse(form.value.message)
445 form.value.extJsonObj = JSON.parse(form.value.extJson)
446 console.log(form.value)
447 })
448 }
449 if(type.value=='hotel') {
450 return booking.getRoomBilldetailbyId({orderId: orderId.value}).then(res => {
451 if(language.value==0){
452 totalFee.value = res.data.total
453 } else {
454 totalFee.value = res.data.totalEn
455 }
456 form.value = res.data
457 form.value.messageObj = JSON.parse(form.value.message) || {}
458 form.value.extJsonObj = JSON.parse(form.value.extJson) || {}
459 matchId.value = form.value.extJsonObj?.activeId
460 }).catch(err => {
461 console.log(err)
462 errorBox.value = true
463 })
464 }
465 if(type.value=='makeUp') {
466 MakeUpOrder()
467 // MakeUpIno()
468 }
469 if(type.value=='photography') {
470 photographyOrder()
471 // photographyInfo()
472 }
473
474 console.log(payType.value)
475 }
476
477 function goHome() {
478 router.push('/')
479 }
480
481 function goPay() {
482 if (payType.value == '2') {
483 booking.createWePay({orderId: orderId.value}).then(res => {
484 wePayCodeUrl.value = res.data
485 hideconfirmbtn.value = true
486 startforGetData()
487 })
488 }
489 if (payType.value == '3') {
490 booking.createPalPay({orderId: orderId.value}).then(res => {
491 if (res.data) {
492 location.href = res.data
493 }
494 })
495 }
496 }
497
498 let handle;
499
500 function startforGetData() {
501 handle = setTimeout(() => {
502 if (type.value=='photography'){
503 photographyOrder().then(res=>{
504 if (form.value.payDate) {
505 if (handle) {
506 clearTimeout(handle)
507 handle = null
508 }
509 } else {
510 startforGetData()
511 }
512 })
513 }else if(type.value=='makeUp'){
514 MakeUpOrder().then(res=>{
515 if (form.value.payDate) {
516 if (handle) {
517 clearTimeout(handle)
518 handle = null
519 }
520 } else {
521 startforGetData()
522 }
523 })
524 }else{
525 getData().then( res => {
526 if (form.value.payDate) {
527 if (handle) {
528 clearTimeout(handle)
529 handle = null
530 }
531 } else {
532 startforGetData()
533 }
534 })
535 }
536 }, 2000)
537 }
538
539 function showLogin() {
540 useUserStore().setReLogin()
541 }
542
543
544 function MakeUpOrder(){
545 return booking.getMealOrderInfo({orderId: orderId.value}).then(res => {
546 form.value=res.data
547 totalFee.value=language.value==0?form.value.total:form.value.totalEn
548 MakeUpIno()
549 console.log(res)
550 }).catch(err => {
551 console.log(err)
552 errorBox.value = true
553 })
554 }
555
556 function MakeUpIno(){
557 booking.getMealOrderInfoByLogex({asmId: form.value.asmId}).then(res=>{
558 formInfo.value=res.data
559 console.log(res)
560 })
561 .catch((e) => {
562 console.log(e)
563 errorBox.value = true
564 })
565 }
566
567
568 function photographyOrder(){
569 return booking.getPhotoOrderInfo({orderId: orderId.value}).then(res => {
570 form.value=res.data
571 totalFee.value=language.value==0?form.value.total:form.value.totalEn
572 photographyInfo()
573 }).catch(err => {
574 console.log(err)
575 errorBox.value = true
576 })
577 }
578
579 function photographyInfo(){
580 booking.getPhotoOrderInfoByLogex({aspId: form.value.aspId}).then(res=>{
581 formInfo.value=res.data
582 })
583 // .catch((e) => {
584 // console.log(e)
585 // errorBox.value = true
586 // })
587 }
588
589 const cancel = () => {
590 //取消订单
591 proxy.$modal.confirm(language.value == 0 ? '确定取消订单吗 ?' :`Are you sure to cancel the order?`).then(() => {
592 return cancelOrder2(orderId.value).then(res=>{
593 getData()
594 ElMessage({
595 message: language.value == 0?'操作成功':'Successful operation!',
596 type: 'success'
597 })
598 })
599 })
600 }
601 const unsubscribe = () => {
602 proxy.$modal.confirm(language.value == 0 ?`确定退款吗 ?`:'Are you sure to refund?').then(() => {
603 return cancelOrder(orderId.value).then(res=>{
604 getData()
605 ElMessage({
606 message: language.value == 0?'已提交退款,请等待审核!':'Refund has been submitted, please wait for review!',
607 type: 'success'
608 })
609 })
610 })
611 }
612
613
614 </script>
615
616 <style scoped lang="scss">
617 .st-info{line-height: 2;font-size: 14px;}
618 .underline{text-decoration: underline;}
619 .wePrice {
620 font-size: 24px;font-family: "DIN Alternate";
621 font-weight: 400;
622 }
623
624 .el-radio.is-bordered {
625 height: 40px;
626 }
627
628 .border {
629 border: 1px solid #e1e1e1;
630 }
631
632 .leftboderTT {
633 font-weight: 600;
634 font-size: 16px;
635 color: #453DEA;
636 }
637
638 .bg-lineg {
639 height: 40px;
640 line-height: 40px;
641 font-size: 18px;
642 text-align: center;
643 }
644
645 .table {
646 width: 100%;
647 max-width: 1000px;
648 margin: 20px auto;
649
650 .head {
651 background: #EFF2F7;
652 height: 50px;
653 font-size: 16px;
654 font-weight: 400;
655 }
656
657 th {
658 background: #FAFBFD;
659 font-size: 14px;
660 border-bottom: 1px solid #E5E5E5;
661 border-right: 1px solid #E5E5E5;
662 }
663
664 td {
665 border-bottom: 1px solid #E5E5E5;
666 border-right: 1px solid #E5E5E5;
667 padding: 10px;
668 }
669
670 &.table-border {
671 border-top: 1px solid #E5E5E5;
672 border-left: 1px solid #E5E5E5;
673 }
674 }
675
676 .text-gray {
677 font-weight: 400;
678 font-size: 12px;
679 color: #929AA0;
680 }
681
682 .size12 {
683 font-size: 12px;
684 }
685
686 .result {
687 font-size: 22px;
688
689 .flex {
690 display: flex;
691 align-items: center;
692 font-weight: 500;
693
694 img {
695 margin-right: 10px
696 }
697 }
698
699 .priceb {
700 color: #7B7F83;
701 font-size: 16px;
702 text-align: right;
703 line-height: 50px;
704
705 span {
706 font-weight: bold;
707 font-size: 22px;
708 font-family: DIN Alternate;
709 color: #EB6100;
710 }
711 }
712 }
713
714 .skeletonBox {
715 position: relative;
716 overflow: hidden;
717
718 .btn-lineG {
719 position: absolute;
720 left: 0;
721 right: 0;
722 margin: auto;
723 top: 0;
724 bottom: 0;
725 width: 200px;
726 box-shadow: 0 0 1000px 500px rgba(255, 255, 255, 0.5);
727
728 }
729 }
730
731 .payImgbox {
732 text-align: center;
733 border: 1px solid #fff;
734 padding: 20px;
735 }
736
737 .priceBar {
738 padding: 0 0 20px;
739
740 .flex {
741 display: flex;
742 justify-content: right;
743 align-items: baseline;
744
745 .item {
746 font-size: 16px;
747 margin-right: 15px;
748
749 label {
750 color: #95A1A6;
751 }
752
753 span {
754 font-family: DIN Alternate;
755 }
756 }
757 }
758
759 .size26 {
760 font-size: 26px;
761 }
762 }
763
764 .rre {
765 color: #333;
766 font-size: 16px;
767 margin-top: 10px
768 }
769
770 .price{
771 color:orange;
772 }
773 </style>
1 <template>
2 <div>
3 <div class="box">
4 <el-card class="mb60 mt30" v-loading="loading">
5 <div class="text-center mt30">
6 <el-icon color="#32B16C" size="80">
7 <SuccessFilled/>
8 </el-icon>
9 <p class="text-success mb20">{{ language == 0 ? '支付成功' : 'successfully!' }}</p>
10
11 <el-button type="primary" class="btn-lineG mb60" @click="goBillDetail" round>
12 {{ language == 0 ? '返回订单详情' : 'Return order details' }}
13 </el-button>
14 </div>
15 </el-card>
16 </div>
17 </div>
18 </template>
19
20 <script setup>
21 import {ref} from "vue";
22 import {useRoute, useRouter} from "vue-router";
23 import {onMounted} from "@vue/runtime-core";
24 import {callbackPalPay} from "@/apiPc/booking";
25 import {useStorage} from "@vueuse/core/index";
26
27 const route = useRoute()
28 const router = useRouter()
29 const language= useStorage('language',0)
30 const orderId = ref(route.query.orderId)
31 const type = ref('')
32 const loading = ref(false)
33
34 onMounted(() => {
35 var code = decodeURIComponent(orderId.value)
36 console.log(code)
37 loading.value = true
38 callbackPalPay(code).then(res => {
39 loading.value = false
40 type.value = res.data.orderType
41 })
42 })
43
44 function goBillDetail() {
45 router.push({
46 name: 'bookingPay',
47 query: {
48 orderId: route.query.orderId,
49 orderType: type.value
50 }
51 })
52 }
53 </script>
54
55 <style scoped lang="scss">
56
57 </style>
...@@ -11,8 +11,19 @@ ...@@ -11,8 +11,19 @@
11 <el-step :title="language==0?'选择课程':'Courses'" /> 11 <el-step :title="language==0?'选择课程':'Courses'" />
12 </el-steps> 12 </el-steps>
13 <div v-if="activeStep==0"> 13 <div v-if="activeStep==0">
14 <div class="mb60" style="max-height: 50vh;overflow: auto"> 14 <div class="mb60 xzRich" style="max-height: 50vh;overflow: auto">
15 15 <div v-if="language==0"><br/>
16 报到时间:2024年7月14日13:30 -17:00<br/><br/>
17 报到地点:无锡君来世尊酒店<br/><br/>
18 江苏省 无锡市 滨湖区 和风路111号
19 </div>
20 <div v-else style="width: 350px;margin: auto"><br/>
21 Check in from 13:30 to 17:00 on July 14, 2024.<br/>
22 Check in address: Worldhotel Grand Juna Wuxi<br/>
23 No.111 Hefeng Road, Binhu District, Wuxi, Jiangsu<br/>
24 Contact Person:Oliver Zhu<br/>
25 Tel: +86 10 67183764<br/>
26 </div>
16 </div> 27 </div>
17 <div class="text-center"> 28 <div class="text-center">
18 <el-button type="primary" v-if="courseList.length>0" class="btn-lineG" round @click="setActive(1)">{{ language == 0 ? '下一步' : 'NEXT' }}</el-button> 29 <el-button type="primary" v-if="courseList.length>0" class="btn-lineG" round @click="setActive(1)">{{ language == 0 ? '下一步' : 'NEXT' }}</el-button>
...@@ -98,8 +109,10 @@ ...@@ -98,8 +109,10 @@
98 <div class="tip text-danger mb20" v-else>*Select the courses to enroll in (at least one, no more than two)</div> 109 <div class="tip text-danger mb20" v-else>*Select the courses to enroll in (at least one, no more than two)</div>
99 <el-checkbox-group size="large" v-model="form.courseId" @change="courseChange"> 110 <el-checkbox-group size="large" v-model="form.courseId" @change="courseChange">
100 <div v-for="c in courseList" class="mb20"> 111 <div v-for="c in courseList" class="mb20">
101 <el-checkbox :value="c.id" border class="w100" :disabled="(form.courseId?.length>=2&&form.courseId.indexOf(c.id)==-1)||disChoose">{{language == 0 ?c.name:c.nameEn}}</el-checkbox> 112 <el-checkbox :value="c.id" border class="w100" :disabled="(form.courseId?.length>=2&&form.courseId.indexOf(c.id)==-1)||disChoose||(form.nationality==240&&c.viewStateCn == 0)||(form.nationality!=240&&c.viewStateEn == 0)">
102 113 {{language == 0 ?c.name:c.nameEn}}
114 <el-tag class="ml20" v-if="(form.nationality==240&&c.viewStateCn == 0)||(form.nationality!=240&&c.viewStateEn == 0)" type="danger" effect="dark">{{language == 0 ?'已报满':'Already full'}}</el-tag>
115 </el-checkbox>
103 </div> 116 </div>
104 </el-checkbox-group> 117 </el-checkbox-group>
105 118
...@@ -176,7 +189,7 @@ watch(show, (value) => { ...@@ -176,7 +189,7 @@ watch(show, (value) => {
176 function getCourse() { 189 function getCourse() {
177 // '1777256058082189313' 190 // '1777256058082189313'
178 masterClassList({cptId:cptId.value}).then(res=>{ 191 masterClassList({cptId:cptId.value}).then(res=>{
179 courseList.value = res.rows 192 courseList.value = res.data
180 }) 193 })
181 } 194 }
182 function setActive(n) { 195 function setActive(n) {
...@@ -236,6 +249,8 @@ function checkCard() { ...@@ -236,6 +249,8 @@ function checkCard() {
236 getByCard({card:form.value.passportNo}).then(res=>{ 249 getByCard({card:form.value.passportNo}).then(res=>{
237 if(res.data){ 250 if(res.data){
238 form.value = res.data 251 form.value = res.data
252 } else {
253 form.value.courseId = []
239 } 254 }
240 }) 255 })
241 } 256 }
...@@ -290,6 +305,7 @@ const close = () =>{ ...@@ -290,6 +305,7 @@ const close = () =>{
290 </script> 305 </script>
291 306
292 <style scoped> 307 <style scoped>
308 .xzRich{line-height: 2;font-size: 14px;}
293 .boxInvitation { 309 .boxInvitation {
294 width: 90%; 310 width: 90%;
295 margin: auto 311 margin: auto
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!