You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
1.8 KiB
85 lines
1.8 KiB
<template>
|
|
<uni-popup ref="popup">
|
|
<view class="popup_box">
|
|
<view class="pop_title">
|
|
扫描信息
|
|
<text class="fr" @click="closeScanPopup()">关闭</text>
|
|
</view>
|
|
<view class="pop_tab">
|
|
<view class="uni-flex uni-row">
|
|
<view class="tab_tit tab_tit_active">{{title}}</view>
|
|
</view>
|
|
<view class="tab_info">
|
|
<win-com-scan ref="comScan" @getScanResult="getScanResult" :placeholder='title'></win-com-scan>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<com-message ref="comMessage" @afterCloseCommitMessage='closeCommitMessage()'></com-message>
|
|
</uni-popup>
|
|
</template>
|
|
|
|
<script>
|
|
import winComScan from '@/mycomponents/wincom/winComScan.vue'
|
|
import comMessage from '@/mycomponents/common/comMessage.vue';
|
|
import {locations} from '@/api/index.js';
|
|
|
|
export default {
|
|
name: 'winScanByCode',
|
|
components: {
|
|
winComScan,
|
|
comMessage
|
|
},
|
|
props: {
|
|
title: {
|
|
type: String,
|
|
default: '库位'
|
|
},
|
|
},
|
|
data() {
|
|
return {
|
|
code: '',
|
|
location: null
|
|
}
|
|
},
|
|
|
|
created() {
|
|
|
|
},
|
|
methods: {
|
|
openScanPopup() {
|
|
this.$refs.popup.open('bottom')
|
|
},
|
|
closeScanPopup() {
|
|
this.$refs.popup.close()
|
|
},
|
|
getScanResult(result) {
|
|
let that = this;
|
|
this.$refs["comScan"].losefocus();
|
|
if (result.data.scanType === 'qrcode') {
|
|
that.code = result.data.itemCode;
|
|
} else if (result.data.scanType === 'barcode') {
|
|
that.code = result.data.code;
|
|
}
|
|
that.scanLocation();
|
|
},
|
|
scanLocation() {
|
|
uni.showLoading({
|
|
title: '加载中...',
|
|
mask: true
|
|
})
|
|
locations(this.code).then(res => {
|
|
this.location = res;
|
|
this.closeScanPopup();
|
|
this.$emit("getLocation", this.location);
|
|
uni.hideLoading();
|
|
}).catch(err => {
|
|
uni.hideLoading();
|
|
this.$refs["comMessage"].showScanMessage(err);
|
|
});
|
|
},
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
</style>
|
|
|