skyouc
3 天以前 557ba4c410f34b4cf32dc372a888f69fbac7a2de
pages/mat/matQuery.vue
@@ -4,29 +4,44 @@
      <view class="search-bar">
         <uni-search-bar v-model="condition" placeholder=" 扫码 / 输入" bgColor="#EEEEEE" @confirm="search" />
      </view>
      <scroll-view>
         <view class="tag-list" v-for="(item,i) in tagList" :key="i" @click="showTag(item.id)">
            <view class="tag">
               <view style="display: flex;">
                  <view class="wms-tag" :style="baColor" >分类</view>
               </view>
            </view>
            <view class="tag-item">{{item.name}}</view>
         </view>
      <scroll-view>
         <view class="tag-list" v-for="(item,i) in matList" :key="i">
            <view class="list-left">
               <view class="list-left-item">
                  <view class="desc">物料码:</view>
                  <view class="left-item">
                     <uni-tag :text="item.matnr" type="primary"></uni-tag>
                  </view>
               </view>
               <view class="list-left-item">
                  <view class="desc">品名:</view>
                  <view class="left-item">{{item.maktx}}</view>
               </view>
               <view class="list-left-item">
                  <view class="desc">规格:</view>
                  <view class="left-item">{{item.specs}}</view>
               </view>
               <view class="list-left-item">
                  <view class="desc">型号:</view>
                  <view class="left-item">
                     <uni-tag :text="item.model" type="warning"></uni-tag>
                  </view>
               </view>
               <view class="list-left-item">
                  <view class="desc">品牌:</view>
                  <view class="left-item">{{item.brand}}</view>
               </view>
               <view class="list-left-item">
                  <view class="desc">单位:</view>
                  <view class="left-item">{{item.unit}}</view>
               </view>
               <view class="list-left-item">
                  <view class="desc">等级:</view>
                  <view class="left-item">{{item.level}}</view>
               </view>
            </view>
         </view>
      </scroll-view>
      <view>
         <view class="tag-list" v-for="(item,i) in matList" :key="i" @click="findBySelect(item.matnr)">
            <view class="tag">
               <view style="display: flex;">
                  <view class="wms-tag" :style="baColor" >商品</view>
               </view>
            </view>
            <view class="tag-item">商品编号: {{item.matnr}}</view>
            <view class="tag-item">商品名称: {{item.maktx  ? item.maktx : '--'}}</view>
            <view class="tag-item">商品规格: {{item.specs  ? item.specs : '--'}}</view>
         </view>
      </view>
      <uni-load-more v-show="matList.length != 0" :status="status" :icon-size="16" :content-text="contentText" />
   </view>
</template>
@@ -44,37 +59,11 @@
            desc: '商品编号:',
            baseUrl: '',
            token: '',
            status: 'more',
            contentText: {
               contentdown: '上拉加载更多',
               contentrefresh: '加载中',
               contentnomore: '没有更多'
            },
            // 当前tagId
            tagIdNow: 1
         }
      },
      onReachBottom() {
         this.status = 'more';
         if (this.tagList == null) {
            this.showMat(this.tagIdNow);
         }
      },
      onLoad() {
         // 没啥用了
         let that = this
         // const eventChannel = this.$scope.eventChannel; // 兼容APP-NVUE
         const eventChannel = this.getOpenerEventChannel();
         // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
         eventChannel.on('commonUrl', function(data) {
            that.commonUrl = data.commonUrl
         })
      },
      onShow() {
         this.baseUrl = uni.getStorageSync('baseUrl');
         this.token = uni.getStorageSync('token');
         this.showTag(1)
      },
      methods: {
         search() {
@@ -82,20 +71,15 @@
            that.tagList = []
            that.matList = []
            uni.request({
                url: that.baseUrl + '/mat/search/pda/auth',
                data: {
                  condition: that.condition
                },
                url: that.baseUrl + '/pda/mats/search/' + that.condition,
               method:"GET",
                header: {
                  'token':uni.getStorageSync('token'),
                },
               success(result) {
                  console.log(result);
                  var res = result.data
                  if (res.code === 200 ) {
                  if (res.code === 200 ) {
                     that.matList = res.data
                     // that.save()
                  } else if (res.code == 403) {
                     uni.showToast({title: res.msg, icon: "none", position: 'top'})
                     setTimeout(() => {
@@ -109,97 +93,6 @@
               }
            });
         },
         showTag(parentId) {
            let that = this
            uni.request({
                url: that.baseUrl + '/tag/list/pda/auth',
               header: {
                  'token':uni.getStorageSync('token'),
               },
                data: {
                  limit: 100000,
                  parentId: parentId
                },
               header: {
                  'token':uni.getStorageSync('token'),
               },
               success(result) {
                  console.log(result);
                  that.tagList = null
                  that.matList = []
                  var res = result.data
                  if (res.code === 200) {
                     if (res.data != null && res.data.length > 0) {
                        that.tagList = res.data
                     } else {
                        that.tagList = []
                        that.showMat(parentId)
                     }
                  } else if (res.code === 403 ) {
                     uni.showToast({title: res.msg, icon: "none", position: 'top'})
                     setTimeout(() => {
                        uni.reLaunch({
                           url: '../login/login'
                        });
                     }, 1000);
                  } else {
                     uni.showToast({title: res.msg, icon: "none",position: 'top'})
                  }
               }
            });
         },
         showMat(tagId) {
            let that = this
            that.tagIdNow = tagId
            if (tagId == null || tagId == '' || tagId == undefined) {
               return;
            }
            uni.request({
                url: that.baseUrl + '/mat/list/pda/page/auth',
                data: {
                  curr:that.curr,
                  limit: 20,
                  tagId: tagId
                },
               method:"GET",
                header: {
                  'token':uni.getStorageSync('token'),
                },
               success(result) {
                  console.log(result);
                  that.tagList = null
                  var res = result.data
                  if (res.code === 200) {
                     if (res.data.records != null && res.data.records.length > 0) {
                        let list = res.data.records
                        that.matList = that.reload ? list : that.matList.concat(list);
                        that.curr = that.curr + 1
                     }
                     if (res.data.records.length == 0) {
                        that.status = 'noMore'
                     }
                     that.baColor = "background-color: #1cbbb4;"
                  } else if (res.code === 403 ) {
                     uni.showToast({title: res.msg, icon: "none", position: 'top'})
                     setTimeout(() => {
                        uni.reLaunch({
                           url: '../login/login'
                        });
                     }, 1000);
                  } else {
                     uni.showToast({title: res.msg, icon: "none",position: 'top'})
                  }
               }
            });
         },
         findBySelect(matnr) {
            this.getOpenerEventChannel().emit('acceptDataFromOpenedPage', {data: matnr});
            uni.navigateBack({
            })
         }
      }
   }
</script>