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.
110 lines
2.1 KiB
110 lines
2.1 KiB
<template>
|
|
<winScanStandard ref="standard" :title="title" @getScanResult="getScanResult">
|
|
|
|
</winScanStandard>
|
|
</template>
|
|
|
|
<script>
|
|
import {
|
|
getContainerByNumber,
|
|
} from '@/api/request.js';
|
|
|
|
import winScanStandard from '@/mycomponents/wincom/scanCom/winScanStandard.vue'
|
|
export default {
|
|
components: {
|
|
winScanStandard
|
|
},
|
|
emits: ["getScanCode"],
|
|
props: {
|
|
title: {
|
|
type: String,
|
|
default: '器具代码'
|
|
},
|
|
locationTypeList: {
|
|
type: Array,
|
|
default: []
|
|
},
|
|
isJudgeStatus: {
|
|
type: Boolean,
|
|
default: true
|
|
},
|
|
},
|
|
data() {
|
|
return {
|
|
code: '',
|
|
number: '',
|
|
container: {}
|
|
}
|
|
},
|
|
|
|
created() {
|
|
|
|
},
|
|
methods: {
|
|
openScanPopup() {
|
|
this.$refs.standard.openScanPopup()
|
|
},
|
|
closeScanPopup() {
|
|
this.$refs.standard.closeScanPopup()
|
|
},
|
|
scanClick() {
|
|
this.$refs.standard.clickScanMsg();
|
|
},
|
|
cancelClick() {
|
|
this.$refs.standard.clearScanValue();
|
|
},
|
|
getScanResult(result) {
|
|
if (result.label.Type == "QRCode") {
|
|
this.code = result.label.itemCode;
|
|
} else if (result.label.Type == "BarCode") {
|
|
this.code = result.label.code;
|
|
}
|
|
|
|
uni.showLoading({
|
|
title: '扫描中...',
|
|
mask: true
|
|
});
|
|
|
|
getContainerByNumber(this.code).then(res => {
|
|
uni.hideLoading();
|
|
|
|
if (res.data.total > 0) {
|
|
var number = res.data.list[0].number;
|
|
var type = res.data.list[0].type;
|
|
var status = res.data.list[0].status;
|
|
if (this.isJudgeStatus) {
|
|
if (status == 'qjztUsed') {
|
|
this.container = res.data.list[0];
|
|
this.callBack();
|
|
} else {
|
|
this.$refs.standard.showWarningMessage("扫描器具[" + this.code + "]不可用", res => {})
|
|
}
|
|
|
|
}
|
|
|
|
} else {
|
|
this.$refs.standard.showWarningMessage('未查询到器具' + '【' + this.code + '】', res => {
|
|
|
|
})
|
|
}
|
|
}).catch(error => {
|
|
uni.hideLoading();
|
|
this.$refs.standard.showWarningMessage(error, res => {
|
|
|
|
})
|
|
})
|
|
},
|
|
callBack() {
|
|
this.closeScanPopup();
|
|
this.$emit("getScanCode", this.container, this.number);
|
|
},
|
|
getfocus() {
|
|
this.$refs.standard.getfocus();
|
|
},
|
|
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
</style>
|
|
|