<template>
|
<view>
|
<uni-segmented-control :current="current" :values="items" @clickItem="onClickItem">
|
</uni-segmented-control>
|
<view class="content">
|
<view v-if="current === 0" class="headerstyle">
|
<view class="itemstyle">
|
<uni-forms label-width="180">
|
<uni-forms-item :label="label"></uni-forms-item>
|
<uni-forms-item label="单据类型:生产领料单"></uni-forms-item>
|
<uni-forms-item label="产线站点">
|
<uni-easyinput type="text" :focus="!istrue" v-model="endPoint" placeholder="请扫描产线站点"
|
ref='midInput' @input="inputChangebarcode()" />
|
</uni-forms-item>
|
<uni-forms-item label="内箱标签">
|
<uni-combox :candidates="candidates" @input="inputChange()" placeholder="请选择物料编号"
|
v-model="materialsns"></uni-combox>
|
</uni-forms-item>
|
<uni-forms-item>
|
<button @click="submit" type="primary" size="default" style="margin-top: 2%;">叫料</button>
|
</uni-forms-item>
|
</uni-forms>
|
<uni-list class="footer">
|
<uni-list-item direction="column" v-if="innersn">
|
<template v-slot:body>
|
<view class="uni-list-box">
|
<uni-icons type="trash" size="22" style="position: absolute;right: 5%;"
|
@click="deleteList(innersn.matCode)">
|
</uni-icons>
|
<view class="uni-content">
|
<view class="uni-title-sub uni-ellipsis-2">物料编码:{{innersn.matCode}}</view>
|
</view>
|
</view>
|
</template>
|
</uni-list-item>
|
</uni-list>
|
</view>
|
</view>
|
<view v-if="current === 1" class="headerstyle">
|
<view class="itemstyle">
|
<uni-list :border="true">
|
<uni-list-item direction="column" v-for="(item,index) in orderInfo" :key="index">
|
<template v-slot:body>
|
<view class="uni-list-box">
|
<view class="uni-content">
|
<view style="font-size: 18px;">单据号:{{orderNo}}</view>
|
<view style="font-size: 18px;">物料编码:{{item.matCode}}</view>
|
<view style="font-size: 18px;">物料名称:{{item.matName}}</view>
|
<view style="font-size: 18px;">单据数量:{{item.totalQty}}</view>
|
<view style="font-size: 18px;">出库数量:{{item.outQty}}</view>
|
</view>
|
</view>
|
</template>
|
</uni-list-item>
|
</uni-list>
|
</view>
|
</view>
|
</view>
|
<u-toast ref="uToast" />
|
</view>
|
</template>
|
|
<script>
|
export default {
|
data() {
|
return {
|
items: ['生产叫料', '明细'],
|
current: 0,
|
orderNo: "",
|
orderInfo: [],
|
label: "",
|
innerCode: "",
|
matCode: "物料编码:",
|
matName: "物料名称:",
|
orderQty: "需求数量:",
|
currentQty: "已扫数量:",
|
scanQty: "累计数量:",
|
istrue: false,
|
endPoint: "",
|
materialsns: "",
|
innersn: null,
|
callMatCode: "",
|
candidates: []
|
}
|
},
|
onLoad(res) {
|
this.orderNo = res.orderNo;
|
this.label = "单据编号:" + this.orderNo;
|
this.getData();
|
},
|
methods: {
|
onClickItem(e) {
|
this.focus = false;
|
this.addressFocus = false;
|
if (this.current !== e.currentIndex) {
|
this.current = e.currentIndex;
|
if (this.current == 1) {
|
this.getData();
|
}
|
}
|
},
|
getData() {
|
var postData = {
|
MainData: {
|
orderNo: this.orderNo
|
},
|
}
|
this.$u.post('/api/ErpOrder/GetReceiveOrderInfoByCode', postData).then((res) => {
|
if (res.status) {
|
this.orderInfo = res.data.receiving_Dtls;
|
this.candidates = res.data.matCodes;
|
if (this.orderInfo.length > 3) {
|
this.loadVisible = true;
|
}
|
}
|
})
|
},
|
inputChangebarcode() {
|
// this.innersn = null;
|
|
// this.$nextTick(() => {
|
// if (this.materialsns.length < 14 && this.materialsns.indexOf("半成品") == -1) {
|
// return;
|
// }
|
|
// var matInfo = this.materialsns.split('|');
|
// if (matInfo.length == 6) {
|
// this.callMatCode = "";
|
// var matObj = {
|
// matCode: matInfo[1],
|
// }
|
// this.callMatCode = matInfo[1];
|
// this.innersn = matObj;
|
// } else {
|
// var matObj = {
|
// matCode: this.materialsns
|
// }
|
// this.innersn = matObj;
|
// this.callMatCode = this.materialsns;
|
// }
|
|
// setTimeout(() => {
|
// this.materialsns = "";
|
// }, 100);
|
// })
|
},
|
inputChange(e) {
|
this.innersn = null;
|
|
this.$nextTick(() => {
|
if (this.materialsns.length < 14 && this.materialsns.indexOf("半成品") == -1) {
|
return;
|
}
|
var matInfo = this.materialsns.split('|');
|
if (matInfo.length > 6) {
|
this.callMatCode = "";
|
var matObj = {
|
matCode: matInfo[1],
|
}
|
this.callMatCode = matInfo[1];
|
this.innersn = matObj;
|
} else {
|
// this.$refs.uToast.show({
|
// title: "扫码错误,请扫描正确外箱码",
|
// type: "error"
|
// })
|
var matObj = {
|
matCode: this.materialsns
|
}
|
this.innersn = matObj;
|
this.callMatCode = this.materialsns;
|
}
|
|
setTimeout(() => {
|
this.materialsns = "";
|
}, 100);
|
})
|
},
|
submit() {
|
if(this.callMatCode == ''){
|
this.$refs.uToast.show({
|
title: "请扫描物料编号",
|
type: "error"
|
});
|
return;
|
}
|
this.$u.post('/api/Carry/CallMaterial2', {
|
MainData: {
|
"endPoint": this.endPoint,
|
"matCode": this.callMatCode,
|
"orderNo": this.orderNo
|
}
|
}).then(resdt => {
|
if (resdt.status) {
|
uni.$showMsg('叫料成功!')
|
this.innersn = null;
|
this.callMatCode = "";
|
this.materialsns = "";
|
// this.endPoint = "";
|
} else {
|
this.$refs.uToast.show({
|
title: resdt.message,
|
type: "error"
|
})
|
}
|
})
|
},
|
}
|
}
|
</script>
|
|
<style lang="scss">
|
@import '@/common/uni-ui.scss';
|
|
.content {
|
display: flex;
|
height: 150px;
|
}
|
|
.content-text {
|
font-size: 14px;
|
color: #666;
|
}
|
|
.itemstyle {
|
margin-top: 20px;
|
margin-left: 5%;
|
}
|
|
.headerstyle {
|
width: 90%;
|
}
|
</style>
|