Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
jijin
/
dance-pc
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
d7b0a1d3
authored
2024-04-19 09:29:22 +0800
by
杨炀
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
no message
1 parent
83f70075
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
523 additions
and
21 deletions
src/apiPc/common.js
src/routerPc/en.js
src/viewsPc/booking/hotelOrder.vue
src/viewsPc/booking/pay.vue
src/viewsPc/center/myReservation.vue
src/viewsPc/components/homeQuick.vue
src/apiPc/common.js
View file @
d7b0a1d
...
...
@@ -40,3 +40,10 @@ export function getIndexScheduleList(params) {
params
:
params
})
}
export
function
newbilllist
(
query
)
{
return
request
({
url
:
`/ota/norder/list`
,
method
:
'get'
,
params
:
query
})
}
...
...
src/routerPc/en.js
View file @
d7b0a1d
...
...
@@ -391,6 +391,12 @@ export const constantRoutes = [
name
:
'photography'
,
meta
:
{
title
:
'Photography Appointment'
}
},
{
path
:
'pay'
,
component
:
()
=>
import
(
'@/viewsPc/booking/pay'
),
name
:
'bookingPay'
,
meta
:
{
title
:
'pay'
}
}
]
},
{
...
...
src/viewsPc/booking/hotelOrder.vue
View file @
d7b0a1d
...
...
@@ -44,7 +44,7 @@
</div>
</el-form-item>
<el-form-item
v-for=
"(n,index) in form.roomNum"
:key=
"index"
:label=
"`入住人$
{index+1}`">
<el-input
v-model=
"rzUserArr[index]"
placeholder=
"每间填一位住客姓名
"
/>
<el-input
v-model=
"rzUserArr[index]"
:placeholder=
"language==0?'每间填一位住客姓名':'Each room fill in one name of the guest'
"
/>
</el-form-item>
<el-form-item
:label=
"language==0?'预计到店':'Expected check-in'"
>
<el-select
v-model=
"form.ddDate"
...
...
@@ -143,8 +143,9 @@ import {ref, reactive, onMounted} from "vue";
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
{
checkResidueRoom
,
newsSubmitOrderHotel
}
from
"@/apiPc/booking"
import
dayjs
from
'dayjs'
import
{
ElMessage
}
from
"element-plus"
;
import
{
ElMessage
,
ElMessageBox
}
from
"element-plus"
;
import
useUserStore
from
"@/store/modules/user"
;
const
user
=
useUserStore
().
user
const
language
=
useStorage
(
'language'
,
0
)
const
router
=
useRouter
()
const
route
=
useRoute
()
...
...
@@ -324,6 +325,10 @@ function countMoney() {
}
function
submit
()
{
if
(
!
user
){
useUserStore
().
setReLogin
()
}
if
(
usedays
==
0
)
{
ElMessage
.
error
(
language
.
value
==
0
?
'入住时间跨度需大于一天'
:
'Check-in time must be greater than one day'
)
return
...
...
@@ -365,7 +370,7 @@ function submit() {
console
.
log
(
form
.
value
.
room
)
// 提交确认
ElMessage
.
confirm
(
language
.
value
==
0
?
'确认提交订单吗?'
:
'Confirm to submit the order?'
,
{
ElMessage
Box
.
confirm
(
language
.
value
==
0
?
'确认提交订单吗?'
:
'Confirm to submit the order?'
,
{
confirmButtonText
:
language
.
value
==
0
?
'确定'
:
'Confirm'
,
cancelButtonText
:
language
.
value
==
0
?
'取消'
:
'Cancel'
,
type
:
'warning'
...
...
@@ -377,6 +382,13 @@ function submit() {
checkreRooms
()
}
else
{
//去付钱
router
.
push
({
name
:
'bookingPay'
,
query
:
{
orderId
:
res
.
data
.
orderId
,
money
:
res
.
data
.
total
}
})
}
}
else
{
ElMessage
.
warning
(
language
.
value
==
0
?
'无可预定的房间'
:
'No rooms available to book'
)
...
...
@@ -385,21 +397,6 @@ function submit() {
})
}
function
pay
()
{
//确认付款
ElMessage
.
confirm
(
language
.
value
==
0
?
'确认付款吗?'
:
'Confirm payment?'
,
{
confirmButtonText
:
language
.
value
==
0
?
'确定'
:
'Confirm'
,
cancelButtonText
:
language
.
value
==
0
?
'取消'
:
'Cancel'
,
type
:
'warning'
}).
then
(()
=>
{
newsSubmitOrderHotel
(
form
.
value
).
then
(
res
=>
{
if
(
res
.
data
)
{
if
(
res
.
data
.
roomNum
==
-
100
)
{
}
}
})
})
}
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/viewsPc/booking/pay.vue
0 → 100644
View file @
d7b0a1d
<
template
>
<div
style=
"min-height: 100vh"
>
<div
class=
"box"
v-if=
"!errorBox"
>
<el-card
:body-style=
"
{ padding: '0px' }" class="mt20">
<div
slot=
"header"
>
<div
class=
"bg-lineg"
>
{{
language
==
0
?
'缴费清单'
:
'Payment List'
}}
</div>
</div>
<div
v-if=
"isLogin"
>
<el-row
class=
"priceBar"
>
<el-col
:lg=
"12"
:xs=
"24"
class=
"pl-15"
>
</el-col>
<el-col
:lg=
"12"
:xs=
"24"
>
<div
class=
"flex"
v-if=
"Number(form.totalFee)>0"
>
<div
class=
"item"
v-if=
"signInfoList?.length>0"
><label>
{{
language
==
0
?
'报名费'
:
'REGISTRATION FEE'
}}
:
</label><span>
{{
language
==
0
?
'¥'
:
'€'
}}{{
serviceFeeTotal
}}
</span></div>
<div
class=
"item"
v-if=
"zuTableList?.length>0"
><label>
{{
language
==
0
?
'保险费'
:
'INSURANCE'
}}
:
</label><span>
{{
language
==
0
?
'¥'
:
'€'
}}{{
insuranceFeeTotal
}}
</span></div>
<div
class=
"item"
><label>
{{
language
==
0
?
'费用总计'
:
'Total Cost'
}}
:
</label><span
class=
"size26"
>
{{
language
==
0
?
'¥'
:
'€'
}}{{
form
.
totalFee
}}
</span></div>
</div>
</el-col>
</el-row>
</div>
<div
v-else
class=
"pd20 skeletonBox"
>
<el-skeleton
:rows=
"8"
/>
<el-button
type=
"primary"
class=
"btn-lineG"
size=
"large"
:style=
"language == 0 ?'width:200px':'width:400px'"
round
@
click=
"showLogin"
>
{{
language
==
0
?
'登录后查看明细'
:
'View detailed information after logging in'
}}
</el-button>
</div>
</el-card>
<el-card
class=
"mt20 mb20"
>
<el-row
class=
"result"
>
<el-col
:lg=
"12"
>
</el-col>
<el-col
:lg=
"12"
v-if=
"Number(form.totalFee)>0"
>
<div
class=
"priceb"
v-if=
"form.payStatus=='0'"
>
{{
language
==
0
?
'待支付金额'
:
'Amount Due'
}}
:
<span
class=
"price"
>
{{
language
==
0
?
'¥'
:
'€'
}}{{
Number
(
totalFee
).
toFixed
(
2
)
}}
</span></div>
<div
class=
"priceb"
v-if=
"form.payStatus=='1'"
>
{{
language
==
0
?
'已支付金额'
:
'Amount Due'
}}
:
<span
class=
"price"
>
{{
language
==
0
?
'¥'
:
'€'
}}{{
Number
(
totalFee
).
toFixed
(
2
)
}}
</span></div>
<div
class=
"priceb"
v-if=
"form.payStatus=='5'"
>
{{
language
==
0
?
'已退款'
:
'Refunded'
}}
:
<span
class=
"price"
>
{{
language
==
0
?
'¥'
:
'€'
}}{{
Number
(
totalFee
).
toFixed
(
2
)
}}
</span></div>
</el-col>
</el-row>
</el-card>
<el-card
class=
"mb60"
v-if=
"form.auditStatus=='2'&&form.payStatus=='0'&&Number(form.totalFee)>0"
>
<div
class=
"leftboderTT"
>
{{
language
==
0
?
'选择支付方式'
:
'Choose payment method'
}}
</div>
<div
class=
"mt20"
>
<el-radio-group
v-model=
"payType"
@
change=
"changePaytype"
>
<!-- 0 线下 1 支付宝 2 微信 3 paypal-->
<!--
<el-radio
label=
"1"
border
>
-->
<!--
<svg
t=
"1709003181386"
class=
"icon"
viewBox=
"0 0 3283 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"31015"
width=
"100"
height=
"40"
><path
d=
"M1163.122759 94.631724H593.92A133.826207 133.826207 0 0 0 459.034483 228.457931v567.084138a133.473103 133.473103 0 0 0 133.826207 133.826207h570.262069a133.826207 133.826207 0 0 0 134.17931-133.826207v-5.296552s-217.864828-90.394483-328.033103-143.36c-73.445517 90.747586-168.783448 145.478621-267.652414 145.478621-167.017931 0-223.514483-145.831724-144.419311-241.875862a169.136552 169.136552 0 0 1 92.16-51.906207c70.62069-17.302069 184.32 10.946207 290.604138 45.903448A587.211034 587.211034 0 0 0 988.689655 429.373793h-328.73931v-32.838621h168.783448V337.213793h-204.446896v-33.191724h204.446896V219.630345a14.124138 14.124138 0 0 1 14.477241-14.477242h82.273104v98.868966h202.328276v33.191724h-202.328276v59.321379h165.252414a677.605517 677.605517 0 0 1-70.62069 176.551725c50.14069 18.008276 94.984828 35.310345 128.529655 46.256551a930.427586 930.427586 0 0 0 147.950345 42.725518V228.457931a133.826207 133.826207 0 0 0-133.473103-133.826207z"
fill=
"#089fe8"
p-id=
"31016"
></path><path
d=
"M663.481379 548.016552a162.78069 162.78069 0 0 0-81.566896 30.366896c-64.617931 55.790345-26.129655 158.190345 104.165517 158.190345 75.917241 0 151.481379-48.375172 211.862069-125.704827-85.804138-40.96-156.424828-70.267586-234.46069-62.852414zM2488.673103 225.28h239.757242v47.668966h85.804138V216.805517a22.951724 22.951724 0 0 0-21.892414-23.304827h-139.122759V149.009655h-89.335172v44.137931h-160.662069v79.80138h85.451034zM1882.394483 360.518621h67.442758v247.172413h73.798621V280.011034h-26.835862l55.437241-126.764137H1970.317241l-87.922758 207.271724zM2824.827586 596.391724l-26.835862-90.747586a13.771034 13.771034 0 0 0-13.064827-10.24h-70.62069l20.48 70.62069H2648.275862v-135.944828h164.546207v-32.132414H2648.275862v-63.55862h164.546207v-32.132414h-409.6v32.132414h164.546207v63.55862h-164.546207v32.132414h164.546207V564.965517h-164.546207v32.132414H2824.827586zM2158.521379 323.442759a16.595862 16.595862 0 0 0-15.183448-9.886897h-63.558621l49.434483 156.424828h75.564138z"
fill=
"#089fe8"
p-id=
"31017"
></path><path
d=
"M2319.889655 156.777931h-76.623448v80.154483h-188.557241v32.132414h188.557241v287.426206a13.064828 13.064828 0 0 1-12.358621 12.005518h-38.841379v31.77931h99.222069a30.013793 30.013793 0 0 0 28.601379-29.66069V269.064828h31.073104v-32.132414h-31.073104zM1871.448276 577.677241a913.831724 913.831724 0 0 1-168.783448-80.507586 357.34069 357.34069 0 0 0 141.241379-194.56H1694.896552V249.997241h170.195862v-32.83862H1694.896552V150.422069h-75.211035a15.536552 15.536552 0 0 0-15.183448 15.536552v51.2h-169.136552v32.83862h169.136552v52.612414h-141.241379v32.838621h284.248276a278.951724 278.951724 0 0 1-93.572414 127.470345 360.871724 360.871724 0 0 1-93.572414-94.984828H1483.034483a423.724138 423.724138 0 0 0 122.173793 130.295173 662.775172 662.775172 0 0 1-172.667586 77.329655v39.194482A773.296552 773.296552 0 0 0 1653.230345 529.655172 781.771034 781.771034 0 0 0 1871.448276 614.753103zM1553.655172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.188966-79.095172 26.482758 79.095172zM1796.237241 674.78069h-34.251034v190.675862h115.464827v-26.129655h-81.213793v-164.546207zM2003.155862 674.78069h34.251035v190.322758h-34.251035zM2250.328276 674.78069h-74.151724v190.675862h35.310345v-73.445518h39.900689a58.615172 58.615172 0 1 0 0-117.230344z m-2.118621 91.100689H2210.427586v-64.971034h37.782069a31.073103 31.073103 0 0 1 30.366897 32.485517 30.72 30.72 0 0 1-30.366897 32.485517zM2465.015172 674.78069l-70.620689 190.675862h35.310345l13.417931-38.488276h70.620689l12.711724 38.488276h35.310345l-70.620689-190.675862z m-12.711724 128.176551l27.542069-79.095172 27.188966 79.095172zM2716.071724 755.994483l-38.135172-81.213793H2641.213793l57.555862 112.286896v78.388966h33.897931v-78.388966l0.353104-0.353103 57.555862-111.933793h-37.075862l-37.428966 81.213793z"
fill=
"#089fe8"
p-id=
"31018"
></path></svg>
-->
<!--
</el-radio>
-->
<el-radio
label=
"2"
v-if=
"language==0"
border
>
<!-- 微信-->
<svg
t=
"1709002960407"
class=
"icon"
viewBox=
"0 0 3152 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"24747"
width=
"94"
height=
"40"
>
<path
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"
fill=
"#09BB07"
p-id=
"24748"
></path>
<path
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"
fill=
"#595757"
p-id=
"24749"
></path>
</svg>
</el-radio>
<el-radio
label=
"4"
v-if=
"language==1"
border
>
<!-- paypal-->
<svg
t=
"1709002828937"
class=
"icon"
viewBox=
"0 0 4220 1024"
version=
"1.1"
xmlns=
"http://www.w3.org/2000/svg"
p-id=
"22654"
width=
"94"
height=
"40"
>
<path
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"
fill=
"#009CDE"
p-id=
"22655"
></path>
<path
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"
fill=
"#003087"
p-id=
"22656"
></path>
<path
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"
fill=
"#009CDE"
p-id=
"22657"
></path>
<path
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"
fill=
"#003087"
p-id=
"22658"
></path>
<path
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"
fill=
"#009CDE"
p-id=
"22659"
></path>
<path
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"
fill=
"#009CDE"
p-id=
"22660"
></path>
<path
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"
fill=
"#012169"
p-id=
"22661"
></path>
<path
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"
fill=
"#003087"
p-id=
"22662"
></path>
</svg>
</el-radio>
</el-radio-group>
<div
v-if=
"payType == '2'&&wePayCodeUrl"
>
<div
class=
"payImgbox flexCenter"
>
<div>
<img
width=
"260"
class=
"border"
:src=
"wePayCodeUrl"
/>
<img
class=
"mt20"
src=
"@/assets/img/sm.png"
/>
</div>
<div
class=
"ml20"
>
<img
height=
"360"
src=
"@/assets/img/rr.jpg"
/>
</div>
</div>
<div
class=
"tip text-center text-danger"
v-if=
"language==0"
>
支付后不要关闭此窗口,等待确认支付成功.
若长时间未收到支付成功提醒,请刷新页面
</div>
<div
class=
"tip text-center text-danger"
v-else
>
After payment, do not close this window and wait for confirmation of successful payment.
<br/>
If you have not received a notification of successful payment for a long time,
please refresh the page
</div>
</div>
<div
class=
"text-center mt20"
>
<el-button
v-if=
"!hideconfirmbtn"
type=
"primary"
@
click=
"goPay"
round
class=
"btn-lineG w200px"
>
{{
language
==
0
?
'确定'
:
'Submit'
}}
</el-button>
</div>
</div>
</el-card>
<el-card
class=
"mb60"
v-if=
"form.payStatus == '3'"
>
<div
class=
"text-center"
>
<el-icon
color=
"#32B16C"
size=
"80"
><SuccessFilled
/></el-icon>
<p
class=
"text-success"
>
{{
language
==
0
?
'支付成功'
:
'successful!'
}}
</p>
<h3
class=
"wePrice"
>
{{
language
==
0
?
'¥'
:
'€'
}}{{
form
.
totalFee
||
0
}}
</h3>
</div>
</el-card>
</div>
<div
class=
"box"
v-if=
"errorBox"
>
<el-result
icon=
"error"
:title=
"language==0?'未找到对应订单':'No corresponding order found'"
:sub-title=
"language==0?'请确认订单号是否正确':'Please confirm if the order number is correct'"
>
<template
#
extra
>
<el-button
type=
"primary"
@
click=
"goHome"
class=
"btn-lineG w200px"
round
>
{{
language
==
0
?
'返回首页'
:
'Home'
}}
</el-button>
</
template
>
</el-result>
</div>
</div>
</template>
<
script
setup
>
import
{
Search
}
from
"@element-plus/icons-vue"
import
{
getCurrentInstance
,
ref
}
from
'vue'
import
{
onMounted
}
from
"@vue/runtime-core"
import
{
useRoute
,
useRouter
}
from
"vue-router"
import
*
as
match
from
"@/apiPc/match"
import
MatchInfoRow
from
"@/viewsPc/match/components/matchInfo-row"
;
const
{
proxy
}
=
getCurrentInstance
()
const
route
=
useRoute
()
const
router
=
useRouter
()
const
matchInfo
=
ref
({})
const
approved
=
ref
(
true
)
const
tableData
=
ref
([])
const
payType
=
ref
(
'2'
)
const
orderId
=
ref
(
route
.
query
.
orderId
)
const
matchId
=
ref
()
const
groupId
=
ref
()
import
GroupInfoRow
from
"@/viewsPc/match/components/groupInfo-row"
;
import
CoachInfoRow
from
"@/viewsPc/match/components/coachInfo-row"
;
import
SignInfoTable
from
"@/viewsPc/match/components/signInfo-table"
import
ZuTable
from
"@/viewsPc/match/components/zu-table"
;
import
useUserStore
from
"@/store/modules/user"
;
import
FileUpload
from
"@/components/FileUpload"
;
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
{
ElMessage
}
from
"element-plus"
;
const
isLogin
=
ref
(
false
)
const
language
=
useStorage
(
'language'
,
0
)
const
signInfoList
=
ref
([])
const
zuTableList
=
ref
([])
const
totalFee
=
ref
(
''
)
const
wePayCodeUrl
=
ref
(
''
)
const
form
=
ref
({})
const
voucherObj
=
ref
([])
const
myMemberTable
=
ref
([])
const
upForm
=
ref
({
orderId
:
orderId
.
value
})
const
errorBox
=
ref
(
false
)
const
hideconfirmbtn
=
ref
(
false
)
const
insuranceFeeTotal
=
ref
(
0
)
const
serviceFeeTotal
=
ref
(
0
)
const
zuQuery
=
ref
({
cptId
:
matchId
.
value
,
groupId
:
groupId
.
value
})
const
user
=
useUserStore
().
user
console
.
log
(
route
.
query
.
orderId
)
// 1763462073870237698
getData
()
if
(
useUserStore
().
user
)
{
isLogin
.
value
=
true
}
function
getData
()
{
return
match
.
getMyOrderDetail
({
orderId
:
orderId
.
value
}).
then
(
res
=>
{
totalFee
.
value
=
res
.
data
.
totalFee
form
.
value
=
res
.
data
form
.
value
.
payTypeArr
=
res
.
data
.
payType
.
split
(
','
)
matchId
.
value
=
form
.
value
.
cptId
groupId
.
value
=
form
.
value
.
groupId
||
0
zuQuery
.
value
.
groupId
=
groupId
.
value
zuQuery
.
value
.
cptId
=
matchId
.
value
if
(
isLogin
.
value
){
getSignList
()
if
(
user
.
utype
==
'1'
){
getMyMemberTable
()
}
}
}).
catch
(
err
=>
{
console
.
log
(
err
)
errorBox
.
value
=
true
})
}
function
getMyMemberTable
()
{
match
.
getPerPersonList
({
cptId
:
matchId
.
value
,
searchLabels
:
'1,2,3,4,5,6'
},
user
.
userId
).
then
(
res
=>
{
myMemberTable
.
value
=
res
.
rows
})
}
function
upRR
()
{
if
(
voucherObj
.
value
.
length
==
0
){
ElMessage
.
warning
(
language
.
value
==
0
?
'请上传凭证'
:
'Please upload the voucher'
)
return
}
upForm
.
value
.
voucher
=
voucherObj
.
value
[
0
].
url
match
.
upReceipt
(
upForm
.
value
).
then
(
res
=>
{
getData
()
})
}
function
getSignList
()
{
match
.
getMySignInfoList
(
zuQuery
.
value
).
then
(
res
=>
{
insuranceFeeTotal
.
value
=
0
serviceFeeTotal
.
value
=
0
signInfoList
.
value
=
res
.
data
?.
singleData
||
[]
zuTableList
.
value
=
res
.
data
?.
zuData
||
[]
for
(
var
s
of
signInfoList
.
value
){
insuranceFeeTotal
.
value
=
insuranceFeeTotal
.
value
+
Number
(
s
.
insuranceFee
)
}
for
(
var
z
of
zuTableList
.
value
){
serviceFeeTotal
.
value
=
serviceFeeTotal
.
value
+
Number
(
z
.
project
.
serviceFee
)
}
}).
catch
(
err
=>
{
if
(
isLogin
.
value
){
router
.
push
({
name
:
'myMatch'
})
return
}
})
}
function
goHome
()
{
router
.
push
(
'/'
)
}
function
changePaytype
()
{
hideconfirmbtn
.
value
=
false
wePayCodeUrl
.
value
=
''
if
(
handle
)
{
clearTimeout
(
handle
)
handle
=
null
}
}
function
goPay
(){
if
(
payType
.
value
==
'2'
&&
form
.
value
.
payTypeArr
.
indexOf
(
'2'
)
>-
1
){
match
.
createWePay
({
orderId
:
orderId
.
value
}).
then
(
res
=>
{
wePayCodeUrl
.
value
=
res
.
data
hideconfirmbtn
.
value
=
true
startforGetData
()
})
}
else
if
(
payType
.
value
==
'2'
&&
form
.
value
.
payTypeArr
.
indexOf
(
'2'
)
==-
1
){
ElMessage
.
warning
(
language
.
value
==
0
?
'请选择支付方式'
:
'Please select payment method'
)
return
}
if
(
payType
.
value
==
'4'
){
match
.
createPalPay
({
orderId
:
orderId
.
value
}).
then
(
res
=>
{
if
(
res
.
data
){
location
.
href
=
res
.
data
}
})
}
}
let
handle
;
function
startforGetData
()
{
handle
=
setTimeout
(()
=>
{
getData
().
then
(()
=>
{
if
(
form
.
value
.
payTime
){
if
(
handle
)
{
clearTimeout
(
handle
)
handle
=
null
}
}
else
{
startforGetData
()
}
})
},
2000
)
}
function
showLogin
(){
useUserStore
().
setReLogin
()
}
function
exportSignList
(
n
)
{
var
obj
=
{
cptId
:
matchId
.
value
,
groupId
:
groupId
.
value
,
type
:
n
}
var
fileName
if
(
language
.
value
==
0
){
if
(
n
==
1
){
fileName
=
'参赛人员清单'
}
else
{
fileName
=
'设项报名清单'
}
proxy
.
download
(
'/league/sign/exportCn'
,
{
...
obj
},
`
${
fileName
}
_
${
new
Date
().
getTime
()}
.xlsx`
)
}
else
{
if
(
n
==
1
){
fileName
=
'Participant List'
}
else
{
fileName
=
'LIST OF REGISTERED COMPETITIONS'
}
proxy
.
download
(
'/league/sign/exportEn'
,
{
...
obj
},
`
${
fileName
}
_
${
new
Date
().
getTime
()}
.xlsx`
)
}
}
function
exportPdf
()
{
var
obj
=
{
cptId
:
matchId
.
value
,
groupId
:
groupId
.
value
}
var
fileName
if
(
language
.
value
==
0
){
fileName
=
'设项报名清单'
proxy
.
download
(
'/pdf/exportMySignInfoList'
,
{
...
obj
},
`
${
fileName
}
_
${
new
Date
().
getTime
()}
.pdf`
)
}
else
{
fileName
=
'LIST OF REGISTERED COMPETITIONS'
proxy
.
download
(
'/pdf/exportMySignInfoList'
,
{
...
obj
},
`
${
fileName
}
_
${
new
Date
().
getTime
()}
.pdf`
)
}
}
function
copy
(
str
)
{
navigator
.
clipboard
.
writeText
(
str
).
then
(()
=>
{
ElMessage
.
success
(
language
.
value
==
0
?
'复制成功'
:
'Copy successfully'
)
})
}
</
script
>
<
style
scoped
lang=
"scss"
>
.wePrice
{
font-size
:
24px
;
font-weight
:
400
;}
.el-radio.is-bordered
{
height
:
40px
;
}
.border
{
border
:
1px
solid
#e1e1e1
;}
.leftboderTT
{
font-weight
:
600
;
font-size
:
16px
;
color
:
#453DEA
;
}
.bg-lineg
{
height
:
40px
;
line-height
:
40px
;
font-size
:
18px
;
text-align
:
center
;
}
.table
{
width
:
100%
;
max-width
:
1000px
;
margin
:
20px
auto
;
.head
{
background
:
#EFF2F7
;
height
:
50px
;
font-size
:
16px
;
font-weight
:
400
;
}
th
{
background
:
#FAFBFD
;
font-size
:
14px
;
border-bottom
:
1px
solid
#E5E5E5
;
border-right
:
1px
solid
#E5E5E5
;
}
td
{
border-bottom
:
1px
solid
#E5E5E5
;
border-right
:
1px
solid
#E5E5E5
;
padding
:
10px
;
}
&
.table-border
{
border-top
:
1px
solid
#E5E5E5
;
border-left
:
1px
solid
#E5E5E5
;
}
}
.text-gray
{
font-weight
:
400
;
font-size
:
12px
;
color
:
#929AA0
;
}
.size12
{
font-size
:
12px
;
}
.result
{
font-size
:
22px
;
.flex
{
display
:
flex
;
align-items
:
center
;
font-weight
:
500
;
img
{
margin-right
:
10px
}
}
.priceb
{
color
:
#7B7F83
;
font-size
:
16px
;
text-align
:
right
;
line-height
:
50px
;
span
{
font-weight
:
bold
;
font-size
:
22px
;
font-family
:
DIN
Alternate
;
color
:
#EB6100
;
}
}
}
.skeletonBox
{
position
:
relative
;
overflow
:
hidden
;
.btn-lineG{
position
:
absolute
;
left
:
0
;
right
:
0
;
margin
:
auto
;
top
:
0
;
bottom
:
0
;
width
:
200px
;
box-shadow
:
0
0
1000px
500px
rgba
(
255
,
255
,
255
,
0.5
);
}
}
.payImgbox
{
text-align
:
center
;
border
:
1px
solid
#fff
;
padding
:
20px
;}
.priceBar
{
padding
:
0
0
20px
;
.flex{
display
:
flex
;
justify-content
:
right
;
align-items
:
baseline
;
.item{
font-size
:
16px
;
margin-right
:
15px
;
label{
color
:
#95A1A6
;}
span
{
font-family
:
DIN
Alternate
;}
}
}
.size26
{
font-size
:
26px
;}
}
.rre
{
color
:
#333
;
font-size
:
16px
;
margin-top
:
10px
}
</
style
>
src/viewsPc/center/myReservation.vue
View file @
d7b0a1d
...
...
@@ -3,7 +3,25 @@
<el-card
:body-style=
"
{'padding':'0'}">
<div
class=
"indexTitle"
><h3
class=
"leftboderTT"
>
{{
language
==
0
?
'我的预订'
:
'My reservation'
}}
</h3></div>
<el-empty
:image=
"`/img/order_no.png`"
:image-size=
"228"
v-if=
"list?.length == 0"
/>
<div
v-for=
"b in list"
>
<h3>
{{
b
.
name
}}
</h3>
<div
v-if=
"b.orderType == 0"
>
<div><label
class=
"blueTag"
>
酒店订单
</label>
订单编号:
{{
b
.
id
}}
</div>
<div>
{{
b
.
messageObj
?.
roomStayDate
}}
</div>
<div>
{{
b
.
messageObj
?.
roomName
}}
</div>
<div>
{{
b
.
messageObj
?.
roomInfo
}}
</div>
</div>
{{
b
}}
</div>
<div
class=
"pd20"
></div>
</el-card>
</div>
...
...
@@ -12,8 +30,21 @@
<
script
setup
>
import
{
onMounted
}
from
"@vue/runtime-core"
;
import
{
useStorage
}
from
"@vueuse/core/index"
;
import
{
newbilllist
}
from
"@/apiPc/common"
;
const
language
=
useStorage
(
'language'
,
0
)
const
list
=
ref
([])
onMounted
(()
=>
{
getList
()
})
function
getList
()
{
newbilllist
().
then
(
res
=>
{
list
.
value
=
res
.
rows
for
(
var
b
of
list
.
value
)
{
b
.
messageObj
=
JSON
.
parse
(
b
.
message
)
}
})
}
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/viewsPc/components/homeQuick.vue
View file @
d7b0a1d
...
...
@@ -68,8 +68,8 @@ const props = defineProps({
})
const
language
=
useStorage
(
'language'
,
0
)
function
goBooking
(
n
)
{
ElMessage
.
warning
(
language
.
value
==
0
?
'建设中,敬请期待'
:
'Building!'
)
return
//
ElMessage.warning(language.value==0?'建设中,敬请期待':'Building!')
//
return
switch
(
n
)
{
case
0
:
// 票务
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment