77 lines
2.4 KiB
Vue
77 lines
2.4 KiB
Vue
<template>
|
|
<view class="verification-container">
|
|
<view class="input-container">
|
|
<input class="verification-input" type="text" v-model="verificationCode" placeholder="请输入核销码" />
|
|
</view>
|
|
|
|
<button class="verify-btn" @click="verifyOrder">立即核销</button>
|
|
|
|
<view class="scan-container" @click="handleScan">
|
|
<view class="scan-icon">
|
|
<image class="barcode-icon"
|
|
src="https://wechat-img-file.oss-cn-beijing.aliyuncs.com/gp_cancelAfterVerification.png"
|
|
mode="aspectFit"></image>
|
|
</view>
|
|
<text class="scan-text">扫码核销</text>
|
|
</view>
|
|
|
|
<view>
|
|
<u-toast ref="uToast"></u-toast>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
data() {
|
|
return {
|
|
verificationCode: '',
|
|
};
|
|
},
|
|
methods: {
|
|
verifyOrder() {
|
|
if (this.verificationCode.trim()) {
|
|
console.log("🚀 ~ verifyOrder ~ this.verificationCode:", this.verificationCode)
|
|
this.$refs.uToast.show({
|
|
title: '核销成功',
|
|
type: 'success',
|
|
message: "订单核销成功",
|
|
duration: 2000
|
|
})
|
|
} else {
|
|
this.$u.toast('请输入核销码');
|
|
}
|
|
},
|
|
// 新增扫码核销处理方法
|
|
handleScan() {
|
|
uni.scanCode({
|
|
success: (res) => {
|
|
this.$refs.uToast.show({
|
|
title: '扫码成功',
|
|
type: 'success',
|
|
// icon: false,
|
|
message: "扫码成功",
|
|
duration: 2000
|
|
})
|
|
console.log('扫码结果:', res.result);
|
|
this.verificationCode = res.result;
|
|
},
|
|
fail: (err) => {
|
|
this.$refs.uToast.show({
|
|
title: '扫码失败',
|
|
type: 'error',
|
|
message: "扫码失败 请重试",
|
|
duration: 2000
|
|
})
|
|
console.error('扫码失败:', err);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
};
|
|
</script>
|
|
|
|
<style>
|
|
@import url('./index.css');
|
|
</style>
|