parent
c4c85b43da
commit
8b2e933124
@ -0,0 +1,138 @@ |
||||
<template> |
||||
<view class="v-pages-bg bgcolor p-b-24"> |
||||
<form @submit="formSubmit" @reset="formReset"> |
||||
<view class="v-card small container-fluid m-t-24"> |
||||
{{orderInfo.startDate1}}{{orderInfo.dayNum}}晚{{orderInfo.endDate1}} |
||||
<view class="card-form"> |
||||
{{orderInfo.houseName}} |
||||
</view> |
||||
</view> |
||||
<view class="v-card small container-fluid m-t-24"> |
||||
<view class="card-title"> |
||||
<view class="text"><text>入住信息</text></view> |
||||
</view> |
||||
<uni-row> |
||||
<uni-col :span="6"> |
||||
<view class="content-box-label">房间数量</view> |
||||
</uni-col> |
||||
<uni-col class="content-box-col" :span="18"> |
||||
<uni-easyinput :inputBorder="false" v-model="formData.roomNumber" placeholder="请输入房间数量" /> |
||||
</uni-col> |
||||
</uni-row> |
||||
<uni-row> |
||||
<uni-col :span="6"> |
||||
<view class="content-box-label">入住人</view> |
||||
</uni-col> |
||||
<uni-col class="content-box-col" :span="18"> |
||||
<uni-easyinput :inputBorder="false" v-model="formData.phoneNumber" placeholder="请输入入住人姓名" /> |
||||
</uni-col> |
||||
</uni-row> |
||||
<uni-row> |
||||
<uni-col :span="6"> |
||||
<view class="content-box-label">身份证</view> |
||||
</uni-col> |
||||
<uni-col class="content-box-col" :span="18"> |
||||
<uni-easyinput :inputBorder="false" v-model="formData.idtype" placeholder="请输入身份证号码" /> |
||||
</uni-col> |
||||
</uni-row> |
||||
<uni-row> |
||||
<uni-col :span="6"> |
||||
<view class="content-box-label">联系手机</view> |
||||
</uni-col> |
||||
<uni-col class="content-box-col" :span="18"> |
||||
<uni-easyinput :inputBorder="false" v-model="formData.idCardNumber" placeholder="请输入手机号码" /> |
||||
</uni-col> |
||||
</uni-row> |
||||
</view> |
||||
<view class="v-card small container-fluid m-t-24"> |
||||
<view class="card-title"> |
||||
<view class="text"><text>发票服务</text></view> |
||||
</view> |
||||
<view class="m-t-40 v-form-content">如需发票,请向酒店前台索取。</view> |
||||
</view> |
||||
<view class="v-card small container-fluid m-t-24"> |
||||
<view class="card-title"> |
||||
<view class="text"><text>下单说明</text></view> |
||||
</view> |
||||
<view class="m-t-40 v-form-content">订单需等待商家确认后才生效,订单确认结果以平台订单信息为准。</view> |
||||
</view> |
||||
<view class="v-order-submit row flex-align-center"> |
||||
<view class="col price"> |
||||
<text class="pre">总价</text> |
||||
<text class="text">¥</text> |
||||
<text class="number">{{orderInfo.housePrice}}</text> |
||||
</view> |
||||
<view class="btn" @click="orderSubmit">提交订单</view> |
||||
</view> |
||||
</form> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
data() { |
||||
return { |
||||
orderInfo: {}, |
||||
formData: { |
||||
roomNumber: undefined, |
||||
phoneNumber: undefined, |
||||
idtype: undefined, |
||||
idCardNumber: undefined, |
||||
} |
||||
} |
||||
}, |
||||
onLoad(options) { |
||||
const ticket = JSON.parse(decodeURIComponent(options.ticket)); |
||||
this.orderInfo = ticket |
||||
}, |
||||
methods: { |
||||
orderSubmit() { |
||||
|
||||
const userInfo = uni.getStorageSync("userInfo"); |
||||
const extConfig = uni.getExtConfigSync ? uni.getExtConfigSync() : {}; |
||||
let appId = extConfig.app_id |
||||
|
||||
const params = { |
||||
openid: userInfo.openid, |
||||
appid: appId, |
||||
tenantId: this.tentId, |
||||
}; |
||||
var data = { |
||||
"hotelId": this.orderInfo.hotelId, |
||||
"hotelName": this.orderInfo.hotelName, |
||||
"orderAmount": this.orderInfo.housePrice, |
||||
"checkTime": this.orderInfo.startDate, |
||||
"checkOutTime": this.orderInfo.endDate, |
||||
"bedId": this.orderInfo.id, |
||||
"roomsNums": Number(this.formData.roomNumber), |
||||
|
||||
"mobile": "15512225250", |
||||
"openid": "111", |
||||
"appid": "2", |
||||
"tenantId": "1", |
||||
|
||||
"checkInPersonInfoDTOList": [{ |
||||
"name": "入住人1", |
||||
"phoneNumber": "15512225258", |
||||
"idtype": "1", |
||||
"idCardNumber": "130682991" |
||||
}] |
||||
}; |
||||
console.log(data) |
||||
uni.navigateTo({ |
||||
url: "/subPageC/orderHomestay/order?data=" |
||||
}); |
||||
this.$Request.post(this.$config.createHotelOrder, data, 'json', null, false, null).then((res) => { |
||||
console.log("asdf",res) |
||||
|
||||
}); |
||||
|
||||
|
||||
} |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style lang="scss" scoped> |
||||
|
||||
</style> |
@ -0,0 +1,111 @@ |
||||
<template> |
||||
<view class="v-order-cancel"> |
||||
<view class="v-card container-fluid"> |
||||
<view>退款金额</view> |
||||
<view>退款进度</view> |
||||
<view class="v-timeline m-t-24"> |
||||
<view class="v-timeline-item"> |
||||
<view class="v-timeline-item__content">发起退款申请</view> |
||||
<view class="v-timeline-item__timestamp">2024-09-13 16:23:22</view> |
||||
</view> |
||||
<view class="v-timeline-item"> |
||||
<view class="v-timeline-item__content">微信支付已受理</view> |
||||
<view class="v-timeline-item__timestamp">2024-09-13 16:23:22</view> |
||||
</view> |
||||
<view class="v-timeline-item active"> |
||||
<view class="v-timeline-item__content">退款已到账</view> |
||||
<view class="v-timeline-item__tip">退款已原路退回!</view> |
||||
<view class="v-timeline-item__timestamp">2024-09-13 16:23:22</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
data() { |
||||
return { |
||||
|
||||
} |
||||
}, |
||||
onLoad() { |
||||
this.getInitPage() |
||||
}, |
||||
methods: { |
||||
getInitPage() {} |
||||
|
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style lang="scss"> |
||||
/*每个页面公共css */ |
||||
@import '../../static/common.scss'; |
||||
|
||||
.v-timeline { |
||||
padding:20rpx; |
||||
|
||||
.v-timeline-item { |
||||
position: relative; |
||||
padding: 0 30rpx 20rpx 30rpx; |
||||
margin-bottom: 20rpx; |
||||
|
||||
&:before { |
||||
content: ""; |
||||
position: absolute; |
||||
left: -10rpx; |
||||
top: 10rpx; |
||||
z-index: 1; |
||||
height: 20rpx; |
||||
width: 20rpx; |
||||
border-radius: 20rpx; |
||||
background-color: #0983FF; |
||||
} |
||||
|
||||
&:after { |
||||
content: ""; |
||||
position: absolute; |
||||
left: 0; |
||||
top: 15rpx; |
||||
height: 100%; |
||||
width: 1rpx; |
||||
background-color: #eeeeee; |
||||
} |
||||
|
||||
.v-timeline-item__content { |
||||
font-size: 28rpx; |
||||
color: #1B1B1B; |
||||
} |
||||
|
||||
.v-timeline-item__tip { |
||||
margin: 8rpx 0; |
||||
font-size: 26rpx; |
||||
color: #1B1B1B; |
||||
} |
||||
|
||||
.v-timeline-item__timestamp { |
||||
font-size: 24rpx; |
||||
color: #808080; |
||||
} |
||||
|
||||
&.active { |
||||
.v-timeline-item__content { |
||||
color: #0983FF; |
||||
} |
||||
|
||||
&:after { |
||||
display: none; |
||||
} |
||||
|
||||
&:before { |
||||
width: 30rpx; |
||||
height: 30rpx; |
||||
border-radius: 30rpx; |
||||
top:0; |
||||
left: -15rpx; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
</style> |
@ -0,0 +1,26 @@ |
||||
<template> |
||||
<view> |
||||
<view class="v-card small container-fluid m-t-24"> |
||||
<view></view> |
||||
</view> |
||||
</view> |
||||
|
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
data() { |
||||
return {} |
||||
}, |
||||
onLoad: function(options) { |
||||
this.data = JSON.parse(decodeURIComponent(options.data)); |
||||
this.detailInfo(); |
||||
}, |
||||
methods: { |
||||
detailInfo() {} |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style> |
||||
</style> |
@ -0,0 +1,110 @@ |
||||
<template> |
||||
<view class="v-order-cancel"> |
||||
<view class="v-card container-fluid"> |
||||
<view class="v-order-title">取消原因<text class="text">*</text></view> |
||||
<view class="v-order-tip">请告知取消原因,我们将努力改善服务</view> |
||||
<view class="v-order-cancel-list"> |
||||
<view class="list_item row" v-for="(item,index) in cancelList" :key="index"> |
||||
<view class="label col">{{item.name}}</view> |
||||
<view> |
||||
<radio :value="item.value" :checked="index === current" /> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
<view class="v-order-bottom"> |
||||
<view class="btn">确认取消订单</view> |
||||
</view> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
data() { |
||||
return { |
||||
cancelList: [], |
||||
current: 0 |
||||
} |
||||
}, |
||||
onLoad() { |
||||
this.getInitPage() |
||||
}, |
||||
methods: { |
||||
getInitPage() { |
||||
this.cancelList = [{ |
||||
name: "出行取消", |
||||
value: 0 |
||||
}, { |
||||
name: "计划有变", |
||||
value: 1 |
||||
}, { |
||||
name: "交通延误", |
||||
value: 2 |
||||
}, { |
||||
name: "身体原因", |
||||
value: 3 |
||||
}, { |
||||
name: "定错日期或酒店", |
||||
value: 4 |
||||
}, { |
||||
name: "重复购买", |
||||
value: 5 |
||||
}, ] |
||||
} |
||||
|
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style lang="scss"> |
||||
/*每个页面公共css */ |
||||
@import '../../static/common.scss'; |
||||
|
||||
.v-order-title { |
||||
font-size: 32rpx; |
||||
|
||||
.text { |
||||
color: #E02222; |
||||
margin-left: 8rpx; |
||||
} |
||||
|
||||
margin-bottom: 24rpx; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.v-order-tip { |
||||
font-size: 24rpx; |
||||
color: #999999; |
||||
} |
||||
|
||||
.v-order-cancel-list { |
||||
padding: 2rpx 30rpx; |
||||
margin-top: 20rpx; |
||||
border-radius: 10rpx; |
||||
background: linear-gradient(to bottom, rgba(9, 131, 255, .05), transparent); |
||||
|
||||
.list_item { |
||||
margin: 30rpx 0; |
||||
} |
||||
} |
||||
|
||||
.v-order-bottom { |
||||
position: fixed; |
||||
bottom: 0; |
||||
left: 0; |
||||
width: 100%; |
||||
padding: 24rpx 32rpx; |
||||
background-color: #fff; |
||||
box-sizing: border-box; |
||||
|
||||
.btn { |
||||
font-size: 30rpx; |
||||
height: 88rpx; |
||||
line-height: 88rpx; |
||||
border-radius: 88rpx; |
||||
color: #fff; |
||||
text-align: center; |
||||
background: linear-gradient(to right, #0983FF, #57ABFF); |
||||
} |
||||
} |
||||
</style> |
@ -0,0 +1,404 @@ |
||||
<template> |
||||
<view class="v-order-detail"> |
||||
<view class="v-order-bg"></view> |
||||
<view class="v-order-detail-state"> |
||||
<view class="order-top"> |
||||
<view class="state">待付款</view> |
||||
<view class="tip">酒店房间有限,请尽快支付,超时后订单将自动取消</view> |
||||
<view class="time">25:25</view> |
||||
</view> |
||||
<view class="row order-top-btn"> |
||||
<view class="col-12"> |
||||
<view class="pay-btn">去支付</view> |
||||
</view> |
||||
<view class="col-12"> |
||||
<view class="cancel-btn">取消订单</view> |
||||
</view> |
||||
</view> |
||||
<view v-if="false"> |
||||
<view class="pay-btn">再次约定</view> |
||||
</view> |
||||
<view class="row describe"> |
||||
<view class="dec col">退款进度:<text>退款成功</text></view> |
||||
<view class="btn">查看详情</view> |
||||
</view> |
||||
</view> |
||||
|
||||
<view class="v-card container-fluid m-t--80"> |
||||
<view class="v-form-item row"> |
||||
<view class="label">取消规则</view> |
||||
<view class="content">09月13日18:00前,可免费取消</view> |
||||
</view> |
||||
</view> |
||||
|
||||
<view class="v-card container-fluid m-t-24"> |
||||
<view class="v-form"> |
||||
<view class="v-form-item row"> |
||||
<view class="col row"> |
||||
<view class="label">在线支付</view> |
||||
<view class="content"> |
||||
<text class="price">1520.00</text> |
||||
</view> |
||||
</view> |
||||
<view class="detail-btn">详情</view> |
||||
</view> |
||||
<view class="v-form-line"></view> |
||||
<view class="v-form-item row"> |
||||
<view class="label">发票报销</view> |
||||
<view class="content">如需发票,请向酒店前台索取。 </view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
|
||||
<view class="v-card container-fluid m-t-24"> |
||||
<view class="v-order-info row"> |
||||
<view class="info-image"></view> |
||||
<view class="info-content"> |
||||
<view class="title">石家庄西部长青璞祯酒店</view> |
||||
<view class="address">鹿泉区白鹿乡梁庄村西部长青休博城</view> |
||||
</view> |
||||
</view> |
||||
<view class="row v-order-info-btn"> |
||||
<view class="btn col-12">地图导航</view> |
||||
<view class="btn col">咨询电话</view> |
||||
</view> |
||||
</view> |
||||
|
||||
<view class="v-card container-fluid m-t-24"> |
||||
<view class="v-form-date row flex-align-center"> |
||||
<view class="start"><text class="date">9月12日</text></view> |
||||
<text class="mid">1晚</text> |
||||
<view class="end"><text class="date">09月12日</text></view> |
||||
</view> |
||||
<view class="v-form-name m-t-12">豪华大床房</view> |
||||
<view class="v-form-tip"><text>无早餐</text> <text>1张2米特大床</text> <text>2人入住</text> <text>45㎡</text></view> |
||||
<view class="v-form bg m-t-24"> |
||||
<view class="v-form-item row"> |
||||
<view class="label">入住人</view> |
||||
<view class="content">张春荣</view> |
||||
</view> |
||||
<view class="v-form-item row"> |
||||
<view class="label">联系手机</view> |
||||
<view class="content">157144552</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
|
||||
<view class="v-card container-fluid m-t-24 m-b-24"> |
||||
<view class="v-form-title">订单信息</view> |
||||
<view class="v-form"> |
||||
<view class="v-form-item row"> |
||||
<view class="label">订单号</view> |
||||
<view class="content">567389478348534</view> |
||||
</view> |
||||
<view class="v-form-item row"> |
||||
<view class="label">下单时间</view> |
||||
<view class="content">2024-08-20 12:00:01</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
data() { |
||||
return { |
||||
title: 'Hello' |
||||
} |
||||
}, |
||||
onLoad() { |
||||
|
||||
}, |
||||
methods: { |
||||
|
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style lang="scss"> |
||||
/*每个页面公共css */ |
||||
@import '../../static/common.scss'; |
||||
|
||||
.v-order-detail { |
||||
padding-bottom: 24rpx; |
||||
} |
||||
|
||||
.v-order-detail-state { |
||||
position: relative; |
||||
z-index: 9; |
||||
padding: 40rpx 0 100rpx 0; |
||||
|
||||
.order-top { |
||||
position: relative; |
||||
padding: 0 40rpx; |
||||
|
||||
.state { |
||||
font-size: 44rpx; |
||||
color: #fff; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.tip { |
||||
margin-top: 10rpx; |
||||
font-size: 26rpx; |
||||
color: #fff; |
||||
} |
||||
|
||||
.time { |
||||
position: absolute; |
||||
top: 0; |
||||
right: 0; |
||||
font-size: 32rpx; |
||||
padding: 8rpx 40rpx 8rpx 30rpx; |
||||
border-radius: 30rpx 0 0 30rpx; |
||||
color: #fff; |
||||
background: linear-gradient(to right, rgba(255, 255, 255, .2), transparent); |
||||
|
||||
&:before { |
||||
content: ""; |
||||
position: absolute; |
||||
top: -40rpx; |
||||
left: -50rpx; |
||||
width: 140rpx; |
||||
height: 140rpx; |
||||
border-radius: 140rpx; |
||||
background: linear-gradient(to right, rgba(255, 255, 255, .2), transparent); |
||||
} |
||||
|
||||
&::after { |
||||
content: ""; |
||||
position: absolute; |
||||
top: -25rpx; |
||||
left: -30rpx; |
||||
width: 110rpx; |
||||
height: 110rpx; |
||||
border-radius: 120rpx; |
||||
background: linear-gradient(to right, rgba(255, 255, 255, .2), transparent); |
||||
} |
||||
} |
||||
} |
||||
|
||||
.order-top-btn { |
||||
margin: 12rpx 10rpx; |
||||
|
||||
.pay-btn { |
||||
margin: 0 20rpx; |
||||
background-color: #fff; |
||||
text-align: center; |
||||
height: 64rpx; |
||||
line-height: 64rpx; |
||||
border-radius: 64rpx; |
||||
color: #0983FF; |
||||
} |
||||
|
||||
.cancel-btn { |
||||
margin: 0 20rpx; |
||||
border: 1rpx solid #fff; |
||||
color: #fff; |
||||
text-align: center; |
||||
height: 64rpx; |
||||
line-height: 64rpx; |
||||
border-radius: 64rpx; |
||||
background: linear-gradient(to right, transparent, #0983FF); |
||||
} |
||||
} |
||||
|
||||
.describe { |
||||
padding: 10rpx 40rpx; |
||||
|
||||
background: linear-gradient(to right, rgba(255, 255, 255, .2), transparent); |
||||
|
||||
.dec { |
||||
color: #fff; |
||||
font-size: 26rpx; |
||||
} |
||||
|
||||
.btn { |
||||
border-radius: 40rpx; |
||||
padding: 0 20rpx; |
||||
height: 40rpx; |
||||
line-height: 40rpx; |
||||
border: 1rpx solid #fff; |
||||
color: #fff; |
||||
font-size: 26rpx; |
||||
} |
||||
} |
||||
} |
||||
|
||||
.v-form-date {} |
||||
|
||||
.v-form-date { |
||||
.start .date { |
||||
font-size: 34rpx; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.start .text { |
||||
font-size: 24rpx; |
||||
color: #666666; |
||||
} |
||||
|
||||
.end .date { |
||||
font-size: 34rpx; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.end .text { |
||||
font-size: 24rpx; |
||||
color: #666666; |
||||
} |
||||
|
||||
.mid { |
||||
position: relative; |
||||
border: 1rpx solid #0983FF; |
||||
padding: 0 8rpx; |
||||
height: 30rpx; |
||||
line-height: 30rpx; |
||||
border-radius: 30rpx; |
||||
margin: 0 30rpx; |
||||
font-size: 20rpx; |
||||
color: #0983FF; |
||||
|
||||
&::before, |
||||
&::after { |
||||
content: ""; |
||||
position: absolute; |
||||
|
||||
top: 50%; |
||||
transform: translate(0, -50%); |
||||
width: 20rpx; |
||||
height: 1rpx; |
||||
background-color: #0983FF; |
||||
} |
||||
|
||||
&::before { |
||||
left: -20rpx; |
||||
} |
||||
|
||||
&::after { |
||||
right: -20rpx; |
||||
} |
||||
} |
||||
} |
||||
|
||||
.v-form-title { |
||||
margin-bottom: 24rpx; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.v-form-name { |
||||
margin-top: 8rpx; |
||||
font-size: 30rpx; |
||||
color: #1B1B1B; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.v-form-line { |
||||
height: 1rpx; |
||||
background-color: #EEEEEE; |
||||
margin: 12rpx 0; |
||||
} |
||||
|
||||
.v-form-tip { |
||||
text { |
||||
font-size: 24rpx; |
||||
margin-right: 16rpx; |
||||
color: #808080; |
||||
} |
||||
} |
||||
|
||||
.v-order-info { |
||||
.info-image { |
||||
margin-left: 10rpx; |
||||
margin-right: 20rpx; |
||||
width: 180rpx; |
||||
height: 120rpx; |
||||
} |
||||
|
||||
.info-content { |
||||
.title { |
||||
font-size: 30rpx; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.address { |
||||
margin-top: 8rpx; |
||||
font-size: 24rpx; |
||||
color: #808080; |
||||
} |
||||
} |
||||
} |
||||
|
||||
.v-order-detail { |
||||
position: relative; |
||||
} |
||||
|
||||
|
||||
|
||||
.v-order-bg { |
||||
position: fixed; |
||||
top: 0; |
||||
left: 0; |
||||
z-index: 1; |
||||
width: 100%; |
||||
height: 600rpx; |
||||
background: linear-gradient(to bottom, #0983FF, transparent); |
||||
} |
||||
|
||||
.v-order-info-btn { |
||||
margin-top: 20rpx; |
||||
margin-left: -10rpx; |
||||
|
||||
.btn { |
||||
margin-left: 10rpx; |
||||
height: 60rpx; |
||||
line-height: 60rpx; |
||||
border-radius: 60rpx; |
||||
background-color: #F6F7FB; |
||||
text-align: center; |
||||
font-size: 24rpx; |
||||
color: #1B1B1B; |
||||
} |
||||
} |
||||
|
||||
.v-order-detail-state {} |
||||
|
||||
.v-form { |
||||
|
||||
&.bg { |
||||
padding: 20rpx; |
||||
border-radius: 10rpx; |
||||
background: linear-gradient(to bottom, #F7F9FF, #fff); |
||||
} |
||||
} |
||||
|
||||
.v-form-item { |
||||
|
||||
&:not(:last-child) { |
||||
margin-bottom: 10rpx; |
||||
} |
||||
|
||||
.detail-btn { |
||||
font-size: 24rpx; |
||||
color: #0983FF; |
||||
} |
||||
|
||||
.label { |
||||
width: 160rpx; |
||||
font-size: 28rpx; |
||||
color: #808080; |
||||
} |
||||
|
||||
.content { |
||||
font-size: 28rpx; |
||||
color: #1B1B1B; |
||||
} |
||||
|
||||
.price { |
||||
font-size: 32rpx; |
||||
color: #E02222; |
||||
font-weight: bold; |
||||
} |
||||
} |
||||
</style> |
@ -0,0 +1,192 @@ |
||||
<template> |
||||
<view class="v-order-list"> |
||||
<view class="v-order-list-item container-fluid m-b-24" v-for="(item,index) in orderList"> |
||||
<view class="row box"> |
||||
<view class="image"></view> |
||||
<view class="content col"> |
||||
<view class="title">{{item.name}}</view> |
||||
<view class="date">{{item.startData}}{{item.endData}}</view> |
||||
<view class="price">总价:¥{{item.price}}</view> |
||||
<view class="bottom" v-if="item.type=='0'"> |
||||
<view class="btn">去支付</view> |
||||
<view class="btn">取消订单</view> |
||||
</view> |
||||
<view class="bottom" v-if="item.type=='1'"> |
||||
<view class="btn">再次预定</view> |
||||
</view> |
||||
</view> |
||||
</view> |
||||
<view class="tip-bage"></view> |
||||
<view class="tip-state" v-if="item.type=='2'">等待商家确认中,请及时关注订单状态</view> |
||||
<view class="state" :class="'type'+item.type">{{stateMessage(item.type)}}</view> |
||||
</view> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
data() { |
||||
return { |
||||
orderList: [] |
||||
} |
||||
}, |
||||
onLoad() { |
||||
this.getInitPage() |
||||
}, |
||||
methods: { |
||||
getInitPage() { |
||||
this.orderList = [{ |
||||
name: "2间,豪华大床房", |
||||
startData: "2024-09-12", |
||||
endData: "2024-09-13", |
||||
price: 1541, |
||||
type: "0" |
||||
}, |
||||
{ |
||||
name: "2间,豪华大床房", |
||||
startData: "2024-09-12", |
||||
endData: "2024-09-13", |
||||
price: 1541, |
||||
type: "1" |
||||
}, |
||||
{ |
||||
name: "2间,豪华大床房", |
||||
startData: "2024-09-12", |
||||
endData: "2024-09-13", |
||||
price: 1541, |
||||
type: "2" |
||||
}, |
||||
{ |
||||
name: "2间,豪华大床房", |
||||
startData: "2024-09-12", |
||||
endData: "2024-09-13", |
||||
price: 1541, |
||||
type: "3" |
||||
} |
||||
] |
||||
}, |
||||
stateMessage: function(val) { |
||||
switch (val) { |
||||
case "0": |
||||
return "待支付" |
||||
break; |
||||
case "1": |
||||
return "待确认" |
||||
break; |
||||
case "2": |
||||
return "预订成功" |
||||
break; |
||||
case "3": |
||||
return "已取消" |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
</script> |
||||
|
||||
<style lang="scss"> |
||||
/*每个页面公共css */ |
||||
@import '../../static/common.scss'; |
||||
|
||||
.v-order-list { |
||||
padding: 0; |
||||
} |
||||
|
||||
.v-order-list-item { |
||||
position: relative; |
||||
z-index: 9; |
||||
|
||||
overflow: hidden; |
||||
background-color: #fff; |
||||
border-radius: 10rpx; |
||||
|
||||
.box { |
||||
padding: 30rpx 24rpx 20rpx 24rpx; |
||||
} |
||||
|
||||
.tip-bage { |
||||
position: absolute; |
||||
left: 0; |
||||
top: 20rpx; |
||||
width: 40rpx; |
||||
height: 36rpx; |
||||
background-color: #0983FF; |
||||
} |
||||
|
||||
.state { |
||||
position: absolute; |
||||
right: 0; |
||||
top: 30rpx; |
||||
font-size: 26rpx; |
||||
|
||||
&.type0 { |
||||
color: #FF850A; |
||||
padding: 8rpx 30rpx 8rpx 20rpx; |
||||
border-radius: 30rpx 0 0 30rpx; |
||||
background: linear-gradient(to right, rgba(255, 133, 10, .2), transparent); |
||||
} |
||||
|
||||
&.type1 { |
||||
color: #0983FF; |
||||
padding: 8rpx 30rpx 8rpx 20rpx; |
||||
border-radius: 30rpx 0 0 30rpx; |
||||
background: linear-gradient(to right, rgba(9, 131, 255, .2), transparent); |
||||
} |
||||
|
||||
&.type2 { |
||||
color: #07C060; |
||||
padding: 8rpx 30rpx 8rpx 20rpx; |
||||
border-radius: 30rpx 0 0 30rpx; |
||||
background: linear-gradient(to right, rgba(7, 192, 96, .2), transparent); |
||||
} |
||||
|
||||
&.type3 { |
||||
color: #666666; |
||||
padding: 8rpx 30rpx 8rpx 20rpx; |
||||
border-radius: 30rpx 0 0 30rpx; |
||||
background: linear-gradient(to right, rgba(102, 102, 102, .2), transparent); |
||||
} |
||||
} |
||||
|
||||
.tip-state { |
||||
|
||||
color: #0983FF; |
||||
padding: 16rpx 30rpx; |
||||
font-size: 28rpx; |
||||
background: linear-gradient(to right, rgba(9, 131, 255, .15), transparent); |
||||
} |
||||
|
||||
.image { |
||||
width: 180rpx; |
||||
margin-right: 20rpx; |
||||
} |
||||
|
||||
.content { |
||||
|
||||
.title, |
||||
.date, |
||||
.price { |
||||
margin: 8rpx; |
||||
color: #666666; |
||||
font-size: 28rpx; |
||||
} |
||||
} |
||||
|
||||
.bottom { |
||||
text-align: right; |
||||
|
||||
.btn { |
||||
display: inline-block; |
||||
margin: 0 10rpx; |
||||
padding: 0 20rpx; |
||||
border: 1rpx solid #CCCCCC; |
||||
color: #1B1B1B; |
||||
text-align: center; |
||||
height: 64rpx; |
||||
line-height: 64rpx; |
||||
border-radius: 64rpx; |
||||
} |
||||
} |
||||
} |
||||
</style> |
@ -0,0 +1,14 @@ |
||||
<template> |
||||
<view class="v-pay-result"> |
||||
<view class="image"></view> |
||||
<view class="">支付成功</view> |
||||
<view class="price">1520.00</view> |
||||
<view class="btn">1520.00</view> |
||||
</view> |
||||
</template> |
||||
|
||||
<script> |
||||
</script> |
||||
|
||||
<style> |
||||
</style> |
Loading…
Reference in new issue