@ -1,76 +1,300 @@ |
|||||||
<template> |
<template> |
||||||
<view class="sh-content"> |
<view class="sh-content"> |
||||||
<view class="" style="display: flex;justify-content:space-around;padding-top:250rpx;"> |
<view class="sh-search"> |
||||||
<view style="text-align: center;"> |
<u-form labelPosition="left" :model="dataForm" class="sh-form"> |
||||||
待拣订单 |
<u-form-item prop="barCode"> |
||||||
<br> |
<u-input v-model="dataForm.containerCode" border input-align="left" height="70" style="background-color: #ffffff;height: 38px;line-height: 38px;" placeholder="请扫描台车编号" |
||||||
<span>{{dataForm.waitPickOrderNumber}}</span> |
@confirm="inputQuery()" :focus="firstFocus"> |
||||||
|
</u-input> |
||||||
|
</u-form-item> |
||||||
|
</u-form> |
||||||
|
|
||||||
|
</view> |
||||||
|
<!-- <view class="" style="font-size: 36px;margin: 20rpx 20rpx 20rpx 20rpx;"> |
||||||
|
<text>{{dataForm.containerCode1}}</text> |
||||||
|
</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" :keys="item.id" :index="item.id" v-if="dataList.length > 0" |
||||||
|
style="border-radius: 20rpx;"> |
||||||
|
<view class="sh-card-title" style="border-radius: 20rpx;"> |
||||||
|
<image src="@/static/icon/edit.png" @click="editBtn(index)" style="width: 2.5vh;height: 2.5vh;position: absolute;right: 1vh;margin-top: 1vh;" /> |
||||||
|
<view class="card-content"> |
||||||
|
|
||||||
|
<view class="card-content-item" width="60%" style="margin-top: 1vh;"> |
||||||
|
<text class="item-title" >物料编号:</text> |
||||||
|
<text class="item-value">{{item.ttPart}}</text> |
||||||
|
</view> |
||||||
|
</view> |
||||||
|
<view class="card-content"> |
||||||
|
<view class="card-content-item"> |
||||||
|
<text class="item-title">物料信息:</text> |
||||||
|
<text class="item-value">{{item.ptName}}--{{item.ptDesc}}</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.ttQtyRct}}</text> |
||||||
|
</view> |
||||||
|
|
||||||
|
</view> |
||||||
|
|
||||||
|
|
||||||
|
</view> |
||||||
|
<u-popup v-model="show" width='90%' height="220px" :mask-close-able="false" :mask="true" @close="close" 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="item.ttQtyRct" style="border:1px solid #000;padding-right: 20px;"></u-input> |
||||||
|
|
||||||
</view> |
</view> |
||||||
<view style="text-align: center;">待拣品类 |
<view style="width: 100%; display: flex;margin-top: 40px;font-size: 14px;"> |
||||||
<br> |
<button style="width: 30%; font-size: 16px;line-height: 44px;" class="btn1" type="default" @click="noEnter()">取消</button> |
||||||
<span>{{dataForm.waitPickTypeNumber}}</span></view> |
<button style="width: 30%;font-size: 16px;line-height: 44px;;" type="default" @click="enterUp(item)">确认</button> |
||||||
<view style="text-align: center;">待拣数量 |
|
||||||
<br> |
|
||||||
<span>{{dataForm.waitPickGoodsNumber}}</span></view> |
|
||||||
</view> |
</view> |
||||||
|
|
||||||
<view style="position: absolute ;bottom:50rpx;left: 50%;transform: translateX(-50%);text-align: center;"> |
</u-popup> |
||||||
<view class="confrim-btn" style="margin-bottom: 40rpx;"> |
</view> |
||||||
<u-button size="medium" type="primary" style="width:350rpx; margin-top: 40rpx" @click="operation">开始拣选</u-button> |
|
||||||
</view> |
</view> |
||||||
<text> |
|
||||||
开始拣选后,系统自动呼叫AGV按顺序把需要拣货的 商品送至待拣区域,请及时处理! |
<!-- <view class="loadmore-data"> |
||||||
</text> |
<u-loadmore :status="loadStatus"></u-loadmore> |
||||||
|
</view> --> |
||||||
|
<!-- <button @click="open">测试</button> --> |
||||||
|
<view class="bottom"> |
||||||
|
<button @click="pickUp()" >完成出库</button> |
||||||
</view> |
</view> |
||||||
|
|
||||||
</view> |
</view> |
||||||
</template> |
</template> |
||||||
|
|
||||||
<script> |
<script> |
||||||
export default{ |
export default { |
||||||
data(){ |
data() { |
||||||
return{ |
return { |
||||||
dataForm:{ |
show:false, |
||||||
//待拣订单 |
showDiv:false, |
||||||
waitPickOrderNumber:'', |
queryFlag: '', |
||||||
//待拣品类 |
dataForm: { |
||||||
waitPickTypeNumber:'', |
containerCode: null, |
||||||
//待拣数量 |
keywords: "", |
||||||
waitPickGoodsNumber:'', |
pageNum: 1, |
||||||
} |
pageSize: 10 |
||||||
|
}, |
||||||
|
|
||||||
|
pickUpObj:{ |
||||||
|
pointNo:'', |
||||||
|
taskCode:'', |
||||||
|
taskId:'', |
||||||
|
containerId:'', |
||||||
|
dtlAddBos:[] |
||||||
|
}, |
||||||
|
dataList: [], |
||||||
|
query: { |
||||||
|
current: 1, |
||||||
|
size: 20 |
||||||
|
}, |
||||||
|
isActive:0, |
||||||
|
loadStatus: 'loadmore', |
||||||
|
dicOptions: [], |
||||||
|
timer:0, |
||||||
|
//模拟数据列表 |
||||||
|
datalist3: [], |
||||||
|
//模拟初始数据 |
||||||
|
tval3: "myvalue1", |
||||||
|
firstFocus:false |
||||||
} |
} |
||||||
}, |
}, |
||||||
onLoad() { |
onLoad() { |
||||||
this.getList() |
this.loadList(); |
||||||
}, |
// this.$u.api.waitOutPlan(this.dataForm).then(res=>console.log( |
||||||
methods:{ |
// this.dataList=res.rows |
||||||
/**开始拣货操作*/ |
// )) |
||||||
operation(){ |
// uni.setNavigationBarTitle({ |
||||||
this.$u.api.AvgOrderPkg.startPick().then(res=>{ |
// title:this.$i18nMsg().nav.outStore |
||||||
if(res.code == 200){ |
// }) |
||||||
this.$u.toast('开始拣货操作') |
// this.$u.api.mouldStorage.queryMouldStorage({pageNum: 1,pageSize:9999,type:'out'}).then(res=>{ |
||||||
|
// console.log(res); |
||||||
|
// }) |
||||||
|
}, |
||||||
|
//上拉刷新(当数据距离底部100时触发,距离在pages.json配置) |
||||||
|
onReachBottom() { |
||||||
|
this.loadStatus = "loading"; |
||||||
|
setTimeout(() => { |
||||||
|
this.dataForm.pageNum += 1; |
||||||
|
this.loadList(); |
||||||
|
}, 100); |
||||||
|
}, |
||||||
|
onPullDownRefresh () { |
||||||
|
this.list = [] |
||||||
|
//调用获取数据方法 |
||||||
|
this.getData() |
||||||
|
setTimeout(() => { |
||||||
|
// onLoad() |
||||||
|
// this.$u.api.waitOutPlan(this.dataForm).then(res=>this.dataList=res.rows)} |
||||||
|
// console.log(111); |
||||||
|
//结束下拉刷新 |
||||||
|
uni.stopPullDownRefresh (); |
||||||
|
}, 800); |
||||||
|
}, |
||||||
|
onReady() { |
||||||
|
|
||||||
|
}, |
||||||
|
methods: { |
||||||
|
getData(){ |
||||||
|
this.$u.api.waitOutPlan(this.dataForm).then(res=>console.log( |
||||||
|
this.dataList=res.rows |
||||||
|
)) |
||||||
|
}, |
||||||
|
//点击变色 |
||||||
|
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} ) |
||||||
|
|
||||||
|
}, |
||||||
|
editBtn(){ |
||||||
|
this.show=true |
||||||
|
}, |
||||||
|
queryList(index,item){ |
||||||
|
console.log(index,item); |
||||||
|
this.dataForm.containerCode=item.containerCode |
||||||
|
}, |
||||||
|
|
||||||
|
enterUp(item){ |
||||||
|
console.log(item); |
||||||
|
this.$u.api.replaceCar.upateBusinItemInDataForQty(item).then(res=>{ |
||||||
|
console.log(res); |
||||||
|
}) |
||||||
|
}, |
||||||
|
/**搜索框查询*/ |
||||||
|
inputQuery() { |
||||||
|
// if (this.queryFlag !== '') { |
||||||
|
// clearTimeout(this.queryFlag); |
||||||
|
// this.loadList() |
||||||
|
// } |
||||||
|
if (this.dataForm.containerCode == '' || this.dataForm.containerCode == null || this.dataForm.containerCode == |
||||||
|
undefined) { |
||||||
|
return |
||||||
|
} |
||||||
|
// this.queryFlag = setTimeout(() => { |
||||||
|
this.loadList() |
||||||
|
// }, 500) |
||||||
|
}, |
||||||
|
onNavigationBarButtonTap(e){ |
||||||
|
// console.log(e); |
||||||
this.$u.route({ |
this.$u.route({ |
||||||
url: 'pages/AvgOrderPkg/picking/index', |
url: 'pages/BusinPickup/index2', |
||||||
type: 'navigateTo', |
type: 'navigateTo', |
||||||
}) |
}) |
||||||
}else{ |
}, |
||||||
this.$u.toast(res.msg) |
|
||||||
|
close(){ |
||||||
|
}, |
||||||
|
noEnter(){ |
||||||
|
this.show=false |
||||||
|
}, |
||||||
|
loadList() { |
||||||
|
//防抖 |
||||||
|
clearInterval(this.timer) |
||||||
|
console.log(this.dataForm); |
||||||
|
this.timer =setTimeout(()=>{ |
||||||
|
//节流 |
||||||
|
let flag = true |
||||||
|
if(flag===false) return |
||||||
|
if (this.dataForm.containerCode == '' || this.dataForm.containerCode == null || this.dataForm.containerCode == |
||||||
|
undefined) { |
||||||
|
return |
||||||
|
} |
||||||
|
flag=false |
||||||
|
setTimeout(()=>{ |
||||||
|
flag = true |
||||||
|
this.firstFocus=false |
||||||
|
|
||||||
|
this.$u.api.replaceCar.getBusinItemInData(this.dataForm).then(res=>{ |
||||||
|
if(!res.data || res.data.length == 0){ |
||||||
|
// console.log(res); |
||||||
|
this.$u.toast("当前托盘模具不存在"); |
||||||
|
}else if(res.code == '200'){ |
||||||
|
// console.log(res); |
||||||
|
res.data.forEach((item)=>{ |
||||||
|
item.containerId=item.id |
||||||
|
}) |
||||||
|
this.dataList=res.data |
||||||
|
setTimeout(()=>{ |
||||||
|
this.dataForm.containerCode1=this.dataForm.containerCode |
||||||
|
this.dataForm.containerTypeLabel=this.dataForm.containerCode |
||||||
|
this.dataForm.containerCode='' |
||||||
|
},0) |
||||||
|
|
||||||
|
this.$nextTick(()=>{ |
||||||
|
this.firstFocus = true |
||||||
|
}) |
||||||
} |
} |
||||||
}) |
}) |
||||||
|
} |
||||||
|
,500) |
||||||
|
|
||||||
|
},400) |
||||||
}, |
}, |
||||||
getList(){ |
// 下一个界面 |
||||||
this.$u.api.AvgOrderPkg.getAGVStatistics().then(res=>{ |
enterNext(item,index){ |
||||||
if(res.code == 200){ |
this.$u.route({ |
||||||
console.log(res); |
url: 'pages/BusinPickup/index1', |
||||||
this.dataForm = res.data |
type: 'navigateTo', |
||||||
}else{ |
params:{ |
||||||
this.$u.toast(res.msg) |
containerCode:item.containerCode |
||||||
} |
} |
||||||
}) |
}) |
||||||
}, |
}, |
||||||
|
|
||||||
|
|
||||||
|
// 任务查看 |
||||||
|
searchClick() { |
||||||
|
this.dataList = []; |
||||||
|
this.dataForm.pageNum = 1; |
||||||
|
this.loadList(); |
||||||
|
}, |
||||||
|
}, |
||||||
|
filters: { |
||||||
|
formatType(value) { |
||||||
|
switch (Number(value)) { |
||||||
|
case 0: |
||||||
|
return "type1"; |
||||||
|
case 1: |
||||||
|
return "type2"; |
||||||
|
case 2: |
||||||
|
return "type3"; |
||||||
|
default: |
||||||
|
return ""; |
||||||
} |
} |
||||||
|
}} |
||||||
} |
} |
||||||
</script> |
</script> |
||||||
|
|
||||||
<style> |
<style lang="scss"> |
||||||
|
@import "index.scss"; |
||||||
|
.footer { |
||||||
|
display: flex; |
||||||
|
padding: 20rpx 0; |
||||||
|
} |
||||||
</style> |
</style> |
||||||
|
|||||||
@ -0,0 +1,135 @@ |
|||||||
|
.sh-content { |
||||||
|
padding: 25rpx; |
||||||
|
background-color: #fff; |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
.u-form-item { |
||||||
|
padding: 5rpx 0px; |
||||||
|
} |
||||||
|
.u-input__input { |
||||||
|
background-color: #ffffff; |
||||||
|
} |
||||||
|
.sh-search { |
||||||
|
display: flex; |
||||||
|
padding: 10rpx 30rpx; |
||||||
|
background-color: #F2F2F2; |
||||||
|
|
||||||
|
.sh-form { |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
|
||||||
|
.sh-sub-search { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
padding: 15rpx 0 15rpx 15rpx; |
||||||
|
|
||||||
|
.sh-search-button { |
||||||
|
height: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.sh-card { |
||||||
|
margin-top: 30rpx; |
||||||
|
// padding: 20rpx 0rpx; |
||||||
|
border: 0.5px solid #797979; |
||||||
|
border-radius: 20rpx; |
||||||
|
line-height: 60rpx; |
||||||
|
|
||||||
|
.sh-card-title { |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
padding: 0 20px; |
||||||
|
background-color: #f2f2f2; |
||||||
|
border-top-left-radius: 20rpx; |
||||||
|
border-top-right-radius: 20rpx; |
||||||
|
.receipt-number { |
||||||
|
display: flex; |
||||||
|
.receipt-number-title { |
||||||
|
color: #333333; |
||||||
|
font-size: 24rpx; |
||||||
|
} |
||||||
|
.receipt-number-value { |
||||||
|
color: #333333; |
||||||
|
font-size: 28rpx; |
||||||
|
font-weight: 600; |
||||||
|
margin-left: 20rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.borderBottom { |
||||||
|
border-bottom-left-radius: 20rpx; |
||||||
|
border-bottom-right-radius: 20rpx; |
||||||
|
} |
||||||
|
.sh-card-title-border { |
||||||
|
border-bottom: 2px dashed #797979; |
||||||
|
} |
||||||
|
.sh-card-content { |
||||||
|
position: relative; |
||||||
|
margin: 16rpx 0; |
||||||
|
padding: 0rpx 70rpx; |
||||||
|
|
||||||
|
.detail-icon { |
||||||
|
position: absolute; |
||||||
|
right: 10rpx; |
||||||
|
top: 90rpx; |
||||||
|
} |
||||||
|
.goods-card-content { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
.goods-card-content-item { |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
width: 60%; |
||||||
|
.goods-title { |
||||||
|
font-size: 28rpx; |
||||||
|
color: #555555; |
||||||
|
} |
||||||
|
.goods-value { |
||||||
|
font-size: 28rpx; |
||||||
|
color: #666666; |
||||||
|
margin-left: 20rpx; |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
.goods-no{ |
||||||
|
font-weight: bold; |
||||||
|
margin-right: 20rpx; |
||||||
|
} |
||||||
|
.pad-content { |
||||||
|
padding-bottom: 16rpx; |
||||||
|
} |
||||||
|
|
||||||
|
.card-content { |
||||||
|
display: flex; |
||||||
|
justify-content: space-between; |
||||||
|
align-items: center; |
||||||
|
.card-content-item { |
||||||
|
width: 50%; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
.item-title { |
||||||
|
font-size: 24rpx; |
||||||
|
color: #555555; |
||||||
|
} |
||||||
|
.item-value { |
||||||
|
font-size: 26rpx; |
||||||
|
color: #666666; |
||||||
|
margin-left: 20rpx; |
||||||
|
} |
||||||
|
} |
||||||
|
.sh-bold { |
||||||
|
font-weight: bold; |
||||||
|
word-break: break-all; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
.loadmore-data{ |
||||||
|
padding-top: 30rpx; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,76 @@ |
|||||||
|
<template> |
||||||
|
<view class="sh-content"> |
||||||
|
<view class="" style="display: flex;justify-content:space-around;padding-top:250rpx;"> |
||||||
|
<view style="text-align: center;"> |
||||||
|
待拣订单 |
||||||
|
<br> |
||||||
|
<span>{{dataForm.waitPickOrderNumber}}</span> |
||||||
|
</view> |
||||||
|
<view style="text-align: center;">待拣品类 |
||||||
|
<br> |
||||||
|
<span>{{dataForm.waitPickTypeNumber}}</span></view> |
||||||
|
<view style="text-align: center;">待拣数量 |
||||||
|
<br> |
||||||
|
<span>{{dataForm.waitPickGoodsNumber}}</span></view> |
||||||
|
</view> |
||||||
|
|
||||||
|
<view style="position: absolute ;bottom:50rpx;left: 50%;transform: translateX(-50%);text-align: center;"> |
||||||
|
<view class="confrim-btn" style="margin-bottom: 40rpx;"> |
||||||
|
<u-button size="medium" type="primary" style="width:350rpx; margin-top: 40rpx" @click="operation">开始拣选</u-button> |
||||||
|
</view> |
||||||
|
<text> |
||||||
|
开始拣选后,系统自动呼叫AGV按顺序把需要拣货的 商品送至待拣区域,请及时处理! |
||||||
|
</text> |
||||||
|
</view> |
||||||
|
|
||||||
|
</view> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
export default{ |
||||||
|
data(){ |
||||||
|
return{ |
||||||
|
dataForm:{ |
||||||
|
//待拣订单 |
||||||
|
waitPickOrderNumber:'', |
||||||
|
//待拣品类 |
||||||
|
waitPickTypeNumber:'', |
||||||
|
//待拣数量 |
||||||
|
waitPickGoodsNumber:'', |
||||||
|
} |
||||||
|
} |
||||||
|
}, |
||||||
|
onLoad() { |
||||||
|
this.getList() |
||||||
|
}, |
||||||
|
methods:{ |
||||||
|
/**开始拣货操作*/ |
||||||
|
operation(){ |
||||||
|
this.$u.api.AvgOrderPkg.startPick().then(res=>{ |
||||||
|
if(res.code == 200){ |
||||||
|
this.$u.toast('开始拣货操作') |
||||||
|
this.$u.route({ |
||||||
|
url: 'pages/AvgOrderPkg/picking/index', |
||||||
|
type: 'navigateTo', |
||||||
|
}) |
||||||
|
}else{ |
||||||
|
this.$u.toast(res.msg) |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
getList(){ |
||||||
|
this.$u.api.AvgOrderPkg.getAGVStatistics().then(res=>{ |
||||||
|
if(res.code == 200){ |
||||||
|
console.log(res); |
||||||
|
this.dataForm = res.data |
||||||
|
}else{ |
||||||
|
this.$u.toast(res.msg) |
||||||
|
} |
||||||
|
}) |
||||||
|
}, |
||||||
|
} |
||||||
|
} |
||||||
|
</script> |
||||||
|
|
||||||
|
<style> |
||||||
|
</style> |
||||||
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 7.2 KiB |
|
After Width: | Height: | Size: 7.9 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 8.7 KiB |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 1.8 KiB |