| | |
| | | <template> |
| | | <view> |
| | | <scroll-view> |
| | | <view> |
| | | <view class="search-box"> |
| | | <view class="search-area"> |
| | | <view class="search-icon"><uni-icons type="search" size="25" color="#a5a5a5"></uni-icons></view> |
| | | <input type="text" v-model="orderNo" placeholder="扫码 / 输入(订单编号)" @input="search()"/> |
| | | <view class="close-icon" @click="reset()"><uni-icons type="closeempty" size="25" color="#a5a5a5"></uni-icons></view> |
| | | </view> |
| | | </view> |
| | | <checkbox-group @change="checkbox"> |
| | | <label v-for="(item,index) in data" :key="index" class="demo-list bg-false" :class="'bg-'+item.checked" > |
| | | <view class="demo-list-left"> |
| | | <checkbox :value="item.id+''" :checked="item.checked" style="display: block;" /> |
| | | </view> |
| | | <view class="demo-list-right"> |
| | | <!-- <view><text style="font-weight: bold;">序号:{{index+1}}</text></view> --> |
| | | <view class="order-ditel"><text class="index">No.{{index+1}}</text><text class="orderNo">{{item.orderNo}}</text></view> |
| | | <view><text style="width: 400rpx;">商品编码:{{item.matnr}}</text></view> |
| | | <view> |
| | | <text>应入数量:{{item.anfme}}</text> |
| | | <text>商品名称:{{item.maktx}}</text> |
| | | </view> |
| | | <view> |
| | | <text>已入数量:{{item.inQty}}</text> |
| | | <text style="width: auto;">订单状态:</text><text :class="state$"> {{item.state$}}</text> |
| | | </view> |
| | | </view> |
| | | </label> |
| | | </checkbox-group> |
| | | |
| | | <view class="square-2"> |
| | | <view class="square-title"> |
| | | <view class="title-sign"><view class="sign"></view></view> |
| | | <view class="title-text"><text>没有按钮</text></view> |
| | | </view> |
| | | </scroll-view> |
| | | <view class="foot flex justify-around"> |
| | | <label class="label-btn" style="width: 150rpx;"> |
| | | <checkbox :checked="check" @click="allChecked()">{{checkText}}</checkbox> |
| | | </label> |
| | | <label class="label-btn" style="width: 100rpx;"> |
| | | <text @click="reChecked()">反选</text> |
| | | </label> |
| | | |
| | | <label class="label-btn" style="width: 170rpx;"> |
| | | <button class="cu-btn bg-red ">撤销上架</button> |
| | | </label> |
| | | <label class="label-btn"> |
| | | <button class="cu-btn bg-blue " @click="shangjia()">上架</button> |
| | | </label> |
| | | <view class="square-content"> |
| | | <view class="content-input"> |
| | | <input type="text" v-model="yyds" placeholder="扫码 / 输入" @input="find" :focus="focus"> |
| | | <uni-icons type="closeempty" size="20" color="#dadada"></uni-icons> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <checkbox-group > |
| | | <view v-for="(item,index) in staNoList" :key="index" class="data-list " > |
| | | <view class="data-list-left"> |
| | | <view class="matnr">{{item}}</view> |
| | | </view> |
| | | </view> |
| | | </checkbox-group> |
| | | <view class="square-2"> |
| | | <view class="square-title"> |
| | | <view class="title-sign"><view class="sign"></view></view> |
| | | <view class="title-text"><text>右侧按钮</text></view> |
| | | </view> |
| | | <view class="square-content"> |
| | | <view class="content-input-btn"> |
| | | <input type="text"> |
| | | <uni-icons type="closeempty" size="20" color="#dadada"></uni-icons> |
| | | </view> |
| | | <view class="content-btn"> |
| | | <button class="cu-btn bg-blue pda-btn">提取</button> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="square-3"> |
| | | <view class="square-title"> |
| | | <view class="title-sign"><view class="sign"></view></view> |
| | | <view class="title-text"><text>左侧下拉</text></view> |
| | | </view> |
| | | <view class="square-content"> |
| | | <view class="content-combox"> |
| | | |
| | | <uni-combox emptyTips="暂无数据" :candidates="staNoList" v-model="staNo" placeholder="站台号"></uni-combox> |
| | | </view> |
| | | |
| | | </view> |
| | | <view class="square-content"> |
| | | <view class="content-input-combox"> |
| | | <input type="text"> |
| | | <uni-icons type="closeempty" size="20" color="#dadada"></uni-icons> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="square-1"> |
| | | <view class="square-title"> |
| | | <view class="title-sign"><view class="sign"></view></view> |
| | | <view class="title-text"><text>商品列表</text></view> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="square-none"> |
| | | <view class="v-show">暂无更多数据...</view> |
| | | </view> |
| | | <!-- 商品列表 --> |
| | | <view> |
| | | <view></view> |
| | | </view> |
| | | <!-- 表单 --> |
| | | <view class="square-form"> |
| | | <view class="form-title"> |
| | | <text>结束时间</text> |
| | | </view> |
| | | <view class="form-input"> |
| | | <input type="text" placeholder="请输入..."> |
| | | </view> |
| | | </view> |
| | | <!-- 表单必填 --> |
| | | <view class="square-form"> |
| | | <view class="form-title"> |
| | | <text>结束时间</text> |
| | | </view> |
| | | <view class="form-input"> |
| | | <input type="text" placeholder="请输入..."> |
| | | </view> |
| | | </view> |
| | | <!-- 搜索框 --> |
| | | <view class="square-1"> |
| | | <view class="searchBox"> |
| | | <view class="searchIcon"><uni-icons type="search" size="20" color="#dadada"></uni-icons></view> |
| | | <view class="searchArea"><input type="text" placeholder=" 请输入"></view> |
| | | <view class="closeIcon"><uni-icons type="closeempty" size="20" color="#dadada"></uni-icons></view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </template> |
| | |
| | | export default { |
| | | data() { |
| | | return { |
| | | data: [], |
| | | orderNo:'', |
| | | needData:{}, |
| | | check:false, |
| | | checkText:'全选', |
| | | checkedData:[], |
| | | state$:'', |
| | | staNoList:[], |
| | | staNo:'', |
| | | yyds:'', |
| | | focus:'' |
| | | } |
| | | }, |
| | | mounted() { |
| | | const UIP = uni.getStorageSync('UIP'); |
| | | this.baseIP = UIP; |
| | | const UPORT = uni.getStorageSync('UPORT'); |
| | | this.basePORT = UPORT; |
| | | this.render() |
| | | onLoad() { |
| | | // #ifdef APP |
| | | setInterval(()=>{ |
| | | uni.hideKeyboard() |
| | | },20) |
| | | // #endif |
| | | }, |
| | | methods: { |
| | | // 搜索 |
| | | search() { |
| | | let that = this; |
| | | // that.tabData.forEach(function(e){ |
| | | // that.searchData = e.orderNo |
| | | // }) |
| | | this.render(that.orderNo) |
| | | }, |
| | | // 重置 |
| | | reset() { |
| | | let that = this; |
| | | if (that.orderNo == '') { |
| | | uni.vibrateShort(); |
| | | } else { |
| | | uni.vibrateLong(); |
| | | } |
| | | that.orderNo = ''; |
| | | that.needData['order_no'] = ''; |
| | | that.getData(); |
| | | methods:{ |
| | | find(){ |
| | | this.staNoList.push(this.yyds); |
| | | |
| | | |
| | | |
| | | }, |
| | | // 表格加载 |
| | | render(param) { |
| | | let that = this; |
| | | if(param) { |
| | | that.needData['order_no'] = param; |
| | | that.getData(); |
| | | } else { |
| | | that.getData(); |
| | | } |
| | | }, |
| | | getData() { |
| | | let that = this |
| | | uni.request({ |
| | | url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/receiveDetl/list/auth", |
| | | header:{'token':uni.getStorageSync('token')}, |
| | | data: that.needData, |
| | | success(res) { |
| | | var res = res.data |
| | | if (res.code === 200) { |
| | | that.data = res.data.records |
| | | } |
| | | for (var i = 0; i < that.data.length; i++) { |
| | | if (that.data[i].state$ == "未入库") { |
| | | that.state$ = 'color-red' |
| | | } else { |
| | | console.log(2) |
| | | } |
| | | |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | 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(); |
| | | }, |
| | | reChecked() { // 反选 |
| | | var checkArr = [] |
| | | for (var i = 0; i < this.data.length;i++) { |
| | | if (this.data[i].checked == true) { |
| | | this.$set(this.data[i],'checked',false) |
| | | }else{ |
| | | this.$set(this.data[i],'checked',true) |
| | | } |
| | | if (this.data[i].checked == true) { |
| | | checkArr.push(this.data[i].checked) |
| | | } |
| | | } |
| | | if (checkArr.length == this.data.length) { |
| | | this.check = true |
| | | this.checkText = "取消全选" |
| | | } else { |
| | | this.check = false |
| | | this.checkText = "全选" |
| | | } |
| | | uni.vibrateShort(); |
| | | }, |
| | | allChecked(e){ // 全选 |
| | | if (this.check == true) { |
| | | for (var i = 0; i < this.data.length;i++) { |
| | | this.$set(this.data[i],'checked',false) |
| | | } |
| | | this.check = false |
| | | this.checkText = "全选" |
| | | } else { |
| | | for (var i = 0; i < this.data.length;i++) { |
| | | this.$set(this.data[i],'checked',true) |
| | | } |
| | | this.check = true |
| | | this.checkText = "取消全选" |
| | | } |
| | | uni.vibrateShort(); |
| | | }, |
| | | shangjia() { |
| | | this.checkedData = [] |
| | | for (var i = 0; i < this.data.length; i++) { |
| | | if (this.data[i].checked == true) { |
| | | this.checkedData.push(this.data[i]) |
| | | } |
| | | } |
| | | uni.vibrateShort(); |
| | | console.log(this.checkedData) |
| | | this.focus = false; |
| | | setTimeout(()=>{ |
| | | this.yyds =''; |
| | | this.focus = true; |
| | | console.log(this.yyds ,'1') |
| | | }, 50); |
| | | } |
| | | } |
| | | } |
| | | |
| | | </script> |
| | | |
| | | <style> |
| | | .search-box { |
| | | position: fixed; |
| | | left: 0; |
| | | top: 0; |
| | | width: 100%; |
| | | height: 100rpx; |
| | | background-color: #FFF; |
| | | border-bottom: 1px solid #d8d8d8; |
| | | border-radius: 0 0 20rpx 20rpx; |
| | | z-index: 1; |
| | | } |
| | | /*#ifdef H5 */ |
| | | .search-box { |
| | | position: fixed; |
| | | left: 0; |
| | | top: 60rpx; |
| | | width: 100%; |
| | | height: 100rpx; |
| | | background-color: #ffffff; |
| | | border-bottom: 1px solid #d8d8d8; |
| | | border-radius: 0 0 20rpx 20rpx; |
| | | z-index: 1; |
| | | } |
| | | /* #endif */ |
| | | .search-area { |
| | | background-color: #EDEDED; |
| | | width: 96%; |
| | | height: 70%; |
| | | margin: 15rpx; |
| | | border-radius: 15rpx; |
| | | } |
| | | .search-area input { |
| | | display: inline-block; |
| | | height: 70rpx; |
| | | width: 70%; |
| | | line-height: 70rpx; |
| | | /* color: #a5a5a5; */ |
| | | font-size: 25rpx; |
| | | font-weight: 400; |
| | | } |
| | | .search-icon { |
| | | display: inline-block; |
| | | float: left; |
| | | width: 70rpx; |
| | | height: 70rpx; |
| | | text-align: center; |
| | | line-height: 70rpx; |
| | | |
| | | } |
| | | .close-icon { |
| | | display: inline-block; |
| | | float: right; |
| | | width: 70rpx; |
| | | height: 70rpx; |
| | | text-align: center; |
| | | line-height: 70rpx; |
| | | } |
| | | .bg-false { |
| | | background-color: #FFFFFF; |
| | | } |
| | | .bg-true { |
| | | background-color: #ebebeb; |
| | | } |
| | | |
| | | .demo-list { |
| | | border-bottom: 1px solid #d8d8d8; |
| | | height: 180rpx; |
| | | margin: 15rpx; |
| | | border-radius: 20rpx; |
| | | } |
| | | .demo-list:first-child { |
| | | margin-top: 120rpx; |
| | | } |
| | | .demo-list:last-child { |
| | | margin-bottom: 120rpx; |
| | | } |
| | | label { |
| | | display: block; |
| | | } |
| | | .demo-list-left { |
| | | display: inline-block; |
| | | float: left; |
| | | text-align: center; |
| | | width: 100rpx; |
| | | height: 180rpx; |
| | | line-height: 180rpx; |
| | | } |
| | | .demo-list-right { |
| | | display: inline-block; |
| | | float: left; |
| | | height: 180rpx; |
| | | color: #828282; |
| | | } |
| | | .order-ditel { |
| | | height: 60rpx; |
| | | width: 600rpx; |
| | | line-height: 60rpx; |
| | | } |
| | | |
| | | .demo-list-right .index { |
| | | width: 120rpx; |
| | | height: 25rpx; |
| | | line-height: 25rpx; |
| | | font-size: 40rpx; |
| | | border-right: 4rpx solid #6f6f6f; |
| | | padding-left: 0px; |
| | | padding-right: 10rpx; |
| | | color: #3b3b3b; |
| | | /* background-color: #007AFF; */ |
| | | } |
| | | .demo-list-right .orderNo { |
| | | padding-left: 30rpx; |
| | | font-size: 35rpx; |
| | | width: 400rpx; |
| | | color: #3b3b3b; |
| | | /* background-color: #0A98D5; */ |
| | | } |
| | | .demo-list-right .vertical-bar { // 竖杠 |
| | | /* background-color: #6739B6; */ |
| | | width: 50rpx; |
| | | font-size: 30rpx; |
| | | text-align: center; |
| | | } |
| | | .demo-list-right text { |
| | | display: inline-block; |
| | | width: 250rpx; |
| | | font-size: 25rpx; |
| | | } |
| | | .color-red { |
| | | width: auto; |
| | | font-weight: 700; |
| | | color: red; |
| | | } |
| | | |
| | | .foot { |
| | | width: 100%; |
| | | height: 100rpx; |
| | | line-height: 100rpx; |
| | | background-color: #FFF; |
| | | position: fixed; |
| | | bottom: 0; |
| | | border-top: 1px solid #d8d8d8; |
| | | border-radius: 20rpx 20rpx 0 0 ; |
| | | z-index: 1; |
| | | } |
| | | .label-btn { |
| | | width: 150rpx; |
| | | } |
| | | checkbox { |
| | | /* transform:scale(0.7) */ |
| | | } |
| | | |
| | | </style> |