|
|
|
<template>
|
|
|
|
<view class="OrderCancellation">
|
|
|
|
<view class="header"></view>
|
|
|
|
<view class="whiteBg">
|
|
|
|
<view class="input">
|
|
|
|
<input type="number" placeholder="0" v-model="verify_code" />
|
|
|
|
</view>
|
|
|
|
<view class="bnt" @click="storeCancellation">立即核销</view>
|
|
|
|
</view>
|
|
|
|
<view class="scan" v-if="iswechat">
|
|
|
|
<image src="@/static/images/scan.gif" @click="openQRCode" />
|
|
|
|
</view>
|
|
|
|
<WriteOff :iShidden="iShidden" :orderInfo="orderInfo" @cancel="cancel" @confirm="confirm"></WriteOff>
|
|
|
|
</view>
|
|
|
|
</template>
|
|
|
|
<style scoped lang="less">
|
|
|
|
.OrderCancellation .header {
|
|
|
|
background: url("https://h5.dayouqiantu.cn/static/images/writeOffBg.jpg")
|
|
|
|
no-repeat;
|
|
|
|
width: 100%;
|
|
|
|
height: 3 * 100rpx;
|
|
|
|
background-size: 100% 100%;
|
|
|
|
}
|
|
|
|
|
|
|
|
.OrderCancellation .whiteBg {
|
|
|
|
width: 6.9 * 100rpx;
|
|
|
|
background-color: #fff;
|
|
|
|
margin: -0.93 * 100rpx auto 0 auto;
|
|
|
|
padding-top: 0.8 * 100rpx;
|
|
|
|
border-radius: 0.06 * 100rpx 0.06 * 100rpx 0 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
.OrderCancellation .whiteBg .input {
|
|
|
|
width: 5.8 * 100rpx;
|
|
|
|
margin: 0 auto;
|
|
|
|
border-bottom: 0.01 * 100rpx solid #eee;
|
|
|
|
}
|
|
|
|
|
|
|
|
.OrderCancellation .whiteBg .input input {
|
|
|
|
padding-bottom: 0.25 * 100rpx;
|
|
|
|
font-size: 0.6 * 100rpx;
|
|
|
|
color: #282828;
|
|
|
|
width: 100%;
|
|
|
|
text-align: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.OrderCancellation .whiteBg .bnt {
|
|
|
|
font-size: 0.32 * 100rpx;
|
|
|
|
color: #fff;
|
|
|
|
width: 5.8 * 100rpx;
|
|
|
|
height: 0.86 * 100rpx;
|
|
|
|
border-radius: 0.43 * 100rpx;
|
|
|
|
background-image: linear-gradient(to right, #f67a38 0%, #f11b09 100%);
|
|
|
|
background-image: -webkit-linear-gradient(to right, #f67a38 0%, #f11b09 100%);
|
|
|
|
background-image: -moz-linear-gradient(to right, #f67a38 0%, #f11b09 100%);
|
|
|
|
text-align: center;
|
|
|
|
line-height: 0.86 * 100rpx;
|
|
|
|
margin: 0.55 * 100rpx auto 0 auto;
|
|
|
|
}
|
|
|
|
|
|
|
|
.OrderCancellation .scan {
|
|
|
|
width: 3 * 100rpx;
|
|
|
|
height: 3 * 100rpx;
|
|
|
|
margin: 1.1 * 100rpx auto 0 auto;
|
|
|
|
}
|
|
|
|
|
|
|
|
.OrderCancellation .scan image {
|
|
|
|
width: 100%;
|
|
|
|
height: 100%;
|
|
|
|
display: block;
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
<script>
|
|
|
|
import WriteOff from "@/components/WriteOff";
|
|
|
|
import { isWeixin } from "@/utils";
|
|
|
|
// import { wechatEvevt } from "@/libs/wechat";
|
|
|
|
import { orderVerific } from "@/api/order";
|
|
|
|
const NAME = "OrderCancellation";
|
|
|
|
|
|
|
|
export default {
|
|
|
|
name: NAME,
|
|
|
|
components: {
|
|
|
|
WriteOff
|
|
|
|
},
|
|
|
|
props: {},
|
|
|
|
data: function() {
|
|
|
|
return {
|
|
|
|
iShidden: true,
|
|
|
|
iswechat: isWeixin(),
|
|
|
|
orderInfo: {},
|
|
|
|
verify_code: ""
|
|
|
|
};
|
|
|
|
},
|
|
|
|
mounted: function() {},
|
|
|
|
methods: {
|
|
|
|
cancel: function(res) {
|
|
|
|
this.iShidden = res;
|
|
|
|
},
|
|
|
|
confirm: function() {
|
|
|
|
orderVerific(this.verify_code, 1)
|
|
|
|
.then(res => {
|
|
|
|
this.iShidden = true;
|
|
|
|
this.verify_code = "";
|
|
|
|
uni.showToast({
|
|
|
|
title: res.msg,
|
|
|
|
icon: "none",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
})
|
|
|
|
.catch(err => {
|
|
|
|
uni.showToast({
|
|
|
|
title:
|
|
|
|
err.msg || err.response.data.msg || err.response.data.message,
|
|
|
|
icon: "none",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
});
|
|
|
|
},
|
|
|
|
storeCancellation: function() {
|
|
|
|
let ref = /[0-9]{12}/;
|
|
|
|
if (!this.verify_code) {
|
|
|
|
uni.showToast({
|
|
|
|
title: "请输入核销码",
|
|
|
|
icon: "none",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
if (!ref.test(this.verify_code)) {
|
|
|
|
uni.showToast({
|
|
|
|
title: "请输入正确的核销码",
|
|
|
|
icon: "none",
|
|
|
|
duration: 2000
|
|
|
|
});
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
uni.showLoading({
|
|
|
|
title: "查询中"
|
|
|
|
});
|
|
|
|
orderVerific(this.verify_code, 0)
|
|
|
|
.then(res => {
|
|
|
|
uni.hideLoading();
|
|
|
|
this.orderInfo = res.data;
|
|
|
|
this.iShidden = false;
|
|
|
|
})
|
|
|
|
.catch(() => {
|
|
|
|
uni.hideLoading();
|
|
|
|
});
|
|
|
|
},
|
|
|
|
openQRCode: function() {
|
|
|
|
let that = this;
|
|
|
|
// 这里需要调用扫码功能
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
</script>
|