盘点迁移

master
Mr.sun 2 years ago
parent 6b6e2f6534
commit a7f0166b40
  1. 686
      pages/inventory/implement.vue
  2. 487
      pages/inventory/index.vue

@ -1,314 +1,412 @@
<template> <template>
<view class="im-container"> <view class="sh-content">
<view class="im-up"> <view class="sh-search">
<view class="im-column"> <u-form labelPosition="left" :model="dataForm" class="sh-form">
<text class="im-text">巷道</text> <!-- <u-form-item label="容器" prop="containerCode" labelWidth="150rpx">
<view class="im-select"> <u-input v-model="dataForm.containerCode" border style="background-color: #ffffff;"
<u-input v-model="startTunnel" type="select" class="u-input" placeholder-style="color:#000000" placeholder="请输入或扫描容器号"></u-input>
placeholder="" border @click="startShow = true" /> </u-form-item> -->
<u-select :mask-close-able="false" :safe-area-inset-bottom="true" v-model="startShow" <u-form-item prop="barCode">
mode="single-column" :list="list" @confirm="confirmStart" />
</view> <u-input v-model="dataForm.containerCode" border height="70" style="background-color: #ffffff;" placeholder="请扫描托盘编号"
<span></span> @confirm="inputQuery()" :focus="firstFocus"></u-input>
<view class="im-select"> </u-form-item>
<u-input v-model="endTunnel" type="select" class="u-input" placeholder-style="color:#000000" </u-form>
placeholder="" border @click="endShow = true" />
<u-select :mask-close-able="false" :safe-area-inset-bottom="true" v-model="endShow" </view>
mode="single-column" :list="list" @confirm="confirmEnd" /> <view class='recommend'>
</view> <text class='recommend-title'>待盘点物料信息</text>
<view class="im-button"> </view>
<u-button size="mini" v-if="orderBy===1" @click="changeOrder">正序</u-button> <!-- {{dataList}} -->
<u-button size="mini" v-if="orderBy===0" @click="changeOrder">倒序</u-button> <view class="all-card">
</view> <view class="sh-card" v-for="(item, index) in dataList" :key="item.id" :index="item.id" v-if="dataList.length > 0"
</view> style="border-radius: 20rpx;">
<view class="im-column"> <!-- <view :class="isActive===index? 'sh-card-title-two':'sh-card-title'" @click="btn(index,item)" style="border-radius: 20rpx;"><!--:class="{'borderBottom':!item.businInShelfDVoList.length}"-->
<u-input class="im-pan" v-model="value" type="text" border placeholder="请扫描盘点货位" @input="change()" /> <view class="sh-card-title" style="border-radius: 20rpx;" @click="qtyEnter(item)">
<!-- <button class="sh-button" @click="delBtn(index)">X</button> -->
</view> <view class="card-content" >
<view class="im-column" style="display: flex;justify-content: space-between;" v-if="result"> <view class="card-content-item">
<view> <text class="item-title">物料编号:</text>
<span class="im-name"> </span> <text class="item-value">{{item.ptPart}}</text>
<text class="im-bold">{{ result.locationCode }}</text> </view>
</view> </view>
<span class="im-span">{{ result.storageName }}</span>
</view> <view class="card-content">
<view class="im-column" style="display: flex;justify-content: space-between;" v-if="result"> <view class="card-content-item">
<view> <text class="item-title">台车编码:</text>
<span class="im-name"> </span> <text class="item-value">{{item.containerCode }}</text>
<text>{{ result.consignorName}}</text> </view>
</view> </view>
<span class="im-span" v-if="result.invWay==='open'">明盘</span>
<span class="im-span" v-if="result.invWay==='close'">盲盘</span> <view class="card-content">
</view> <view class="card-content-item">
<view class="im-column" style="display: flex;justify-content: space-between;" v-if="result"> <text class="item-title">物料名称:</text>
<view> <text class="item-value">{{item.ptName}}</text>
<span>商品编号</span><text>{{ result.goodNo}}</text> </view>
</view> </view>
<span class="im-span">{{ transInvUnit(result.invType)}}</span>
</view>
<view class="im-column" v-if="result">
<span>商品名称</span><text>{{ result.goodName}}</text>
</view>
<view class="im-column" v-if="result">
<span class="im-name"> </span>
<text>{{ result.specifications}}</text>
</view>
<view class="im-column" v-if="result">
<span class="im-name"> </span>
<text>{{ result.factory}}</text>
</view>
<view class="im-column" v-if="result">
<span class="im-name"> </span>
<text>{{ result.waster}}</text>
</view>
<view class="im-column" v-if="result">
<span class="im-name"> </span>
<text>{{ result.batchNo }}</text>
</view>
<view class="im-column" v-if="result">
<span>显示效期</span><text>{{ result.productionDate }}--{{ result.expiredDate }}</text>
</view>
<view class="im-down-title" v-if="result">
<span>件装/单位</span>
<span>件数</span>
<span>零散数</span>
<span>数量</span>
</view>
<view v-if="result" class="im-down">
<view class="im-down-title">
<span>{{result.packageQty}}/{{transUnit(result.unit)}}</span>
<span v-if="result.invWay==='open'">
<u-input style="margin-left: 30rpx;" border v-model="result.invCase" border-color="black"
placeholder="" :trim="false" :clearable="false"></u-input>
</span>
<span v-if="result.invWay==='open'">
<u-input border v-model="result.invPiece" border-color="black" placeholder="" :trim="false"
:clearable="false"></u-input>
</span>
<span v-if="result.invWay==='open'">{{result.qty}}</span>
</view>
<view class="im-down-title"> <view class="card-content">
<span>入库预分配</span> <view class="card-content-item">
<span>出库预分配</span> <text class="item-title" style="width: 80px;">物料数量:</text>
<span>补货预分配</span> <text class="item-value">{{item.qty}}</text>
</view>
<view class="card-content-item">
<text class="item-title" style="width: 80px;">盘点数量:</text>
<text class="item-value">{{item.invQty}}</text>
</view>
</view>
<u-popup v-model="show" width='90%' height="260px" :mask="true" @close="close" @open="open" mode="center">
<view style="height: 44px;text-align: center;line-height: 44px;font-size: 18px;margin-bottom: 18px;">
<text>物料修改</text>
</view>
<view style="width: 100%;display: flex;align-items: baseline;">
<text style="margin: 0px 20px 0px;">物料编码:</text> <input v-model="form.ptPart" placeholder="请扫描物料编码" style="border:1px solid #000;padding-right: 20px;"></u-input>
</view> </view>
<view class="im-down-title"> <view style="width: 100%;display: flex;align-items: baseline;">
<span>{{ result.onlockInQuantity}}</span> <text style="margin: 10px 20px 10px;">批次日期:</text>
<span>{{ result.onlockOutQuantity }}</span>
<span>{{ result.onlockReplenishQuantity }}</span> <u-input v-model="form.batch" style="padding-right: 30px;" type="select" placeholder="请选择批次日期" prop="batch" class="u-input"
placeholder-style="color:#000000" @click="selShow = true" />
<u-select :mask-close-able="false" :safe-area-inset-bottom="true" v-model="selShow"
mode="single-column" :list="lockstockBatch" @confirm="confirm" />
<!-- <u-select v-model="selShow" placeholder="请选择批次日期" mode="single-column" :list="batchList" @confirm="confirm"></u-select> -->
<!-- <input v-model="selShow" placeholder="请选择批次日期" style="border:1px solid #000;padding-right: 20px;"></u-input> -->
</view> </view>
<view style="width: 100%;display: flex;align-items: baseline;">
<text style="margin: 0px 20px 0px;">缴库数量:</text> <input v-model="form.invQty" style="border:1px solid #000;padding-right: 20px;"></u-input>
</view>
<view style="width: 100%; display: flex;margin-top: 40px;font-size: 14px;">
<button style="width: 30%; font-size: 16px;line-height: 44px;" class="btn1" type="default" @click="noEnter()">取消</button>
<button style="width: 30%;font-size: 16px;line-height: 44px;;" type="default" @click="enterUp(item)">确认</button>
</view>
</u-popup>
</view>
</view>
</view>
<!-- <view class="loadmore-data">
<u-loadmore :status="loadStatus"></u-loadmore>
</view> -->
<!-- <button @click="open">测试</button> -->
</view> <view class="bottom">
<view class="confirm-button" v-if="result"> <button @click="pickUp()" >确认无误</button>
<u-button size="medium" @click="sure()">确认</u-button> <!-- <p class="foot" style="width: 100%; text-align: center;margin-top: 8px;color: gray;">盘点完成后当前托盘自动回库</p> -->
</view>
</view>
</view> </view>
</view>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
result: '', showDiv:false,
orderBy: 1, show:false,
startShow: false, selShow:false,
endShow: false, queryFlag: '',
xiangStart: "", dataForm: {
value: "", // containerCode: null,
list: [], containerCode: "",
invOrderNo: '', pageNum: 1,
startTunnel: '', pageSize: 10
endTunnel: '', },
dicOptions: [] lockstockBatch: [],
}; pickUpObj:{
pointNo:'',
taskCode:'',
taskId:'',
containerId:'',
dtlAddBos:[]
}, },
onLoad: function(option) { dataList: [],
this.invOrderNo = option.invOrderNo query: {
this.getList(option.invOrderNo) current: 1,
this.getDic() size: 20
this.getInvTypeDic() },
form:{
ptPart:'',
batch:'',
invQty:''
}, },
methods: { isActive:0,
// loadStatus: 'loadmore',
getInvTypeDic() { dicOptions: [],
this.$u.api.getInvType().then(res => { timer:0,
this.invOptions = res.data; invQty:0,
}); invid:0,
}, completeArr:[],
transInvUnit(unit) { firstFocus:false
for (let dic in this.dicOptions) { }
if (this.invOptions[dic].dictValue === unit) { },
return this.invOptions[dic].dictLabel; onLoad() {
} // this.getDic(); //
} // this.loadList();
// uni.setNavigationBarTitle({
// title:this.$i18nMsg().nav.checkAction
// })
// this.$u.api.invPlan.queryInvLocation(this.dataForm).then(res=>{
// res.rows.forEach(item=>{
// item.invQty=item.qty
// })
// this.dataList=res.rows
// // console.log(res);
// })
this.$u.api.getLockstockBatch({ pageSize: 999, pageNum: 1 }).then((response) => {
// console.log(response);
this.lockstockBatch=response.data.map((item,index)=>{
return {
label:item,
value:item,
}
})
// console.log(response.data);
// this.lockstockBatch = response.data
})
},
//(100pages.json)
// onReachBottom() {
// this.loadStatus = "loading";
// setTimeout(() => {
// this.dataForm.pageNum += 1;
// this.loadList();
// }, 100);
// },
onPullDownRefresh () {
this.list = []
//
// this.getData()
setTimeout(() => {
//
uni.stopPullDownRefresh ();
}, 1000);
},
filters: {
formatType(value) {
console.log(value);
switch (Number(value)) {
case 0:
return "type1";
case 1:
return "type2";
case 2:
return "type3";
default:
return "";
}
}},
methods: {
close() {
this.show = false
}, },
// open() {
getDic() { this.show = true
this.$u.api.getByDicType().then(res => {
this.dicOptions = res.data; },
}); qtyEnter(item){
this.show=true
this.form.batch=item.batchNo
this.form.ptPart=item.ptPart
this.form.invQty=item.qty
this.form.invOrderNo=item.invOrderNo
this.form.containerCode=item.containerCode
this.invQty=item.qty
this.invid=item.id
}, },
transUnit(unit) { noEnter(){
for (let dic in this.dicOptions) { this.show=false
if (this.dicOptions[dic].dictValue === unit) {
return this.dicOptions[dic].dictLabel;
}
}
}, },
sure() { //
this.$u.api.inventoryPlanning.pdaEntrySave({ btn(index,item){
id: this.result.id, this.pickUpObj.dtlAddBos=[]
invQty: this.result.invQty, this.isActive = index
invCase: this.result.invCase, this.pickUpObj.pointNo=item.endLocation
invPiece: this.result.invPiece this.pickUpObj.taskCode=item.taskCode
}).then((res) => { this.pickUpObj.taskId=item.taskId
if (res.code === 200) { this.pickUpObj.taskType=item.taskType
this.$u.toast('盘点成功'); this.pickUpObj.containerId=item.containerId
this.$u.route({ this.pickUpObj.dtlAddBos.push({qrCode:item.qrCode} )
url: '/pages/inventory/index', // console.log(JSON.stringify(this.pickUpObj));
type: 'navigateTo' },
}) /**搜索框查询*/
} else { inputQuery() {
this.$u.toast(res.msg);
} if (this.dataForm.containerCode == '' || this.dataForm.containerCode == null || this.dataForm.containerCode ==
undefined) {
return
}
// this.queryFlag = setTimeout(() => {
this.loadList()
// }, 500)
},
onNavigationBarButtonTap(e){
console.log(e);
},
//
delBtn(index){
// console.log(JSON.stringify(this.pickUpObj));
this.dataList.splice(index,1)
this.pickUpObj.moldBarcodeList.splice(index,1)
console.log(JSON.stringify(this.pickUpObj));
},
loadList() {
//
// clearInterval(this.timer)
this.timer =setTimeout(()=>{
//
let flag = true
if(flag===false) return
flag=false
setTimeout(()=>{
flag = true
this.firstFocus=false
// this.$u.api.inv.pdaInvByContainerCode(this.dataForm).then(res=>{
// console.log(res);
// if(!res.rows || res.rows.length == 0){
// // console.log(res);
// // this.$u.toast("");
// }else if(res.code == '200'){
// console.log(res);
// this.dataList=res.rows
// setTimeout(()=>{
// this.dataForm.containerCode=''
// },0)
// this.$nextTick(()=>{
// this.firstFocus = true
// })
// }
// })
this.$u.api.invPlan.pdaInvByContainerCode(this.dataForm).then(res=>{
if(!res.rows || res.rows.length == 0){
// console.log(res);
this.$u.toast("当前台车内物料不存在");
}else if(res.code == '200'){
// console.log(res);
this.dataList=res.rows
setTimeout(()=>{
this.dataForm.containerCode=''
},0)
this.$nextTick(()=>{
this.firstFocus = true
})
}
}) })
},
changeOrder() {
if (this.orderBy) {
this.orderBy = 0
} else {
this.orderBy = 1
}
this.getDetail()
},
//
getList(params) {
this.$u.api.inventoryPlanning.optionByInvOrderNo(params).then(res => {
console.log(res)
if (res.code === 200) {
this.list = res.data.map((item) => ({
label: item,
value: item
}))
} else {
this.$u.toast(res.msg);
}
});
},
change() {
this.invOrderNo = this.value
this.list = []
this.startTunnel = ''
this.endTunnel = ''
this.getList(this.value)
this.result = ''
},
getDetail() {
if (this.orderBy && this.startTunnel && this.endTunnel && this.invOrderNo) {
this.$u.api.inventoryPlanning.queryDetailStockInv({
orderBy: this.orderBy,
startTunnel: this.startTunnel,
endTunnel: this.endTunnel,
invOrderNo: this.invOrderNo
}).then(res => {
console.log(res)
if (res.code === 200) {
this.result = res.data
} else {
this.$u.toast(res.msg);
}
});
}
},
confirmStart(e) {
console.log(e)
this.startTunnel = e[0].value;
this.getDetail()
},
confirmEnd(e) {
console.log(e)
this.endTunnel = e[0].value;
this.getDetail()
}
}
}
</script>
<style>
page {
height: 100%
}
</style>
<style lang="scss">
.im-container {
background-color: rgba(242, 242, 242, 1);
height: 100%;
.im-up {
background-color: #fff;
margin: 20rpx 40rpx;
border: 0.5px solid black;
height: 100%;
.im-column {
display: flex;
flex-direction: row;
padding: 20rpx 30rpx 0 30rpx;
.im-pan {
margin-right: 40rpx;
}
.im-span {
padding-right: 60rpx;
}
.im-text {
padding: 12rpx 20rpx 12rpx 0;
}
.im-bold {
font-weight: bold;
}
.span-right {
position: absolute;
right: 50px;
}
.im-name {
word-spacing: 46rpx;
}
}
.im-down-title {
margin-top: 50prx;
display: flex;
justify-content: space-between;
padding: 20rpx 30rpx 0 30rpx;
.down-span {
border: 0.5rpx black solid;
}
}
.confirm-button {
display: flex;
padding-top: 150rpx;
} }
,500)
},400)
},
enterUp(){
// this.$u.api.inv.entrySave(this.)
// item.qty=this.invQty
// console.log(item);
if(this.form.ptPart === null
|| this.form.ptPart === ''
|| this.form.ptPart === 0
|| this.form.ptPart === undefined
|| this.form.ptPart ==='undefined'){
this.$u.toast("请扫描物料编码");
return;
}
if(this.form.batch === null
|| this.form.batch === ''
|| this.form.batch === 0
|| this.form.batch === undefined
|| this.form.batch ==='undefined'){
this.$u.toast("请选择批次");
return;
}
if(this.form.invQty === null
|| this.form.invQty === ''
|| this.form.invQty === 0
|| this.form.invQty === undefined
|| this.form.invQty ==='undefined'){
this.$u.toast("请输入数量");
return;
} }
this.$u.api.invPlan.entrySave(this.form).then(res=>{
// console.log(res);
if(res.code==200){
this.$u.toast("修改完成");
setTimeout(()=>{
// this.$router.go(0)
this.$u.api.invPlan.pdaInvByContainerCode({containerCode:this.form.containerCode}).then(res=>{
if(!res.rows || res.rows.length == 0){
// console.log(res);
this.$u.toast("当前台车内物料不存在");
}else if(res.code == '200'){
// console.log(res);
this.dataList=res.rows
setTimeout(()=>{
this.dataForm.containerCode=''
},0)
this.$nextTick(()=>{
this.firstFocus = true
})
}
})
this.form={}
this.show=false
},400)
}
})
.im-button { },
display: contents; confirm(e){
} // console.log(val);
this.form.batch=e[0].label;
},
pickUp(){
this.ompleteArr=[]
// this.dataList.forEach(item=>{
// this.completeArr.push({
// id:item.invOrderNo,
// ptPart:item.ptPart,
// invQty:item.invQty,
// batch:item.batch
// })
// })
this.$u.api.invPlan.confirm({ invOrderNo:this.dataList[0].invOrderNo,ptPart:this.dataList[0].ptPart,batch:this.dataList[0].batchNo,containerCode:this.dataList[0].containerCode}).then(res=>{
// console.log(res);
if(res.code==200){
this.$u.toast("盘点完成");
setTimeout(()=>{
this.form={}
this.dataList=[]
this.$router.go(0)
},400)
}
})
},
//
searchClick() {
this.dataList = [];
this.dataForm.pageNum = 1;
this.loadList();
},
}
}
</script>
.u-input { <style lang="scss">
width: 150rpx; @import "index.scss";
} .footer {
} display: flex;
padding: 20rpx 0;
}
</style> </style>

@ -1,109 +1,412 @@
<template> <template>
<view class="in-content"> <view class="sh-content">
<view class="in-table"> <view class="sh-search">
<u-table> <u-form labelPosition="left" :model="dataForm" class="sh-form">
<u-tr class="u-tr"> <!-- <u-form-item label="容器" prop="containerCode" labelWidth="150rpx">
<u-th class="u-th" width="10%">序号</u-th> <u-input v-model="dataForm.containerCode" border style="background-color: #ffffff;"
<u-th class="u-th" width="35%">盘点单号</u-th> placeholder="请输入或扫描容器号"></u-input>
<u-th class="u-th" width="15%">总条目12</u-th> </u-form-item> -->
<u-th class="u-th" width="20%">已盘条目</u-th> <u-form-item prop="barCode">
<u-th class="u-th" width="20%">盘点人</u-th>
</u-tr> <u-input v-model="dataForm.containerCode" border height="70" style="background-color: #ffffff;" placeholder="请扫描托盘编号"
<u-tr class="u-tr" v-for="(item, index) in result" :key="index" :class="invOrderNo===item.invOrderNo?'bg':null"> @confirm="inputQuery()" :focus="firstFocus"></u-input>
<u-td class="u-td" width="10%" > </u-form-item>
<span @click="choosed(item.invOrderNo)">{{ index + 1 }}</span> </u-form>
</u-td>
<u-td class="u-td" width="35%"> </view>
<span @click="choosed(item.invOrderNo)">{{ item.invOrderNo || '-' }}</span> <view class='recommend'>
</u-td> <text class='recommend-title'>待盘点物料信息</text>
<u-td class="u-td" width="15%"> </view>
<span @click="choosed(item.invOrderNo)">{{ item.totalNumber || '-' }}</span> <!-- {{dataList}} -->
</u-td> <view class="all-card">
<u-td class="u-td" width="20%"> <view class="sh-card" v-for="(item, index) in dataList" :key="item.id" :index="item.id" v-if="dataList.length > 0"
<span @click="choosed(item.invOrderNo)"> style="border-radius: 20rpx;">
{{ item.finishNumber || '-' }} <!-- <view :class="isActive===index? 'sh-card-title-two':'sh-card-title'" @click="btn(index,item)" style="border-radius: 20rpx;"><!--:class="{'borderBottom':!item.businInShelfDVoList.length}"-->
</span> <view class="sh-card-title" style="border-radius: 20rpx;" @click="qtyEnter(item)">
</u-td> <!-- <button class="sh-button" @click="delBtn(index)">X</button> -->
<u-td class="u-td" width="20%" style="width:20%;text-overflow:ellipsis;overflow: hidden;"> <view class="card-content" >
<span @click="choosed(item.invOrderNo)"> <view class="card-content-item">
{{ item.invUser || '-' }} <text class="item-title">物料编号:</text>
</span> <text class="item-value">{{item.ptPart}}</text>
</u-td> </view>
</u-tr> </view>
</u-table>
</view> <view class="card-content">
<view class="in-operate"> <view class="card-content-item">
<u-button class="in-button" size="medium" @click="refreshPages()">刷新</u-button> <text class="item-title">台车编码:</text>
<u-button size="medium" @click="startImplement()">开始盘点</u-button> <text class="item-value">{{item.containerCode }}</text>
</view> </view>
</view>
<view class="card-content">
<view class="card-content-item">
<text class="item-title">物料名称:</text>
<text class="item-value">{{item.ptName}}</text>
</view>
</view>
<view class="card-content">
<view class="card-content-item">
<text class="item-title" style="width: 80px;">物料数量:</text>
<text class="item-value">{{item.qty}}</text>
</view>
<view class="card-content-item">
<text class="item-title" style="width: 80px;">盘点数量:</text>
<text class="item-value">{{item.invQty}}</text>
</view>
</view>
<u-popup v-model="show" width='90%' height="260px" :mask="true" @close="close" @open="open" mode="center">
<view style="height: 44px;text-align: center;line-height: 44px;font-size: 18px;margin-bottom: 18px;">
<text>物料修改</text>
</view>
<view style="width: 100%;display: flex;align-items: baseline;">
<text style="margin: 0px 20px 0px;">物料编码:</text> <input v-model="form.ptPart" placeholder="请扫描物料编码" style="border:1px solid #000;padding-right: 20px;"></u-input>
</view>
<view style="width: 100%;display: flex;align-items: baseline;">
<text style="margin: 10px 20px 10px;">批次日期:</text>
<u-input v-model="form.batch" style="padding-right: 30px;" type="select" placeholder="请选择批次日期" prop="batch" class="u-input"
placeholder-style="color:#000000" @click="selShow = true" />
<u-select :mask-close-able="false" :safe-area-inset-bottom="true" v-model="selShow"
mode="single-column" :list="lockstockBatch" @confirm="confirm" />
<!-- <u-select v-model="selShow" placeholder="请选择批次日期" mode="single-column" :list="batchList" @confirm="confirm"></u-select> -->
<!-- <input v-model="selShow" placeholder="请选择批次日期" style="border:1px solid #000;padding-right: 20px;"></u-input> -->
</view>
<view style="width: 100%;display: flex;align-items: baseline;">
<text style="margin: 0px 20px 0px;">缴库数量:</text> <input v-model="form.invQty" style="border:1px solid #000;padding-right: 20px;"></u-input>
</view>
<view style="width: 100%; display: flex;margin-top: 40px;font-size: 14px;">
<button style="width: 30%; font-size: 16px;line-height: 44px;" class="btn1" type="default" @click="noEnter()">取消</button>
<button style="width: 30%;font-size: 16px;line-height: 44px;;" type="default" @click="enterUp(item)">确认</button>
</view>
</u-popup>
</view>
</view>
</view>
<!-- <view class="loadmore-data">
<u-loadmore :status="loadStatus"></u-loadmore>
</view> -->
<!-- <button @click="open">测试</button> -->
<view class="bottom">
<button @click="pickUp()" >确认无误</button>
<!-- <p class="foot" style="width: 100%; text-align: center;margin-top: 8px;color: gray;">盘点完成后当前托盘自动回库</p> -->
</view> </view>
</view>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
result: [], showDiv:false,
invOrderNo: '' show:false,
} selShow:false,
queryFlag: '',
dataForm: {
// containerCode: null,
containerCode: "",
pageNum: 1,
pageSize: 10
},
lockstockBatch: [],
pickUpObj:{
pointNo:'',
taskCode:'',
taskId:'',
containerId:'',
dtlAddBos:[]
}, },
dataList: [],
mounted() { query: {
this.getList() current: 1,
size: 20
},
form:{
ptPart:'',
batch:'',
invQty:''
}, },
methods: { isActive:0,
choosed(num) { loadStatus: 'loadmore',
console.log(num) dicOptions: [],
console.log('这里没执行') timer:0,
this.invOrderNo = num invQty:0,
invid:0,
completeArr:[],
firstFocus:false
}
},
onLoad() {
// this.getDic(); //
// this.loadList();
// uni.setNavigationBarTitle({
// title:this.$i18nMsg().nav.checkAction
// })
// this.$u.api.invPlan.queryInvLocation(this.dataForm).then(res=>{
// res.rows.forEach(item=>{
// item.invQty=item.qty
// })
// this.dataList=res.rows
// // console.log(res);
// })
this.$u.api.getLockstockBatch({ pageSize: 999, pageNum: 1 }).then((response) => {
// console.log(response);
this.lockstockBatch=response.data.map((item,index)=>{
return {
label:item,
value:item,
}
})
// console.log(response.data);
// this.lockstockBatch = response.data
})
},
//(100pages.json)
// onReachBottom() {
// this.loadStatus = "loading";
// setTimeout(() => {
// this.dataForm.pageNum += 1;
// this.loadList();
// }, 100);
// },
onPullDownRefresh () {
this.list = []
//
// this.getData()
setTimeout(() => {
//
uni.stopPullDownRefresh ();
}, 1000);
},
filters: {
formatType(value) {
console.log(value);
switch (Number(value)) {
case 0:
return "type1";
case 1:
return "type2";
case 2:
return "type3";
default:
return "";
}
}},
methods: {
close() {
this.show = false
}, },
// list open() {
getList() { this.show = true
this.$u.api.inventoryPlanning.inventoryPlanningList().then(res => {
console.log(res) },
if(res.code===200) { qtyEnter(item){
this.result = res.rows this.show=true
} else { this.form.batch=item.batchNo
his.$u.toast(res.msg); this.form.ptPart=item.ptPart
} this.form.invQty=item.qty
}); this.form.invOrderNo=item.invOrderNo
this.form.containerCode=item.containerCode
this.invQty=item.qty
this.invid=item.id
}, },
refreshPages() { noEnter(){
this.$u.toast("页面已刷新"); this.show=false
}, },
startImplement() { //
this.$u.route({ btn(index,item){
url: '/pages/inventory/implement', this.pickUpObj.dtlAddBos=[]
type: 'navigateTo', this.isActive = index
params: { this.pickUpObj.pointNo=item.endLocation
invOrderNo: this.invOrderNo this.pickUpObj.taskCode=item.taskCode
} this.pickUpObj.taskId=item.taskId
this.pickUpObj.taskType=item.taskType
this.pickUpObj.containerId=item.containerId
this.pickUpObj.dtlAddBos.push({qrCode:item.qrCode} )
// console.log(JSON.stringify(this.pickUpObj));
},
/**搜索框查询*/
inputQuery() {
if (this.dataForm.containerCode == '' || this.dataForm.containerCode == null || this.dataForm.containerCode ==
undefined) {
return
}
// this.queryFlag = setTimeout(() => {
this.loadList()
// }, 500)
},
onNavigationBarButtonTap(e){
console.log(e);
},
//
delBtn(index){
// console.log(JSON.stringify(this.pickUpObj));
this.dataList.splice(index,1)
this.pickUpObj.moldBarcodeList.splice(index,1)
console.log(JSON.stringify(this.pickUpObj));
},
loadList() {
//
// clearInterval(this.timer)
this.timer =setTimeout(()=>{
//
let flag = true
if(flag===false) return
flag=false
setTimeout(()=>{
flag = true
this.firstFocus=false
// this.$u.api.inv.pdaInvByContainerCode(this.dataForm).then(res=>{
// console.log(res);
// if(!res.rows || res.rows.length == 0){
// // console.log(res);
// // this.$u.toast("");
// }else if(res.code == '200'){
// console.log(res);
// this.dataList=res.rows
// setTimeout(()=>{
// this.dataForm.containerCode=''
// },0)
// this.$nextTick(()=>{
// this.firstFocus = true
// })
// }
// })
this.$u.api.invPlan.pdaInvByContainerCode(this.dataForm).then(res=>{
if(!res.rows || res.rows.length == 0){
// console.log(res);
this.$u.toast("当前台车内物料不存在");
}else if(res.code == '200'){
// console.log(res);
this.dataList=res.rows
setTimeout(()=>{
this.dataForm.containerCode=''
},0)
this.$nextTick(()=>{
this.firstFocus = true
})
}
}) })
} }
,500)
},400)
},
enterUp(){
// this.$u.api.inv.entrySave(this.)
// item.qty=this.invQty
// console.log(item);
if(this.form.ptPart === null
|| this.form.ptPart === ''
|| this.form.ptPart === 0
|| this.form.ptPart === undefined
|| this.form.ptPart ==='undefined'){
this.$u.toast("请扫描物料编码");
return;
}
if(this.form.batch === null
|| this.form.batch === ''
|| this.form.batch === 0
|| this.form.batch === undefined
|| this.form.batch ==='undefined'){
this.$u.toast("请选择批次");
return;
}
if(this.form.invQty === null
|| this.form.invQty === ''
|| this.form.invQty === 0
|| this.form.invQty === undefined
|| this.form.invQty ==='undefined'){
this.$u.toast("请输入数量");
return;
} }
} this.$u.api.invPlan.entrySave(this.form).then(res=>{
// console.log(res);
if(res.code==200){
this.$u.toast("修改完成");
setTimeout(()=>{
// this.$router.go(0)
this.$u.api.invPlan.pdaInvByContainerCode({containerCode:this.form.containerCode}).then(res=>{
if(!res.rows || res.rows.length == 0){
// console.log(res);
this.$u.toast("当前台车内物料不存在");
}else if(res.code == '200'){
// console.log(res);
this.dataList=res.rows
setTimeout(()=>{
this.dataForm.containerCode=''
},0)
this.$nextTick(()=>{
this.firstFocus = true
})
}
})
this.form={}
this.show=false
},400)
}
})
},
confirm(e){
// console.log(val);
this.form.batch=e[0].label;
},
pickUp(){
this.ompleteArr=[]
// this.dataList.forEach(item=>{
// this.completeArr.push({
// id:item.invOrderNo,
// ptPart:item.ptPart,
// invQty:item.invQty,
// batch:item.batch
// })
// })
this.$u.api.invPlan.confirm({ invOrderNo:this.dataList[0].invOrderNo,ptPart:this.dataList[0].ptPart,batch:this.dataList[0].batchNo,containerCode:this.dataList[0].containerCode}).then(res=>{
// console.log(res);
if(res.code==200){
this.$u.toast("盘点完成");
setTimeout(()=>{
this.form={}
this.dataList=[]
this.$router.go(0)
},400)
}
})
},
//
searchClick() {
this.dataList = [];
this.dataForm.pageNum = 1;
this.loadList();
},
}
}
</script> </script>
<style lang="scss"> <style lang="scss">
.in-content { @import "index.scss";
display: flex; .footer {
flex-direction: column; display: flex;
padding: 20rpx 0;
.in-table { }
padding: 20rpx 30rpx 0 30rpx;
}
.in-operate {
position: fixed;
bottom: 50rpx;
left: 15%;
.in-button {
margin-right: 50rpx;
}
}
}
.bg {
background-color: #e2a622;
}
</style> </style>

Loading…
Cancel
Save