Merge branch 'projects/mesxc-test' into projects/mesxc-zjl
This commit is contained in:
		
							
								
								
									
										4
									
								
								.env.dev
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								.env.dev
									
									
									
									
									
								
							@@ -1,8 +1,8 @@
 | 
			
		||||
###
 | 
			
		||||
 # @Author: Do not edit
 | 
			
		||||
 # @Date: 2023-08-29 09:40:39
 | 
			
		||||
 # @LastEditTime: 2024-04-01 08:31:57
 | 
			
		||||
 # @LastEditors: zhp
 | 
			
		||||
 # @LastEditTime: 2024-04-03 11:22:19
 | 
			
		||||
 # @LastEditors: DY
 | 
			
		||||
 # @Description:
 | 
			
		||||
###
 | 
			
		||||
# 开发环境配置
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@ export default {
 | 
			
		||||
		};
 | 
			
		||||
	},
 | 
			
		||||
	created() {
 | 
			
		||||
		this.tableH = this?.heightNum ? this.tableHeight(this.heightNum) : this.tableHeight(260);
 | 
			
		||||
		window.addEventListener('resize', this._setTableHeight);
 | 
			
		||||
	},
 | 
			
		||||
	destroyed() {
 | 
			
		||||
@@ -12,7 +13,8 @@ export default {
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
		_setTableHeight() {
 | 
			
		||||
			this.tableH = this.tableHeight(260);
 | 
			
		||||
			this.tableH = this?.heightNum ? this.tableHeight(this.heightNum) : this.tableHeight(260);
 | 
			
		||||
			// this.tableH = this.tableHeight(260);
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2021-07-19 15:18:30
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @LastEditTime: 2024-03-29 16:49:00
 | 
			
		||||
 * @LastEditTime: 2024-04-03 10:54:53
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -34,7 +34,7 @@
 | 
			
		||||
        <el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
 | 
			
		||||
          <base-container :beilv="1" :size="'eqStatus'" :title="'周转进度'" :title-icon="'order'" :back="'energy'">
 | 
			
		||||
            <div class="order" style="width:100%; overflow: hidden scroll;height: 350px;">
 | 
			
		||||
              <el-row v-for="op in orderProcessList" :key="op.id" style="margin-bottom: 1em">
 | 
			
		||||
              <el-row v-for="op in orderProcessList" :key="op.id" style="margin-bottom: .5em">
 | 
			
		||||
                <!-- <p v-if="op.outRate === 1" class="now-secondary-title"
 | 
			
		||||
                  style="font-size: 14px; opacity: calc(.6);color:#4679FD">
 | 
			
		||||
                  <i class="el-icon-check" />
 | 
			
		||||
@@ -42,7 +42,7 @@
 | 
			
		||||
                </p> -->
 | 
			
		||||
                <!-- <p class="now-secondary-title">{{ op.name }}</p> -->
 | 
			
		||||
                <p  class="now-secondary-title" style="font-size: 14px;opacity: calc(.6);">{{ op.name }}</p>
 | 
			
		||||
                <el-progress style="width: 910px;" text-color="rgba(255, 255, 255, .6)" :stroke-width="10"
 | 
			
		||||
                <el-progress style="width: 935px;" text-color="rgba(255, 255, 255, .6)" :stroke-width="10"
 | 
			
		||||
                  define-back-color="rgba(32, 57, 96, 1)" :percentage="op.outRate * 100" class="custom-progress-bar" />
 | 
			
		||||
              </el-row>
 | 
			
		||||
            </div>
 | 
			
		||||
@@ -606,8 +606,10 @@ export default {
 | 
			
		||||
  background-image: linear-gradient(to right, #4573fe, #47f8dc);
 | 
			
		||||
}
 | 
			
		||||
::v-deep .el-progress__text {
 | 
			
		||||
  width: 50px;
 | 
			
		||||
  margin-top: -70px;
 | 
			
		||||
  margin-left: 820px;
 | 
			
		||||
  margin-left: 834px;
 | 
			
		||||
  text-align: right;
 | 
			
		||||
  // background-color: unset;
 | 
			
		||||
  // background-image: linear-gradient(to right, #4573fe, #47f8dc);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zhp
 | 
			
		||||
 * @Date: 2024-01-29 16:50:26
 | 
			
		||||
 * @LastEditTime: 2024-04-02 15:01:40
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:54:51
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
@@ -41,10 +41,11 @@
 | 
			
		||||
            </div> -->
 | 
			
		||||
            <!-- 像下面这样表格里的limit值,也许可以用js动态计算出来 -->
 | 
			
		||||
            <div v-if="coldDetData" class="myLegend">
 | 
			
		||||
              <div class=" barCircleLegend"></div>
 | 
			
		||||
              <div class=" barCircle"></div>
 | 
			
		||||
              <h4 class="barText">产线良品率</h4>
 | 
			
		||||
              <div class="barLegend"></div>
 | 
			
		||||
              <h4 class="barText">产线产量</h4>
 | 
			
		||||
              <div class="barCircle"></div>
 | 
			
		||||
              <h4 class="barCircleText">产线良品率</h4>
 | 
			
		||||
              <h4 class="barCircleText">产线产量</h4>
 | 
			
		||||
            </div>
 | 
			
		||||
            <double-y-chart ref="productChart" :id="'doubleYChart'" :name-list="cxNameList" :data-list="cxDataList"
 | 
			
		||||
              :height="359" :show-legend="true" />
 | 
			
		||||
@@ -309,6 +310,7 @@ export default {
 | 
			
		||||
      window.location.reload()
 | 
			
		||||
    }, 86400000)
 | 
			
		||||
    // this.getData()
 | 
			
		||||
    // this.getReaiData()
 | 
			
		||||
  },
 | 
			
		||||
  destroyed() {
 | 
			
		||||
    this.CutWebsocketClose()
 | 
			
		||||
@@ -410,7 +412,7 @@ export default {
 | 
			
		||||
        topNameList.push('产线: ' + ele.lineName + '   ' + '总面积:' + ele.sumArea + '㎡')
 | 
			
		||||
        productList.push(ele.productArea)
 | 
			
		||||
        wasteList.push(ele.wastArea)
 | 
			
		||||
        nameWasteList.push('缺陷面积:' + ele.wastArea + '㎡')
 | 
			
		||||
        nameWasteList.push('缺陷面积:' + this.NumFormat(ele.wastArea) + '㎡')
 | 
			
		||||
        // yieldList.push({
 | 
			
		||||
        //   name: '良品',
 | 
			
		||||
        //   yield:ele.yield
 | 
			
		||||
@@ -427,39 +429,82 @@ export default {
 | 
			
		||||
        this.$refs.fifthPileChart.initChart(nameList, [topNameList[4]], [nameWasteList[4]], [productList[4]], [wasteList[4]])
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getData() {
 | 
			
		||||
      let detData = [
 | 
			
		||||
        {
 | 
			
		||||
          name: '1',
 | 
			
		||||
          run: '运行',
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          name: '2',
 | 
			
		||||
          run: '未运行',
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          name: '3',
 | 
			
		||||
          run: '运行',
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          name: '4',
 | 
			
		||||
          run: '未运行',
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          name: '1',
 | 
			
		||||
          run: '运行',
 | 
			
		||||
        },
 | 
			
		||||
      ]
 | 
			
		||||
      this.realEqList = detData.map((item, index) => [
 | 
			
		||||
        // console.log(item)
 | 
			
		||||
        `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
 | 
			
		||||
            </span>`,
 | 
			
		||||
        `<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
 | 
			
		||||
        `<span style="color:rgba(255,255,255,0.5)"><div style="${item.run == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%;  background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div>  ${item.run || ''}</span>`,
 | 
			
		||||
      ])
 | 
			
		||||
        this.realEqConfig.data = this.realEqList
 | 
			
		||||
        this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
 | 
			
		||||
    },
 | 
			
		||||
    // getReaiData() {
 | 
			
		||||
    //   let detData = [
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '1',
 | 
			
		||||
    //       run: '运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '2',
 | 
			
		||||
    //       run: '未运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '3',
 | 
			
		||||
    //       run: '运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '4',
 | 
			
		||||
    //       run: '未运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '1',
 | 
			
		||||
    //       run: '运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //   ]
 | 
			
		||||
    //   let arr = []
 | 
			
		||||
    //   let index = 0
 | 
			
		||||
    //   for (let i in detData) {
 | 
			
		||||
    //     index++,
 | 
			
		||||
    //       arr.push([
 | 
			
		||||
    //         `<span style="color:rgba(255,255,255,0.5)" >${index || ''}
 | 
			
		||||
    //         </span>`,
 | 
			
		||||
    //         // `<span style="color:rgba(255,255,255,0.5)" >${i || ''}
 | 
			
		||||
    //         // </span>`,
 | 
			
		||||
    //         `<span style="color:rgba(255,255,255,0.5)">${i || ''}</span>`,
 | 
			
		||||
    //         `<span style="color:rgba(255,255,255,0.5)"><div style="${detData[i] == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%;  background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div>  ${detData[i] || ''}</span>`,
 | 
			
		||||
    //       ])
 | 
			
		||||
    //   }
 | 
			
		||||
    //   // this.$nextTick(() => {
 | 
			
		||||
    //     this.annealFunConfig.data = arr
 | 
			
		||||
    //     this.$refs['annealFunScrollBoard'].updateRows(arr)
 | 
			
		||||
    //   // })
 | 
			
		||||
    // },
 | 
			
		||||
    // getData() {
 | 
			
		||||
    //   let detData = [
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '1',
 | 
			
		||||
    //       run: '运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '2',
 | 
			
		||||
    //       run: '未运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '3',
 | 
			
		||||
    //       run: '运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '4',
 | 
			
		||||
    //       run: '未运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //     {
 | 
			
		||||
    //       name: '1',
 | 
			
		||||
    //       run: '运行',
 | 
			
		||||
    //     },
 | 
			
		||||
    //   ]
 | 
			
		||||
    //   this.realEqList = detData.map((item, index) => [
 | 
			
		||||
    //     // console.log(item)
 | 
			
		||||
    //     `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
 | 
			
		||||
    //         </span>`,
 | 
			
		||||
    //     `<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</span>`,
 | 
			
		||||
    //     `<span style="color:rgba(255,255,255,0.5)"><div style="${item.run == '运行' ? 'box-shadow: 0px 0px 2px 1px #2760FF;width:6px;height:6px;border-radius: 50%;background-color: #2760FF;float:left;margin:10px 10px 0 0 ' : 'box-shadow: 0px 0px 2px 1px #FFBD02;width:6px;height:6px;border-radius: 50%;  background-color: #FFBD02;float:left;margin:10px 10px 0 0 '}"></div>  ${item.run || ''}</span>`,
 | 
			
		||||
    //   ])
 | 
			
		||||
    //   // this.$nextTick(() => {
 | 
			
		||||
    //     this.realEqConfig.data = this.realEqList
 | 
			
		||||
    //     this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
 | 
			
		||||
    //   //  })
 | 
			
		||||
    // },
 | 
			
		||||
    CutWebsocketClose(e) {
 | 
			
		||||
      this.Cutws.ws.onclose = (event) => { console.log(event );}
 | 
			
		||||
    },
 | 
			
		||||
@@ -604,16 +649,16 @@ export default {
 | 
			
		||||
            topNameList.push('产线: ' + ele.lineName + '   ' + '总面积:' + ele.sumArea + '㎡')
 | 
			
		||||
            productList.push(ele.productArea)
 | 
			
		||||
            wasteList.push(ele.wastArea)
 | 
			
		||||
            nameWasteList.push('缺陷面积:' + ele.wastArea + '㎡')
 | 
			
		||||
            nameWasteList.push('缺陷面积:' + this.NumFormat(ele.wastArea) + '㎡')
 | 
			
		||||
            sumAreaList.push(ele.sumArea)
 | 
			
		||||
            yieldList.push(parseFloat((ele.yield * 100).toFixed(3)))
 | 
			
		||||
            yieldList.push(parseFloat((ele.yield * 100).toFixed(2)))
 | 
			
		||||
          })
 | 
			
		||||
          this.$nextTick(() => {
 | 
			
		||||
            this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
 | 
			
		||||
            this.$refs.secondPileChart.initChart(nameList, [topNameList[1]], [nameWasteList[1]], [productList[1]], [wasteList[1]])
 | 
			
		||||
            this.$refs.thirdPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
 | 
			
		||||
            this.$refs.fourthPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
 | 
			
		||||
            this.$refs.fifthPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
 | 
			
		||||
            this.$refs.thirdPileChart.initChart(nameList, [topNameList[2]], [nameWasteList[2]], [productList[2]], [wasteList[2]])
 | 
			
		||||
            this.$refs.fourthPileChart.initChart(nameList, [topNameList[3]], [nameWasteList[3]], [productList[4]], [wasteList[5]])
 | 
			
		||||
            this.$refs.fifthPileChart.initChart(nameList, [topNameList[4]], [nameWasteList[4]], [productList[4]], [wasteList[4]])
 | 
			
		||||
            this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
 | 
			
		||||
          })
 | 
			
		||||
        }
 | 
			
		||||
@@ -700,6 +745,25 @@ export default {
 | 
			
		||||
      //   this.funWebsocket.onclose = this.funWebsocketClose
 | 
			
		||||
      // }
 | 
			
		||||
    },
 | 
			
		||||
    NumFormat(value) {
 | 
			
		||||
      if (!value) return '0.00'
 | 
			
		||||
      value = value.toFixed(2)
 | 
			
		||||
      var intPart = Math.trunc(value) // 获取整数部分
 | 
			
		||||
      // var intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,') // 将整数部分逢三一断
 | 
			
		||||
      var floatPart = '.00' // 预定义小数部分
 | 
			
		||||
      var value2Array = value.split('.')
 | 
			
		||||
      // =2表示数据有小数位
 | 
			
		||||
      if (value2Array.length === 2) {
 | 
			
		||||
        floatPart = value2Array[1].toString() // 拿到小数部分
 | 
			
		||||
        if (floatPart.length === 1) {
 | 
			
		||||
          return intPart + '.' + floatPart + '0'
 | 
			
		||||
        } else {
 | 
			
		||||
          return intPart + '.' + floatPart
 | 
			
		||||
        }
 | 
			
		||||
      } else {
 | 
			
		||||
        return intPart + floatPart
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    // funWebsocketOnOpen() {
 | 
			
		||||
    //   console.log('socket连接成功')
 | 
			
		||||
    //   this.SJGWebsocket.onmessage()
 | 
			
		||||
@@ -797,7 +861,7 @@ export default {
 | 
			
		||||
.myLegend{
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  top: -20px;
 | 
			
		||||
  right: 50px;
 | 
			
		||||
  right: 20px;
 | 
			
		||||
  font-size: 12px;
 | 
			
		||||
  color: rgba(255,255,255,.6);
 | 
			
		||||
  .barLegend{
 | 
			
		||||
@@ -807,19 +871,29 @@ export default {
 | 
			
		||||
    height: 10px;
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
    margin-right: 5px;
 | 
			
		||||
    border-radius: 30%;
 | 
			
		||||
  }
 | 
			
		||||
  .barText{
 | 
			
		||||
    // float: right;
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
    margin-right: 10px;
 | 
			
		||||
  }
 | 
			
		||||
  .barCircleLegend{
 | 
			
		||||
    width: 15px;
 | 
			
		||||
    height: 1px;
 | 
			
		||||
    background-color: rgba(255, 209, 96, 1);
 | 
			
		||||
    position: absolute;
 | 
			
		||||
    left: -4.1715px;
 | 
			
		||||
    top: 21.7px;
 | 
			
		||||
  }
 | 
			
		||||
  .barCircle{
 | 
			
		||||
    width: 7px;
 | 
			
		||||
    height: 7px;
 | 
			
		||||
    width: 6px;
 | 
			
		||||
    height: 6px;
 | 
			
		||||
    border-radius: 50%;
 | 
			
		||||
    background-color: rgba(255, 209, 96, 1);
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
    margin-right: 5px;
 | 
			
		||||
    margin-right: 10px;
 | 
			
		||||
    margin-bottom: 1.7px;
 | 
			
		||||
  }
 | 
			
		||||
  .barCircleText{
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zhp
 | 
			
		||||
 * @Date: 2023-09-21 09:06:28
 | 
			
		||||
 * @LastEditTime: 2024-04-01 09:12:56
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:14:24
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
@@ -101,7 +101,8 @@ export default {
 | 
			
		||||
               position: 'top',	//在上方显示
 | 
			
		||||
               textStyle: {	    //数值样式
 | 
			
		||||
                 color: '#ced1d5',
 | 
			
		||||
                 fontSize: 12
 | 
			
		||||
                 fontSize: 12,
 | 
			
		||||
                 fontWight: 'bolder'
 | 
			
		||||
               }
 | 
			
		||||
             },
 | 
			
		||||
            }
 | 
			
		||||
@@ -193,18 +194,19 @@ export default {
 | 
			
		||||
          axisLine: {
 | 
			
		||||
            lineStyle: {
 | 
			
		||||
              type: 'solid',
 | 
			
		||||
              color: '#213259', // 左边线的颜色
 | 
			
		||||
              color: '#25528f', // 左边线的颜色
 | 
			
		||||
              width: '1' // 坐标线的宽度
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          axisLabel: {
 | 
			
		||||
            textStyle: {
 | 
			
		||||
              align: 'left',
 | 
			
		||||
              color: 'rgba(255,255,255,0.5)' // 坐标值得具体的颜色
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          splitLine: {
 | 
			
		||||
            lineStyle: {
 | 
			
		||||
              color: '#213259'
 | 
			
		||||
              color: '#25528f'
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          data: nameList
 | 
			
		||||
@@ -226,6 +228,7 @@ export default {
 | 
			
		||||
            nameTextStyle: {// y轴上方单位的颜色
 | 
			
		||||
              color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
              align: "left",
 | 
			
		||||
              padding: [0, 0, 0, 8]
 | 
			
		||||
            },
 | 
			
		||||
            position: 'right',
 | 
			
		||||
            alignTicks: true,
 | 
			
		||||
@@ -233,19 +236,20 @@ export default {
 | 
			
		||||
              show: true,
 | 
			
		||||
              lineStyle: {
 | 
			
		||||
                type: 'solid',
 | 
			
		||||
                color: '#213259', // 左边线的颜色
 | 
			
		||||
                color: '#25528f', // 左边线的颜色
 | 
			
		||||
                width: '1' // 坐标线的宽度
 | 
			
		||||
              }
 | 
			
		||||
            },
 | 
			
		||||
            axisLabel: {
 | 
			
		||||
              textStyle: {
 | 
			
		||||
                color: '#ced1d5', // 坐标值得具体的颜色
 | 
			
		||||
                formatter: '{value}%'
 | 
			
		||||
                color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
                formatter: '{value}%',
 | 
			
		||||
                align:'left',
 | 
			
		||||
              }
 | 
			
		||||
            },
 | 
			
		||||
            splitLine: {
 | 
			
		||||
              lineStyle: {
 | 
			
		||||
                color: '#213259'
 | 
			
		||||
                color: '#25528f'
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
            // type: 'value'
 | 
			
		||||
@@ -270,6 +274,7 @@ export default {
 | 
			
		||||
              color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
              // fontSize: 10,
 | 
			
		||||
              align: "right",
 | 
			
		||||
              padding:[0,4,0,0]
 | 
			
		||||
            },
 | 
			
		||||
            position: 'left',
 | 
			
		||||
            alignTicks: true,
 | 
			
		||||
@@ -277,19 +282,21 @@ export default {
 | 
			
		||||
              show: true,
 | 
			
		||||
              lineStyle: {
 | 
			
		||||
                type: 'solid',
 | 
			
		||||
                color: '#213259', // 左边线的颜色
 | 
			
		||||
                color: '#25528f', // 左边线的颜色
 | 
			
		||||
                width: '1' // 坐标线的宽度
 | 
			
		||||
              }
 | 
			
		||||
            },
 | 
			
		||||
            axisLabel: {
 | 
			
		||||
              // padding: [0, 20, 0, 0],
 | 
			
		||||
              textStyle: {
 | 
			
		||||
                margin: 60,
 | 
			
		||||
                color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
                formatter: '{value} 片'
 | 
			
		||||
              }
 | 
			
		||||
            },
 | 
			
		||||
            splitLine: {
 | 
			
		||||
              lineStyle: {
 | 
			
		||||
                color: '#213259'
 | 
			
		||||
                color: '#25528f'
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
            // type: 'value'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zhp
 | 
			
		||||
 * @Date: 2023-09-21 09:06:28
 | 
			
		||||
 * @LastEditTime: 2024-03-29 16:26:28
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:10:31
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
@@ -167,19 +167,19 @@ export default {
 | 
			
		||||
              type: 'cross'
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          grid: { top: 90, right: 70, bottom: 20, left: 20, containLabel: true },
 | 
			
		||||
          legend: {
 | 
			
		||||
            itemWidth: 10,
 | 
			
		||||
            itemHeight: 10,
 | 
			
		||||
            top: '0%',
 | 
			
		||||
            right: '20px',
 | 
			
		||||
            data: ['产线良品率', '产线产量'],
 | 
			
		||||
            textStyle: {
 | 
			
		||||
              fontSize: 12 * this.beilv,
 | 
			
		||||
              color: '#ced1d5',
 | 
			
		||||
              fontWight: 'bolder'
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          grid: { top: 70, right: 20, bottom: 10, left: 10, containLabel: true },
 | 
			
		||||
          // legend: {
 | 
			
		||||
          //   itemWidth: 10,
 | 
			
		||||
          //   itemHeight: 10,
 | 
			
		||||
          //   top: '2%',
 | 
			
		||||
          //   right: '30px',
 | 
			
		||||
          //   data: ['产线良品率', '产线产量'],
 | 
			
		||||
          //   textStyle: {
 | 
			
		||||
          //     fontSize: 12 * this.beilv,
 | 
			
		||||
          //     color: '#ced1d5',
 | 
			
		||||
          //     fontWight: 'bolder'
 | 
			
		||||
          //   }
 | 
			
		||||
          // },
 | 
			
		||||
          xAxis: {
 | 
			
		||||
            axisTick: {
 | 
			
		||||
              show: false
 | 
			
		||||
@@ -227,6 +227,7 @@ export default {
 | 
			
		||||
              nameTextStyle: {// y轴上方单位的颜色
 | 
			
		||||
                color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
                align: "left",
 | 
			
		||||
                padding: [0, 0, 0, 8]
 | 
			
		||||
              },
 | 
			
		||||
              position: 'right',
 | 
			
		||||
              alignTicks: true,
 | 
			
		||||
@@ -271,6 +272,7 @@ export default {
 | 
			
		||||
              nameTextStyle: {
 | 
			
		||||
                color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
                // fontSize: 10,
 | 
			
		||||
                padding: [0, 4, 0, 0],
 | 
			
		||||
                align: "right",
 | 
			
		||||
              },
 | 
			
		||||
              // position: 'left',
 | 
			
		||||
 
 | 
			
		||||
@@ -113,7 +113,7 @@ export default {
 | 
			
		||||
                textStyle: {	    //数值样式
 | 
			
		||||
                  color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
                  fontSize: 12,
 | 
			
		||||
                  fontWeight: 'bolder'
 | 
			
		||||
                  fontWeight: 'normal'
 | 
			
		||||
                }
 | 
			
		||||
              },
 | 
			
		||||
            }
 | 
			
		||||
@@ -133,7 +133,7 @@ export default {
 | 
			
		||||
              type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          grid: { top: 90, right: 60, bottom: 20, left: 30, containLabel: true },
 | 
			
		||||
          grid: { top: 70, right: 40, bottom: 10, left: 40, containLabel: true },
 | 
			
		||||
          // legend: {
 | 
			
		||||
          //   itemWidth: 10,
 | 
			
		||||
          //   itemHeight: 10,
 | 
			
		||||
@@ -175,7 +175,7 @@ export default {
 | 
			
		||||
            name: '单位kwh',
 | 
			
		||||
            nameTextStyle: {
 | 
			
		||||
              color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
 | 
			
		||||
              fontSize: 10,
 | 
			
		||||
              fontSize: 12,
 | 
			
		||||
              align: 'right',
 | 
			
		||||
            },
 | 
			
		||||
            type: 'value',
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zhp
 | 
			
		||||
 * @Date: 2023-12-27 13:54:52
 | 
			
		||||
 * @LastEditTime: 2024-04-01 09:14:45
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:48:43
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
@@ -114,6 +114,10 @@ export default {
 | 
			
		||||
          totalData.push(sum);
 | 
			
		||||
        }
 | 
			
		||||
      // }
 | 
			
		||||
      // rawData[1].map((d, did) =>
 | 
			
		||||
      //   console.log((d / totalData[did]).toFixed(3))
 | 
			
		||||
      //   // totalData[did] <= 0 ? 0 : d / totalData[did]
 | 
			
		||||
      // )
 | 
			
		||||
      console.log('total', totalData)
 | 
			
		||||
      const series = [
 | 
			
		||||
        '良品',
 | 
			
		||||
@@ -163,15 +167,15 @@ export default {
 | 
			
		||||
            let singleData = series.filter(function (item) {
 | 
			
		||||
              return item.name == name
 | 
			
		||||
            })
 | 
			
		||||
            return name + parseFloat((singleData[0].data * 100).toFixed(3)) + '%'
 | 
			
		||||
            return name + parseFloat((singleData[0].data * 100).toFixed(2)) + '%'
 | 
			
		||||
          },
 | 
			
		||||
          itemWidth: 12,
 | 
			
		||||
          itemHeight: 12,
 | 
			
		||||
          bottom: '20',
 | 
			
		||||
          left: '20',
 | 
			
		||||
          icon: 'rect',
 | 
			
		||||
          icon: 'roundRect',
 | 
			
		||||
          textStyle: {
 | 
			
		||||
            color: 'rgba(255,255,255,.6)',
 | 
			
		||||
            color: 'rgba(255,255,255,.9)',
 | 
			
		||||
            fontSize:12,
 | 
			
		||||
          }
 | 
			
		||||
        },
 | 
			
		||||
@@ -204,7 +208,7 @@ export default {
 | 
			
		||||
              splitNumber: 50,
 | 
			
		||||
              // boundaryGap: [20, 20],
 | 
			
		||||
              textStyle: {
 | 
			
		||||
                color: 'rgba(255,255,255,.6)',
 | 
			
		||||
                color: 'rgba(255,255,255,.9)',
 | 
			
		||||
                verticalAlign: 'bottom',
 | 
			
		||||
                fontSize: 16,
 | 
			
		||||
                align: 'left',
 | 
			
		||||
@@ -232,7 +236,7 @@ export default {
 | 
			
		||||
              splitNumber: 50,
 | 
			
		||||
              // boundaryGap: [20, 20],
 | 
			
		||||
              textStyle: {
 | 
			
		||||
                color: 'rgba(255,255,255,.6)',
 | 
			
		||||
                color: 'rgba(255,255,255,.9)',
 | 
			
		||||
                verticalAlign: 'bottom',
 | 
			
		||||
                fontSize: 16,
 | 
			
		||||
                align: 'right',
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2021-07-19 15:18:30
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @LastEditTime: 2024-04-02 09:46:46
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:59:25
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -39,11 +39,11 @@
 | 
			
		||||
        <el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
 | 
			
		||||
          <base-container :height="318" :size="'small'" :title="'工单监控'" :title-icon="'eqMonitoring'">
 | 
			
		||||
            <div class="order" style="width: 100%; overflow: hidden scroll; height: 350px">
 | 
			
		||||
              <el-row v-for="op in orderList" :key="op.id" style="margin-bottom: 1em">
 | 
			
		||||
              <el-row v-for="op in orderList" :key="op.id" style="margin-bottom: .5em">
 | 
			
		||||
                <!-- <el-col :span="12"> -->
 | 
			
		||||
 | 
			
		||||
                <p class="now-secondary-title" style="font-size: 14px;opacity: calc(.6);">{{ op.name }}</p>
 | 
			
		||||
                <el-progress style="width: 610px;" text-color="rgba(255, 255, 255, .6)" :stroke-width="10"
 | 
			
		||||
                <el-progress style="width: 620px;" text-color="rgba(255, 255, 255, .6)" :stroke-width="10"
 | 
			
		||||
                  define-back-color="rgba(32, 57, 96, 1)" :percentage="op.progressRate" class="custom-progress-bar" />
 | 
			
		||||
              </el-row>
 | 
			
		||||
            </div>
 | 
			
		||||
@@ -67,6 +67,13 @@
 | 
			
		||||
        <el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
 | 
			
		||||
          <base-container :show-time="true" :no-content-padding="true" :height="318 + 338 + 16" :size="'eqStatus'"
 | 
			
		||||
            :title="'产线产量及良品率'" :title-icon="'productLine'">
 | 
			
		||||
            <div  class="myLegend">
 | 
			
		||||
              <div class=" barCircleLegend"></div>
 | 
			
		||||
              <div class=" barCircle"></div>
 | 
			
		||||
              <h4 class="barText">产线良品率</h4>
 | 
			
		||||
              <div class="barLegend"></div>
 | 
			
		||||
              <h4 class="barCircleText">产线产量</h4>
 | 
			
		||||
            </div>
 | 
			
		||||
            <double-y-chart ref="productLineChart" :id="'doubleYChart'" :height="390" :show-legend="true" />
 | 
			
		||||
          </base-container>
 | 
			
		||||
        </el-col>
 | 
			
		||||
@@ -373,7 +380,27 @@ export default {
 | 
			
		||||
				id: '4',
 | 
			
		||||
				name: '测试工单4',
 | 
			
		||||
				progressRate: 0.32323,
 | 
			
		||||
			},
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        id: '4',
 | 
			
		||||
        name: '测试工单4',
 | 
			
		||||
        progressRate: 0.32323,
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        id: '4',
 | 
			
		||||
        name: '测试工单4',
 | 
			
		||||
        progressRate: 0.32323,
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        id: '4',
 | 
			
		||||
        name: '测试工单4',
 | 
			
		||||
        progressRate: 0.32323,
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        id: '4',
 | 
			
		||||
        name: '测试工单4',
 | 
			
		||||
        progressRate: 0.32323,
 | 
			
		||||
      },
 | 
			
		||||
			// {
 | 
			
		||||
			//   id: '5',
 | 
			
		||||
			//   name: '测试工单',
 | 
			
		||||
@@ -389,7 +416,7 @@ export default {
 | 
			
		||||
				return {
 | 
			
		||||
					id: ele.id,
 | 
			
		||||
					name: ele.name,
 | 
			
		||||
					progressRate: parseFloat((ele.progressRate * 100).toFixed(3)),
 | 
			
		||||
					progressRate: parseFloat((ele.progressRate * 100).toFixed(2)),
 | 
			
		||||
				};
 | 
			
		||||
			}
 | 
			
		||||
		});
 | 
			
		||||
@@ -417,28 +444,61 @@ export default {
 | 
			
		||||
			`<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
 | 
			
		||||
		]);
 | 
			
		||||
    this.eqConfig.data = eqArr;
 | 
			
		||||
    let arr = ['D64', 'D62', 'D61', 'D63', 'D65']
 | 
			
		||||
    // let arr = [5, 6, 2, 4, 7, 9, 15];
 | 
			
		||||
    // 因为7个数,所以长度减去一次为最大循环次数
 | 
			
		||||
    for (let i = 0; i < arr.length - 1; i++) {
 | 
			
		||||
    let data = [
 | 
			
		||||
      {
 | 
			
		||||
        lineName: 'D62',
 | 
			
		||||
        outputNum: '11111',
 | 
			
		||||
        passRate: '0.9873'
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        lineName: 'D63',
 | 
			
		||||
        outputNum: '23212',
 | 
			
		||||
        passRate: '0.9873'
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        lineName: 'D61',
 | 
			
		||||
        outputNum: '423323',
 | 
			
		||||
        passRate: '0.9873'
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        lineName: 'D64',
 | 
			
		||||
        outputNum: '43434',
 | 
			
		||||
        passRate: '0.9873'
 | 
			
		||||
      },
 | 
			
		||||
    ]
 | 
			
		||||
    let nameList = [];
 | 
			
		||||
    let passRateList = [];
 | 
			
		||||
    let outputNumList = [];
 | 
			
		||||
    // let arr = ['D64', 'D62', 'D61', 'D63', 'D65']
 | 
			
		||||
    for (let i = 0; i < data.length - 1; i++) {
 | 
			
		||||
      // 二次循环,注意:再减去外层的循环次数,向后依次两两相互比较转换;
 | 
			
		||||
      for (let j = 0; j < arr.length - i - 1; j++) {
 | 
			
		||||
      for (let j = 0; j < data.length - i - 1; j++) {
 | 
			
		||||
        // 当前一个值大于后一个值
 | 
			
		||||
        if (arr[j].substr(arr[j].length - 1, 1) > arr[j + 1].substr(arr[j + 1].length - 1, 1)) {
 | 
			
		||||
        if (data[j].lineName.substr(data[j].lineName.length - 1, 1) > data[j + 1].lineName.substr(data[j + 1].lineName.length - 1, 1)) {
 | 
			
		||||
          // 定义变量,以赋值的形式前后交换,直到换到最小的在前面,左右再无比较,则循环结束形成排序结果
 | 
			
		||||
          let temp = arr[j];
 | 
			
		||||
          arr[j] = arr[j + 1];
 | 
			
		||||
          arr[j + 1] = temp;
 | 
			
		||||
          let temp = data[j];
 | 
			
		||||
          data[j] = data[j + 1];
 | 
			
		||||
          data[j + 1] = temp;
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    console.log(arr);
 | 
			
		||||
		this.$refs['eqScrollBoard'].updateRows(eqArr);
 | 
			
		||||
    this.$refs.productLineChart.initChart(
 | 
			
		||||
      arr,
 | 
			
		||||
			[98, 97, 98.7, 98.5, 98.3],
 | 
			
		||||
			[3134, 2323, 3232, 3233, 2321]
 | 
			
		||||
		);
 | 
			
		||||
    data.forEach((ele) => {
 | 
			
		||||
      // if (item.id == ele.productionLineId) {
 | 
			
		||||
      // if (item.name.substr(0, 1) == "D") {
 | 
			
		||||
      // console.log(ele)
 | 
			
		||||
      nameList.push(ele.lineName);
 | 
			
		||||
      outputNumList.push(ele.outputNum);
 | 
			
		||||
      passRateList.push(ele.passRate);
 | 
			
		||||
      // }
 | 
			
		||||
      // }
 | 
			
		||||
    });
 | 
			
		||||
    this.$nextTick(() => {
 | 
			
		||||
      this.$refs.productLineChart.initChart(
 | 
			
		||||
        nameList,
 | 
			
		||||
        passRateList,
 | 
			
		||||
        outputNumList
 | 
			
		||||
      );
 | 
			
		||||
    })
 | 
			
		||||
		// this.getList()
 | 
			
		||||
		this.initWebSocket();
 | 
			
		||||
		this.SJGInitWebSocket();
 | 
			
		||||
@@ -630,7 +690,7 @@ export default {
 | 
			
		||||
							return {
 | 
			
		||||
								id: ele.id,
 | 
			
		||||
								name: ele.name,
 | 
			
		||||
								progressRate: parseFloat((ele.progressRate * 100).toFixed(3)),
 | 
			
		||||
								progressRate: parseFloat((ele.progressRate * 100).toFixed(2)),
 | 
			
		||||
							};
 | 
			
		||||
						}
 | 
			
		||||
					});
 | 
			
		||||
@@ -661,29 +721,29 @@ export default {
 | 
			
		||||
					let nameList = [];
 | 
			
		||||
					let passRateList = [];
 | 
			
		||||
					let outputNumList = [];
 | 
			
		||||
					this.SJGWsData.detData.forEach((ele) => {
 | 
			
		||||
						// if (item.id == ele.productionLineId) {
 | 
			
		||||
						// if (item.name.substr(0, 1) == "D") {
 | 
			
		||||
						// console.log(ele)
 | 
			
		||||
						nameList.push(ele.lineName);
 | 
			
		||||
						outputNumList.push(ele.outputNum);
 | 
			
		||||
						passRateList.push(ele.passRate);
 | 
			
		||||
						// }
 | 
			
		||||
						// }
 | 
			
		||||
          });
 | 
			
		||||
          // let arr = ['D64', 'D62', 'D61', 'D63', 'D65']
 | 
			
		||||
          for (let i = 0; i < nameList.length - 1; i++) {
 | 
			
		||||
          for (let i = 0; i < this.SJGWsData.detData.length - 1; i++) {
 | 
			
		||||
            // 二次循环,注意:再减去外层的循环次数,向后依次两两相互比较转换;
 | 
			
		||||
            for (let j = 0; j < nameList.length - i - 1; j++) {
 | 
			
		||||
            for (let j = 0; j < this.SJGWsData.detData.length - i - 1; j++) {
 | 
			
		||||
              // 当前一个值大于后一个值
 | 
			
		||||
              if (nameList[j].substr(nameList[j].length - 1, 1) > nameList[j + 1].substr(nameList[j + 1].length - 1, 1)) {
 | 
			
		||||
              if (this.SJGWsData.detData[j].lineName.substr(this.SJGWsData.detData[j].lineName.length - 1, 1) > this.SJGWsData.detData[j + 1].lineName.substr(this.SJGWsData.detData[j + 1].lineName.length - 1, 1)) {
 | 
			
		||||
                // 定义变量,以赋值的形式前后交换,直到换到最小的在前面,左右再无比较,则循环结束形成排序结果
 | 
			
		||||
                let temp = nameList[j];
 | 
			
		||||
                nameList[j] = nameList[j + 1];
 | 
			
		||||
                nameList[j + 1] = temp;
 | 
			
		||||
                let temp = this.SJGWsData.detData[j];
 | 
			
		||||
                this.SJGWsData.detData[j] = this.SJGWsData.detData[j + 1];
 | 
			
		||||
                this.SJGWsData.detData[j + 1] = temp;
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
          this.SJGWsData.detData.forEach((ele) => {
 | 
			
		||||
            // if (item.id == ele.productionLineId) {
 | 
			
		||||
            // if (item.name.substr(0, 1) == "D") {
 | 
			
		||||
            // console.log(ele)
 | 
			
		||||
            nameList.push(ele.lineName);
 | 
			
		||||
            outputNumList.push(ele.outputNum);
 | 
			
		||||
            passRateList.push(ele.passRate);
 | 
			
		||||
            // }
 | 
			
		||||
            // }
 | 
			
		||||
          });
 | 
			
		||||
          this.$nextTick(() => {
 | 
			
		||||
            this.$refs.productLineChart.initChart(
 | 
			
		||||
              nameList,
 | 
			
		||||
@@ -742,6 +802,51 @@ export default {
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style lang="scss" scoped>
 | 
			
		||||
.myLegend {
 | 
			
		||||
  position: absolute;
 | 
			
		||||
  top: -28px;
 | 
			
		||||
  right: 20px;
 | 
			
		||||
  font-size: 12px;
 | 
			
		||||
  color: rgba(255, 255, 255, .6);
 | 
			
		||||
 | 
			
		||||
  .barLegend {
 | 
			
		||||
    // float: left;
 | 
			
		||||
    background: linear-gradient(#9DD5FF, #1295FF);
 | 
			
		||||
    width: 10px;
 | 
			
		||||
    height: 10px;
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
    margin-right: 5px;
 | 
			
		||||
    border-radius: 30%;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  .barText {
 | 
			
		||||
    // float: right;
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
    margin-right: 10px;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  .barCircleLegend {
 | 
			
		||||
    width: 15px;
 | 
			
		||||
    height: 1px;
 | 
			
		||||
    background-color: rgba(255, 209, 96, 1);
 | 
			
		||||
    position: absolute;
 | 
			
		||||
    left: -4.1715px;
 | 
			
		||||
    top: 21.7px;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  .barCircle {
 | 
			
		||||
    width: 6px;
 | 
			
		||||
    height: 6px;
 | 
			
		||||
    border-radius: 50%;
 | 
			
		||||
    background-color: rgba(255, 209, 96, 1);
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
    margin-right: 10px;
 | 
			
		||||
    margin-bottom: 1.7px;
 | 
			
		||||
  }
 | 
			
		||||
  .barCircleText {
 | 
			
		||||
    display: inline-block;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
.visual-container {
 | 
			
		||||
	width: 1920px;
 | 
			
		||||
	height: 1080px;
 | 
			
		||||
@@ -815,8 +920,9 @@ export default {
 | 
			
		||||
	background-image: linear-gradient(to right, #4573fe, #47f8dc);
 | 
			
		||||
}
 | 
			
		||||
::v-deep .el-progress__text {
 | 
			
		||||
  width: 50px;
 | 
			
		||||
  margin-top: -70px;
 | 
			
		||||
  margin-left: 490px;
 | 
			
		||||
  margin-left: 510px;
 | 
			
		||||
  // background-color: unset;
 | 
			
		||||
  // background-image: linear-gradient(to right, #4573fe, #47f8dc);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -33,38 +34,49 @@ import {
 | 
			
		||||
	getcoreAlarmLogPage
 | 
			
		||||
} from '@/api/base/coreAlarmLog';
 | 
			
		||||
import {DICT_TYPE, getDictDatas, publicFormatter } from "@/utils/dict";
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'alarmTime',
 | 
			
		||||
		label: '报警时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'alarmSource',
 | 
			
		||||
		label: '报警来源'
 | 
			
		||||
		label: '报警来源',
 | 
			
		||||
		width: 200,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'alarmType',
 | 
			
		||||
		label: '报警类型'
 | 
			
		||||
		label: '报警类型',
 | 
			
		||||
		width: 180,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'alarmGrade',
 | 
			
		||||
		label: '报警级别',
 | 
			
		||||
		filter: publicFormatter(DICT_TYPE.EQU_ALARM_LEVEL)
 | 
			
		||||
		filter: publicFormatter(DICT_TYPE.EQU_ALARM_LEVEL),
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'alarmReason',
 | 
			
		||||
		label: '报警原因'
 | 
			
		||||
		label: '报警原因',
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'alarmContent',
 | 
			
		||||
		label: '报警详细'
 | 
			
		||||
		label: '报警详细',
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	}
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -74,7 +86,7 @@ export default {
 | 
			
		||||
			tableBtn: [].filter((v)=>v),
 | 
			
		||||
			tableData: [],
 | 
			
		||||
			listQuery: {
 | 
			
		||||
        pageSize: 10,
 | 
			
		||||
        pageSize: 20,
 | 
			
		||||
        pageNo: 1,
 | 
			
		||||
        total: 0,
 | 
			
		||||
				alarmSource: undefined,
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2021-11-18 14:16:25
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2024-03-20 16:20:39
 | 
			
		||||
 * @LastEditTime: 2024-04-02 16:46:17
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -96,7 +96,7 @@ export default {
 | 
			
		||||
			dataRule: {
 | 
			
		||||
        code: [{ required: true, message: "客户编号不能为空", trigger: "blur" }],
 | 
			
		||||
        name: [{ required: true, message: "客户名称不能为空", trigger: "blur" }],
 | 
			
		||||
				contact: [{ required: true, message: "联系人不能为空", trigger: "blur" }],
 | 
			
		||||
				// contact: [{ required: true, message: "联系人不能为空", trigger: "blur" }],
 | 
			
		||||
				telephone: [
 | 
			
		||||
					{ required: false, trigger: "blur", message: "手机号不能为空" },
 | 
			
		||||
          {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -45,41 +46,56 @@ import {
 | 
			
		||||
	getCustomerPage,
 | 
			
		||||
	deleteCustomer
 | 
			
		||||
} from '@/api/base/coreCustomer';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '添加时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '客户名称'
 | 
			
		||||
		label: '客户名称',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
		label: '客户编码'
 | 
			
		||||
		label: '客户编码',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'contact',
 | 
			
		||||
		label: '联系人'
 | 
			
		||||
		label: '联系人',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'telephone',
 | 
			
		||||
		label: '联系电话'
 | 
			
		||||
		label: '联系电话',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'address',
 | 
			
		||||
		label: '地址'
 | 
			
		||||
		label: '地址',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		minWidth: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -45,6 +46,7 @@ import {
 | 
			
		||||
	getCoreDepartmentPage,
 | 
			
		||||
	deleteCoreDepartment
 | 
			
		||||
} from '@/api/base/coreDepartment';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
@@ -71,7 +73,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -64,8 +64,8 @@
 | 
			
		||||
				</el-form-item>
 | 
			
		||||
			</el-col>
 | 
			
		||||
			<el-col :span="8">
 | 
			
		||||
				<el-form-item label="进场日期" prop="enterTime" :rules="[]">
 | 
			
		||||
					<el-date-picker v-model="form.enterTime" :disabled="disabled" type="datetime" placeholder="请选择进场日期"
 | 
			
		||||
				<el-form-item label="进厂日期" prop="enterTime" :rules="[]">
 | 
			
		||||
					<el-date-picker v-model="form.enterTime" :disabled="disabled" type="datetime" placeholder="请选择进厂日期"
 | 
			
		||||
						value-format="timestamp"></el-date-picker>
 | 
			
		||||
				</el-form-item>
 | 
			
		||||
			</el-col>
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -78,7 +79,7 @@
 | 
			
		||||
					queryParams: {
 | 
			
		||||
						equipmentId: form.id,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
					},
 | 
			
		||||
					tableBtn: [
 | 
			
		||||
						this.$auth.hasPermi('base:core-equipment-attr:update')
 | 
			
		||||
@@ -118,6 +119,7 @@ import {
 | 
			
		||||
} from '@/api/base/equipment';
 | 
			
		||||
import Editor from '@/components/Editor';
 | 
			
		||||
import AssetsUpload from './components/AssetsUpload.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'Equipment',
 | 
			
		||||
@@ -125,7 +127,7 @@ export default {
 | 
			
		||||
		Editor,
 | 
			
		||||
		EquipmentDrawer,
 | 
			
		||||
	},
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			searchBarKeys: ['name', 'code'],
 | 
			
		||||
@@ -157,8 +159,8 @@ export default {
 | 
			
		||||
					width: 180,
 | 
			
		||||
					filter: (val) => moment(val).format('yyyy-MM-DD HH:mm:ss'),
 | 
			
		||||
				},
 | 
			
		||||
				{ prop: 'name', label: '设备名称' },
 | 
			
		||||
				{ width: 256, prop: 'code', label: '设备编码' },
 | 
			
		||||
				{ prop: 'name', label: '设备名称', width: 180, showOverflowtooltip: true },
 | 
			
		||||
				{ width: 250, prop: 'code', label: '设备编码' },
 | 
			
		||||
				{ prop: 'equipmentTypeName', label: '设备类型' },
 | 
			
		||||
				{ prop: 'enName', label: '英文名称' },
 | 
			
		||||
				{ prop: 'abbr', label: '缩写' },
 | 
			
		||||
@@ -484,7 +486,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				code: '',
 | 
			
		||||
				name: '',
 | 
			
		||||
				special: false
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -51,13 +52,13 @@
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import DialogForm from './dialogForm.vue';
 | 
			
		||||
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
// import { getAccessToken } from '@/utils/auth';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentLineBind',
 | 
			
		||||
	components: { DialogForm },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			basePath: '/base/core-equipment-bind-section',
 | 
			
		||||
@@ -81,12 +82,13 @@ export default {
 | 
			
		||||
					prop: 'createTime',
 | 
			
		||||
					label: '添加时间',
 | 
			
		||||
					fixed: true,
 | 
			
		||||
					width: 180,
 | 
			
		||||
					width: 150,
 | 
			
		||||
					showOverflowtooltip: true,
 | 
			
		||||
					filter: (val) => moment(val).format('yyyy-MM-DD HH:mm:ss'),
 | 
			
		||||
				},
 | 
			
		||||
				{ prop: 'productionLineName', label: '产线名称' },
 | 
			
		||||
				{ prop: 'workshopSectionName', label: '工段名称' },
 | 
			
		||||
				{ prop: 'equipmentName', label: '设备名称' },
 | 
			
		||||
				{ prop: 'productionLineName', label: '产线名称', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'workshopSectionName', label: '工段名称', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'equipmentName', label: '设备名称', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'sort', label: '工段中排序' },
 | 
			
		||||
				{
 | 
			
		||||
					prop: 'lineDataType',
 | 
			
		||||
@@ -236,7 +238,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				equipmentName: null,
 | 
			
		||||
				productionLineId: null,
 | 
			
		||||
			},
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -50,6 +51,7 @@
 | 
			
		||||
<script>
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
import {
 | 
			
		||||
	createEquipmentType,
 | 
			
		||||
@@ -65,7 +67,7 @@ import {
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentType',
 | 
			
		||||
	components: {},
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			searchBarKeys: ['name'],
 | 
			
		||||
@@ -171,7 +173,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				name: '',
 | 
			
		||||
			},
 | 
			
		||||
			// 表单参数
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -43,38 +44,51 @@ import basicPage from '../../core/mixins/basic-page';
 | 
			
		||||
import { parseTime } from '../../core/mixins/code-filter';
 | 
			
		||||
import { getHotMaterialPage, deleteHotMaterial } from '@/api/base/coreHotMaterial';
 | 
			
		||||
import { publicFormatter } from "@/utils/dict";
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '添加时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 180,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '原料名称'
 | 
			
		||||
		label: '原料名称',
 | 
			
		||||
		minWidth: 250,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
		label: '原料编码'
 | 
			
		||||
		label: '原料编码',
 | 
			
		||||
		width: 250,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'unit',
 | 
			
		||||
		label: '单位',
 | 
			
		||||
		filter: publicFormatter('unit_dict')
 | 
			
		||||
		filter: publicFormatter('unit_dict'),
 | 
			
		||||
		width: 90,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'dailyCost',
 | 
			
		||||
		label: '每日消耗量'
 | 
			
		||||
		label: '每日消耗量',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -45,6 +46,7 @@ import {
 | 
			
		||||
	getCoreMajorPage,
 | 
			
		||||
	deleteCoreMajor
 | 
			
		||||
} from '@/api/base/coreMajor';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
@@ -71,7 +73,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,15 +2,17 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2021-11-18 14:16:25
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2024-03-13 13:54:01
 | 
			
		||||
 * @LastEditTime: 2024-03-27 13:47:24
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
	<el-drawer
 | 
			
		||||
		:visible.sync="visible"
 | 
			
		||||
		:show-close="false"
 | 
			
		||||
		:wrapper-closable="isdetail"
 | 
			
		||||
		:wrapper-closable="true"
 | 
			
		||||
		class="drawer"
 | 
			
		||||
		:before-close="beforeClose"
 | 
			
		||||
		@closed="$emit('destroy')"
 | 
			
		||||
		size="60%">
 | 
			
		||||
		<small-title slot="title" :no-padding="true">
 | 
			
		||||
			{{ isdetail ? '详情' : !dataForm.id ? '新增' : '编辑' }}
 | 
			
		||||
@@ -262,6 +264,15 @@ export default {
 | 
			
		||||
	},
 | 
			
		||||
	mounted() {},
 | 
			
		||||
	methods: {
 | 
			
		||||
		beforeClose(done) {
 | 
			
		||||
			if (!this.isdetail) {
 | 
			
		||||
				this.$confirm('确认关闭?')
 | 
			
		||||
					.then(_ => {
 | 
			
		||||
						done();
 | 
			
		||||
					})
 | 
			
		||||
					.catch(_ => {});
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		clearArea() {
 | 
			
		||||
			this.$set(this.dataForm, 'area', 0)
 | 
			
		||||
			this.$set(this.dataForm, 'weight', 0)
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -26,7 +27,8 @@
 | 
			
		||||
		<add-or-update
 | 
			
		||||
			v-if="addOrUpdateVisible"
 | 
			
		||||
			ref="addOrUpdate"
 | 
			
		||||
			@refreshDataList="getDataList" />
 | 
			
		||||
			@refreshDataList="getDataList"
 | 
			
		||||
			@destroy="addOrUpdateVisible = false" />
 | 
			
		||||
	</div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
@@ -39,43 +41,58 @@ import {
 | 
			
		||||
	getCoreProductPage,
 | 
			
		||||
	deleteCoreProduct
 | 
			
		||||
} from '@/api/base/coreProduct';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '添加时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '产品名称'
 | 
			
		||||
		label: '产品名称',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
		label: '产品编码'
 | 
			
		||||
		label: '产品编码',
 | 
			
		||||
		width: 190,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'productType',
 | 
			
		||||
		label: '产品类型',
 | 
			
		||||
		filter: publicFormatter('product_type')
 | 
			
		||||
		filter: publicFormatter('product_type'),
 | 
			
		||||
		width: 180,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'specifications',
 | 
			
		||||
		label: '规格'
 | 
			
		||||
		label: '规格',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'unit',
 | 
			
		||||
		label: '单位',
 | 
			
		||||
		filter: publicFormatter('unit_dict')
 | 
			
		||||
		filter: publicFormatter('unit_dict'),
 | 
			
		||||
		width: 90,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -48,34 +49,47 @@ import {
 | 
			
		||||
import { getStatus } from '@/api/core/base/productionLine';
 | 
			
		||||
import codeFilter from '../../core/mixins/code-filter';
 | 
			
		||||
import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '添加时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'factoryName',
 | 
			
		||||
		label: '工厂'
 | 
			
		||||
		label: '工厂',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'roomNameDict',
 | 
			
		||||
		label: '车间名称',
 | 
			
		||||
		filter: publicFormatter('workshop')
 | 
			
		||||
		filter: publicFormatter('workshop'),
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '产线名称'
 | 
			
		||||
		label: '产线名称',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
		label: '产线编码'
 | 
			
		||||
		label: '产线编码',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'enabled',
 | 
			
		||||
		label: '当前状态',
 | 
			
		||||
		filter: codeFilter('lineStatus')
 | 
			
		||||
		filter: codeFilter('lineStatus'),
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	// {
 | 
			
		||||
	// 	prop: 'tvalue',
 | 
			
		||||
@@ -83,16 +97,20 @@ const tableProps = [
 | 
			
		||||
	// },
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'description',
 | 
			
		||||
		label: '描述'
 | 
			
		||||
		label: '描述',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	}
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2021-11-18 14:16:25
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2023-11-22 10:27:43
 | 
			
		||||
 * @LastEditTime: 2024-04-02 16:46:49
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
@@ -79,7 +79,7 @@ export default {
 | 
			
		||||
			dataRule: {
 | 
			
		||||
        code: [{ required: true, message: "供应商编号不能为空", trigger: "blur" }],
 | 
			
		||||
        name: [{ required: true, message: "供应商名称不能为空", trigger: "blur" }],
 | 
			
		||||
				contact: [{ required: true, message: "联系人不能为空", trigger: "blur" }],
 | 
			
		||||
				// contact: [{ required: true, message: "联系人不能为空", trigger: "blur" }],
 | 
			
		||||
				telephone: [
 | 
			
		||||
					{ required: false, trigger: "blur", message: "手机号不能为空" },
 | 
			
		||||
          {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -45,41 +46,56 @@ import {
 | 
			
		||||
	getCoreSupplierPage,
 | 
			
		||||
	deleteCoreSupplier
 | 
			
		||||
} from '@/api/base/coreSupplier';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '添加时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
		label: '供应商编码'
 | 
			
		||||
		label: '供应商编码',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '供应商名称'
 | 
			
		||||
		label: '供应商名称',
 | 
			
		||||
		width: 180,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'contact',
 | 
			
		||||
		label: '联系人'
 | 
			
		||||
		label: '联系人',
 | 
			
		||||
		width: 180,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'telephone',
 | 
			
		||||
		label: '联系电话'
 | 
			
		||||
		label: '联系电话',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'address',
 | 
			
		||||
		label: '地址'
 | 
			
		||||
		label: '地址',
 | 
			
		||||
		width: 180,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		minWidth: 90,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -46,20 +47,27 @@ import {
 | 
			
		||||
	deleteCoreWorker
 | 
			
		||||
} from '@/api/base/coreWorker';
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '创建时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '姓名'
 | 
			
		||||
		label: '姓名',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
		label: '员工号'
 | 
			
		||||
		label: '员工号',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'sex',
 | 
			
		||||
@@ -70,32 +78,44 @@ const tableProps = [
 | 
			
		||||
		prop: 'entryTime',
 | 
			
		||||
		label: '入职时间',
 | 
			
		||||
		filter: (val) => val ? moment(val).format('yyyy-MM-DD') : '',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'telephone',
 | 
			
		||||
		label: '联系电话'
 | 
			
		||||
		label: '联系电话',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'status',
 | 
			
		||||
		label: '状态',
 | 
			
		||||
		filter: (val) => ['', '在职', '离职'][val]
 | 
			
		||||
		filter: (val) => ['', '在职', '离职'][val],
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'departmentName',
 | 
			
		||||
		label: '部门'
 | 
			
		||||
		label: '部门',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'majorName',
 | 
			
		||||
		label: '专业'
 | 
			
		||||
		label: '专业',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -45,12 +46,14 @@ import {
 | 
			
		||||
	getCWSectionPage,
 | 
			
		||||
	deleteCWSection
 | 
			
		||||
} from '@/api/base/coreWorkshopSection';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
		label: '添加时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'code',
 | 
			
		||||
@@ -70,12 +73,13 @@ const tableProps = [
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -40,6 +41,7 @@ import {
 | 
			
		||||
} from '@/api/base/material';
 | 
			
		||||
import { listData } from "@/api/system/dict/data";
 | 
			
		||||
import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
@@ -75,7 +77,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -38,6 +39,7 @@ import {
 | 
			
		||||
	getMaterialPBPage,
 | 
			
		||||
	deleteMaterialPB
 | 
			
		||||
} from '@/api/base/materialProductBom';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
@@ -55,7 +57,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	components: {
 | 
			
		||||
		AddOrUpdate,
 | 
			
		||||
	},
 | 
			
		||||
 
 | 
			
		||||
@@ -6,34 +6,17 @@
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
	<div class="app-container">
 | 
			
		||||
		<search-bar
 | 
			
		||||
			:formConfigs="formConfig"
 | 
			
		||||
			ref="searchBarForm"
 | 
			
		||||
			@headBtnClick="buttonClick" />
 | 
			
		||||
		<base-table
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				:width="120"
 | 
			
		||||
				label="操作"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleClick" />
 | 
			
		||||
		</base-table>
 | 
			
		||||
		<pagination
 | 
			
		||||
			:limit.sync="listQuery.pageSize"
 | 
			
		||||
			:page.sync="listQuery.pageNo"
 | 
			
		||||
			:total="listQuery.total"
 | 
			
		||||
			@pagination="getDataList" />
 | 
			
		||||
		<add-or-update
 | 
			
		||||
			v-if="addOrUpdateVisible"
 | 
			
		||||
			ref="addOrUpdate"
 | 
			
		||||
			@refreshDataList="getDataList" />
 | 
			
		||||
	</div>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
 | 
			
		||||
      :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <pagination :limit.sync="listQuery.pageSize" :page.sync="listQuery.pageNo" :total="listQuery.total"
 | 
			
		||||
      @pagination="getDataList" />
 | 
			
		||||
    <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
@@ -41,6 +24,7 @@ import AddOrUpdate from './add-or-updata';
 | 
			
		||||
// import unitDict from './unitDict';
 | 
			
		||||
import basicPage from '../mixins/basic-page';
 | 
			
		||||
import { parseTime } from '../mixins/code-filter';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import {
 | 
			
		||||
  getPackingModel,
 | 
			
		||||
} from '@/api/base/printModel.js'
 | 
			
		||||
@@ -91,7 +75,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -314,7 +298,7 @@ export default {
 | 
			
		||||
			switch (val.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
					this.listQuery.pageNo = 1;
 | 
			
		||||
					this.listQuery.pageSize = 10;
 | 
			
		||||
					this.listQuery.pageSize = 20;
 | 
			
		||||
          this.listQuery.workOrderId = val.workOrderId;
 | 
			
		||||
          if (val.createTime && val.createTime.length != 0) {
 | 
			
		||||
            this.listQuery.createTime = val.createTime
 | 
			
		||||
@@ -329,7 +313,7 @@ export default {
 | 
			
		||||
				case 'reset':
 | 
			
		||||
					this.$refs.searchBarForm.resetForm();
 | 
			
		||||
					this.listQuery = {
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						total: 1,
 | 
			
		||||
					};
 | 
			
		||||
 
 | 
			
		||||
@@ -2,13 +2,14 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2023-08-01 14:55:51
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @LastEditTime: 2023-12-04 13:38:45
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:08:38
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize" :table-data="tableData">
 | 
			
		||||
    <base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
 | 
			
		||||
      :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
    </base-table>
 | 
			
		||||
@@ -25,7 +26,9 @@ import AddOrUpdate from './add-or-updata';
 | 
			
		||||
import basicPage from '../mixins/basic-page';
 | 
			
		||||
import { parseTime } from '../mixins/code-filter';
 | 
			
		||||
import printModelDesign from '../custom/index'
 | 
			
		||||
import { updatePackingModel,} from '@/api/base/printModel.js';
 | 
			
		||||
import { updatePackingModel, } from '@/api/base/printModel.js';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
import {
 | 
			
		||||
  deletePackingModel,
 | 
			
		||||
  getPackingModelPage,
 | 
			
		||||
@@ -59,7 +62,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -162,7 +165,7 @@ export default {
 | 
			
		||||
			switch (val.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
					this.listQuery.pageNo = 1;
 | 
			
		||||
					this.listQuery.pageSize = 10;
 | 
			
		||||
					this.listQuery.pageSize = 20;
 | 
			
		||||
          this.listQuery.packagingCode = val.packagingCode;
 | 
			
		||||
          this.listQuery.createTime = val.createTime;
 | 
			
		||||
					this.getDataList();
 | 
			
		||||
@@ -170,7 +173,7 @@ export default {
 | 
			
		||||
				case 'reset':
 | 
			
		||||
					this.$refs.searchBarForm.resetForm();
 | 
			
		||||
					this.listQuery = {
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						total: 1,
 | 
			
		||||
					};
 | 
			
		||||
 
 | 
			
		||||
@@ -2,38 +2,21 @@
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2023-08-01 14:55:51
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @LastEditTime: 2023-12-04 13:44:01
 | 
			
		||||
 * @LastEditTime: 2024-04-03 15:09:06
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
	<div class="app-container">
 | 
			
		||||
		<search-bar
 | 
			
		||||
			:formConfigs="formConfig"
 | 
			
		||||
			ref="searchBarForm"
 | 
			
		||||
			@headBtnClick="buttonClick" />
 | 
			
		||||
		<base-table
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				:width="120"
 | 
			
		||||
				label="操作"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleClick" />
 | 
			
		||||
		</base-table>
 | 
			
		||||
		<pagination
 | 
			
		||||
			:limit.sync="listQuery.pageSize"
 | 
			
		||||
			:page.sync="listQuery.pageNo"
 | 
			
		||||
			:total="listQuery.total"
 | 
			
		||||
			@pagination="getDataList" />
 | 
			
		||||
		<add-or-update
 | 
			
		||||
			v-if="addOrUpdateVisible"
 | 
			
		||||
			ref="addOrUpdate"
 | 
			
		||||
			@refreshDataList="getDataList" />
 | 
			
		||||
	</div>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
 | 
			
		||||
      :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <pagination :limit.sync="listQuery.pageSize" :page.sync="listQuery.pageNo" :total="listQuery.total"
 | 
			
		||||
      @pagination="getDataList" />
 | 
			
		||||
    <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" />
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
@@ -41,6 +24,7 @@ import AddOrUpdate from './add-or-updata';
 | 
			
		||||
// import unitDict from './unitDict';
 | 
			
		||||
import basicPage from '../mixins/basic-page';
 | 
			
		||||
import { parseTime } from '../mixins/code-filter';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import {
 | 
			
		||||
	deletePackingType,
 | 
			
		||||
  getPackingTypePage,
 | 
			
		||||
@@ -64,7 +48,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -154,7 +138,7 @@ export default {
 | 
			
		||||
			switch (val.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
					this.listQuery.pageNo = 1;
 | 
			
		||||
					this.listQuery.pageSize = 10;
 | 
			
		||||
					this.listQuery.pageSize = 20;
 | 
			
		||||
          this.listQuery.packagingCode = val.packagingCode;
 | 
			
		||||
          this.listQuery.createTime = val.createTime;
 | 
			
		||||
					this.getDataList();
 | 
			
		||||
@@ -162,7 +146,7 @@ export default {
 | 
			
		||||
				case 'reset':
 | 
			
		||||
					this.$refs.searchBarForm.resetForm();
 | 
			
		||||
					this.listQuery = {
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						total: 1,
 | 
			
		||||
					};
 | 
			
		||||
 
 | 
			
		||||
@@ -106,6 +106,10 @@ export default {
 | 
			
		||||
		activeIndex(val) {
 | 
			
		||||
			this.initChart(val);
 | 
			
		||||
		},
 | 
			
		||||
		daterange(val) {
 | 
			
		||||
			console.log('222', val)
 | 
			
		||||
			this.templateOption.xAxis.data = val
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
		/**
 | 
			
		||||
@@ -124,8 +128,8 @@ export default {
 | 
			
		||||
		},
 | 
			
		||||
		/** 初始化/设置 图表 */
 | 
			
		||||
		initChart(val) {
 | 
			
		||||
			console.log('tableData', this.tableData);
 | 
			
		||||
			if (!this.chart) this.chart = echarts.init(this.$refs.chartDiv);
 | 
			
		||||
			this.chart.clear();
 | 
			
		||||
			switch (val) {
 | 
			
		||||
				case 0:
 | 
			
		||||
					const eqCt = this.tableData.map((row) => ({
 | 
			
		||||
@@ -139,7 +143,7 @@ export default {
 | 
			
		||||
						...this.templateOption,
 | 
			
		||||
						yAxis: { ...this.templateOption.yAxis, name: '设备CT' },
 | 
			
		||||
						series: eqCt,
 | 
			
		||||
					});
 | 
			
		||||
					}, true);
 | 
			
		||||
					break;
 | 
			
		||||
				case 1:
 | 
			
		||||
					const eqTt = this.tableData.map((row) => ({
 | 
			
		||||
@@ -153,7 +157,7 @@ export default {
 | 
			
		||||
						...this.templateOption,
 | 
			
		||||
						yAxis: { ...this.templateOption.yAxis, name: '设备TT' },
 | 
			
		||||
						series: eqTt,
 | 
			
		||||
					});
 | 
			
		||||
					}, true);
 | 
			
		||||
					break;
 | 
			
		||||
				case 2:
 | 
			
		||||
					const plCt = this.tableData.map((row) => ({
 | 
			
		||||
@@ -167,7 +171,7 @@ export default {
 | 
			
		||||
						...this.templateOption,
 | 
			
		||||
						yAxis: { ...this.templateOption.yAxis, name: '产线CT' },
 | 
			
		||||
						series: plCt,
 | 
			
		||||
					});
 | 
			
		||||
					}, true);
 | 
			
		||||
					break;
 | 
			
		||||
				case 3:
 | 
			
		||||
					const plTt = this.tableData.map((row) => ({
 | 
			
		||||
@@ -181,9 +185,10 @@ export default {
 | 
			
		||||
						...this.templateOption,
 | 
			
		||||
						yAxis: { ...this.templateOption.yAxis, name: '产线TT' },
 | 
			
		||||
						series: plTt,
 | 
			
		||||
					});
 | 
			
		||||
					}, true);
 | 
			
		||||
					break;
 | 
			
		||||
				default:
 | 
			
		||||
					this.activeIndex = 0
 | 
			
		||||
					const eqCt2 = this.tableData.map((row) => ({
 | 
			
		||||
						name: row.equName,
 | 
			
		||||
						type: 'line',
 | 
			
		||||
@@ -195,7 +200,7 @@ export default {
 | 
			
		||||
						...this.templateOption,
 | 
			
		||||
						yAxis: { ...this.templateOption.yAxis, name: '设备CT' },
 | 
			
		||||
						series: eqCt2,
 | 
			
		||||
					});
 | 
			
		||||
					}, true);
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
 
 | 
			
		||||
@@ -18,13 +18,15 @@
 | 
			
		||||
						:page="1"
 | 
			
		||||
						:limit="999"
 | 
			
		||||
						:table-props="tableProps"
 | 
			
		||||
						:table-data="tableData" />
 | 
			
		||||
						:table-data="tableData"
 | 
			
		||||
						:max-height="tableH" />
 | 
			
		||||
					<div v-if="tableData.length == 0" class="no-data-bg"></div>
 | 
			
		||||
				</el-tab-pane>
 | 
			
		||||
				<el-tab-pane :label="'\u3000产线平衡分析图\u3000'" name="graph">
 | 
			
		||||
					<div class="graph" style="height: 800px">
 | 
			
		||||
						<!-- graph  -->
 | 
			
		||||
						<AnalysisChart
 | 
			
		||||
							ref="analysisChart"
 | 
			
		||||
							v-if="activeName == 'graph'"
 | 
			
		||||
							:table-data="tableData"
 | 
			
		||||
							:daterange="dateArr"></AnalysisChart>
 | 
			
		||||
@@ -47,13 +49,14 @@ import BalanceChart from '../balanceChart';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import AnalysisChart from './chart.vue';
 | 
			
		||||
import { parseTime } from '@/utils/ruoyi'
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	components: {
 | 
			
		||||
		BalanceChart,
 | 
			
		||||
		AnalysisChart,
 | 
			
		||||
	},
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			activeName: 'table',
 | 
			
		||||
@@ -176,6 +179,11 @@ export default {
 | 
			
		||||
			// const p = this.tableProps
 | 
			
		||||
			// const d = this.tableData
 | 
			
		||||
			// debugger;
 | 
			
		||||
			if (this.activeName == 'graph') {
 | 
			
		||||
				this.$nextTick(() => {
 | 
			
		||||
					this.$refs['analysisChart'].initChart()
 | 
			
		||||
				})
 | 
			
		||||
			}
 | 
			
		||||
			this.ready = true;
 | 
			
		||||
		},
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -41,6 +42,7 @@
 | 
			
		||||
import AddOrUpdate from './add-or-updata';
 | 
			
		||||
import basicPage from '../../mixins/basic-page';
 | 
			
		||||
import { parseTime } from '../../mixins/code-filter';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import {
 | 
			
		||||
	deleteFactory,
 | 
			
		||||
	getFactoryPage
 | 
			
		||||
@@ -71,7 +73,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -17,7 +17,7 @@ export default {
 | 
			
		||||
      },
 | 
			
		||||
      tableData: [],
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        pageSize: 10,
 | 
			
		||||
        pageSize: 20,
 | 
			
		||||
        pageNo: 1,
 | 
			
		||||
        total: 1,
 | 
			
		||||
      },
 | 
			
		||||
 
 | 
			
		||||
@@ -27,13 +27,16 @@
 | 
			
		||||
import { getPdlDataOneDay } from '@/api/core/monitoring/data24'
 | 
			
		||||
import { parseTime } from '../../mixins/code-filter';
 | 
			
		||||
import { getSchedulingMonitoringRecord1 } from '@/api/monitoring/teamProduction'
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'productionLineData24',
 | 
			
		||||
	mixins: [tableHeightMixin],
 | 
			
		||||
	components: {},
 | 
			
		||||
	props: {},
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			heightNum: 240,
 | 
			
		||||
      urlOptions: {
 | 
			
		||||
				getDataListURL: getPdlDataOneDay
 | 
			
		||||
			},
 | 
			
		||||
@@ -56,9 +59,9 @@ export default {
 | 
			
		||||
	},
 | 
			
		||||
	computed: {},
 | 
			
		||||
	mounted() {
 | 
			
		||||
		window.addEventListener('resize', () => {
 | 
			
		||||
      this.tableH = this.tableHeight(240)
 | 
			
		||||
    })
 | 
			
		||||
		// window.addEventListener('resize', () => {
 | 
			
		||||
    //   this.tableH = this.tableHeight(240)
 | 
			
		||||
    // })
 | 
			
		||||
		this.getList();
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
@@ -115,7 +118,7 @@ export default {
 | 
			
		||||
		/** 把 list 里的数据转换成 tableProps 对应的格式 */
 | 
			
		||||
		convertList(list) {
 | 
			
		||||
			// let sectionArr= []
 | 
			
		||||
			let temp = Object.values(list.datamap)                             
 | 
			
		||||
			let temp = list.datamap ? Object.values(list?.datamap) : []
 | 
			
		||||
			console.log('111', temp)
 | 
			
		||||
 | 
			
		||||
			temp.forEach(item => {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,8 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -33,6 +34,7 @@ import {
 | 
			
		||||
	getEqAnalysis,
 | 
			
		||||
	exportEqAnalysisExcel,
 | 
			
		||||
} from '@/api/equipment/analysis/statistics';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	// {
 | 
			
		||||
@@ -52,35 +54,49 @@ const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'lineName',
 | 
			
		||||
		label: '产线',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'sectionName',
 | 
			
		||||
		label: '工段',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'equipmentName',
 | 
			
		||||
		label: '设备名称',
 | 
			
		||||
		minWidth: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'equipmentType',
 | 
			
		||||
		label: '设备类型',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'workTime',
 | 
			
		||||
		label: '工作时间累积(h)',
 | 
			
		||||
		width: 160,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'repairCount',
 | 
			
		||||
		label: '维修次数',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'maintainCount',
 | 
			
		||||
		label: '保养次数',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		const today = new Date();
 | 
			
		||||
 | 
			
		||||
@@ -110,7 +126,7 @@ export default {
 | 
			
		||||
			tableBtn: [].filter((v) => v),
 | 
			
		||||
			tableData: [],
 | 
			
		||||
			listQuery: {
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				total: 1,
 | 
			
		||||
				recordTime: [
 | 
			
		||||
 
 | 
			
		||||
@@ -75,6 +75,12 @@ export default {
 | 
			
		||||
				},
 | 
			
		||||
				tooltip: {
 | 
			
		||||
					trigger: 'item',
 | 
			
		||||
					formatter: (v) => {
 | 
			
		||||
						const num = String(v.value)?.split('.').length === 2 ? v.value?.toFixed(2) : v.value
 | 
			
		||||
						return `<div>
 | 
			
		||||
						<span>${v.name}: ${num}</span>
 | 
			
		||||
						</div>`
 | 
			
		||||
					}
 | 
			
		||||
				},
 | 
			
		||||
				legend: {
 | 
			
		||||
					show: false,
 | 
			
		||||
 
 | 
			
		||||
@@ -19,7 +19,7 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			max-height="600"
 | 
			
		||||
			:max-height="tableH"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			<!-- <method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
@@ -42,14 +42,16 @@
 | 
			
		||||
<script>
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'ExceptionAnalysis',
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	components: {},
 | 
			
		||||
	props: {},
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			heightNum: 220,
 | 
			
		||||
			searchBarKeys: ['name', 'code'],
 | 
			
		||||
			// tableBtn: [
 | 
			
		||||
			// 	this.$auth.hasPermi('base:equipment-group:update')
 | 
			
		||||
 
 | 
			
		||||
@@ -48,9 +48,11 @@
 | 
			
		||||
<script>
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import LineChart from './components/lineChart.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'QualityAnalysis',
 | 
			
		||||
	mixins: [tableHeightMixin],
 | 
			
		||||
	components: { LineChart },
 | 
			
		||||
	props: {},
 | 
			
		||||
	data() {
 | 
			
		||||
@@ -58,7 +60,6 @@ export default {
 | 
			
		||||
		const [y, m, d] = [now.getFullYear(), now.getMonth(), now.getDate()];
 | 
			
		||||
		return {
 | 
			
		||||
			dialogVisible: false,
 | 
			
		||||
			tableH: this.tableHeight(260),
 | 
			
		||||
			urls: {
 | 
			
		||||
				page: '/analysis/equipment-analysis/quality',
 | 
			
		||||
			},
 | 
			
		||||
@@ -254,9 +255,9 @@ export default {
 | 
			
		||||
		this.fillProductOptions();
 | 
			
		||||
	},
 | 
			
		||||
	mounted() {
 | 
			
		||||
		window.addEventListener('resize', () => {
 | 
			
		||||
      this.tableH = this.tableHeight(260)
 | 
			
		||||
    })
 | 
			
		||||
		// window.addEventListener('resize', () => {
 | 
			
		||||
    //   this.tableH = this.tableHeight(260)
 | 
			
		||||
    // })
 | 
			
		||||
		this.$refs['search-bar'].headBtnClick('search');
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -61,6 +62,8 @@ import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import AddOrUpdate from './AddOrUpdate.vue';
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const timeFilter = (val) => moment(val).format('yyyy-MM-DD HH:mm:ss');
 | 
			
		||||
 | 
			
		||||
const btn = {
 | 
			
		||||
@@ -89,7 +92,7 @@ const btn = {
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'Record',
 | 
			
		||||
	components: { AddOrUpdate },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			readOnly: false,
 | 
			
		||||
@@ -116,17 +119,17 @@ export default {
 | 
			
		||||
				// 	: undefined,
 | 
			
		||||
			].filter((v) => v),
 | 
			
		||||
			tableProps: [
 | 
			
		||||
				{ prop: 'productionLine', label: '产线' },
 | 
			
		||||
				{ prop: 'workshopSection', label: '工段' },
 | 
			
		||||
				{ prop: 'equipment', label: '设备名称' },
 | 
			
		||||
				{ prop: 'productionLine', label: '产线', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'workshopSection', label: '工段', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'equipment', label: '设备名称', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{
 | 
			
		||||
					prop: 'alarmGrade',
 | 
			
		||||
					label: '报警级别',
 | 
			
		||||
					filter: publicFormatter(this.DICT_TYPE.EQU_ALARM_LEVEL),
 | 
			
		||||
				},
 | 
			
		||||
				{ prop: 'createTime', label: '报警时间', filter: timeFilter },
 | 
			
		||||
				{ prop: 'alarmCode', label: '设备报警码' },
 | 
			
		||||
				{ prop: 'alarmContent', label: '报警内容' },
 | 
			
		||||
				{ prop: 'createTime', label: '报警时间', filter: timeFilter, width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'alarmCode', label: '设备报警码', width: 180, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'alarmContent', label: '报警内容', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'opt1', label: '处理记录', name: '查看', subcomponent: btn },
 | 
			
		||||
				{ prop: 'opt2', label: '处理', name: '报警处理', subcomponent: btn },
 | 
			
		||||
				// { prop: 'remark', label: '备注' },
 | 
			
		||||
@@ -203,7 +206,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				lineId: null,
 | 
			
		||||
				equipmentId: null,
 | 
			
		||||
				recordTime: [],
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -70,7 +71,7 @@
 | 
			
		||||
					queryParams: {
 | 
			
		||||
						equipmentGroupId: alarmForm.id,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
					},
 | 
			
		||||
					tableBtn: [
 | 
			
		||||
						this.$auth.hasPermi('equipment:alarm-group:update')
 | 
			
		||||
@@ -109,10 +110,11 @@ import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
// import { getAccessToken } from '@/utils/auth';
 | 
			
		||||
import BasicDrawer from './components/BasicDrawer.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentGroup',
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	components: { BasicDrawer },
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -72,7 +73,7 @@
 | 
			
		||||
					queryParams: {
 | 
			
		||||
						equipmentGroupId: alarmForm.id,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
					},
 | 
			
		||||
					tableBtn: [
 | 
			
		||||
						this.$auth.hasPermi('base:equipment-group:update')
 | 
			
		||||
@@ -112,11 +113,12 @@ import moment from 'moment';
 | 
			
		||||
import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import BasicDrawer from './components/BasicDrawer.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentBindGroup',
 | 
			
		||||
	components: { BasicDrawer },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			searchBarKeys: ['groupId', 'equipmentName'],
 | 
			
		||||
@@ -254,7 +256,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				equipmentName: null,
 | 
			
		||||
				groupId: null,
 | 
			
		||||
			},
 | 
			
		||||
 
 | 
			
		||||
@@ -19,7 +19,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -127,10 +128,11 @@ import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import BasicDrawer from './components/BasicDrawer.vue';
 | 
			
		||||
import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import AddOrUpdate from './add-or-updata';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentPlcConnect',
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	components: { BasicDrawer, AddOrUpdate },
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
@@ -156,14 +158,14 @@ export default {
 | 
			
		||||
					: undefined,
 | 
			
		||||
			].filter((v) => v),
 | 
			
		||||
			tableProps: [
 | 
			
		||||
				{ prop: 'productionLine', label: '产线' },
 | 
			
		||||
				{ prop: 'workshopSection', label: '工段' },
 | 
			
		||||
				{ prop: 'equipmentName', label: '设备名' },
 | 
			
		||||
				{ prop: 'equipmentCode', label: '设备编码' },
 | 
			
		||||
				{ prop: 'plcCode', label: '关联表编码' },
 | 
			
		||||
				{ prop: 'plcTableName', label: '关联表名' },
 | 
			
		||||
				{ prop: 'plcName', label: '标识名称' },
 | 
			
		||||
				{ prop: 'bindingParameters', label: '绑定参数数量' },
 | 
			
		||||
				{ prop: 'productionLine', label: '产线', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'workshopSection', label: '工段', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'equipmentName', label: '设备名', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'equipmentCode', label: '设备编码', width: 200, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'plcCode', label: '关联表编码', width: 220, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'plcTableName', label: '关联表名', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'plcName', label: '标识名称', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'bindingParameters', label: '绑定参数数量', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				// {
 | 
			
		||||
				// 	_action: 'params-bind',
 | 
			
		||||
				// 	label: '查看绑定',
 | 
			
		||||
@@ -269,7 +271,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				plcId: null,
 | 
			
		||||
				equipmentId: null,
 | 
			
		||||
			},
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,8 @@
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			ref="pageTable"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -60,6 +61,7 @@ import {
 | 
			
		||||
	exportEquipmentPlcExcel,
 | 
			
		||||
} from '@/api/base/equipmentPlc';
 | 
			
		||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const switchBtn = {
 | 
			
		||||
	name: 'SwitchBtn',
 | 
			
		||||
@@ -99,7 +101,7 @@ const switchBtn = {
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentPlc',
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	components: {},
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
@@ -127,16 +129,16 @@ export default {
 | 
			
		||||
				// 	width: 180,
 | 
			
		||||
				// 	filter: (val) => moment(val).format('yyyy-MM-DD HH:mm:ss'),
 | 
			
		||||
				// },
 | 
			
		||||
				{ prop: 'code', label: '编码' },
 | 
			
		||||
				{ prop: 'plcTableName', label: '关联表名' },
 | 
			
		||||
				{ prop: 'name', label: '标识名称' },
 | 
			
		||||
				{ prop: 'enName', label: '英文名称' },
 | 
			
		||||
				{ prop: 'code', label: '编码', width: 180, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'plcTableName', label: '关联表名', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'name', label: '标识名称', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'enName', label: '英文名称', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{
 | 
			
		||||
					prop: 'collection',
 | 
			
		||||
					label: '是否采集',
 | 
			
		||||
					subcomponent: switchBtn,
 | 
			
		||||
				},
 | 
			
		||||
				{ prop: 'description', label: '描述' },
 | 
			
		||||
				{ prop: 'description', label: '描述', minWidth: 150, showOverflowtooltip: true },
 | 
			
		||||
			],
 | 
			
		||||
			searchBarFormConfig: [
 | 
			
		||||
				{
 | 
			
		||||
@@ -240,7 +242,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				plcTableName: null,
 | 
			
		||||
				name: null,
 | 
			
		||||
			},
 | 
			
		||||
 
 | 
			
		||||
@@ -15,6 +15,7 @@
 | 
			
		||||
			background: '#f2f4f9',
 | 
			
		||||
			color: '#606266',
 | 
			
		||||
		}"
 | 
			
		||||
		:max-height="tableH"
 | 
			
		||||
		class="waiting-list-table">
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			type="selection"
 | 
			
		||||
@@ -37,8 +38,9 @@
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			v-if="selectedBox[0]"
 | 
			
		||||
			label="巡检单名称"
 | 
			
		||||
			:show-overflow-tooltip="true"
 | 
			
		||||
			prop="name"></el-table-column>
 | 
			
		||||
		<el-table-column v-if="selectedBox[1]" label="部门" prop="planName">
 | 
			
		||||
		<el-table-column v-if="selectedBox[1]" label="部门" :show-overflow-tooltip="true" prop="planName">
 | 
			
		||||
			<template slot-scope="scope">
 | 
			
		||||
				{{ scope.row.department || '---' }}
 | 
			
		||||
			</template>
 | 
			
		||||
@@ -46,6 +48,7 @@
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			v-if="selectedBox[2]"
 | 
			
		||||
			label="巡检时间"
 | 
			
		||||
			width="150"
 | 
			
		||||
			prop="actualCheckTime">
 | 
			
		||||
			<template slot-scope="scope">
 | 
			
		||||
				{{ scope.row.actualCheckTime | timeFilter }}
 | 
			
		||||
@@ -54,6 +57,8 @@
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			v-if="selectedBox[3]"
 | 
			
		||||
			label="班次"
 | 
			
		||||
			width="180"
 | 
			
		||||
			:show-overflow-tooltip="true"
 | 
			
		||||
			prop="groupClass">
 | 
			
		||||
			<template slot-scope="scope">
 | 
			
		||||
				{{ scope.row.groupClass || '---' }}
 | 
			
		||||
@@ -62,6 +67,7 @@
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			v-if="selectedBox[4]"
 | 
			
		||||
			label="确认截止时间"
 | 
			
		||||
			width="150"
 | 
			
		||||
			prop="confirmDueTime">
 | 
			
		||||
			<template slot-scope="scope">
 | 
			
		||||
				{{ scope.row.confirmDueTime | timeFilter }}
 | 
			
		||||
@@ -70,6 +76,7 @@
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			v-if="selectedBox[5]"
 | 
			
		||||
			width="150"
 | 
			
		||||
			:show-overflow-tooltip="true"
 | 
			
		||||
			label="备注"
 | 
			
		||||
			prop="remark">
 | 
			
		||||
			<template slot-scope="scope">
 | 
			
		||||
@@ -172,6 +179,7 @@ export default {
 | 
			
		||||
				true
 | 
			
		||||
			],
 | 
			
		||||
			selectedPlan: [],
 | 
			
		||||
			tableH: this.tableHeight(260)
 | 
			
		||||
		};
 | 
			
		||||
	},
 | 
			
		||||
	computed: {
 | 
			
		||||
@@ -182,6 +190,16 @@ export default {
 | 
			
		||||
			}));
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	created() {
 | 
			
		||||
		window.addEventListener('resize', () => {
 | 
			
		||||
      this.tableH = this.tableHeight(260)
 | 
			
		||||
    })
 | 
			
		||||
	},
 | 
			
		||||
	destroyed() {
 | 
			
		||||
		window.removeEventListener('resize', () => {
 | 
			
		||||
			this.tableH = this.tableHeight(260)
 | 
			
		||||
		});
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
		checkSelectable(row, index) {
 | 
			
		||||
			return true;
 | 
			
		||||
 
 | 
			
		||||
@@ -139,7 +139,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				maintainPlanId: null,
 | 
			
		||||
				startTime: null,
 | 
			
		||||
				special: false,
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -65,6 +66,7 @@ import addRecord from './addRecord.vue';
 | 
			
		||||
import AddContent from './addContent.vue';
 | 
			
		||||
import { exportCheckOrderExcel, deleteEqCheckLog } from '@/api/equipment/base/inspection/record'
 | 
			
		||||
import { parseTime } from '../../../../core/mixins/code-filter';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
// const timeFilter = (val) => moment(val).format('yyyy-MM-DD HH:mm:ss');
 | 
			
		||||
 | 
			
		||||
@@ -91,7 +93,7 @@ const btn = {
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentInspectionRecord',
 | 
			
		||||
	components: { addRecord, AddContent },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			addOrUpdateVisible: false,
 | 
			
		||||
@@ -250,7 +252,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				special: false,
 | 
			
		||||
				name: null,
 | 
			
		||||
				actualCheckTime: null,
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -53,13 +54,14 @@ import addOrUpdata from './add-or-updata.vue';
 | 
			
		||||
import add from './add.vue';
 | 
			
		||||
import { parseTime } from '../../../../core/mixins/code-filter';
 | 
			
		||||
import { groupClassesListAll } from '@/api/monitoring/teamProduction';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
// import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
// const timeFilter = (val) => moment(val).format('yyyy-MM-DD HH:mm:ss');
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentCheckSetting',
 | 
			
		||||
	components: { addOrUpdata, add },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			addOrUpdateVisible: false,
 | 
			
		||||
@@ -102,7 +104,7 @@ export default {
 | 
			
		||||
				{
 | 
			
		||||
					prop: 'code',
 | 
			
		||||
					label: '巡检单编码',
 | 
			
		||||
					minWidth: 150,
 | 
			
		||||
					minWidth: 170,
 | 
			
		||||
					showOverflowtooltip: true,
 | 
			
		||||
				},
 | 
			
		||||
				{ prop: 'department', label: '部门', showOverflowtooltip: true },
 | 
			
		||||
@@ -225,7 +227,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				equipmentId: null,
 | 
			
		||||
				name: null,
 | 
			
		||||
				special: false,
 | 
			
		||||
 
 | 
			
		||||
@@ -7,12 +7,13 @@
 | 
			
		||||
 | 
			
		||||
<template>
 | 
			
		||||
	<el-drawer
 | 
			
		||||
		:visible="visible"
 | 
			
		||||
		:visible.sync="visible"
 | 
			
		||||
		:show-close="false"
 | 
			
		||||
		:wrapper-closable="false"
 | 
			
		||||
		:wrapper-closable="true"
 | 
			
		||||
		class="drawer"
 | 
			
		||||
		custom-class="mes-drawer"
 | 
			
		||||
		size="60%"
 | 
			
		||||
		:before-close="beforeClose"
 | 
			
		||||
		@closed="$emit('destroy')">
 | 
			
		||||
		<SmallTitle slot="title">编辑</SmallTitle>
 | 
			
		||||
 | 
			
		||||
@@ -344,6 +345,7 @@ export default {
 | 
			
		||||
						label: '设备名称',
 | 
			
		||||
						prop: 'equipmentId',
 | 
			
		||||
						url: '/base/core-equipment/page?pageNo=1&pageSize=100&special=false',
 | 
			
		||||
						bind: { clearable: true, filterable: true },
 | 
			
		||||
						// method: 'post',
 | 
			
		||||
						// queryParams: {
 | 
			
		||||
						// 	pageNo: 1,
 | 
			
		||||
@@ -443,6 +445,15 @@ export default {
 | 
			
		||||
		this.getList('line');
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
		beforeClose(done) {
 | 
			
		||||
			// if (!this.isdetail) {
 | 
			
		||||
			this.$confirm('确认关闭?')
 | 
			
		||||
				.then(_ => {
 | 
			
		||||
					done();
 | 
			
		||||
				})
 | 
			
		||||
				.catch(_ => {});
 | 
			
		||||
			// }
 | 
			
		||||
		},
 | 
			
		||||
		handleSearchBarBtnClick(btn) {
 | 
			
		||||
			switch (btn.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
 
 | 
			
		||||
@@ -15,6 +15,7 @@
 | 
			
		||||
			background: '#f2f4f9',
 | 
			
		||||
			color: '#606266',
 | 
			
		||||
		}"
 | 
			
		||||
		:max-height="tableH"
 | 
			
		||||
		class="waiting-list-table">
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			type="selection"
 | 
			
		||||
@@ -36,8 +37,9 @@
 | 
			
		||||
		</el-table-column>
 | 
			
		||||
		<el-table-column
 | 
			
		||||
			v-if="selectedBox[0]"
 | 
			
		||||
			width="128"
 | 
			
		||||
			width="160"
 | 
			
		||||
			label="设备保养单号"
 | 
			
		||||
			:show-overflow-tooltip="true"
 | 
			
		||||
			prop="maintainOrderNumber"></el-table-column>
 | 
			
		||||
		<el-table-column v-if="selectedBox[1]" width="128" label="保养计划名称" prop="planName">
 | 
			
		||||
			<template slot-scope="scope">
 | 
			
		||||
@@ -224,6 +226,7 @@ export default {
 | 
			
		||||
				true,
 | 
			
		||||
			],
 | 
			
		||||
			selectedPlan: [],
 | 
			
		||||
			tableH: this.tableHeight(260),
 | 
			
		||||
		};
 | 
			
		||||
	},
 | 
			
		||||
	computed: {
 | 
			
		||||
@@ -234,6 +237,16 @@ export default {
 | 
			
		||||
			}));
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
	created() {
 | 
			
		||||
		window.addEventListener('resize', () => {
 | 
			
		||||
      this.tableH = this.tableHeight(260)
 | 
			
		||||
    })
 | 
			
		||||
	},
 | 
			
		||||
	destroyed() {
 | 
			
		||||
		window.removeEventListener('resize', () => {
 | 
			
		||||
			this.tableH = this.tableHeight(260)
 | 
			
		||||
		});
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
		checkSelectable(row, index) {
 | 
			
		||||
			return (
 | 
			
		||||
 
 | 
			
		||||
@@ -335,6 +335,7 @@ export default {
 | 
			
		||||
						label: '设备名称',
 | 
			
		||||
						prop: 'equipmentId',
 | 
			
		||||
						url: '/base/core-equipment/page?pageNo=1&pageSize=100&special=false',
 | 
			
		||||
						bind: { clearable: true, filterable: true },
 | 
			
		||||
						// method: 'post',
 | 
			
		||||
						// queryParams: {
 | 
			
		||||
						// 	pageNo: 1,
 | 
			
		||||
 
 | 
			
		||||
@@ -197,7 +197,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				maintainPlanId: null,
 | 
			
		||||
				startTime: null,
 | 
			
		||||
				special: false,
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<!-- <method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -59,6 +60,7 @@ import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
import { exportMaintainMonitorExcel } from '@/api/equipment/base/maintain/record'
 | 
			
		||||
import { parseTime } from '@/utils/ruoyi'
 | 
			
		||||
import AddContent from '../PlanConfig/addContent.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const remainBox = {
 | 
			
		||||
	name: 'RemainBox',
 | 
			
		||||
@@ -116,7 +118,7 @@ const btn = {
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'Monitor',
 | 
			
		||||
	components: { AddContent },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			addContent: false,
 | 
			
		||||
@@ -129,7 +131,7 @@ export default {
 | 
			
		||||
				// 	width: 180,
 | 
			
		||||
				// 	filter: parseTime(createTime),
 | 
			
		||||
				// },
 | 
			
		||||
				{ prop: 'code', label: '保养计划单号', minWidth: 118, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'code', label: '保养计划单号', width: 150, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'name', label: '保养计划名称', minWidth: 118, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'departmentName', label: '部门', minWidth: 100, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'lineName', label: '产线名', minWidth: 100, showOverflowtooltip: true },
 | 
			
		||||
@@ -205,7 +207,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				special: false,
 | 
			
		||||
				equipmentName: null,
 | 
			
		||||
				createTime: null,
 | 
			
		||||
 
 | 
			
		||||
@@ -9,11 +9,12 @@
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			:table-data="tableData"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				:width="150"
 | 
			
		||||
				:width="120"
 | 
			
		||||
				label="操作"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleClick" />
 | 
			
		||||
@@ -53,6 +54,7 @@ import { parseTime, toDay } from '../../../../core/mixins/code-filter';
 | 
			
		||||
import { publicFormatter } from '@/utils/dict';
 | 
			
		||||
import { getPlanPage } from '@/api/equipment/base/maintain/planconfig';
 | 
			
		||||
import { deleteEqMaintainPlan } from '@/api/equipment/base/maintain/record';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	// {
 | 
			
		||||
@@ -62,46 +64,64 @@ const tableProps = [
 | 
			
		||||
	// },
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'name',
 | 
			
		||||
		label: '保养计划名称'
 | 
			
		||||
		label: '保养计划名称',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'departmentName',
 | 
			
		||||
		label: '部门'
 | 
			
		||||
		label: '部门',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
  {
 | 
			
		||||
		prop: 'lineName',
 | 
			
		||||
		label: '产线名'
 | 
			
		||||
		label: '产线名',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
  {
 | 
			
		||||
		prop: 'maintenancePeriod',
 | 
			
		||||
		label: '保养频率(天/次)'
 | 
			
		||||
		label: '保养频率(天/次)',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
  {
 | 
			
		||||
		prop: 'firstMaintenanceTime',
 | 
			
		||||
		label: '首次保养时间',
 | 
			
		||||
		filter: parseTime
 | 
			
		||||
		filter: parseTime,
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
  {
 | 
			
		||||
		prop: 'maintainDuration',
 | 
			
		||||
		label: '保养时长'
 | 
			
		||||
		label: '保养时长',
 | 
			
		||||
		width: 120,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
  {
 | 
			
		||||
		prop: 'maintainer',
 | 
			
		||||
		label: '计划保养人员'
 | 
			
		||||
		label: '计划保养人员',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
  {
 | 
			
		||||
		prop: 'confirmTimeLimit',
 | 
			
		||||
		label: '确认时限',
 | 
			
		||||
		filter: toDay
 | 
			
		||||
		filter: toDay,
 | 
			
		||||
		width: 130,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'remark',
 | 
			
		||||
		label: '备注'
 | 
			
		||||
		label: '备注',
 | 
			
		||||
		width: 150,
 | 
			
		||||
		showOverflowtooltip: true
 | 
			
		||||
	}
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
	mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -111,7 +131,7 @@ export default {
 | 
			
		||||
			tableProps,
 | 
			
		||||
			addContent: false,
 | 
			
		||||
			listQuery: {
 | 
			
		||||
        pageSize: 10,
 | 
			
		||||
        pageSize: 20,
 | 
			
		||||
        pageNo: 1,
 | 
			
		||||
        total: 0,
 | 
			
		||||
				special: false,
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -65,6 +66,7 @@ import Editor from '@/components/Editor';
 | 
			
		||||
import { deleteEqMaintainLog, exportMaintainLogExcel } from '@/api/equipment/base/maintain/record';
 | 
			
		||||
import AddContent from './addContent.vue';
 | 
			
		||||
import { parseTime } from '../../../../core/mixins/code-filter';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
// const timeFilter = (val) => moment(val).format('yyyy-MM-DD HH:mm:ss');
 | 
			
		||||
 | 
			
		||||
@@ -91,7 +93,7 @@ const btn = {
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentMaintainRecord',
 | 
			
		||||
	components: { AddContent },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			addContent: false,
 | 
			
		||||
@@ -337,7 +339,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				special: false,
 | 
			
		||||
				maintainPlanId: null,
 | 
			
		||||
				maintainPlanId: null,
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,8 @@
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			@emitFun="handleEmitFun"
 | 
			
		||||
			:max-height="tableH">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
@@ -58,12 +59,13 @@ import { deleteRepair, exportRepairLogExcel } from '@/api/equipment/base/repair'
 | 
			
		||||
import { parseTime } from '@/utils/ruoyi'
 | 
			
		||||
import htmls from './htmls.vue'
 | 
			
		||||
import DialogForm from './Repair--add.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
// const timeFilter = (val) => moment(val).format('yyyy-MM-DD HH:mm:ss');
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentRepair',
 | 
			
		||||
	components: { CustomDialogForm, DialogForm },
 | 
			
		||||
	mixins: [basicPageMixin],
 | 
			
		||||
	mixins: [basicPageMixin, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			addOrUpdateVisible: false,
 | 
			
		||||
@@ -102,16 +104,16 @@ export default {
 | 
			
		||||
				// 	width: 180,
 | 
			
		||||
				// 	filter: parseTime,
 | 
			
		||||
				// },
 | 
			
		||||
				{ prop: 'repairOrderNumber', label: '维修单号' },
 | 
			
		||||
				{ prop: 'lineName', label: '产线名' },
 | 
			
		||||
				{ prop: 'sectionName', label: '工段名' },
 | 
			
		||||
				{ prop: 'repairOrderNumber', label: '维修单号', width: 180, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'lineName', label: '产线名', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'sectionName', label: '工段名', width: 120, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'equipmentName', label: '设备名称', minWidth: 100, showOverflowtooltip: true },
 | 
			
		||||
				{ prop: 'faultDetail', label: '故障明细', subcomponent: htmls },
 | 
			
		||||
				{ prop: 'faultDetail', label: '故障明细', subcomponent: htmls, width: 180, showOverflowtooltip: true },
 | 
			
		||||
				// { prop: 'maintenanceDetail', label: '维修明细', subcomponent: htmls, minWidth: 100, showOverflowtooltip: true },
 | 
			
		||||
				{
 | 
			
		||||
					prop: 'maintenanceStartTime',
 | 
			
		||||
					label: '维修开始时间',
 | 
			
		||||
					width: 150, 
 | 
			
		||||
					width: 150,
 | 
			
		||||
					filter: parseTime,
 | 
			
		||||
				},
 | 
			
		||||
				{
 | 
			
		||||
@@ -193,7 +195,7 @@ export default {
 | 
			
		||||
			// 查询参数
 | 
			
		||||
			queryParams: {
 | 
			
		||||
				pageNo: 1,
 | 
			
		||||
				pageSize: 10,
 | 
			
		||||
				pageSize: 20,
 | 
			
		||||
				special: false,
 | 
			
		||||
				maintenanceResult: null,
 | 
			
		||||
				createTime: null,
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
    <base-table :max-height="tableH" v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
      :limit="listQuery.pageSize" :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
@@ -16,7 +16,7 @@
 | 
			
		||||
<script>
 | 
			
		||||
import AddOrUpdate from './add-or-updata';
 | 
			
		||||
// import DetailOrUpdate from './detail-or-updata';
 | 
			
		||||
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import basicPage from '../../core/mixins/basic-page';
 | 
			
		||||
import StatusBtn from './statusBtn.vue'
 | 
			
		||||
import {
 | 
			
		||||
@@ -54,7 +54,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
    <base-table :max-height="tableH" v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
      :limit="listQuery.pageSize" :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
@@ -16,7 +16,7 @@
 | 
			
		||||
<script>
 | 
			
		||||
import AddOrUpdate from './add-or-updata';
 | 
			
		||||
// import DetailOrUpdate from './detail-or-updata';
 | 
			
		||||
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import basicPage from '../../core/mixins/basic-page';
 | 
			
		||||
import StatusBtn from './statusBtn.vue'
 | 
			
		||||
import {
 | 
			
		||||
@@ -54,7 +54,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
 
 | 
			
		||||
@@ -88,7 +88,8 @@
 | 
			
		||||
									:page="1"
 | 
			
		||||
									:limit="999"
 | 
			
		||||
									:table-data="list"
 | 
			
		||||
									@emitFun="handleEmitFun">
 | 
			
		||||
									@emitFun="handleEmitFun"
 | 
			
		||||
									:max-height="tableH">
 | 
			
		||||
									<!-- <method-btn
 | 
			
		||||
							v-if="tableBtn.length"
 | 
			
		||||
						slot="handleBtn"
 | 
			
		||||
@@ -119,9 +120,11 @@
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import Graph from './graph.vue';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	name: 'EquipmentProcessAmount',
 | 
			
		||||
	mixins: [tableHeightMixin],
 | 
			
		||||
	components: { Graph },
 | 
			
		||||
	props: {},
 | 
			
		||||
	data() {
 | 
			
		||||
 
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
      <SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="handleSearchBarBtnClick" />
 | 
			
		||||
 | 
			
		||||
      <!-- 列表 -->
 | 
			
		||||
      <base-table :table-props="tableProps" :page="1" :limit="10" :table-data="list">
 | 
			
		||||
      <base-table :max-height="tableH" :table-props="tableProps" :page="1" :limit="20" :table-data="list">
 | 
			
		||||
      </base-table>
 | 
			
		||||
    </el-row>
 | 
			
		||||
 | 
			
		||||
@@ -85,6 +85,7 @@ import {
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
// import DialogForm from './dialogForm.vue';
 | 
			
		||||
import * as echarts from 'echarts';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
 | 
			
		||||
// import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
export default {
 | 
			
		||||
@@ -92,7 +93,7 @@ export default {
 | 
			
		||||
	// components: {
 | 
			
		||||
	// 	DialogForm,
 | 
			
		||||
	// },
 | 
			
		||||
	// mixins: [basicPageMixin],
 | 
			
		||||
  mixins: [tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
    return {
 | 
			
		||||
      list: [],
 | 
			
		||||
 
 | 
			
		||||
@@ -1,40 +1,18 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<div class="app-container">
 | 
			
		||||
		<search-bar
 | 
			
		||||
			:formConfigs="formConfig"
 | 
			
		||||
			ref="searchBarForm"
 | 
			
		||||
			@headBtnClick="buttonClick" />
 | 
			
		||||
		<base-table
 | 
			
		||||
			v-loading="dataListLoading"
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				:width="120"
 | 
			
		||||
				label="操作"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleClick" />
 | 
			
		||||
		</base-table>
 | 
			
		||||
		<pagination
 | 
			
		||||
			:limit.sync="listQuery.pageSize"
 | 
			
		||||
			:page.sync="listQuery.pageNo"
 | 
			
		||||
			:total="listQuery.total"
 | 
			
		||||
			@pagination="getDataList" />
 | 
			
		||||
		<base-dialog
 | 
			
		||||
			:dialogTitle="addOrEditTitle"
 | 
			
		||||
			:dialogVisible="addOrUpdateVisible"
 | 
			
		||||
			@cancel="handleCancel"
 | 
			
		||||
			@confirm="handleConfirm"
 | 
			
		||||
			:before-close="handleCancel"
 | 
			
		||||
			width="40%">
 | 
			
		||||
			<add-or-update
 | 
			
		||||
				ref="addOrUpdate"
 | 
			
		||||
				@refreshDataList="successSubmit"></add-or-update>
 | 
			
		||||
		</base-dialog>
 | 
			
		||||
	</div>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table  :max-height="tableH" v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
      :limit="listQuery.pageSize" :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <pagination :limit.sync="listQuery.pageSize" :page.sync="listQuery.pageNo" :total="listQuery.total"
 | 
			
		||||
      @pagination="getDataList" />
 | 
			
		||||
    <base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
 | 
			
		||||
      @confirm="handleConfirm" :before-close="handleCancel" width="40%">
 | 
			
		||||
      <add-or-update ref="addOrUpdate" @refreshDataList="successSubmit"></add-or-update>
 | 
			
		||||
    </base-dialog>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
@@ -46,6 +24,7 @@ import {
 | 
			
		||||
  deleteQualityScrapDet,
 | 
			
		||||
} from '@/api/base/qualityScrapDet';
 | 
			
		||||
import { getList, } from "@/api/base/qualityScrapType";
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
const tableProps = [
 | 
			
		||||
	{
 | 
			
		||||
		prop: 'createTime',
 | 
			
		||||
@@ -71,7 +50,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -177,7 +156,7 @@ export default {
 | 
			
		||||
			switch (val.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
					this.listQuery.pageNo = 1;
 | 
			
		||||
					this.listQuery.pageSize = 10;
 | 
			
		||||
					this.listQuery.pageSize = 20;
 | 
			
		||||
          this.listQuery.content = val.content ? val.content : undefined;
 | 
			
		||||
          this.listQuery.typeId = val.typeId ? val.typeId : undefined;
 | 
			
		||||
					this.getDataList();
 | 
			
		||||
@@ -185,7 +164,7 @@ export default {
 | 
			
		||||
				case 'reset':
 | 
			
		||||
					this.$refs.searchBarForm.resetForm();
 | 
			
		||||
					this.listQuery = {
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						total: 1,
 | 
			
		||||
					};
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
    <base-table :max-height="tableH" v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
      :limit="listQuery.pageSize" :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
@@ -19,7 +19,7 @@
 | 
			
		||||
<script>
 | 
			
		||||
import AddOrUpdate from './add-or-updata';
 | 
			
		||||
import DetailOrUpdate from './detail-or-updata';
 | 
			
		||||
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import basicPage from './basic-page';
 | 
			
		||||
import { parseTime } from '../../../core/mixins/code-filter';
 | 
			
		||||
import {
 | 
			
		||||
@@ -68,7 +68,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -214,7 +214,7 @@ export default {
 | 
			
		||||
			switch (val.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
					this.listQuery.pageNo = 1;
 | 
			
		||||
					this.listQuery.pageSize = 10;
 | 
			
		||||
					this.listQuery.pageSize = 20;
 | 
			
		||||
          this.listQuery.workOrderId = val.workOrderId ? val.workOrderId : undefined;
 | 
			
		||||
          // this.listQuery.teamId = val.teamId ? val.teamId : undefined;
 | 
			
		||||
					this.getDataList();
 | 
			
		||||
@@ -222,7 +222,7 @@ export default {
 | 
			
		||||
				case 'reset':
 | 
			
		||||
					this.$refs.searchBarForm.resetForm();
 | 
			
		||||
					this.listQuery = {
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						total: 1,
 | 
			
		||||
					};
 | 
			
		||||
 
 | 
			
		||||
@@ -1,46 +1,25 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<div class="app-container">
 | 
			
		||||
		<search-bar
 | 
			
		||||
			:formConfigs="formConfig"
 | 
			
		||||
			ref="searchBarForm"
 | 
			
		||||
			@headBtnClick="buttonClick" />
 | 
			
		||||
		<base-table
 | 
			
		||||
			v-loading="dataListLoading"
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="listQuery.pageNo"
 | 
			
		||||
			:limit="listQuery.pageSize"
 | 
			
		||||
			:table-data="tableData">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				:width="120"
 | 
			
		||||
				label="操作"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleClick" />
 | 
			
		||||
		</base-table>
 | 
			
		||||
		<pagination
 | 
			
		||||
			:limit.sync="listQuery.pageSize"
 | 
			
		||||
			:page.sync="listQuery.pageNo"
 | 
			
		||||
			:total="listQuery.total"
 | 
			
		||||
			@pagination="getDataList" />
 | 
			
		||||
		<base-dialog
 | 
			
		||||
			:dialogTitle="addOrEditTitle"
 | 
			
		||||
			:dialogVisible="addOrUpdateVisible"
 | 
			
		||||
			@cancel="handleCancel"
 | 
			
		||||
			@confirm="handleConfirm"
 | 
			
		||||
			:before-close="handleCancel"
 | 
			
		||||
			width="40%">
 | 
			
		||||
			<add-or-update
 | 
			
		||||
				ref="addOrUpdate"
 | 
			
		||||
				@refreshDataList="successSubmit"></add-or-update>
 | 
			
		||||
		</base-dialog>
 | 
			
		||||
	</div>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table :max-height="tableH" v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
 | 
			
		||||
      :limit="listQuery.pageSize" :table-data="tableData">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" />
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <pagination :limit.sync="listQuery.pageSize" :page.sync="listQuery.pageNo" :total="listQuery.total"
 | 
			
		||||
      @pagination="getDataList" />
 | 
			
		||||
    <base-dialog :dialogTitle="addOrEditTitle" :dialogVisible="addOrUpdateVisible" @cancel="handleCancel"
 | 
			
		||||
      @confirm="handleConfirm" :before-close="handleCancel" width="40%">
 | 
			
		||||
      <add-or-update ref="addOrUpdate" @refreshDataList="successSubmit"></add-or-update>
 | 
			
		||||
    </base-dialog>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import AddOrUpdate from './add-or-updata';
 | 
			
		||||
import basicPage from '../../../core/mixins/basic-page';
 | 
			
		||||
import { parseTime } from '../../../core/mixins/code-filter';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
import {
 | 
			
		||||
  getQualityScrapTypePage,
 | 
			
		||||
  deleteQualityScrapType
 | 
			
		||||
@@ -71,7 +50,7 @@ const tableProps = [
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
	mixins: [basicPage],
 | 
			
		||||
  mixins: [basicPage, tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
		return {
 | 
			
		||||
			urlOptions: {
 | 
			
		||||
@@ -159,14 +138,14 @@ export default {
 | 
			
		||||
			switch (val.btnName) {
 | 
			
		||||
				case 'search':
 | 
			
		||||
					this.listQuery.pageNo = 1;
 | 
			
		||||
					this.listQuery.pageSize = 10;
 | 
			
		||||
					this.listQuery.pageSize = 20;
 | 
			
		||||
					this.listQuery.name = val.name ? val.name : undefined;
 | 
			
		||||
					this.getDataList();
 | 
			
		||||
					break;
 | 
			
		||||
				case 'reset':
 | 
			
		||||
					this.$refs.searchBarForm.resetForm();
 | 
			
		||||
					this.listQuery = {
 | 
			
		||||
						pageSize: 10,
 | 
			
		||||
						pageSize: 20,
 | 
			
		||||
						pageNo: 1,
 | 
			
		||||
						total: 1,
 | 
			
		||||
					};
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,8 @@
 | 
			
		||||
          <el-tab-pane :label="'\u2002表格数据\u2002'" name="table">
 | 
			
		||||
            <!-- 列表 -->
 | 
			
		||||
            <div class="blue-title">产品名:{{ productDetail.name }} 产品规格:{{ productDetail.specifications }}</div>
 | 
			
		||||
            <base-table class="base-table__margin" :table-props="productProps" :page="1" :limit="10" :table-data="list">
 | 
			
		||||
            <base-table :max-height="tableH" class="base-table__margin" :table-props="productProps" :page="1"
 | 
			
		||||
              :limit="10" :table-data="list">
 | 
			
		||||
            </base-table>
 | 
			
		||||
            <div v-for="(item,index) in downProps" :key="index">
 | 
			
		||||
              <div class="blue-title">工单名称:{{ list[index].workOrderName }}</div>
 | 
			
		||||
@@ -51,6 +52,7 @@ import {
 | 
			
		||||
  getProductList,
 | 
			
		||||
  getWorkOrderList
 | 
			
		||||
} from '@/api/monitoring/statisticalData';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
// import Editor from '@/components/Editor';
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
// import DialogForm from './dialogForm.vue';
 | 
			
		||||
@@ -61,7 +63,7 @@ export default {
 | 
			
		||||
	// components: {
 | 
			
		||||
	// 	DialogForm,
 | 
			
		||||
	// },
 | 
			
		||||
	// mixins: [basicPageMixin],
 | 
			
		||||
  mixins: [tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
    return {
 | 
			
		||||
      list: [],
 | 
			
		||||
 
 | 
			
		||||
@@ -1,47 +1,26 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<div class="app-container">
 | 
			
		||||
		<!-- 搜索工作栏 -->
 | 
			
		||||
		<SearchBar
 | 
			
		||||
			:formConfigs="searchBarFormConfig"
 | 
			
		||||
			ref="search-bar"
 | 
			
		||||
			@headBtnClick="handleSearchBarBtnClick" />
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <!-- 搜索工作栏 -->
 | 
			
		||||
    <SearchBar :isFold="true" :formConfigs="searchBarFormConfig" ref="search-bar"
 | 
			
		||||
      @headBtnClick="handleSearchBarBtnClick" />
 | 
			
		||||
 | 
			
		||||
		<!-- 列表 -->
 | 
			
		||||
		<base-table
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="queryParams.pageNo"
 | 
			
		||||
			:limit="queryParams.pageSize"
 | 
			
		||||
			:table-data="list"
 | 
			
		||||
			@emitFun="handleEmitFun">
 | 
			
		||||
			<method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				label="操作"
 | 
			
		||||
				:width="120"
 | 
			
		||||
				fixed="right"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleTableBtnClick" />
 | 
			
		||||
		</base-table>
 | 
			
		||||
    <!-- 列表 -->
 | 
			
		||||
    <base-table :table-props="tableProps" :page="queryParams.pageNo" :limit="queryParams.pageSize" :table-data="list"
 | 
			
		||||
      @emitFun="handleEmitFun">
 | 
			
		||||
      <method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleTableBtnClick" />
 | 
			
		||||
    </base-table>
 | 
			
		||||
 | 
			
		||||
		<!-- 分页组件 -->
 | 
			
		||||
		<pagination
 | 
			
		||||
			v-show="total > 0"
 | 
			
		||||
			:total="total"
 | 
			
		||||
			:page.sync="queryParams.pageNo"
 | 
			
		||||
			:limit.sync="queryParams.pageSize"
 | 
			
		||||
			@pagination="getList" />
 | 
			
		||||
    <!-- 分页组件 -->
 | 
			
		||||
    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
 | 
			
		||||
      @pagination="getList" />
 | 
			
		||||
 | 
			
		||||
		<!-- 对话框(添加 / 修改) -->
 | 
			
		||||
		<base-dialog
 | 
			
		||||
			:dialogTitle="title"
 | 
			
		||||
			:dialogVisible="open"
 | 
			
		||||
			width="50%"
 | 
			
		||||
			@close="cancel"
 | 
			
		||||
			@cancel="cancel"
 | 
			
		||||
			@confirm="submitForm">
 | 
			
		||||
			<DialogForm v-if="open" ref="form" v-model="form" />
 | 
			
		||||
		</base-dialog>
 | 
			
		||||
	</div>
 | 
			
		||||
    <!-- 对话框(添加 / 修改) -->
 | 
			
		||||
    <base-dialog :dialogTitle="title" :dialogVisible="open" width="50%" @close="cancel" @cancel="cancel"
 | 
			
		||||
      @confirm="submitForm">
 | 
			
		||||
      <DialogForm v-if="open" ref="form" v-model="form" />
 | 
			
		||||
    </base-dialog>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,18 +1,12 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<div class="app-container">
 | 
			
		||||
		<!-- 搜索工作栏 -->
 | 
			
		||||
		<SearchBar
 | 
			
		||||
			:formConfigs="searchBarFormConfig"
 | 
			
		||||
			ref="search-bar"
 | 
			
		||||
			@headBtnClick="handleSearchBarBtnClick" />
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <!-- 搜索工作栏 -->
 | 
			
		||||
    <SearchBar  :formConfigs="searchBarFormConfig" ref="search-bar"
 | 
			
		||||
      @headBtnClick="handleSearchBarBtnClick" />
 | 
			
		||||
 | 
			
		||||
		<!-- 列表 -->
 | 
			
		||||
		<base-table
 | 
			
		||||
			:table-props="tableProps"
 | 
			
		||||
			:page="1"
 | 
			
		||||
			:limit="10"
 | 
			
		||||
			:table-data="list">
 | 
			
		||||
			<!-- <method-btn
 | 
			
		||||
    <!-- 列表 -->
 | 
			
		||||
    <base-table :max-height="tableH" :table-props="tableProps" :page="1" :limit="10" :table-data="list">
 | 
			
		||||
      <!-- <method-btn
 | 
			
		||||
				v-if="tableBtn.length"
 | 
			
		||||
				slot="handleBtn"
 | 
			
		||||
				label="操作"
 | 
			
		||||
@@ -20,18 +14,18 @@
 | 
			
		||||
				fixed="right"
 | 
			
		||||
				:method-list="tableBtn"
 | 
			
		||||
				@clickBtn="handleTableBtnClick" /> -->
 | 
			
		||||
		</base-table>
 | 
			
		||||
    </base-table>
 | 
			
		||||
 | 
			
		||||
		<!-- 分页组件 -->
 | 
			
		||||
		<!-- <pagination
 | 
			
		||||
    <!-- 分页组件 -->
 | 
			
		||||
    <!-- <pagination
 | 
			
		||||
			v-show="total > 0"
 | 
			
		||||
			:total="total"
 | 
			
		||||
			:page.sync="queryParams.pageNo"
 | 
			
		||||
			:limit.sync="queryParams.pageSize"
 | 
			
		||||
			@pagination="getList" /> -->
 | 
			
		||||
 | 
			
		||||
		<!-- 对话框(添加 / 修改) -->
 | 
			
		||||
		<!-- <base-dialog
 | 
			
		||||
    <!-- 对话框(添加 / 修改) -->
 | 
			
		||||
    <!-- <base-dialog
 | 
			
		||||
			:dialogTitle="title"
 | 
			
		||||
			:dialogVisible="open"
 | 
			
		||||
			width="50%"
 | 
			
		||||
@@ -40,7 +34,7 @@
 | 
			
		||||
			@confirm="submitForm">
 | 
			
		||||
			<DialogForm v-if="open" ref="form" v-model="form" />
 | 
			
		||||
		</base-dialog> -->
 | 
			
		||||
	</div>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
@@ -51,6 +45,7 @@ import {
 | 
			
		||||
} from '@/api/monitoring/statisticalData';
 | 
			
		||||
// import Editor from '@/components/Editor';
 | 
			
		||||
import moment from 'moment';
 | 
			
		||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
 | 
			
		||||
// import DialogForm from './dialogForm.vue';
 | 
			
		||||
 | 
			
		||||
// import basicPageMixin from '@/mixins/lb/basicPageMixin';
 | 
			
		||||
@@ -59,7 +54,7 @@ export default {
 | 
			
		||||
	// components: {
 | 
			
		||||
	// 	DialogForm,
 | 
			
		||||
	// },
 | 
			
		||||
	// mixins: [basicPageMixin],
 | 
			
		||||
  mixins: [tableHeightMixin],
 | 
			
		||||
	data() {
 | 
			
		||||
    return {
 | 
			
		||||
      list: [],
 | 
			
		||||
@@ -111,7 +106,13 @@ export default {
 | 
			
		||||
					btnName: '查询',
 | 
			
		||||
					name: 'search',
 | 
			
		||||
					color: 'primary',
 | 
			
		||||
				},
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          type: 'button',
 | 
			
		||||
          btnName: '返回',
 | 
			
		||||
          name: 'back',
 | 
			
		||||
          color: 'primary',
 | 
			
		||||
        },
 | 
			
		||||
				// {
 | 
			
		||||
				// 	type: this.$auth.hasPermi(
 | 
			
		||||
				// 		'base:quality-inspection-record:create'
 | 
			
		||||
@@ -373,8 +374,9 @@ export default {
 | 
			
		||||
        this.queryParams.productionId = val.productionId ? val.productionId : undefined
 | 
			
		||||
        this.queryParams.startTime = val.checkTime ? val.checkTime[0] : undefined
 | 
			
		||||
        this.queryParams.endTime = val.checkTime ? val.checkTime[1] : undefined
 | 
			
		||||
 | 
			
		||||
        this.getList()
 | 
			
		||||
      } else if (val.btnName === 'back') {
 | 
			
		||||
        this.$router.go(-1)
 | 
			
		||||
      }
 | 
			
		||||
    //  console.log(val);
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user