|
|
|
@ -1,56 +1,26 @@ |
|
|
|
|
<template> |
|
|
|
|
<view class="v-pages bgcolor p-b-24"> |
|
|
|
|
<view class="v-card order small container-fluid m-t-24" style="padding-bottom: 60rpx;"> |
|
|
|
|
<view class="v-order-form"> |
|
|
|
|
<view class="v-form-date row flex-align-center"> |
|
|
|
|
<view class="start"><text class="date">{{orderInfo.startDate1}}</text></view> |
|
|
|
|
<text class="mid">{{orderInfo.dayNum}}晚</text> |
|
|
|
|
<view class="end"><text class="date">{{orderInfo.endDate1}}</text></view> |
|
|
|
|
</view> |
|
|
|
|
<view class="v-order-title"> |
|
|
|
|
{{orderInfo.houseName}} |
|
|
|
|
</view> |
|
|
|
|
<view class="v-order-tip"> |
|
|
|
|
<!-- <text |
|
|
|
|
v-if="orderInfo.bedNum">{{orderInfo.bedNum}}张床{{orderInfo.bedWide}}米宽{{orderInfo.houseNam}}</text> --> |
|
|
|
|
<text v-if="orderInfo.guest">{{orderInfo.guest}}人入住</text> <text class="m-l-10" |
|
|
|
|
v-if="orderInfo.houseArea">{{orderInfo.houseArea}}㎡</text> |
|
|
|
|
</view> |
|
|
|
|
<view class="v-order-wait">需等待商家确认</view> |
|
|
|
|
</view> |
|
|
|
|
<view>{{orderInfo.goodsName}}</view><!-- 商品名称 --> |
|
|
|
|
<view>{{orderInfo.price}}</view><!-- 单价 --> |
|
|
|
|
<view>{{orderInfo.merchantId}}</view><!-- 商户id --> |
|
|
|
|
<view>{{orderInfo.merchantName}}</view><!-- 商户名称 --> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
<view class="v-card order small container-fluid m-t-24"> |
|
|
|
|
<view class="v-order-title m-b-24"> |
|
|
|
|
<view class="text"><text>入住信息</text></view> |
|
|
|
|
<view class="text"><text>信息</text></view> |
|
|
|
|
</view> |
|
|
|
|
<uni-forms class="v-order-form" ref="form" :modelValue="formData"> |
|
|
|
|
<!-- 整套民宿预定,暂时不显示房间数量 --> |
|
|
|
|
<!-- <uni-forms-item label="房间数量" name="roomNumber"> |
|
|
|
|
<uni-easyinput class="v-input" type="number" :inputBorder="false" v-model="formData.roomNumber" |
|
|
|
|
placeholder="请输入房间数量" /> |
|
|
|
|
</uni-forms-item> --> |
|
|
|
|
<uni-forms-item label="入住人" name="name"> |
|
|
|
|
<uni-easyinput class="v-input" type="text" :inputBorder="false" placeholderStyle="fontSize:24rpx" |
|
|
|
|
v-model="formData.name" placeholder="请输入入住人姓名" /> |
|
|
|
|
</uni-forms-item> |
|
|
|
|
<uni-forms-item label="身份证号" name="idCardNumber"> |
|
|
|
|
<uni-forms-item label="联系人" name="name"> |
|
|
|
|
<uni-easyinput class="v-input" type="text" :inputBorder="false" placeholderStyle="fontSize:24rpx" |
|
|
|
|
v-model="formData.idCardNumber" placeholder="请输入身份证号码" /> |
|
|
|
|
v-model="formData.name" placeholder="请输入联系人姓名" /> |
|
|
|
|
</uni-forms-item> |
|
|
|
|
<uni-forms-item label="联系手机" name="phoneNumber"> |
|
|
|
|
<uni-forms-item label="联系电话" name="phoneNumber"> |
|
|
|
|
<uni-easyinput class="v-input" type="number" :inputBorder="false" placeholderStyle="fontSize:24rpx" |
|
|
|
|
v-model="formData.phoneNumber" placeholder="请输入手机号码" /> |
|
|
|
|
</uni-forms-item> |
|
|
|
|
</uni-forms> |
|
|
|
|
</view> |
|
|
|
|
<view class="v-card order small container-fluid m-t-24"> |
|
|
|
|
<view class="v-order-title"> |
|
|
|
|
<view class="text"><text>发票服务</text></view> |
|
|
|
|
</view> |
|
|
|
|
<view class="m-t-24 v-form-content">如需发票,请向民宿前台索取。</view> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
<view class="v-card order small bg1 container-fluid m-t-24"> |
|
|
|
|
<view class="v-order-title"> |
|
|
|
|
<view class="text"><text>下单说明</text></view> |
|
|
|
@ -91,40 +61,18 @@ |
|
|
|
|
orderInfo: {}, |
|
|
|
|
formData: { |
|
|
|
|
name: undefined, |
|
|
|
|
roomNumber: 1, //整套逻辑,暂定房间数为1 |
|
|
|
|
phoneNumber: undefined, |
|
|
|
|
idtype: 1, |
|
|
|
|
idCardNumber: undefined, |
|
|
|
|
// phoneNumber: undefined, |
|
|
|
|
// idtype: undefined, |
|
|
|
|
// idCardNumber: undefined, |
|
|
|
|
phoneNumber: undefined |
|
|
|
|
}, |
|
|
|
|
orderPay: undefined, |
|
|
|
|
totalPrice: undefined, |
|
|
|
|
totalPrice: undefined, //总价格 |
|
|
|
|
totalNum:undefined, //总数量 |
|
|
|
|
rules: { |
|
|
|
|
name: { |
|
|
|
|
rules: [{ |
|
|
|
|
required: true, |
|
|
|
|
errorMessage: '入住人姓名不能为空!', |
|
|
|
|
errorMessage: '联系人姓名不能为空!', |
|
|
|
|
}] |
|
|
|
|
}, |
|
|
|
|
idCardNumber: { |
|
|
|
|
rules: [{ |
|
|
|
|
required: true, |
|
|
|
|
errorMessage: '身份证号码不能为空!', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
validateFunction: function(rule, value, data, callback) { |
|
|
|
|
const reg = |
|
|
|
|
/(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/; |
|
|
|
|
if (reg.test(value) == false) { |
|
|
|
|
callback('请输入正确的身份证号码!') |
|
|
|
|
} |
|
|
|
|
return true |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
}, |
|
|
|
|
phoneNumber: { |
|
|
|
|
rules: [{ |
|
|
|
|
required: true, |
|
|
|
@ -149,10 +97,8 @@ |
|
|
|
|
this.$refs.form.setRules(this.rules) |
|
|
|
|
}, |
|
|
|
|
onLoad(options) { |
|
|
|
|
const ticket = JSON.parse(decodeURIComponent(options.ticket)); |
|
|
|
|
this.orderInfo = ticket |
|
|
|
|
this.totalPrice = Math.round(Number(this.orderInfo.housePrice) * Number(this.orderInfo.dayNum) * 100) / 100 |
|
|
|
|
this.formData.phoneNumber = this.orderInfo.mobile |
|
|
|
|
const shop = JSON.parse(decodeURIComponent(options.shop)); |
|
|
|
|
this.orderInfo = shop |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
orderSubmit() { |
|
|
|
@ -162,22 +108,19 @@ |
|
|
|
|
let appId = extConfig.app_id |
|
|
|
|
|
|
|
|
|
var data = { |
|
|
|
|
"hotelId": this.orderInfo.hotelId, |
|
|
|
|
"hotelName": this.orderInfo.hotelName, |
|
|
|
|
"orderAmount": this.totalPrice, |
|
|
|
|
"checkTime": this.orderInfo.startDate, |
|
|
|
|
"checkOutTime": this.orderInfo.endDate, |
|
|
|
|
"bedId": this.orderInfo.id, |
|
|
|
|
"roomsNums": Number(this.formData.roomNumber), |
|
|
|
|
|
|
|
|
|
"mobile": this.orderInfo.mobile, |
|
|
|
|
"customerName":this.formData.name, |
|
|
|
|
"customerPhone": this.formData.phoneNumber, |
|
|
|
|
"openid": this.orderInfo.openid, |
|
|
|
|
"appid": appId, |
|
|
|
|
"tenantId": "1", |
|
|
|
|
"checkInPersonInfoDTOList": [this.formData] |
|
|
|
|
"merchantId":this.orderInfo.merchantId, |
|
|
|
|
"merchantName":this.orderInfo.merchantName, |
|
|
|
|
"orderAmount":this.totalPrice, |
|
|
|
|
"goodsId":this.orderInfo.id, |
|
|
|
|
"goodsNum":this.orderInfo.goodsNum |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
this.$Request.post(this.$config.createHotelOrder, data, 'json', null, false, true).then(( |
|
|
|
|
this.$Request.post(this.$config.createMerchantOrder, data, 'json', null, false, true).then(( |
|
|
|
|
res) => { |
|
|
|
|
if (res.code == 0) { |
|
|
|
|
this.orderPay = res.data |
|
|
|
|