wms:库位批量查看

This commit is contained in:
qianhao.xu
2024-04-07 19:05:18 +08:00
parent ae1556b4ff
commit c0ce07b146
17 changed files with 1898 additions and 232 deletions

View File

@@ -23,182 +23,190 @@
</template>
<script>
export default {
data() {
return {
gridItemList: [{
name: '入库',
icon: 'download-filled'
},
{
name: '出库',
icon: 'upload-filled'
},
{
name: '盘点',
icon: 'wallet-filled'
},
{
name: '移库',
icon: 'cart-filled'
},
{
name: '退库',
icon: 'undo-filled'
},
{
name: '拼箱',
icon: 'folder-add-filled'
},
{
name: '拆箱',
icon: 'folder-add-filled'
},
{
name: '货物查看',
icon: 'eye-filled'
},
{
name: '入库记录',
icon: 'list'
},
{
name: '出库记录',
icon: 'list'
},
{
name: '注销',
icon: 'redo-filled'
}
]
};
},
onLoad: function() {},
mounted() {
// setInterval(function () {
// uni.hideKeyboard(); //隐藏软键盘
// // plus.key.hideSoftKeybord();
// }, 60);
},
methods: {
gridCheck(item) {
const index = item.detail?.index;
switch (index) {
case 1:
uni.navigateTo({
url: '/pages/inWarehouse/inWarehouse'
});
break;
case 2:
uni.navigateTo({
url: '/pages/outWarehouse/outWarehouse'
});
break;
case 3:
uni.navigateTo({
url: '/pages/stocktake/stocktake'
});
break;
case 4:
uni.navigateTo({
url: '/pages/relocation/relocation'
});
break;
case 5:
uni.navigateTo({
url: '/pages/returnWarehose/returnWarehose'
});
break;
case 6:
//TODO 拼箱
// uni.navigateTo({
// url: '/pages/returnWarehose/returnWarehose'
// });
break;
case 7:
// 货物查看
// uni.navigateTo({
// url: '/pages/returnWarehose/returnWarehose'
// });
break;
case 8:
// 货物查看
// uni.navigateTo({
// url: '/pages/returnWarehose/returnWarehose'
// });
break;
case 9:
// 货物查看
// uni.navigateTo({
// url: '/pages/returnWarehose/returnWarehose'
// });
break;
case 11:
// 注销
uni.showModal({
title: '注销',
content: '是否注销当前账户?',
showCancel: true,
cancelText: '取消',
confirmText: '注销',
success: (res) => {
if (res.confirm) {
uni.reLaunch({
url: '/pages/login/login'
})
}
}
});
break;
default:
break;
export default {
data() {
return {
gridItemList: [
{
name: '入库',
icon: 'download-filled',
index: 0
},
{
name: '出库',
icon: 'upload-filled',
index: 1
},
{
name: '盘点',
icon: 'wallet-filled',
index: 2
},
{
name: '库',
icon: 'cart-filled',
index: 3
},
{
name: '退库',
icon: 'undo-filled',
index: 4
},
{
name: '拼箱',
icon: 'folder-add-filled',
index: 5
},
{
name: '拆箱',
icon: 'folder-add-filled',
index: 6
},
{
name: '货物查看',
icon: 'eye-filled',
index: 7
},
{
name: '入库记录',
icon: 'list',
index: 8
},
{
name: '出库记录',
icon: 'list',
index: 9
},
{
name: '注销',
icon: 'redo-filled',
index: 10
}
},
handleWareHouseChange(data) {
uni.showToast({
title: '扫描成功',
icon: 'success'
});
// console.log('handleWareHouseChange', data);
]
};
},
onLoad: function () {},
mounted() {
// setInterval(function () {
// uni.hideKeyboard(); //隐藏软键盘
// // plus.key.hideSoftKeybord();
// }, 60);
},
methods: {
gridCheck(item) {
const index = item.detail?.index;
switch (index) {
case 1:
uni.navigateTo({
url: '/pages/inWarehouse/inWarehouse'
});
break;
case 2:
uni.navigateTo({
url: '/pages/outWarehouse/outWarehouse'
});
break;
case 3:
uni.navigateTo({
url: '/pages/stocktake/stocktake'
});
break;
case 4:
uni.navigateTo({
url: '/pages/relocation/relocation'
});
break;
case 5:
uni.navigateTo({
url: '/pages/returnWarehose/returnWarehose'
});
break;
case 6:
//TODO 拼箱
// uni.navigateTo({
// url: '/pages/returnWarehose/returnWarehose'
// });
break;
case 7:
case 8:
//货物查看
uni.navigateTo({
url: '/pages/watchGoods/watchGoods'
});
break;
case 9:
// 货物查看
// uni.navigateTo({
// url: '/pages/returnWarehose/returnWarehose'
// });
break;
case 11:
// 注销
uni.showModal({
title: '注销',
content: '是否注销当前账户?',
showCancel: true,
cancelText: '取消',
confirmText: '注销',
success: (res) => {
if (res.confirm) {
uni.reLaunch({
url: '/pages/login/login'
});
}
}
});
break;
default:
break;
}
},
handleWareHouseChange(data) {
uni.showToast({
title: '扫描成功',
icon: 'success'
});
// console.log('handleWareHouseChange', data);
}
};
}
};
</script>
<style scoped>
.background {
margin-top: 20px;
height: 692px;
/* background-color: #4671d5; */
}
.background {
margin-top: 20px;
height: 692px;
/* background-color: #4671d5; */
}
.title-box {
width: 100%;
height: 150px;
}
.title-box {
width: 100%;
height: 150px;
}
.grid-box {
width: 100%;
height: 100%;
}
.grid-box {
width: 100%;
height: 100%;
}
.grid-box .item {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.grid-box .item {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.item {
background-color: rgba(128, 128, 128, 0.5);
}
.item {
background-color: rgba(128, 128, 128, 0.5);
}
.text {
font-size: 24px;
color: white;
}
</style>
.text {
font-size: 24px;
color: white;
}
</style>

View File

@@ -1,5 +1,6 @@
<template>
<view class="normal-login-container">
<u-no-network></u-no-network>
<view class="logo-content align-center justify-center flex">
<image style="width: 100rpx; height: 100rpx" src="@/static/images/icon/icon1.png" mode="widthFix"></image>
<text class="title" style="color: #10298D;">WMS-移动端</text>

View File

@@ -0,0 +1,68 @@
<template>
<view>
<view class="body" v-for="(item, index) in dataList" :key="index">
<view class="title">{{ item.packageCodeClient }}</view>
<view>
<text>库位</text>
<view>{{ item.locationCode }}</view>
</view>
<view>
<text>零件号</text>
<view>{{ item.partnumber }}</view>
</view>
<view>
<text>数量</text>
<view>{{ item.goodsNumLogic }}</view>
</view>
<view>
<text>入库时间</text>
<view>{{ item.entryWarehouseTime }}</view>
</view>
<view>
<text>备注</text>
<view>{{ item.remark }}</view>
</view>
</view>
</view>
</template>
<script>
import * as watchGoodsApi from '@/api/watchGoods/watchGoods.js';
export default {
onLoad: function (option) {
this.shortpatchcode = option.shortpatchcode;
},
data() {
return {
shortpatchcode: '',
dataList: []
};
},
mounted() {
this.getList();
},
methods: {
getList() {
const query = { packageCodeClient: this.shortpatchcode };
watchGoodsApi.GetGoodsNowProduction_detail(query).then((res) => {
if (res.code == 200) {
this.dataList = res.data;
}
});
}
}
};
</script>
<style scoped lang="scss">
.body {
background-color: white;
margin-top: 10px;
.title {
color: #2979ff;
font-size: 50rpx;
font-weight: 50;
}
}
</style>

View File

@@ -0,0 +1,107 @@
<template>
<view>
<u-search placeholder="请填写批次号" v-model="PackageCodeClient" shape="round"></u-search>
<view v-for="(item, index) in dataList" :key="index">
<view class="card" @click="searchItem(item.packageCodeClient_son)">
<u-row>
<u-col span="9">
<view class="bigtitle">批次号{{ item.packageCodeClient_son }}</view>
</u-col>
<u-col span="3" style="float: right">
<view style="float: right; width: 29px"><u-icon name="arrow-right-double" color="#2979ff" size="58"></u-icon></view>
</u-col>
</u-row>
<view>
<div class="container">
<div class="column">
<view class="text">零件号:</view>
<view>
<text class="num">{{ item.partnumber }}</text>
</view>
</div>
<div class="column">
<view class="text">箱数:</view>
<view>
<text class="num">{{ item.pack_num }}</text>
</view>
</div>
<div class="column">
<view class="text">总数量:</view>
<view>
<text class="num">{{ item.goodsNumLogic }}</text>
</view>
</div>
</div>
</view>
</view>
</view>
</view>
</template>
<script>
import * as watchGoodsApi from '@/api/watchGoods/watchGoods.js';
export default {
data() {
return {
PackageCodeClient: '',
type: 'text',
border: true,
dataList: []
};
},
mounted() {
this.searchList();
},
methods: {
// 搜索
searchList() {
const query = { packageCodeClient: this.PackageCodeClient };
watchGoodsApi.GetGoodsNowProduction_List(query).then((res) => {
if (res.code == 200) {
console.log(res.data);
this.dataList = res.data;
}
});
},
searchItem(item){
uni.navigateTo({
url: '/pages/watchGoods/goodsdetail/goodsdetail?shortpatchcode='+item
})
}
}
};
</script>
<style scoped lang="scss">
.card {
background-color: white;
width: 100%;
margin-bottom: 10px;
.container {
display: grid;
grid-template-columns: 1fr 1fr 1fr; /* 将容器分成三列,每列宽度相等 */
grid-gap: 10px; /* 设置列之间的间距 */
}
.column {
padding: 20px;
}
.num {
font-weight: 100rpx;
font-size: 1.5rem;
color: #19be6b;
}
.text {
text-align: center;
}
}
.bigtitle {
color: #2979ff;
font-size: 50rpx;
font-weight: 50;
}
</style>