<template>
|
<view>
|
<scroll-view scroll-y>
|
<view class="pak-seach-box">
|
<view class="box-top">
|
<view class="color-block-blue"></view>
|
<text class="title">托盘条码</text>
|
</view>
|
<view class="box-buttom">
|
<input type="text" placeholder="扫码 / 输入">
|
</view>
|
</view>
|
<view class="pak-seach-box">
|
<view class="box-top">
|
<view class="color-block-blue"></view>
|
<text class="title">检索商品</text>
|
</view>
|
<view class="box-buttom">
|
<input type="text" placeholder="扫码 / 输入">
|
<button class="cu-btn bg-blue" @click="pickEject()">+提取</button>
|
</view>
|
</view>
|
<view class="pak-data-box">
|
<view class="box-top">
|
<view class="color-block-blue"></view>
|
<text class="title">商品列表</text>
|
</view>
|
|
</view>
|
<checkbox-group @change="checkbox">
|
<view v-for="(item,index) in data" :key="index" class="data-list bg-false" :class="'bg-'+item.checked" >
|
<view class="data-list-left">
|
<checkbox :value="item.id+''" :checked="item.checked" style="display: block;" />
|
</view>
|
<view class="data-list-right">
|
<view><text style="width: 400rpx;">编码:{{item.matnr}}</text></view>
|
<view><text style="width: 400rpx;">品名:{{item.maktx}}</text></view>
|
<view><text style="width: 400rpx;">批号:{{item.anfme}}</text></view>
|
</view>
|
</view>
|
</checkbox-group>
|
</scroll-view>
|
<view class="footer flex justify-around">
|
<view>
|
<button class="cu-btn">重置</button>
|
</view>
|
<view>
|
<button class="cu-btn pakin-btn bg-blue">组托</button>
|
</view>
|
<view>
|
<button class="cu-btn bg-blue" @click="searchEject()"><text class="button-text">居中</text></button>
|
</view>
|
</view>
|
<!-- 弹出层 -->
|
<view>
|
<!-- 商品检索弹窗 -->
|
<view class="search-box" :class="'search-box-' + searchBox">
|
<view class="goodsSearch">
|
<view class="head">
|
<view class="color-block-blue"></view>
|
<view class="head-title">提取商品</view>
|
<view class="head-icon">
|
<uni-icons type="closeempty" size="25" @click="searchEject()"></uni-icons>
|
</view>
|
</view>
|
<view class="container">
|
<view class="text-box">
|
<view><text>商品编码</text></view>
|
<view><text>1111</text></view>
|
</view>
|
<view class="text-box">
|
<view><text>商品名称</text></view>
|
<view></view>
|
</view>
|
<view class="text-box">
|
<view><text>规格</text></view>
|
<view></view>
|
</view>
|
<view class="text-box">
|
<view><text>批号</text></view>
|
<view></view>
|
</view>
|
<view class="text-box">
|
<view><text>数量</text></view>
|
<view></view>
|
</view>
|
<view class="foot flex justify-center">
|
<label for="">
|
<button class="cu-btn bg-blue">提取</button>
|
</label>
|
</view>
|
</view>
|
</view>
|
</view>
|
|
</view>
|
<view>
|
<!-- 提取弹窗 -->
|
<view class="pick-box" :class="'pick-box-' + pick">
|
<view class="goodsSearch">
|
<view class="head">
|
<view class="color-block-blue"></view>
|
<view class="head-title">提取商品</view>
|
<view class="head-icon">
|
<uni-icons type="closeempty" size="25" @click="pickEject()"></uni-icons>
|
</view>
|
</view>
|
<view class="container">
|
<view class="text-box">
|
<view><text>商品编码</text></view>
|
<view><text>6666</text></view>
|
</view>
|
<view class="text-box">
|
<view><text>商品名称</text></view>
|
<view></view>
|
</view>
|
<view class="text-box">
|
<view><text>规格</text></view>
|
<view></view>
|
</view>
|
<view class="text-box">
|
<view><text>批号</text></view>
|
<view></view>
|
</view>
|
<view class="text-box">
|
<view><text>数量</text></view>
|
<view></view>
|
</view>
|
|
<view class="foot flex justify-center">
|
<label for="">
|
<button class="cu-btn bg-blue">提取</button>
|
</label>
|
</view>
|
</view>
|
</view>
|
</view>
|
</view>
|
</view>
|
</template>
|
|
<script>
|
export default {
|
data() {
|
return {
|
type: 'center',
|
searchBox: 'hide',
|
pick:'hide',
|
data:[
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
{matnr:'123456',anfme:'1',maktx:'显示器',inQty:'2022批',id:21},
|
|
]
|
}
|
},
|
methods: {
|
searchEject() {
|
if (this.searchBox == 'show') {
|
this.searchBox = 'hide'
|
} else {
|
this.searchBox = 'show'
|
}
|
uni.vibrateShort();
|
},
|
pickEject() {
|
if (this.pick == 'show') {
|
this.pick = 'hide'
|
} else {
|
this.pick = 'show'
|
}
|
uni.vibrateShort();
|
},
|
change(e) {
|
console.log('当前模式:' + e.type + ',状态:' + e.show);
|
},
|
toggle(type) {
|
this.type = type
|
// open 方法传入参数 等同在 uni-popup 组件上绑定 type属性
|
this.$refs.goodsSearch.open(type)
|
},
|
checkbox: function (e) {
|
var items = this.data,
|
values = e.detail.value;
|
for (var i = 0, lenI = items.length; i < lenI; ++i) {
|
const item = items[i]
|
item.id = item.id + ''
|
if(values.indexOf(item.id) >= 0){
|
this.$set(item,'checked',true)
|
}else{
|
this.$set(item,'checked',false)
|
}
|
}
|
if (values.length == items.length) {
|
this.check = true
|
this.checkText = "取消全选"
|
} else {
|
this.check = false
|
this.checkText = "全选"
|
}
|
uni.vibrateShort();
|
},
|
}
|
}
|
</script>
|
|
<style>
|
.pak-seach-box {
|
background-color: #FFFFFF;
|
margin: 15rpx 15rpx 0rpx 15rpx;
|
width: 96%;
|
height: 150rpx;
|
border-radius: 20rpx;
|
}
|
.box-top{
|
display: block;
|
height: 60rpx;
|
width: 720rpx;
|
}
|
.color-block-blue {
|
background-color: #1E9FFF;
|
display: inline-block;
|
float: left;
|
margin: 15rpx 15rpx 0 15rpx;
|
width: 12rpx;
|
height: 40rpx;
|
border: 5rpx solid #1E9FFF;
|
border-radius: 20rpx;
|
}
|
.title {
|
display: inline-block;
|
float: left;
|
font-size: 34rpx;
|
font-weight: 700;
|
height: 50rpx;
|
line-height: 50rpx;
|
margin-top: 10rpx;
|
}
|
.box-buttom {
|
display: block;
|
width: 720rpx;
|
height: 80rpx;
|
}
|
.pak-seach-box input {
|
background-color: #ededed;
|
border: 1rpx solid #d8d8d8;
|
display: inline-block;
|
border-radius: 20rpx;
|
float: left;
|
width: 70%;
|
height: 60rpx;
|
line-height: 60rpx;
|
margin: 15rpx 15rpx 0rpx 15rpx;
|
padding-left: 20rpx;
|
}
|
.pak-seach-box button {
|
background-color: #1E9FFF;
|
color: #ffffff;
|
display: inline-block;
|
float: right;
|
width: 150rpx;
|
height: 60rpx;
|
margin: 15rpx 15rpx 0rpx 15rpx;
|
line-height: 60rpx;
|
}
|
.pakin-btn {
|
background-color: #1E9FFF;
|
}
|
.pak-data-box {
|
background-color: #F1F1F1;
|
margin: 15rpx 15rpx 0rpx 15rpx;
|
width: 96%;
|
height: 70rpx;
|
border-radius: 20rpx;
|
}
|
.pak-data-box .box-top {
|
background-color: #FFFFFF;
|
height: 70rpx;
|
border-radius: 20rpx 20rpx 20rpx 20rpx;
|
}
|
.bg-false {
|
background-color: #FFFFFF;
|
}
|
.bg-true {
|
background-color: #ebebeb;
|
}
|
.data-list {
|
border-bottom: 1px solid #d8d8d8;
|
height: 180rpx;
|
margin: 15rpx;
|
border-radius: 20rpx;
|
}
|
.data-list:first-child {
|
margin-top: 20rpx;
|
}
|
.data-list:last-child {
|
margin-bottom: 120rpx;
|
}
|
.data-list-left {
|
display: inline-block;
|
float: left;
|
text-align: center;
|
width: 100rpx;
|
height: 180rpx;
|
line-height: 180rpx;
|
}
|
.data-list-right {
|
display: inline-block;
|
float: left;
|
height: 180rpx;
|
color: #828282;
|
}
|
/* 遮罩层 */
|
.search-box-show {
|
display: block;
|
}
|
.search-box-hide {
|
display: none;
|
}
|
.pick-box-show {
|
display: block;
|
}
|
.pick-box-hide {
|
display: none;
|
}
|
.pick-box {
|
position: fixed;
|
top: 0;
|
left: 0;
|
width: 100%;
|
height: 100%;
|
background-color: rgba(0,0,0,0.6);
|
z-index: 90;
|
}
|
.search-box {
|
position: fixed;
|
top: 0;
|
left: 0;
|
width: 100%;
|
height: 100%;
|
background-color: rgba(0,0,0,0.6);
|
z-index: 90;
|
}
|
.goodsSearch {
|
background-color: #FFFFFF;
|
display: block;
|
position: absolute;
|
top: 10%;
|
left: 20rpx;
|
width: 720rpx;
|
height: 80%;
|
border-radius: 21rpx;
|
z-index: 100;
|
}
|
.head {
|
background-color: #FFFFFF;
|
position: relative;
|
width: 100%;
|
height: 100rpx;
|
border-radius: 20rpx 20rpx 0 0 ;
|
}
|
.head .color-block-blue {
|
margin: 36rpx 5rpx 0 30rpx;
|
}
|
.head-title {
|
display: inline-block;
|
float: left;
|
font-size: 40rpx;
|
font-weight: 700;
|
margin-top: 25rpx;
|
margin-left: 20rpx;
|
}
|
.head-icon {
|
display: inline-block;
|
float: right;
|
margin-top: 25rpx;
|
margin-right: 20rpx;
|
}
|
.container {
|
width: 100%;
|
height: 92%;
|
position: absolute;
|
background-color: #F1F1F1;
|
border-radius: 0 0 20rpx 20rpx;
|
}
|
|
.text-box {
|
background-color: #FFFFFF;
|
position: ;
|
height: 100rpx;
|
line-height: 100rpx;
|
margin-left: 2%;
|
margin-top: 20rpx;
|
width: 96%;
|
border-radius: 20rpx;
|
}
|
.text-box:first-child {
|
margin-top: 20rpx;
|
}
|
.text-box view{
|
text-align: end;
|
display: inline-block;
|
width: 288rpx;
|
padding-right: 20rpx;
|
}
|
.text-box view:last-child {
|
text-align: start;
|
padding-left: 20rpx;
|
}
|
.foot {
|
width: 95.7%;
|
height: 100rpx;
|
line-height: 100rpx;
|
background-color: rgba(255,255,255,1);
|
position: fixed;
|
bottom: 7.2%;
|
border-top: 1px solid #d8d8d8;
|
border-radius: 0 0 20rpx 20rpx ;
|
z-index: 1;
|
}
|
</style>
|