147 lines
3.8 KiB
Vue
147 lines
3.8 KiB
Vue
|
<template>
|
|||
|
<view>
|
|||
|
<u-navbar back-text="返回" title="货位移动" :background="background"></u-navbar>
|
|||
|
<u-form>
|
|||
|
<u-form-item :border-bottom="false">
|
|||
|
<p>扫描条码:</p>
|
|||
|
<u-input :focus="focusBarcode" v-model="barCode" placeholder="请扫描条码" :border="true" />
|
|||
|
</u-form-item>
|
|||
|
</u-form>
|
|||
|
<u-form>
|
|||
|
<u-form-item>
|
|||
|
<p>扫描库位:</p>
|
|||
|
<u-input class="uni-input" v-model="location" :focus="focusKw" placeholder="请扫描库位"
|
|||
|
@confirm="LabelContactLocation" :border="true" />
|
|||
|
<!-- <switch :checked="ischecked" @change="changeischecked" />
|
|||
|
<p v-show="ischecked">默认此库位</p>
|
|||
|
<p v-show="!ischecked">不默认库位</p> -->
|
|||
|
</u-form-item>
|
|||
|
</u-form>
|
|||
|
|
|||
|
</view>
|
|||
|
</template>
|
|||
|
|
|||
|
<script>
|
|||
|
export default {
|
|||
|
data() {
|
|||
|
return {
|
|||
|
barCode: "", //物料编号
|
|||
|
ERPLocation:'',
|
|||
|
Areanames:'',
|
|||
|
OldAreaName:'',
|
|||
|
location: "", // 库位号
|
|||
|
materialList: [], //接收后端传回来的数据
|
|||
|
ischecked: false, //默认不使用库位
|
|||
|
focusKw: false, //库位输入框焦点
|
|||
|
focusBarcode: true, //默认聚焦到条码框
|
|||
|
background: {
|
|||
|
backgroundImage: 'linear-gradient(45deg, rgb(28, 187, 180), rgb(141, 198, 63))'
|
|||
|
}, //返回按钮的样式
|
|||
|
useId: "",
|
|||
|
};
|
|||
|
|
|||
|
},
|
|||
|
|
|||
|
mounted() {
|
|||
|
let that = this
|
|||
|
uni.getStorage({
|
|||
|
key: "userid",
|
|||
|
success(res) {
|
|||
|
that.userId = res.data
|
|||
|
}
|
|||
|
})
|
|||
|
},
|
|||
|
|
|||
|
methods: {
|
|||
|
//设置选中状态
|
|||
|
changeischecked() {
|
|||
|
this.ischecked = !this.ischecked //设置选中状态
|
|||
|
//console.log("选中状态", this.ischecked)
|
|||
|
},
|
|||
|
|
|||
|
//焦点初始化,让页面所有的焦点同时只能存在一个
|
|||
|
initfocus() {
|
|||
|
this.focusKw = false //单号焦点
|
|||
|
this.focusBarcode = false //条码焦点
|
|||
|
},
|
|||
|
//标签绑定位置
|
|||
|
LabelContactLocation() {
|
|||
|
const str = this.barCode;
|
|||
|
const elements = str.split("|");
|
|||
|
this.getDatabase(elements[4])
|
|||
|
this.getLocationDatabase(this.location)
|
|||
|
console.log(this.OldAreaName,this.Areanames)
|
|||
|
if (this.OldAreaName===this.Areanames) {
|
|||
|
this.$MyRequest('/bpel/event', {
|
|||
|
header: {
|
|||
|
MESSAGENAME: 'ModifyLocation',
|
|||
|
LANGUAGE: 'Chinese',
|
|||
|
Flag: 'LK' //立库标志
|
|||
|
},
|
|||
|
body: {
|
|||
|
BOXLIST: [{
|
|||
|
SITENAME: "SDK",
|
|||
|
MATERIALPACKINGNAME: elements[4],
|
|||
|
LOCATIONNAME: this.location,
|
|||
|
LASTEVENTCOMMENT: ''
|
|||
|
}],
|
|||
|
ERPLOCATION :this.ERPLocation,
|
|||
|
AREANAME: this.Areanames,
|
|||
|
LOCATIONNAME: this.location,
|
|||
|
}
|
|||
|
}).then(res => {
|
|||
|
if (res.data.code == '0')
|
|||
|
this.$showMessage(res.data.msg)
|
|||
|
}).catch(err => {
|
|||
|
this.$showMessage(err)
|
|||
|
})
|
|||
|
} else {
|
|||
|
this.$showMessage("不同仓库之间不可以进行货位移动")
|
|||
|
}
|
|||
|
},
|
|||
|
//获取位置标签仓库信息
|
|||
|
getLocationDatabase(location) {
|
|||
|
this.$MyRequest('/api/ApiQuery', {
|
|||
|
queryId: "GetAirName_location",
|
|||
|
version: "00001",
|
|||
|
params: {
|
|||
|
STORAGENAME: location,
|
|||
|
}
|
|||
|
}).then(res => {
|
|||
|
this.ERPLocation= res.data.data[0].ERPLocation
|
|||
|
this.Areanames = res.data.data[0].AREANAME
|
|||
|
}).catch(err => {
|
|||
|
this.$showMessage(err)
|
|||
|
})
|
|||
|
},
|
|||
|
//获取原标签搬出仓库信息
|
|||
|
getDatabase(materialpacking) {
|
|||
|
|
|||
|
this.$MyRequest('/api/ApiQuery', {
|
|||
|
queryId: "GetAreName",
|
|||
|
version: "00001",
|
|||
|
params: {
|
|||
|
MATERIALPACKINGNAME: materialpacking,
|
|||
|
}
|
|||
|
}).then(res => {
|
|||
|
this.OldAreaName = res.data.data[0].AREANAME
|
|||
|
}).catch(err => {
|
|||
|
this.$showMessage(err)
|
|||
|
})
|
|||
|
},
|
|||
|
//获取焦点的公共方法
|
|||
|
getfocus(nextfocus) {
|
|||
|
this.initfocus()
|
|||
|
this[nextfocus] //不能用this.nextfocus
|
|||
|
this.$nextTick(() => { //vue是数据全部修改后才进行的视图更新,哪nextTick函数就是为了拿到最新的数据,还不懂的可以去百度
|
|||
|
this[nextfocus] = true
|
|||
|
})
|
|||
|
},
|
|||
|
}
|
|||
|
}
|
|||
|
</script>
|
|||
|
|
|||
|
<style lang="scss">
|
|||
|
|
|||
|
</style>
|