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.
218 lines
7.5 KiB
218 lines
7.5 KiB
|
3 weeks ago
|
<template>
|
||
|
|
<ifrm ref="ifrm">
|
||
|
|
<!-- 子件入库 -->
|
||
|
|
<uni-forms ref="wrForm" class="formBox">
|
||
|
|
<uni-forms-item>
|
||
|
|
<input type="text" v-model="formData.cardNo" @confirm="confirm" class="uni-input-border"
|
||
|
|
placeholder="流程卡" />
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item>
|
||
|
|
<uni-combox class="example-body" :candidates="shCandidates" placeholder="请选择仓库"
|
||
|
|
v-model="formData.codeName" @change="codeNameChange"></uni-combox>
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item>
|
||
|
|
<uni-combox class="example-body" :disabled="formData.shId == null" :candidates="cslCandidates"
|
||
|
|
placeholder="请选择库位" v-model="formData.location" @change="locationChange"></uni-combox>
|
||
|
|
</uni-forms-item>
|
||
|
|
</uni-forms>
|
||
|
|
<t-table>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>车间订单号</t-td>
|
||
|
|
<t-td>{{ tableObj.woCode }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>流程卡号</t-td>
|
||
|
|
<t-td>{{ tableObj.cardNo }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>批次号</t-td>
|
||
|
|
<t-td>{{ tableObj.batchNo }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>零件号</t-td>
|
||
|
|
<t-td>{{ tableObj.partCode }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>订单数量</t-td>
|
||
|
|
<t-td>{{ tableObj.makeQty }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>加工班组</t-td>
|
||
|
|
<t-td>{{ tableObj.tsName }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
</t-table>
|
||
|
|
<view class="buttonBox"><button class="button" type="primary" @click="submitClick">入库</button></view>
|
||
|
|
</ifrm>
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
import ifrm from '@/pages/index/ifrm';
|
||
|
|
import tTable from '@/components/t-table/t-table.vue';
|
||
|
|
import tTh from '@/components/t-table/t-th.vue';
|
||
|
|
import tTr from '@/components/t-table/t-tr.vue';
|
||
|
|
import tTd from '@/components/t-table/t-td.vue';
|
||
|
|
import scan from '../../mixin/scan.js';
|
||
|
|
export default {
|
||
|
|
mixins: [scan],
|
||
|
|
components: {
|
||
|
|
ifrm,
|
||
|
|
tTable,
|
||
|
|
tTh,
|
||
|
|
tTr,
|
||
|
|
tTd
|
||
|
|
},
|
||
|
|
data() {
|
||
|
|
return {
|
||
|
|
tableObj: {},
|
||
|
|
formData: {
|
||
|
|
cardNo: '',
|
||
|
|
codeName: "",
|
||
|
|
location: "",
|
||
|
|
shId: null,
|
||
|
|
cslId: null,
|
||
|
|
wpId: null
|
||
|
|
},
|
||
|
|
shCandidates: [],
|
||
|
|
cslCandidates: [],
|
||
|
|
storehouseList: [],
|
||
|
|
storeLocationList: [],
|
||
|
|
};
|
||
|
|
},
|
||
|
|
methods: {},
|
||
|
|
onNavigationBarButtonTap(btn) {
|
||
|
|
this.$refs.ifrm.topMenuClick(btn);
|
||
|
|
},
|
||
|
|
onShow() {
|
||
|
|
this.findStorehouse()
|
||
|
|
},
|
||
|
|
methods: {
|
||
|
|
getBarCode(code, isConfirm = false) {
|
||
|
|
this.getData(code);
|
||
|
|
},
|
||
|
|
confirm(e) {
|
||
|
|
this.getBarCode(e.target.value, true);
|
||
|
|
},
|
||
|
|
getData(code) {
|
||
|
|
if (!code) return;
|
||
|
|
this.formData.cardNo = code;
|
||
|
|
this.$ajax.request({
|
||
|
|
url: 'pdaLoad/loadSubOrder/' + code,
|
||
|
|
method: 'GET',
|
||
|
|
success: data => {
|
||
|
|
this.formData.cardNo = '';
|
||
|
|
this.tableObj = data;
|
||
|
|
this.formData.wpId = data.wpId
|
||
|
|
uni.showToast({
|
||
|
|
title: '数据获取成功'
|
||
|
|
});
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
submitClick() {
|
||
|
|
|
||
|
|
let title = '';
|
||
|
|
if (this.formData.cslId == null) {
|
||
|
|
title = '请选择库位';
|
||
|
|
}
|
||
|
|
if (this.formData.shId == null) {
|
||
|
|
title = '请选择仓库';
|
||
|
|
}
|
||
|
|
if (!(Object.keys(this.tableObj).length > 0)) {
|
||
|
|
title = '请扫描流程卡';
|
||
|
|
}
|
||
|
|
if (title != '') {
|
||
|
|
return uni.showToast({
|
||
|
|
title,
|
||
|
|
icon: 'none'
|
||
|
|
});
|
||
|
|
}
|
||
|
|
this.$ajax.request({
|
||
|
|
url: 'pdaSave/saveSubOrder',
|
||
|
|
data: this.formData,
|
||
|
|
method: 'POST',
|
||
|
|
success: data => {
|
||
|
|
this.tableObj = {};
|
||
|
|
uni.showToast({
|
||
|
|
title: '入库成功'
|
||
|
|
});
|
||
|
|
this.formData = {
|
||
|
|
cardNo: '',
|
||
|
|
codeName: "",
|
||
|
|
location: "",
|
||
|
|
shId: null,
|
||
|
|
cslId: null,
|
||
|
|
wpId: null
|
||
|
|
};
|
||
|
|
this.cslCandidates = []
|
||
|
|
this.storeLocationList = []
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
// 获取仓库
|
||
|
|
findStorehouse() {
|
||
|
|
this.$ajax.request({
|
||
|
|
url: 'comBox/basic/findStorehouse',
|
||
|
|
method: 'POST',
|
||
|
|
data: {},
|
||
|
|
success: res => {
|
||
|
|
this.shCandidates = []
|
||
|
|
this.storehouseList = []
|
||
|
|
if (res.length > 0) {
|
||
|
|
res.forEach(item => {
|
||
|
|
this.shCandidates.push(item.shCode + '-' + item.shName)
|
||
|
|
this.storehouseList.push(item)
|
||
|
|
})
|
||
|
|
} else {
|
||
|
|
uni.showToast({
|
||
|
|
title: '暂无可用仓库',
|
||
|
|
icon: "none"
|
||
|
|
});
|
||
|
|
}
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
// 获取库位 保存库房id
|
||
|
|
codeNameChange(e) {
|
||
|
|
this.storehouseList.forEach(item => {
|
||
|
|
if (e == (item.shCode + '-' + item.shName)) {
|
||
|
|
this.formData.shId = item.shId
|
||
|
|
}
|
||
|
|
})
|
||
|
|
// 获取库位数据
|
||
|
|
this.$ajax.request({
|
||
|
|
url: 'comBox/basic/findStorageLocationByShId/' + this.formData.shId,
|
||
|
|
method: 'POST',
|
||
|
|
data: {},
|
||
|
|
success: res => {
|
||
|
|
this.cslCandidates = []
|
||
|
|
this.storeLocationList = []
|
||
|
|
this.formData.location = ""
|
||
|
|
res.forEach(item => {
|
||
|
|
this.cslCandidates.push(item.location)
|
||
|
|
this.storeLocationList.push(item)
|
||
|
|
})
|
||
|
|
}
|
||
|
|
});
|
||
|
|
},
|
||
|
|
// 保存库位id
|
||
|
|
locationChange(e) {
|
||
|
|
this.storeLocationList.forEach(item => {
|
||
|
|
if (e == item.location) {
|
||
|
|
this.formData.cslId = item.cslId
|
||
|
|
}
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
};
|
||
|
|
</script>
|
||
|
|
<style scoped lang="less">
|
||
|
|
.uni-forms-item {
|
||
|
|
margin-bottom: 6px !important;
|
||
|
|
}
|
||
|
|
|
||
|
|
.example-body {
|
||
|
|
border: 1px solid #bcbcbc;
|
||
|
|
border-radius: 4px;
|
||
|
|
padding: 0 8px;
|
||
|
|
}
|
||
|
|
</style>
|