<template>
|
<view>
|
<view class="head">
|
<z-input :desc="input1.title"
|
:name="input1.name"
|
:btn="input1.btn"
|
:btn-name="input1.btnName"
|
v-model="barcode"
|
:index="input1.id"
|
:lenCheck="input1.lenCheck"
|
:focus="barcodeFocus"
|
@inputVal='barcodeInput'
|
/>
|
<z-input :desc="input2.title"
|
:name="input2.name"
|
:btn="input2.btn"
|
:btn-name="input2.btnName"
|
v-model="matnr"
|
:index="input2.id"
|
:lenCheck="input2.lenCheck"
|
:focus="matnrFocus"
|
@inputVal='matnrInput'
|
/>
|
</view>
|
|
|
<u-sticky >
|
<view class="sticky">
|
<view class="flex1">开启键盘</view>
|
<view class="flex1">商品列表</view>
|
<view class="flex1"></view>
|
</view>
|
</u-sticky>
|
|
<z-data-list class="data-list"
|
v-for="(it,i) in zDataList"
|
:key="i"
|
:lable="lable"
|
:fields="it"
|
:index="i+1"
|
@goDetail='goDetail(it,i)'
|
></z-data-list>
|
<!-- 垫高 -->
|
<view style="height: 100rpx;" />
|
|
<view class="z-floor">
|
<view class="z-default" @click="clean">重置</view>
|
<view class="z-primary" @click="comb">组托</view>
|
</view>
|
|
</view>
|
</template>
|
|
<script>
|
import { mapState } from 'vuex'
|
import addMat from '@/pages/api/addMat.js'
|
import util from '@/static/js/util.js'
|
export default {
|
data() {
|
return {
|
zDataList: [],
|
barcode: '',
|
matnr: '',
|
inputCode: '托盘码',
|
barcodeFocus: true,
|
matnrFocus: false
|
}
|
},
|
onShow() {
|
// console.log(this.page);
|
},
|
computed: mapState({
|
input1: state => state.project.menu[0].page.input[0],
|
input2: state => state.project.menu[0].page.input[1],
|
xInput: state => state.project.menu[0].page.input1,
|
lable: state => state.project.menu[0].page.lable
|
}),
|
methods: {
|
barcodeInput(arr) {
|
this.barcodeFocus = false
|
setTimeout(()=>{
|
this.matnrFocus = true
|
},10)
|
},
|
matnrInput(arr) {
|
if(arr.title == 'matnr') {
|
this.getMat(arr.value)
|
}
|
},
|
goDetail(param,index) {
|
let _this = this
|
uni.navigateTo({
|
url: '/pages/common/data-list/dataDetail',
|
// 传
|
success: function(data) {
|
data.eventChannel.emit('param', {
|
param: param,
|
index: index
|
})
|
},
|
// 接
|
events: {
|
dataList: function(data) {
|
console.log(data);
|
},
|
del: function(data) {
|
_this.zDataList.splice(data.data,1)
|
}
|
},
|
})
|
},
|
// 获取物料
|
async getMat(matnr) {
|
let res = await addMat.addMat(matnr)
|
if (res.code === 200 && res.data) {
|
this.matPick(res.data)
|
// res.data['count'] = 1
|
// this.zDataList = util.matCheck(res.data,this.zDataList)
|
this.matnr = ''
|
} else if (res.code === 200 && !res.data) {
|
let msg = `${this.matnr} 物料异常,请重试`
|
uni.showToast({ title: msg, icon: "none", position: 'top' })
|
} else if (res.code == 403) {
|
uni.showToast({ title: res.msg, icon: "none", position: 'top' })
|
setTimeout(() => {
|
uni.reLaunch({
|
url: '../../LoginDemo/LoginDemo'
|
});
|
}, 1000);
|
} else {
|
uni.showToast({ title: res.msg, icon: "none", position: 'top' })
|
}
|
},
|
// 跳转物料提取页面
|
matPick(mat) {
|
let _this = this
|
uni.navigateTo({
|
url: '/pages/common/mat/matPick',
|
// 传
|
success: function(data) {
|
data.eventChannel.emit('mat', {
|
mat: mat,
|
})
|
},
|
// 接
|
events: {
|
matList: function(data) {
|
data.data['count'] = 1
|
let newList = util.matCheck(data.data,_this.zDataList)
|
_this.zDataList = ''
|
_this.zDataList = newList
|
},
|
},
|
})
|
},
|
// 组托
|
comb() {
|
console.log(this.barcode);
|
console.log(this.zDataList);
|
},
|
clean() {
|
|
}
|
|
}
|
}
|
</script>
|
|
<style>
|
.head {
|
/* margin-top: -8px; */
|
}
|
.sticky {
|
height: 70rpx;
|
box-shadow: 0px 4px 4px #e2e2e2;
|
text-align: center;
|
background-color: #fff;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
}
|
.flex1 {
|
flex: 1
|
}
|
</style>
|