#
whycq
2022-09-20 30f1c73d3338c7c61a6a0f8cc04b26a8cb1f66be
Monitor-APP/pages/index/index.vue
@@ -1,9 +1,78 @@
<template>
   <view class="container">
      <view class="upper " :class="mmm" ></view>
      <view class="lower" :class="fff">
      <!-- 跳动信息板 -->
      <view class="floor-screen" :class="floorMove" >
         <!-- 头部 -->
         <view class="head">
            <text>自动仓库WCS监控平台</text>
            <text @click="port()">自动仓库WCS监控平台</text>
            <view class="time-tools">{{year}}-{{month}}-{{day}}&nbsp{{hours}}:{{minutes}}:{{seconds}}&nbsp{{week}}</view>
            <view class="button-left" @click="url()"></view>
            <view class="button-right" @click="ledId()"></view>
         </view>
         <view class="main">
            <view class="main-sides" style="width: 100%;">
               <view class="box" style="height: 90%;">
                  <view class="box-border box-border1"></view>
                  <view class="box-border box-border2"></view>
                  <view class="box-border box-border3"></view>
                  <view class="box-border box-border4"></view>
                  <view style="width: 100%;height: 100%;" v-show="!errorShow">
                     <!-- 分有无订单划分两部分 -->
                     <!-- 左侧信息 -->
                     <view style="" :class="width">
                        <!-- 全板出库 -->
                        <view class="box-items">{{title}}</view>
                        <!-- 目标站 -->
                        <view class="box-items">{{staNo}}</view>
                        <!-- 商品编号 -->
                        <view class="box-items">{{matnr}}</view>
                        <!-- 商品名称 -->
                        <view class="box-items">{{maknx}}</view>
                        <!-- 出库数量 -->
                        <view class="box-items">{{count}}</view>
                     </view>
                     <view style="width: 50%;height: 100%;display: inline-block;float: left;" v-show="orderShow">
                        <!-- 订单号 -->
                        <view class="box-items">{{orderNo}}</view>
                        <!-- 已出托盘数 -->
                        <view class="box-items">{{doneOfTray}}</view>
                        <!-- 托盘总数量 -->
                        <view class="box-items">{{totalOfTray}}</view>
                        <!-- 已出箱数 -->
                        <view class="box-items">{{doneOfUnit}}</view>
                        <!-- 总箱数 -->
                        <view class="box-items">{{totalOfUnit}}</view>
                     </view>
                  </view>
                  <view style="width: 100%;height: 100%;" v-show="errorShow">
                     <view style="line-height: 700px;font-size: 175rpx;">{{errorMsg}}</view>
                  </view>
                  <!-- 全板出库 -->
                  <!-- <view style="width: 10%;height: 100%;display:inline-block;float: left;text-align: center;padding-top: 180px;">
                     <text>{{title}}</text>
                  </view> -->
                  <!-- 滚动区域 -->
                  <!-- <view style="width: 80%;height: 100%;display: inline-block;"> -->
                     <!--显示order订单编号 -->
                     <!-- <text v-show="orderShow" style="display: block;font-size: 140rpx;" >{{orderNo}}</text>
                     <swiper :class="swiper" circular="true" vertical="true" display-multiple-items="6" :autoplay="autoplay" :interval="interval" :duration="duration">
                        <swiper-item v-for="(item,index) in matList" :key="index">
                           <view style="font-size: 160rpx;">{{item}}</view>
                        </swiper-item>
                     </swiper>
                  </view> -->
                  <!-- 站台号 -->
                  <!-- <view style="width: 10%;height: 100%;display: inline-block;float: right;padding-top: 180px;">
                     <text>{{staNo}}</text>
                  </view> -->
               </view>
            </view>
         </view>
      </view>
      <view class="top-screen" :class="topMove">
         <view class="head">
            <text @click="port()">自动仓库WCS监控平台</text>
            <view class="time-tools">{{year}}-{{month}}-{{day}}&nbsp{{hours}}:{{minutes}}:{{seconds}}&nbsp{{week}}</view>
            <view class="button-left" @click="url()"></view>
            <view class="button-right" @click="ledId()"></view>
@@ -64,7 +133,7 @@
                        <p class="english">EQUIPMENT USAGE THIS MONTH</p>
                     </view>
                     <view class="use-right">
                        <h3>20%</h3>
                        <h3>{{usedPr}}%</h3>
                        <p class="english">同比上月 + 5%</p>
                     </view>
                     <view class="use-main">
@@ -118,6 +187,7 @@
                        <p class="english">Today</p>
                     </view>
                     <view class="sub-main">
                        <!-- 折线图 -->
                        <view class="charts-box ring">
                           <qiun-data-charts type="ring" :opts="{legend:{position:'bottom'}}" :eopts="ringOpts" :chartData="chartsDataPie2" :echartsH5="true" :echartsApp="true"/>
                        </view>
@@ -146,39 +216,59 @@
                  <view class="box-border box-border2"></view>
                  <view class="box-border box-border3"></view>
                  <view class="box-border box-border4"></view>
                  <text>浙江中扬立库技术有限公司</text>
                  <!-- <text>浙江中扬立库技术有限公司</text>
                  <text>当前版本号</text> -->
                  <view @click="crn()">浙江中扬立库技术有限公司</view>
                  <image src="../../static/barcode.png" mode="aspectFit"></image>
               </view>
            </view>
         </view>
      </view>
         <view>
            <!-- 输入url -->
            <uni-popup ref="url" type="dialog">
               <uni-popup-dialog ref="inputClose" mode="input" title="配置url" value=""
                  placeholder="示例:192.168.1.1" @confirm="baseUrlConfirm"></uni-popup-dialog>
            </uni-popup>
         </view>
         <view>
            <!-- 输入ledId -->
            <uni-popup ref="ledId" type="dialog">
               <uni-popup-dialog ref="inputClose" mode="input" title="配置ledId" value=""
                  placeholder="示例:1" @confirm="ledIdConfirm"></uni-popup-dialog>
            </uni-popup>
         </view>
      <view>
         <!-- 输入url -->
         <uni-popup ref="url" type="dialog">
            <uni-popup-dialog ref="inputClose" mode="input" title="配置url" :value="baseIP"
               placeholder="示例:192.168.1.1" @confirm="baseUrlConfirm"></uni-popup-dialog>
         </uni-popup>
      </view>
      <view>
         <!-- 输入ledId -->
         <uni-popup ref="ledId" type="dialog">
            <uni-popup-dialog ref="inputClose" mode="input" title="配置ledId" :value="baseLedId"
               placeholder="示例:188" @confirm="ledIdConfirm"></uni-popup-dialog>
         </uni-popup>
      </view>
      <view>
         <!-- 输入port -->
         <uni-popup ref="port" type="dialog">
            <uni-popup-dialog ref="inputClose" mode="input" title="配置端口号" :value="basePort"
               placeholder="示例:9090" @confirm="portConfirm"></uni-popup-dialog>
         </uni-popup>
      </view>
      <view>
         <!-- 输入crnId -->
         <uni-popup ref="crnId" type="dialog">
            <uni-popup-dialog ref="inputClose" mode="input" title="配置堆垛机" :value="crnId"
               placeholder="示例:1" @confirm="crnConfirm"></uni-popup-dialog>
         </uni-popup>
      </view>
   </view>
</template>
<script>
   import ycqdata from '@/pages/index/data.json';
   import demodata from '@/mockdata/demodata.json';
   export default {
      data() {
         return {
            commonUrl:null, // 通用url
            show: true,
            modeClass: 'fade',
            styles: {},
            baseUrl:'192.168.2.20',
            baseIP:'',
            baseLedId:'',
            basePort:'',
            crnId:'',
            value: '',
            xDistance: 0,
            yDistance:0,
@@ -186,9 +276,9 @@
            yDuration:0,
            used:317,
            usedPr: 90,
            stockCount:null,
            emptyCount:null,
            noneCount:null,
            stockCount:0,
            emptyCount:0,
            noneCount:0,
            chartsData: {
               "Line": {
                  "categories": [],
@@ -211,50 +301,269 @@
            seconds:13,
            week:'星期四',
            ani:'',
            move: 'upMove 1.5s 1;',
            mmm:'upup',
            fff:''
            // move: 'upMove 1.5s 1;',
            move:true,
            topMove:'topUp',
            floorMove:'',
            version:'',
            // newspaper:'拣料出库(4426)\n源库位:1200101\n目标站:186\n1101842-10000-22047518517\n\n',
            newspaper:'',
            errorPaper:'',
            title:'',
            staNo:'',
            matnr:'',
            maknx:'',
            count:'',
            orderNo:null,
            doneOfTray:'',
            totalOfTray:'',
            doneOfUnit:'',
            totalOfUnit:'',
            errorMsg:null,
            width:'full-width',
            errorShow:'',
            pakinShow:'',
            pakinGun:'',
            orderShow:false,
            swiper:'swiper-here',
            autoplay:true, // 自动循环
            interval:1000, // 调用时长
            duration:8000, // 移动速度
            matList:[], // 订单列表
         }
      },
      mounted() {
         let that = this
         const BaseUrl = uni.getStorageSync('BaseUrl');
         const BaseIP = uni.getStorageSync('BaseIp');
         const BaseLedId = uni.getStorageSync('BaseLedId');
         if (BaseUrl && BaseLedId) {
            that.baseUrl = BaseUrl
         const BasePort = uni.getStorageSync('BasePort');
         const BaseCrnId = uni.getStorageSync('BaseCrnId');
         if (BaseIP && BaseLedId) {
            that.baseIP = BaseIP
            that.baseLedId = BaseLedId
            that.basePort = BasePort
            that.baseCrnId = BaseCrnId
         } else {
            that.baseUrl = ''
            that.baseLedId = ''
         }
         this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePort + this.baseUrl
      },
      onReady() {
         // 获得初始数据
         setTimeout(() => {
            this.initlineChart();
            this.initPieChart();
         }, 0);
         setTimeout(() => {
            this.getServerData();
            this.getOther();
            this.getPakin();
         }, 1000);
         setInterval(() => {
            this.getDate();
         },1000)
         setInterval(() => {
            this.getPakin();
            this.getError();
            // this.getYYY();
            // this.getEEE();
            this.animation();
         },3000)
         },1000)
      },
      methods: {
         animation() {
            if (this.ani) {
               this.ani = ''
               this.mmm = 'upup'
               this.fff = 'down'
         // 获取错误信息
         getYYY() {
            let that = this
            var result = ycqdata.dataEEE
            // 测试用 ↓
            var   res = result.data
            // 测试用 ↑
            // 返回结果有值 且值不等于空值 就是有错误信息需要展示
            if (res.data && res.data !== "") {
               that.errorMsg = res.data
               that.errorShow = true
               that.move = false // 显示
            } else {
               this.ani = 1
               this.mmm = 'down'
               this.fff = 'upup'
               that.errorPaper = ''
               that.errorShow = false
               if (that.pakinShow) {
                  return;
               } else {
                  that.move = true // 隐藏
               }
            }
         },
         getEEE () {
            let that = this
            var newsData = ''
            var str = ''
            let result = ycqdata.dataYYY
                  // 测试用 ↓
            let   res = result.data
                  // 测试用 ↑
               if(res.data && res.data !== null) {
                  // that.move = false
                  // title
                  if (res.data[0].ioType === 101) {
                     that.title = '全板出库'
                  } else if(res.data[0].ioType === 103) {
                     that.title = '检料出库'
                  }
                  that.staNo = '目标站:' + res.data[0].staNo
                  that.matnr = '商品编号:' + res.data[0].matDtos[0].matnr
                  that.maknx = '商品名称:' + res.data[0].matDtos[0].maknx
                  that.count = '出库数量:' + res.data[0].matDtos[0].count
                  if (res.data[0].orderNo) {
                     that.orderNo = "订单号:" + res.data[0].orderNo
                     that.orderShow = true
                     that.width = 'half-width'
                  } else {
                     that.orderNo = null;
                     that.orderShow = false
                     that.width = 'full-width'
                  }
                  that.doneOfTray = '已出托盘数:' + res.data[0].doneOfTray
                  that.totalOfTray = '托盘总数量:' + res.data[0].totalOfTray
                  that.doneOfUnit = '已出箱数:' + res.data[0].doneOfUnit
                  that.totalOfUnit = '总箱数:' + res.data[0].totalOfUnit
                  if (that.errorShow) {
                           // that.pakinShow = false
                           return;
                        } else {
                           that.newspaper = newsData
                           that.move = false
                        }
               }else {
                  that.move = true
               }
               // if(res.data && res.data !== null) {
               //    if (res.data[0].matDtos.length > 0) {
               //       that.pakinShow = true
               //       that.pakinGun = true
               //       if (res.data[0].ioType === 101) {
               //          that.title = '全板出库'
               //       } else if(res.data[0].ioType === 103) {
               //          that.title = '拣料出库'
               //       }
               //       if (res.data[0].orderNo) {
               //          that.orderNo = "订单号:" + res.data[0].orderNo
               //          that.swiper = 'swiper-here-oN'
               //          that.orderShow = true
               //       } else {
               //          that.orderNo = null;
               //          that.swiper = 'swiper-here'
               //          that.orderShow = false
               //       }
               //       that.staNo = '目标站' + res.data[0].staNo
               //       for (var i = 0; i < res.data[0].matDtos.length; i++) {
               //          var matnr = res.data[0].matDtos[i].matnr + ' - ' + res.data[0].matDtos[i].batch
               //          that.matList.push(matnr)
               //       }
               //
               //       if (res.data[0].matDtos.length <= 8) {
               //          that.errorShow = true
               //          that.pakinShow = true
               //          that.pakinGun  = false
               //       }
               //    } else {
               //       that.move = true
               //       }
               // } else {
               //    that.move = true
               // }
         },
         // 获取错误信息
         getError() {
            let that = this
            var res
            uni.request({
               url: that.commonUrl + "/monitor/led/error",
               data: {
                  ledId:that.baseLedId
               },
               method:'GET',
               success(result) {
                  // console.log(result);
                  res = result.data
                  if (res.data && res.data !== "") {
                     that.errorMsg = res.data
                     that.errorShow = true
                     that.move = false // 显示
                  } else {
                     that.errorShow = false
                     if (that.pakinShow) {
                        return;
                     } else {
                        that.move = true // 隐藏
                     }
                  }
               }
            });
         },
         getPakin () {
            let that = this
            that.matList = [] // 清空条码列表
            var newsData = ''
            var str = ''
            let res
            uni.request({
               url: that.commonUrl + "/monitor/led",
               data: {
                  ledId:that.baseLedId
               },
               method:'GET',
               success(result) {
                  console.log(result);
                  res = result.data
                  if(res.data && res.data !== null) {
                     // that.move = false
                     // title
                     if (res.data[0].ioType === 101) {
                        that.title = '全板出库'
                     } else if(res.data[0].ioType === 103) {
                        that.title = '检料出库'
                     }
                     that.staNo = '目标站:' + res.data[0].staNo
                     that.matnr = '商品编号:' + res.data[0].matDtos[0].matnr
                     that.maknx = '商品名称:' + res.data[0].matDtos[0].maknx
                     that.count = '出库数量:' + res.data[0].matDtos[0].count
                     if (res.data[0].orderNo) {
                        that.orderNo = "订单号:" + res.data[0].orderNo
                        that.orderShow = true
                        that.width = 'half-width'
                     } else {
                        that.orderNo = null;
                        that.orderShow = false
                        that.width = 'full-width'
                     }
                     that.doneOfTray = '已出托盘数:' + res.data[0].doneOfTray
                     that.totalOfTray = '托盘总数量:' + res.data[0].totalOfTray
                     that.doneOfUnit = '已出箱数:' + res.data[0].doneOfUnit
                     that.totalOfUnit = '总箱数:' + res.data[0].totalOfUnit
                     if (that.errorShow) {
                        // that.pakinShow = false
                        return;
                     } else {
                        that.newspaper = newsData
                        that.move = false
                     }
                  }else {
                        that.move = true
                  }
               }
            });
         },
         animation() {
            if (this.move) {
               // 上层向上 / 下层向上
               this.topMove = 'topUp'
               this.floorMove = 'floorUp'
            } else {
               // 上层向下 / 下层向下
               this.topMove = 'topDown'
               this.floorMove = 'floorDown'
            }
         },
         getDateFormat(value) {
@@ -269,12 +578,16 @@
         initlineChart() {
            let that = this
            uni.request({
               url: "http://192.168.2.20:8080/jswcs/monitor/line/charts",
               url: that.commonUrl + "/monitor/line/charts",
               method:'GET',
               success(result) {
                  // console.log(result)
                  var res = result.data
                  if (res.code === 200) {
                     that.chartsData.Line.categories = [that.getDateFormat(-11),that.getDateFormat(-10),that.getDateFormat(-9),that.getDateFormat(-8),that.getDateFormat(-7),that.getDateFormat(-6),that.getDateFormat(-5),that.getDateFormat(-4),that.getDateFormat(-3),that.getDateFormat(-2),that.getDateFormat(-1),that.getDateFormat(0),]
                     that.chartsData.Line.categories = [
                        that.getDateFormat(-11),that.getDateFormat(-10),that.getDateFormat(-9),that.getDateFormat(-8),
                        that.getDateFormat(-7),that.getDateFormat(-6),that.getDateFormat(-5),that.getDateFormat(-4),
                        that.getDateFormat(-3),that.getDateFormat(-2),that.getDateFormat(-1),that.getDateFormat(0),]
                     that.chartsData.Line.series = res.data.rows
                  }
               }
@@ -284,13 +597,13 @@
         initPieChart() {
            let that = this
            uni.request({
               url: "http://192.168.2.20:8080/jswcs/monitor/loc/rep",
               url: that.commonUrl + "/monitor/loc/rep",
               method:'GET',
               success(result) {
                  var res = result.data
                  if (res.code === 200) {
                     that.chartsData.Pie.series[0].data = res.data.pie
                     that.stockCount = res.data.stockCount
                     that.stockCount = res.data.stockCunt
                     that.emptyCount = res.data.emptyCount
                     that.noneCount = res.data.noneCount
                     that.used = res.data.used
@@ -302,10 +615,11 @@
         getOther() {
            let that = this
            uni.request({
               url: "http://" + that.baseUrl + ":8080/jswcs/monitor/other",
               // http://10.10.0.222:9090/jkwcs/monitor/led?ledId=186
               url: that.commonUrl + "/monitor/other",
               data: {
                  crnId: 1,
                  ledId: this.baseLedId,
                  crnId: that.baseCrnId,
                  ledId: 1,
               },
               success(result) {
                  var res = result.data
@@ -314,7 +628,6 @@
                     that.yDistance = res.data.yDistance
                     that.xDuration = res.data.xDuration
                     that.yDuration = res.data.yDuration
                     console.log(res)
                  } else if (res.code === 403) {
                     
                  } else {
@@ -323,19 +636,33 @@
               }
            })
         },
         port() {
            this.$refs.port.open()
         },
         url() {
            this.$refs.url.open()
         },
         ledId() {
            this.$refs.ledId.open()
         },
         crn() {
            this.$refs.crnId.open()
         },
         baseUrlConfirm(val) {
            this.baseUrl = val
            uni.setStorageSync('BaseUrl', this.baseUrl);
            this.baseIp = val
            uni.setStorageSync('BaseIp', this.baseIp);
         },
         ledIdConfirm(val) {
            this.baseLedId = val
            uni.setStorageSync('BaseLedId', this.baseLedId);
         },
         portConfirm(val) {
            this.basePort = val
            uni.setStorageSync('BasePort',this.basePort);
         },
         crnConfirm(val) {
            this.baseCrnId = val
            uni.setStorageSync('BaseCrnId',this.baseCrnId);
         },
         getServerData() {
            this.chartsDataLine1=JSON.parse(JSON.stringify(this.chartsData.Line))
@@ -368,27 +695,100 @@
</script>
<style>
   .full-width {
      width: 100%;
      height: 100%;
      display: inline-block;
      float: left;
   }
   .half-width {
      width: 50%;
      height: 100%;
      display: inline-block;
      float: left;
   }
   .box-items {
      height: 20%;
      width: 100%;
      /* background-color: #233751; */
      line-height: 300rpx;
   }
   /* 当前页面无 orderNo */
   .swiper-here {
      display: inline-block;
      margin: 0 auto;
      width: 100%;
      height: 100%;
   }
   /* 当前页面有 orderNo */
   .swiper-here-oN{
      display: inline-block;
      /* background-color: #063A7B; */
      margin: 0 auto;
      width: 100%;
      height: 90%;
   }
   /* 当前页面有 error提示 */
   .swiper-here-error {
      display: inline-block;
      /* background-color: #063A7B; */
      /* margin: 0 auto; */
      margin-top: 20%;
      width: 100%;
      height: 100%;
   }
   .animate {
      display: inline-block;
               /* white-space: nowrap; */
               animation: 25s wordsLoop linear infinite normal;
           }
           @keyframes wordsLoop {
               0% {
                   transform: translateY(100px);
                   -webkit-transform: translateY(100px);
               }
               100% {
                   transform: translateY(-100%);
                   -webkit-transform: translateY(-100%);
               }
           }
           @-webkit-keyframes wordsLoop {
               0% {
                   transform: translateY(100px);
                   -webkit-transform: translateY(100px);
               }
               100% {
                   transform: translateY(-100%);
                   -webkit-transform: translateY(-100%);
               }
           }
   /* animation:upMove 1.5s 1; */
   /* downMove */
   .upup {
      animation: upMove 1.5s 1;
   /* 上层向上 */
   .topUp {
      animation: topUp 1.5s 1;
      animation-fill-mode: both;
   }
   .down {
      animation: downMove 1.5s 1;
   @keyframes topUp {
      from {
         opacity: 0.5;
         /* background-color:blue; */
         top:-1080px
         }
      to {
         opacity: 1;
         /* background-color:red; */
         top: 0;
      }
   }
   /* 上层向下 */
   .topDown {
      animation: topDown 1.5s 1;
      animation-fill-mode: both;
   }
   .upper {
      position: fixed;
      width: 1920px;
      height: 1080px;
      /* top: -1000px; */
      background-image: url(../../static/background.png);
      /* background:red; */
      /* animation:upMove 1.5s 1; */
      z-index: 999;
   }
   @keyframes downMove
   @keyframes topDown
      {
      from {
         opacity: 1;
@@ -401,27 +801,64 @@
         top:-1080px
      }
   }
   @keyframes upMove {
   /* 下层向上 */
   .floorUp {
      animation: floorUp 1.5s 1;
      animation-fill-mode: both;
   }
   @keyframes floorUp {
      from {
         opacity: 0.5;
         /* background-color:blue; */
         top:-1080px
         top: 0px;
         }
      to {
         opacity: 1;
         /* background-color:red; */
         top: 0;
         top: 1080px;
      }
   }
   .lower {
   /* 下层向下 */
   .floorDown {
      animation: floorDown 1.5s 1;
      animation-fill-mode: both;
   }
   @keyframes floorDown {
      from {
         opacity: 0.5;
         /* background-color:blue; */
         top: 1080px;
         }
      to {
         opacity: 1;
         /* background-color:red; */
         top: -0px;
      }
   }
   .top-screen {
      position: fixed;
      width: 1920px;
      height: 1080px;
      /* top: -1000px; */
      background-image: url(../../static/background.png);
      /* background:red; */
      /* animation:upMove 1.5s 1; */
      z-index: 999;
   }
   .floor-screen {
      width: 1920px;
      height: 1080px;
      position: relative;
      color: #FFFFFF;
      text-align: center;
      font-size: 120rpx;
      letter-spacing: 5rpx;
      background-image: url(../../static/background.png);
   }
   .container {
      width: 1920px;
      height: 1080px;
      background-image: url(../../static/background.png);
      position: relative;
      /* background: #000428;  
      background: -webkit-linear-gradient(to right, #004e92, #000428);  
@@ -495,6 +932,7 @@
      width: 96%;
      height: 30%;
      border: 1px solid rgba(20, 80, 136, 1);
      overflow: hidden;
   }
   .box-lg {
      height: 94%;
@@ -567,7 +1005,7 @@
      font-size: 14px;
   }
   .introduce-content {
      font-size: 14px;
      font-size: 20px;
      padding-top: 2em;
      text-indent: 2em;
      line-height: 2em;
@@ -744,3 +1182,19 @@
      bottom: 0;
   }
</style>
<!-- {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22037502300","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22037505146","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504801","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027507729","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027507727","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027507731","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504807","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504805","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504797","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504794","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504791","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504793","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22037505141","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027507728","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22027504810","count":1.0},
               {"matnr":"1100349-10000","maknx":"C5S-4-M03/333/KS","batch":"22037505148","count":1.0} -->