盘点迁移

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>
<view class="im-container">
<view class="im-up">
<view class="im-column">
<text class="im-text">巷道</text>
<view class="im-select">
<u-input v-model="startTunnel" type="select" class="u-input" placeholder-style="color:#000000"
placeholder="" border @click="startShow = true" />
<u-select :mask-close-able="false" :safe-area-inset-bottom="true" v-model="startShow"
mode="single-column" :list="list" @confirm="confirmStart" />
</view>
<span></span>
<view class="im-select">
<u-input v-model="endTunnel" type="select" class="u-input" placeholder-style="color:#000000"
placeholder="" border @click="endShow = true" />
<u-select :mask-close-able="false" :safe-area-inset-bottom="true" v-model="endShow"
mode="single-column" :list="list" @confirm="confirmEnd" />
</view>
<view class="im-button">
<u-button size="mini" v-if="orderBy===1" @click="changeOrder">正序</u-button>
<u-button size="mini" v-if="orderBy===0" @click="changeOrder">倒序</u-button>
</view>
</view>
<view class="im-column">
<u-input class="im-pan" v-model="value" type="text" border placeholder="请扫描盘点货位" @input="change()" />
</view>
<view class="im-column" style="display: flex;justify-content: space-between;" v-if="result">
<view>
<span class="im-name"> </span>
<text class="im-bold">{{ result.locationCode }}</text>
</view>
<span class="im-span">{{ result.storageName }}</span>
</view>
<view class="im-column" style="display: flex;justify-content: space-between;" v-if="result">
<view>
<span class="im-name"> </span>
<text>{{ result.consignorName}}</text>
</view>
<span class="im-span" v-if="result.invWay==='open'">明盘</span>
<span class="im-span" v-if="result.invWay==='close'">盲盘</span>
</view>
<view class="im-column" style="display: flex;justify-content: space-between;" v-if="result">
<view>
<span>商品编号</span><text>{{ result.goodNo}}</text>
</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="sh-content">
<view class="sh-search">
<u-form labelPosition="left" :model="dataForm" class="sh-form">
<!-- <u-form-item label="容器" prop="containerCode" labelWidth="150rpx">
<u-input v-model="dataForm.containerCode" border style="background-color: #ffffff;"
placeholder="请输入或扫描容器号"></u-input>
</u-form-item> -->
<u-form-item prop="barCode">
<u-input v-model="dataForm.containerCode" border height="70" style="background-color: #ffffff;" placeholder="请扫描托盘编号"
@confirm="inputQuery()" :focus="firstFocus"></u-input>
</u-form-item>
</u-form>
</view>
<view class='recommend'>
<text class='recommend-title'>待盘点物料信息</text>
</view>
<!-- {{dataList}} -->
<view class="all-card">
<view class="sh-card" v-for="(item, index) in dataList" :key="item.id" :index="item.id" v-if="dataList.length > 0"
style="border-radius: 20rpx;">
<!-- <view :class="isActive===index? 'sh-card-title-two':'sh-card-title'" @click="btn(index,item)" style="border-radius: 20rpx;"><!--:class="{'borderBottom':!item.businInShelfDVoList.length}"-->
<view class="sh-card-title" style="border-radius: 20rpx;" @click="qtyEnter(item)">
<!-- <button class="sh-button" @click="delBtn(index)">X</button> -->
<view class="card-content" >
<view class="card-content-item">
<text class="item-title">物料编号:</text>
<text class="item-value">{{item.ptPart}}</text>
</view>
</view>
<view class="card-content">
<view class="card-content-item">
<text class="item-title">台车编码:</text>
<text class="item-value">{{item.containerCode }}</text>
</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="im-down-title">
<span>入库预分配</span>
<span>出库预分配</span>
<span>补货预分配</span>
<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 class="im-down-title">
<span>{{ result.onlockInQuantity}}</span>
<span>{{ result.onlockOutQuantity }}</span>
<span>{{ result.onlockReplenishQuantity }}</span>
<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>
<view class="confirm-button" v-if="result">
<u-button size="medium" @click="sure()">确认</u-button>
</view>
</view>
<view class="bottom">
<button @click="pickUp()" >确认无误</button>
<!-- <p class="foot" style="width: 100%; text-align: center;margin-top: 8px;color: gray;">盘点完成后当前托盘自动回库</p> -->
</view>
</view>
</template>
<script>
export default {
data() {
return {
result: '',
orderBy: 1,
startShow: false,
endShow: false,
xiangStart: "",
value: "",
list: [],
invOrderNo: '',
startTunnel: '',
endTunnel: '',
dicOptions: []
};
export default {
data() {
return {
showDiv:false,
show:false,
selShow:false,
queryFlag: '',
dataForm: {
// containerCode: null,
containerCode: "",
pageNum: 1,
pageSize: 10
},
lockstockBatch: [],
pickUpObj:{
pointNo:'',
taskCode:'',
taskId:'',
containerId:'',
dtlAddBos:[]
},
onLoad: function(option) {
this.invOrderNo = option.invOrderNo
this.getList(option.invOrderNo)
this.getDic()
this.getInvTypeDic()
dataList: [],
query: {
current: 1,
size: 20
},
form:{
ptPart:'',
batch:'',
invQty:''
},
methods: {
//
getInvTypeDic() {
this.$u.api.getInvType().then(res => {
this.invOptions = res.data;
});
},
transInvUnit(unit) {
for (let dic in this.dicOptions) {
if (this.invOptions[dic].dictValue === unit) {
return this.invOptions[dic].dictLabel;
}
}
isActive:0,
loadStatus: 'loadmore',
dicOptions: [],
timer:0,
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
},
//
getDic() {
this.$u.api.getByDicType().then(res => {
this.dicOptions = res.data;
});
open() {
this.show = true
},
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) {
for (let dic in this.dicOptions) {
if (this.dicOptions[dic].dictValue === unit) {
return this.dicOptions[dic].dictLabel;
}
}
noEnter(){
this.show=false
},
sure() {
this.$u.api.inventoryPlanning.pdaEntrySave({
id: this.result.id,
invQty: this.result.invQty,
invCase: this.result.invCase,
invPiece: this.result.invPiece
}).then((res) => {
if (res.code === 200) {
this.$u.toast('盘点成功');
this.$u.route({
url: '/pages/inventory/index',
type: 'navigateTo'
})
} else {
this.$u.toast(res.msg);
}
//
btn(index,item){
this.pickUpObj.dtlAddBos=[]
this.isActive = index
this.pickUpObj.pointNo=item.endLocation
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
})
}
})
},
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 {
width: 150rpx;
}
}
<style lang="scss">
@import "index.scss";
.footer {
display: flex;
padding: 20rpx 0;
}
</style>

@ -1,109 +1,412 @@
<template>
<view class="in-content">
<view class="in-table">
<u-table>
<u-tr class="u-tr">
<u-th class="u-th" width="10%">序号</u-th>
<u-th class="u-th" width="35%">盘点单号</u-th>
<u-th class="u-th" width="15%">总条目12</u-th>
<u-th class="u-th" width="20%">已盘条目</u-th>
<u-th class="u-th" width="20%">盘点人</u-th>
</u-tr>
<u-tr class="u-tr" v-for="(item, index) in result" :key="index" :class="invOrderNo===item.invOrderNo?'bg':null">
<u-td class="u-td" width="10%" >
<span @click="choosed(item.invOrderNo)">{{ index + 1 }}</span>
</u-td>
<u-td class="u-td" width="35%">
<span @click="choosed(item.invOrderNo)">{{ item.invOrderNo || '-' }}</span>
</u-td>
<u-td class="u-td" width="15%">
<span @click="choosed(item.invOrderNo)">{{ item.totalNumber || '-' }}</span>
</u-td>
<u-td class="u-td" width="20%">
<span @click="choosed(item.invOrderNo)">
{{ item.finishNumber || '-' }}
</span>
</u-td>
<u-td class="u-td" width="20%" style="width:20%;text-overflow:ellipsis;overflow: hidden;">
<span @click="choosed(item.invOrderNo)">
{{ item.invUser || '-' }}
</span>
</u-td>
</u-tr>
</u-table>
</view>
<view class="in-operate">
<u-button class="in-button" size="medium" @click="refreshPages()">刷新</u-button>
<u-button size="medium" @click="startImplement()">开始盘点</u-button>
</view>
<view class="sh-content">
<view class="sh-search">
<u-form labelPosition="left" :model="dataForm" class="sh-form">
<!-- <u-form-item label="容器" prop="containerCode" labelWidth="150rpx">
<u-input v-model="dataForm.containerCode" border style="background-color: #ffffff;"
placeholder="请输入或扫描容器号"></u-input>
</u-form-item> -->
<u-form-item prop="barCode">
<u-input v-model="dataForm.containerCode" border height="70" style="background-color: #ffffff;" placeholder="请扫描托盘编号"
@confirm="inputQuery()" :focus="firstFocus"></u-input>
</u-form-item>
</u-form>
</view>
<view class='recommend'>
<text class='recommend-title'>待盘点物料信息</text>
</view>
<!-- {{dataList}} -->
<view class="all-card">
<view class="sh-card" v-for="(item, index) in dataList" :key="item.id" :index="item.id" v-if="dataList.length > 0"
style="border-radius: 20rpx;">
<!-- <view :class="isActive===index? 'sh-card-title-two':'sh-card-title'" @click="btn(index,item)" style="border-radius: 20rpx;"><!--:class="{'borderBottom':!item.businInShelfDVoList.length}"-->
<view class="sh-card-title" style="border-radius: 20rpx;" @click="qtyEnter(item)">
<!-- <button class="sh-button" @click="delBtn(index)">X</button> -->
<view class="card-content" >
<view class="card-content-item">
<text class="item-title">物料编号:</text>
<text class="item-value">{{item.ptPart}}</text>
</view>
</view>
<view class="card-content">
<view class="card-content-item">
<text class="item-title">台车编码:</text>
<text class="item-value">{{item.containerCode }}</text>
</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>
</template>
<script>
export default {
data() {
return {
result: [],
invOrderNo: ''
}
export default {
data() {
return {
showDiv:false,
show:false,
selShow:false,
queryFlag: '',
dataForm: {
// containerCode: null,
containerCode: "",
pageNum: 1,
pageSize: 10
},
lockstockBatch: [],
pickUpObj:{
pointNo:'',
taskCode:'',
taskId:'',
containerId:'',
dtlAddBos:[]
},
mounted() {
this.getList()
dataList: [],
query: {
current: 1,
size: 20
},
form:{
ptPart:'',
batch:'',
invQty:''
},
methods: {
choosed(num) {
console.log(num)
console.log('这里没执行')
this.invOrderNo = num
isActive:0,
loadStatus: 'loadmore',
dicOptions: [],
timer:0,
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
getList() {
this.$u.api.inventoryPlanning.inventoryPlanningList().then(res => {
console.log(res)
if(res.code===200) {
this.result = res.rows
} else {
his.$u.toast(res.msg);
}
});
open() {
this.show = true
},
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
},
refreshPages() {
this.$u.toast("页面已刷新");
noEnter(){
this.show=false
},
startImplement() {
this.$u.route({
url: '/pages/inventory/implement',
type: 'navigateTo',
params: {
invOrderNo: this.invOrderNo
}
//
btn(index,item){
this.pickUpObj.dtlAddBos=[]
this.isActive = index
this.pickUpObj.pointNo=item.endLocation
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>
<style lang="scss">
.in-content {
display: flex;
flex-direction: column;
.in-table {
padding: 20rpx 30rpx 0 30rpx;
}
.in-operate {
position: fixed;
bottom: 50rpx;
left: 15%;
.in-button {
margin-right: 50rpx;
}
}
}
.bg {
background-color: #e2a622;
}
@import "index.scss";
.footer {
display: flex;
padding: 20rpx 0;
}
</style>

Loading…
Cancel
Save