#
whycq
2024-04-28 5a29707780e00b600afd053b62d38af5d267102b
pages/phyz/orderOut/orderOutSelect.vue
@@ -1,20 +1,42 @@
<template>
   <view>
      <view class="code">
         <uni-search-bar :focus="searchValueFocus" v-model="searchValue"
            maxlength="500" ancel="cancel" @confirm="searchValueInput2()" @clear="clear" placeholder="输入 / 扫描 订单号">
         <uni-search-bar  v-model="searchValue1"
            maxlength="500" ancel="cancel" @confirm="searchValueInput1()" @clear="clear" placeholder="输入 / 扫描 订单号">
         </uni-search-bar>
         <view class="code-title">
            <view></view>
            <view style="width: 100%;text-align: center;margin: 16rpx;">{{searchValue}} 总数量:- {{total}} -</view>
            <view style="width: 100%;text-align: center;margin: 16rpx;">{{searchValue1}} 总数量:- {{total}} -</view>
            <view></view>
         </view>
      </view>
      <view class="list list-font-color" :class="orderDetl.color" v-for="(orderDetl,index) in dataList" :key="index">
         <view class="list-left">
            <view class="detl-threeCode">{{orderDetl.threeCode}}</view>
            <view>主单号:{{orderDetl.orderNo}}</view>
            <view>编号:{{orderDetl.matnr}}</view>
            <view>名称:{{orderDetl.maktx}}</view>
            <view>订单数量:{{orderDetl.anfme}}</view>
            <view>库存数量:{{orderDetl.stock}}</view>
            <view>已出数量:{{orderDetl.qty}}</view>
         </view>
         <view class="list-right" @click="goToLocDetl(orderDetl)">
            <uni-icons type="right" size="25"  color="#fff"></uni-icons>
         </view>
      </view>
      <!-- 垫高 -->
      <view style="height: 340rpx;text-align: center;color: #b9b9b9;">
         - 已经到底了 -
      </view>
      <view class="buttom">
         <uni-search-bar :focus="searchValueFocus" v-model="searchValue" style="width: 100%;"
            maxlength="500" ancel="cancel" @confirm="searchValueInput2()" @clear="clear" placeholder="输入 / 扫描 订单号">
         <view style="width: 150rpx;text-align: center;padding-left: 12rpx;">
            名称
         </view>
         <uni-search-bar v-model="searchValue2" style="width: 100%;"
            maxlength="500" ancel="cancel" @confirm="searchValueInput2()" @clear="clear2" placeholder="输入 / 扫描 订单号">
         </uni-search-bar>
      </view>
   </view>
@@ -26,14 +48,109 @@
         return {
            baseUrl: '',
            token: '',
            searchValueFocus: true,
            searchValue: '',
            searchValue1: '',
            searchValue2: '',
            total: '',
            dataList: [],
            orderCarList: [],
            data: {
               curr: 1,
               limit: 100,
               three_code: '',
               order_no: ''
            },
         }
      },
      onShow() {
         this.baseUrl = uni.getStorageSync('baseUrl');
         this.token = uni.getStorageSync('token');
         this.searchValue1 = uni.getStorageSync('threeCodeOut1');
         this.searchValue2 = uni.getStorageSync('threeCodeOut2');
         this.getOrderDetlList(this.searchValue1,this.searchValue2,30)
      },
      methods: {
         getOrderDetlList(threeCode,maktx,limit) {
            uni.showLoading({})
            let _this = this
            _this.mask = true
            _this.data.three_code = threeCode
            _this.data.maktx = maktx
            _this.data.limit = limit
            uni.request({
               url: `${_this.baseUrl}/orderDetl/pakout/list/authV3`,
               header: {'token': uni.getStorageSync('token')},
               data: _this.data,
               method: 'GET',
               success(res) {
                  uni.hideLoading({})
                  res = res.data
                  if (res.code === 200) {
                     for (let k of res.data.records) {
                        if (k.anfme > k.qty && k.qty == 0) {
                           k['color'] = 'order-sts-start'
                        } else if (k.anfme > k.qty && k.qty != 0) {
                           k['color'] = 'order-sts-working'
                        } else {
                           k['color'] = 'order-sts-end'
                        }
                     }
                     _this.dataList = res.data.records
                     _this.total = res.data.total
                     _this.mask = false
                  } else if (res.code == 403) {
                     uni.showToast({ title: res.msg, icon: "error", position: 'top' })
                     setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000);
                  } else {
                     uni.showToast({ title: res.msg, icon: "error", position: 'top' })
                  }
               }
            })
         },
         searchValueInput1() {
            uni.setStorageSync('threeCodeOut1', this.searchValue1);
            uni.setStorageSync('threeCodeOut2', this.searchValue2);
            if (this.searchValue1.length == 0) {
               this.getOrderDetlList(this.searchValue1,this.searchValue2,30)
            } else {
               this.getOrderDetlList(this.searchValue1,this.searchValue2,1000)
            }
         },
         searchValueInput2() {
            uni.setStorageSync('threeCodeOut1', this.searchValue1);
            uni.setStorageSync('threeCodeOut2', this.searchValue2);
            if (this.searchValue1.length == 0) {
               this.getOrderDetlList(this.searchValue1,this.searchValue2,30)
            } else {
               this.getOrderDetlList(this.searchValue1,this.searchValue2,1000)
            }
         },
         clear() {
            this.searchValue2 = ''
            this.getOrderDetlList('',this.searchValue1,999999)
         },
         clear2() {
            setTimeout(()=> {
               this.searchValue2 = ''
               this.getOrderDetlList(this.searchValue1,'',999999)
            },300)
         },
         goToLocDetl(item) {
            let _this = this
            uni.navigateTo({
               url: './orderList',
               success(res) {
                  res.eventChannel.emit('item', {
                     item: item
                  })
               },
               events: {
                  acceptDataFromOpenedPage: function(data) {
                     _this.getOrderDetlList(this.searchValue1,this.searchValue2,1000)
                  }
               }
            })
         }
         
      }
   }
@@ -41,4 +158,21 @@
<style>
   @import url('../../../static/css/common/order.css');
   .list-font-color {
      color: #fff;
      /* background-color: #33bb44; */
   }
   .order-sts-start {
      background-color: #3eb689;
   }
   .order-sts-working {
      background-color: #ff9d46;
   }
   .order-sts-end {
      background-color: #ff7356;
   }
   .detl-threeCode {
      font-size: 28px;
      font-weight: bold;
   }
</style>