Compare commits
No commits in common. "78f6165cfcde46644c01402fc702a95285c89f89" and "984cf2e7d5243441ed590f641a73c211bb6e04e1" have entirely different histories.
78f6165cfc
...
984cf2e7d5
Binary file not shown.
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 125 KiB |
Binary file not shown.
Before Width: | Height: | Size: 141 KiB After Width: | Height: | Size: 140 KiB |
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-07-19 15:18:30
|
* @Date: 2021-07-19 15:18:30
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 16:49:00
|
* @LastEditTime: 2024-03-28 15:28:07
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -16,11 +16,11 @@
|
|||||||
许昌安彩AGV原片周转看板
|
许昌安彩AGV原片周转看板
|
||||||
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
||||||
<h3 class="time">{{ times }}</h3>
|
<h3 class="time">{{ times }}</h3>
|
||||||
<!-- <el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px', fontSize: '32px' }"
|
<el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px', fontSize: '32px' }"
|
||||||
@click="changeFullScreen">
|
@click="changeFullScreen">
|
||||||
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
||||||
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
||||||
</el-button> -->
|
</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="container-main flex-col" type="flex">
|
<el-row class="container-main flex-col" type="flex">
|
||||||
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15 * beilv" type="flex" class="flex-1">
|
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15 * beilv" type="flex" class="flex-1">
|
||||||
@ -35,15 +35,13 @@
|
|||||||
<base-container :beilv="1" :size="'eqStatus'" :title="'周转进度'" :title-icon="'order'" :back="'energy'">
|
<base-container :beilv="1" :size="'eqStatus'" :title="'周转进度'" :title-icon="'order'" :back="'energy'">
|
||||||
<div class="order" style="width:100%; overflow: hidden scroll;height: 350px;">
|
<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: 1em">
|
||||||
<!-- <p v-if="op.outRate === 1" class="now-secondary-title"
|
<p v-if="op.outRate === 1" class="now-secondary-title" style="color:#4679FD">
|
||||||
style="font-size: 14px; opacity: calc(.6);color:#4679FD">
|
|
||||||
<i class="el-icon-check" />
|
<i class="el-icon-check" />
|
||||||
{{ op.name }}
|
{{ op.name }}
|
||||||
</p> -->
|
</p>
|
||||||
<!-- <p class="now-secondary-title">{{ op.name }}</p> -->
|
<p v-else class="now-secondary-title">{{ op.name }}</p>
|
||||||
<p class="now-secondary-title" style="font-size: 14px;opacity: calc(.6);">{{ op.name }}</p>
|
<el-progress :stroke-width="10" define-back-color="rgba(32, 57, 96, 1)" text-color="white"
|
||||||
<el-progress style="width: 910px;" text-color="rgba(255, 255, 255, .6)" :stroke-width="10"
|
:percentage="op.outRate * 100" class="custom-progress-bar" />
|
||||||
define-back-color="rgba(32, 57, 96, 1)" :percentage="op.outRate * 100" class="custom-progress-bar" />
|
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
</base-container>
|
</base-container>
|
||||||
@ -498,7 +496,7 @@ export default {
|
|||||||
seconds = "0" + seconds;
|
seconds = "0" + seconds;
|
||||||
}
|
}
|
||||||
//拼接格式化当前时间
|
//拼接格式化当前时间
|
||||||
this.times = year + "." + month + "." + day + " " + hours + ":" + minutes + ":" + seconds;
|
this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
|
||||||
},
|
},
|
||||||
windowWidth(value) {
|
windowWidth(value) {
|
||||||
this.clientWidth = value
|
this.clientWidth = value
|
||||||
@ -532,6 +530,11 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.visual-container {
|
.visual-container {
|
||||||
width: 1920px;
|
width: 1920px;
|
||||||
height: 1080px;
|
height: 1080px;
|
||||||
@ -553,7 +556,7 @@ export default {
|
|||||||
top: 25px;
|
top: 25px;
|
||||||
color: rgba(255, 255, 255, 0.80);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: 1px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.time {
|
.time {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@ -561,7 +564,7 @@ export default {
|
|||||||
top: 25px;
|
top: 25px;
|
||||||
color: rgba(255, 255, 255, 0.80);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: .72px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.title-button {
|
.title-button {
|
||||||
color: #00fff0;
|
color: #00fff0;
|
||||||
@ -604,12 +607,6 @@ export default {
|
|||||||
::v-deep .el-progress-bar__inner {
|
::v-deep .el-progress-bar__inner {
|
||||||
background-color: unset;
|
background-color: unset;
|
||||||
background-image: linear-gradient(to right, #4573fe, #47f8dc);
|
background-image: linear-gradient(to right, #4573fe, #47f8dc);
|
||||||
}
|
|
||||||
::v-deep .el-progress__text {
|
|
||||||
margin-top: -70px;
|
|
||||||
margin-left: 820px;
|
|
||||||
// background-color: unset;
|
|
||||||
// background-image: linear-gradient(to right, #4573fe, #47f8dc);
|
|
||||||
}
|
}
|
||||||
.visual-select {
|
.visual-select {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2024-01-29 16:50:26
|
* @Date: 2024-01-29 16:50:26
|
||||||
* @LastEditTime: 2024-03-29 16:51:53
|
* @LastEditTime: 2024-03-28 16:35:49
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -17,11 +17,11 @@
|
|||||||
许昌安彩冷端看板
|
许昌安彩冷端看板
|
||||||
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
||||||
<h3 class="time">{{ times }}</h3>
|
<h3 class="time">{{ times }}</h3>
|
||||||
<!-- <el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px',fontSize:'32px'}"
|
<el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px',fontSize:'32px'}"
|
||||||
@click="changeFullScreen">
|
@click="changeFullScreen">
|
||||||
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
||||||
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
||||||
</el-button> -->
|
</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="container-main flex-col" type="flex">
|
<el-row class="container-main flex-col" type="flex">
|
||||||
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15" type="flex" class="flex-1">
|
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15" type="flex" class="flex-1">
|
||||||
@ -64,11 +64,11 @@
|
|||||||
</div> -->
|
</div> -->
|
||||||
<!-- <el-row :gutter="9"> -->
|
<!-- <el-row :gutter="9"> -->
|
||||||
<!-- <el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="24"> -->
|
<!-- <el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="24"> -->
|
||||||
<pile-bar-chart style="margin-top: -5px;" ref="firstPileChart" :height="80" />
|
<pile-bar-chart style="margin-bottom: -15px" ref="firstPileChart" :height="90" />
|
||||||
<second-pile-bar-chart id=" 'second' " ref="secondPileChart" :height="90" />
|
<second-pile-bar-chart style="margin-bottom: -15px" id=" 'second' " ref="secondPileChart" :height="90" />
|
||||||
<third-pile-bar-chart id=" 'third' " ref="thirdPileChart" :height="90" />
|
<third-pile-bar-chart style="margin-bottom: -15px" id=" 'third' " ref="thirdPileChart" :height="90" />
|
||||||
<fourth-pile-bar-chart id=" 'fourth' " ref="fourthPileChart" :height="90" />
|
<fourth-pile-bar-chart style="margin-bottom: -15px" id=" 'fourth' " ref="fourthPileChart" :height="90" />
|
||||||
<fifth-pile-bar-chart style="margin-top: -5px;" id=" 'fifth' " ref="fifthPileChart" :height="100" />
|
<fifth-pile-bar-chart style="margin-bottom: -15px" id=" 'fifth' " ref="fifthPileChart" :height="100" />
|
||||||
<!-- <pile-bar-chart ref="secondPileChart"
|
<!-- <pile-bar-chart ref="secondPileChart"
|
||||||
:height="90" />
|
:height="90" />
|
||||||
<pile-bar-chart ref="thirdPileChart"
|
<pile-bar-chart ref="thirdPileChart"
|
||||||
@ -320,7 +320,7 @@ export default {
|
|||||||
let productList = []
|
let productList = []
|
||||||
let wasteList = []
|
let wasteList = []
|
||||||
let yieldList = []
|
let yieldList = []
|
||||||
let sumAreaList = []
|
// let sumAreaList = []
|
||||||
// let yieldList = []
|
// let yieldList = []
|
||||||
// this.cutTableDataList =
|
// this.cutTableDataList =
|
||||||
let coldDetData = [
|
let coldDetData = [
|
||||||
@ -377,25 +377,22 @@ export default {
|
|||||||
]
|
]
|
||||||
coldDetData.forEach((ele, index) => {
|
coldDetData.forEach((ele, index) => {
|
||||||
nameList.push(ele.lineName)
|
nameList.push(ele.lineName)
|
||||||
topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea + '㎡')
|
topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea)
|
||||||
productList.push(ele.productArea)
|
productList.push(ele.productArea)
|
||||||
wasteList.push(ele.wastArea)
|
wasteList.push(ele.wastArea)
|
||||||
nameWasteList.push('缺陷面积:' + ele.wastArea + '㎡')
|
nameWasteList.push('缺陷面积:' + ele.wastArea)
|
||||||
// yieldList.push({
|
yieldList.push({
|
||||||
// name: '良品',
|
name: '良品',
|
||||||
// yield:ele.yield
|
yield:ele.yield
|
||||||
// })
|
})
|
||||||
sumAreaList.push(ele.sumArea)
|
// sumAreaList.push(ele.sumArea)
|
||||||
yieldList.push((ele.yield * 100).toFixed(3))
|
// yieldList.push((ele.yield * 100).toFixed(3))
|
||||||
})
|
})
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
|
||||||
this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
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.secondPileChart.initChart(nameList, [topNameList[1]], [nameWasteList[1]], [productList[1]], [wasteList[1]])
|
||||||
this.$refs.thirdPileChart.initChart(nameList, [topNameList[2]], [nameWasteList[2]], [productList[2]], [wasteList[2]])
|
this.$refs.thirdPileChart.initChart(nameList, [topNameList[2]], [nameWasteList[2]], [productList[2]], [wasteList[2]])
|
||||||
this.$refs.fourthPileChart.initChart(nameList, [topNameList[3]], [nameWasteList[3]], [productList[3]], [wasteList[3]])
|
this.$refs.fourthPileChart.initChart(nameList, [topNameList[3]], [nameWasteList[3]], [productList[3]], [wasteList[3]])
|
||||||
this.$refs.fifthPileChart.initChart(nameList, [topNameList[4]], [nameWasteList[4]], [productList[4]], [wasteList[4]])
|
this.$refs.fifthPileChart.initChart(nameList, [topNameList[4]], [nameWasteList[4]], [productList[4]], [wasteList[4]])
|
||||||
})
|
|
||||||
// this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
// this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
||||||
this.getTimes()
|
this.getTimes()
|
||||||
// console.log(moment(this.logoutTime - 28800000).format('HH:mm:ss'));
|
// console.log(moment(this.logoutTime - 28800000).format('HH:mm:ss'));
|
||||||
@ -417,39 +414,39 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getData() {
|
// getData() {
|
||||||
let detData = [
|
// let detData = [
|
||||||
{
|
// {
|
||||||
name: '1',
|
// name: '1',
|
||||||
run: '运行',
|
// run: '运行',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
name: '2',
|
// name: '2',
|
||||||
run: '未运行',
|
// run: '未运行',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
name: '3',
|
// name: '3',
|
||||||
run: '运行',
|
// run: '运行',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
name: '4',
|
// name: '4',
|
||||||
run: '未运行',
|
// run: '未运行',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
name: '1',
|
// name: '1',
|
||||||
run: '运行',
|
// run: '运行',
|
||||||
},
|
// },
|
||||||
]
|
// ]
|
||||||
this.realEqList = detData.map((item, index) => [
|
// this.realEqList = detData.map((item, index) => [
|
||||||
// console.log(item)
|
// // console.log(item)
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
// `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
</span>`,
|
// </span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.name || ''}</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>`,
|
// `<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.realEqConfig.data = this.realEqList
|
||||||
this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
// this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
||||||
},
|
// },
|
||||||
CutWebsocketClose(e) {
|
CutWebsocketClose(e) {
|
||||||
this.Cutws.ws.onclose = (event) => { console.log(event );}
|
this.Cutws.ws.onclose = (event) => { console.log(event );}
|
||||||
},
|
},
|
||||||
@ -498,7 +495,7 @@ export default {
|
|||||||
seconds = "0" + seconds;
|
seconds = "0" + seconds;
|
||||||
}
|
}
|
||||||
//拼接格式化当前时间
|
//拼接格式化当前时间
|
||||||
this.times = year + "." + month + "." + day + " " + hours + ":" + minutes + ":" + seconds;
|
this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
|
||||||
},
|
},
|
||||||
SJGInitWebSocket() {
|
SJGInitWebSocket() {
|
||||||
let date = new Date().valueOf()
|
let date = new Date().valueOf()
|
||||||
@ -528,9 +525,10 @@ export default {
|
|||||||
])
|
])
|
||||||
}
|
}
|
||||||
this.realEqConfig.data = this.realEqList
|
this.realEqConfig.data = this.realEqList
|
||||||
// this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
this.$refs['realEqScrollBoard'].updateRows(this.realEqList)
|
||||||
// })
|
|
||||||
|
})
|
||||||
};
|
};
|
||||||
// if (typeof (WebSocket) === 'undefined') {
|
// if (typeof (WebSocket) === 'undefined') {
|
||||||
// alert('您的浏览器不支持WebSocket')
|
// alert('您的浏览器不支持WebSocket')
|
||||||
@ -574,11 +572,7 @@ export default {
|
|||||||
<div style = "${(item.product * 100).toFixed(2) < 91 ? 'display:block; color:rgba(255, 209, 96, 1)' : 'display:none;'}">${(item.product * 100).toFixed(2) + '%' || ''}</div>`
|
<div style = "${(item.product * 100).toFixed(2) < 91 ? 'display:block; color:rgba(255, 209, 96, 1)' : 'display:none;'}">${(item.product * 100).toFixed(2) + '%' || ''}</div>`
|
||||||
])
|
])
|
||||||
this.cutConfig.data = cutArr
|
this.cutConfig.data = cutArr
|
||||||
// this.$nextTick(() => {
|
|
||||||
this.$refs['cutScrollBoard'].updateRows(cutArr)
|
this.$refs['cutScrollBoard'].updateRows(cutArr)
|
||||||
// })
|
|
||||||
// this.cutConfig.data = cutArr
|
|
||||||
// this.$refs['cutScrollBoard'].updateRows(cutArr)
|
|
||||||
} else if (this.cutWsData.type === 'cutting' && this.cutWsData.name === 'chart' && this.cutWsData.dateType === 'day') {
|
} else if (this.cutWsData.type === 'cutting' && this.cutWsData.name === 'chart' && this.cutWsData.dateType === 'day') {
|
||||||
let nameList = []
|
let nameList = []
|
||||||
let nameWasteList = []
|
let nameWasteList = []
|
||||||
@ -590,21 +584,19 @@ export default {
|
|||||||
// this.cutTableDataList =
|
// this.cutTableDataList =
|
||||||
this.cutWsData.coldDetData.forEach((ele, index) => {
|
this.cutWsData.coldDetData.forEach((ele, index) => {
|
||||||
nameList.push(ele.lineName)
|
nameList.push(ele.lineName)
|
||||||
topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea + '㎡')
|
topNameList.push('产线: ' + ele.lineName + ' ' + '总面积:' + ele.sumArea)
|
||||||
productList.push(ele.productArea)
|
productList.push(ele.productArea)
|
||||||
wasteList.push(ele.wastArea)
|
wasteList.push(ele.wastArea)
|
||||||
nameWasteList.push('缺陷面积:' + ele.wastArea + '㎡')
|
nameWasteList.push('缺陷面积:' + ele.wastArea)
|
||||||
sumAreaList.push(ele.sumArea)
|
sumAreaList.push(ele.sumArea)
|
||||||
yieldList.push(parseFloat((ele.yield * 100).toFixed(3)))
|
yieldList.push(parseFloat((ele.yield * 100).toFixed(3)))
|
||||||
})
|
})
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.firstPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
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.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.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.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.fifthPileChart.initChart(nameList, [topNameList[0]], [nameWasteList[0]], [productList[0]], [wasteList[0]])
|
||||||
this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
this.$refs.productChart.initChart(nameList, yieldList, sumAreaList)
|
||||||
})
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
// if (typeof (WebSocket) === 'undefined') {
|
// if (typeof (WebSocket) === 'undefined') {
|
||||||
@ -650,9 +642,7 @@ export default {
|
|||||||
])
|
])
|
||||||
}
|
}
|
||||||
this.annealFunConfig.data = arr
|
this.annealFunConfig.data = arr
|
||||||
// this.$nextTick(() => {
|
|
||||||
this.$refs['annealFunScrollBoard'].updateRows(arr)
|
this.$refs['annealFunScrollBoard'].updateRows(arr)
|
||||||
// })
|
|
||||||
}
|
}
|
||||||
if (this.funWsData.type === 'FanInfo') {
|
if (this.funWsData.type === 'FanInfo') {
|
||||||
let arr = []
|
let arr = []
|
||||||
@ -667,9 +657,7 @@ export default {
|
|||||||
])
|
])
|
||||||
}
|
}
|
||||||
this.funConfig.data = arr
|
this.funConfig.data = arr
|
||||||
// this.$nextTick(() => {
|
|
||||||
this.$refs['funScrollBoard'].updateRows(arr)
|
this.$refs['funScrollBoard'].updateRows(arr)
|
||||||
// })
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
// if (typeof (WebSocket) === 'undefined') {
|
// if (typeof (WebSocket) === 'undefined') {
|
||||||
@ -806,7 +794,7 @@ export default {
|
|||||||
top: 25px;
|
top: 25px;
|
||||||
color: rgba(255, 255, 255, 0.80);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: 1px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.time {
|
.time {
|
||||||
@ -815,7 +803,7 @@ export default {
|
|||||||
color: rgba(255, 255, 255, 0.80);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
top: 25px;
|
top: 25px;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: .72px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-button {
|
.title-button {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2022-01-21 14:43:06
|
* @Date: 2022-01-21 14:43:06
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 14:50:50
|
* @LastEditTime: 2024-03-28 16:45:24
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -158,9 +158,6 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
initChart() {
|
initChart() {
|
||||||
this.chart = echarts.init(document.getElementById(this.id))
|
this.chart = echarts.init(document.getElementById(this.id))
|
||||||
this.$nextTick(() => {
|
|
||||||
this.chart.resize();
|
|
||||||
});
|
|
||||||
this.chart.setOption({
|
this.chart.setOption({
|
||||||
title: this.showCenterTitle
|
title: this.showCenterTitle
|
||||||
? {
|
? {
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: gtz
|
* @Author: gtz
|
||||||
* @Date: 2022-01-19 15:58:17
|
* @Date: 2022-01-19 15:58:17
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 14:47:29
|
* @LastEditTime: 2024-03-27 10:26:35
|
||||||
* @Description: file content
|
* @Description: file content
|
||||||
* @FilePath: \mt-bus-fe\src\views\OperationalOverview\components\baseContainer\index.vue
|
* @FilePath: \mt-bus-fe\src\views\OperationalOverview\components\baseContainer\index.vue
|
||||||
-->
|
-->
|
||||||
@ -164,7 +164,7 @@ export default {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
// background-color: rgba($color: #061027, $alpha: 0.15);
|
// background-color: rgba($color: #061027, $alpha: 0.15);
|
||||||
position: relative;
|
position: relative;
|
||||||
// opacity: calc(.8);
|
opacity: calc(.8);
|
||||||
// border: 2px solid;
|
// border: 2px solid;
|
||||||
// background: url('../../../../assets/img/energy.png') no-repeat;
|
// background: url('../../../../assets/img/energy.png') no-repeat;
|
||||||
// background-size: 100% 100%;
|
// background-size: 100% 100%;
|
||||||
@ -274,8 +274,6 @@ export default {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
font-size: 24px;
|
font-size: 24px;
|
||||||
font-weight: normal;
|
|
||||||
letter-spacing: .8px;
|
|
||||||
padding: 0.67em 0.67em 0.3em 0.67em;
|
padding: 0.67em 0.67em 0.3em 0.67em;
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-09-21 09:06:28
|
* @Date: 2023-09-21 09:06:28
|
||||||
* @LastEditTime: 2024-03-29 16:25:59
|
* @LastEditTime: 2024-03-25 18:34:58
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -71,9 +71,9 @@ export default {
|
|||||||
mounted() {
|
mounted() {
|
||||||
console.log('mounted')
|
console.log('mounted')
|
||||||
console.log('borderRadius: ', this.borderRadius)
|
console.log('borderRadius: ', this.borderRadius)
|
||||||
this.$el.addEventListener('resize', () => {
|
// this.$nextTick(() => {
|
||||||
console.log('resziing.....');
|
// this.initChart()
|
||||||
});
|
// })
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
if (!this.chart) {
|
if (!this.chart) {
|
||||||
@ -114,7 +114,6 @@ export default {
|
|||||||
name: '产线良品率',
|
name: '产线良品率',
|
||||||
symbol: 'circle', //变为实心圆
|
symbol: 'circle', //变为实心圆
|
||||||
type: 'line',
|
type: 'line',
|
||||||
// symbolSize: 7,
|
|
||||||
yAxisIndex: 0,
|
yAxisIndex: 0,
|
||||||
areaStyle: {
|
areaStyle: {
|
||||||
opacity: 0.8,
|
opacity: 0.8,
|
||||||
@ -142,16 +141,6 @@ export default {
|
|||||||
]
|
]
|
||||||
// const colors = ['#5470C6', '#91CC75', '#EE6666']
|
// const colors = ['#5470C6', '#91CC75', '#EE6666']
|
||||||
this.chart = echarts.init(document.getElementById(this.id))
|
this.chart = echarts.init(document.getElementById(this.id))
|
||||||
let isFinished = false //标记 isFinished
|
|
||||||
this.chart.on('finished', _ => {
|
|
||||||
if (!isFinished) {
|
|
||||||
console.log('我只执行一次')
|
|
||||||
isFinished = true
|
|
||||||
// this.isLoading = false //关闭loading
|
|
||||||
this.chart.resize() //重新渲染charts大小
|
|
||||||
}
|
|
||||||
console.log(113, 'finished')
|
|
||||||
})
|
|
||||||
this.chart.setOption({
|
this.chart.setOption({
|
||||||
// color: colors,
|
// color: colors,
|
||||||
tooltip: {
|
tooltip: {
|
||||||
@ -162,33 +151,22 @@ export default {
|
|||||||
},
|
},
|
||||||
grid: {
|
grid: {
|
||||||
left: "3%",
|
left: "3%",
|
||||||
right: "10%",
|
right: "5%",
|
||||||
bottom: "3%",
|
bottom: "3%",
|
||||||
containLabel: true
|
containLabel: true
|
||||||
},
|
},
|
||||||
legend: {
|
legend: {
|
||||||
itemWidth: 10,
|
itemWidth: 10,
|
||||||
itemHeight: 10,
|
itemHeight: 10,
|
||||||
top: '5',
|
top: '20',
|
||||||
right: '20px',
|
// right: '20px',
|
||||||
data: [
|
data: ['产线产量', '产线良品率'],
|
||||||
// { icon: 'rect', name: '直接访问' },
|
|
||||||
{ icon: 'roundRect', name: '产线产量' },
|
|
||||||
{
|
|
||||||
icon: 'circle', name: '产线良品率',
|
|
||||||
itemWidth: 7,
|
|
||||||
itemHeight: 7,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
textStyle: {
|
textStyle: {
|
||||||
fontSize: 12 * this.beilv,
|
fontSize: 12 * this.beilv,
|
||||||
color: '#ced1d5'
|
color: '#ced1d5'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
xAxis: {
|
xAxis: {
|
||||||
axisTick: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
type: 'category',
|
type: 'category',
|
||||||
axisLine: {
|
axisLine: {
|
||||||
lineStyle: {
|
lineStyle: {
|
||||||
@ -224,7 +202,7 @@ export default {
|
|||||||
type: 'value',
|
type: 'value',
|
||||||
name: '良品率/%',
|
name: '良品率/%',
|
||||||
nameTextStyle: {// y轴上方单位的颜色
|
nameTextStyle: {// y轴上方单位的颜色
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: '#fff',
|
||||||
align: "left",
|
align: "left",
|
||||||
},
|
},
|
||||||
position: 'right',
|
position: 'right',
|
||||||
@ -267,7 +245,7 @@ export default {
|
|||||||
type: 'value',
|
type: 'value',
|
||||||
name: '产量/㎡', // y轴上方的单位
|
name: '产量/㎡', // y轴上方的单位
|
||||||
nameTextStyle: {
|
nameTextStyle: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
// fontSize: 10,
|
// fontSize: 10,
|
||||||
align: "right",
|
align: "right",
|
||||||
},
|
},
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-09-21 09:06:28
|
* @Date: 2023-09-21 09:06:28
|
||||||
* @LastEditTime: 2024-03-29 16:26:28
|
* @LastEditTime: 2024-03-28 16:31:20
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
@ -106,8 +106,7 @@ export default {
|
|||||||
position: 'top', //在上方显示
|
position: 'top', //在上方显示
|
||||||
textStyle: { //数值样式
|
textStyle: { //数值样式
|
||||||
color: '#ced1d5',
|
color: '#ced1d5',
|
||||||
fontSize: 12,
|
fontSize: 12
|
||||||
fontWight:'bolder'
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@ -143,7 +142,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
// data: passRateList
|
// data: passRateList
|
||||||
data: passRateList
|
data: []
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
// const colors = ['#5470C6', '#91CC75', '#EE6666']
|
// const colors = ['#5470C6', '#91CC75', '#EE6666']
|
||||||
@ -167,7 +166,7 @@ export default {
|
|||||||
type: 'cross'
|
type: 'cross'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
grid: { top: 90, right: 70, bottom: 20, left: 20, containLabel: true },
|
grid: { top: 90, right: 60, bottom: 20, left: 20, containLabel: true },
|
||||||
legend: {
|
legend: {
|
||||||
itemWidth: 10,
|
itemWidth: 10,
|
||||||
itemHeight: 10,
|
itemHeight: 10,
|
||||||
@ -176,14 +175,10 @@ export default {
|
|||||||
data: ['产线产量', '产线良品率'],
|
data: ['产线产量', '产线良品率'],
|
||||||
textStyle: {
|
textStyle: {
|
||||||
fontSize: 12 * this.beilv,
|
fontSize: 12 * this.beilv,
|
||||||
color: '#ced1d5',
|
color: '#ced1d5'
|
||||||
fontWight: 'bolder'
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
xAxis: {
|
xAxis: {
|
||||||
axisTick: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
type: 'category',
|
type: 'category',
|
||||||
axisLine: {
|
axisLine: {
|
||||||
lineStyle: {
|
lineStyle: {
|
||||||
@ -192,11 +187,8 @@ export default {
|
|||||||
width: '1' // 坐标线的宽度
|
width: '1' // 坐标线的宽度
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
textStyle: {
|
|
||||||
fontWight: 'bolder'
|
|
||||||
},
|
|
||||||
axisLabel: {
|
axisLabel: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
// formatter: '{value}'
|
// formatter: '{value}'
|
||||||
// textStyle: {
|
// textStyle: {
|
||||||
@ -225,7 +217,7 @@ export default {
|
|||||||
type: 'value',
|
type: 'value',
|
||||||
name: '良品率/%',
|
name: '良品率/%',
|
||||||
nameTextStyle: {// y轴上方单位的颜色
|
nameTextStyle: {// y轴上方单位的颜色
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: '#fff',
|
||||||
align: "left",
|
align: "left",
|
||||||
},
|
},
|
||||||
position: 'right',
|
position: 'right',
|
||||||
@ -239,7 +231,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
axisLabel: {
|
axisLabel: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
// formatter: '{value}'
|
// formatter: '{value}'
|
||||||
formatter: '{value}%'
|
formatter: '{value}%'
|
||||||
@ -269,7 +261,7 @@ export default {
|
|||||||
type: 'value',
|
type: 'value',
|
||||||
name: '产量/片', // y轴上方的单位
|
name: '产量/片', // y轴上方的单位
|
||||||
nameTextStyle: {
|
nameTextStyle: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
// fontSize: 10,
|
// fontSize: 10,
|
||||||
align: "right",
|
align: "right",
|
||||||
},
|
},
|
||||||
@ -286,7 +278,7 @@ export default {
|
|||||||
axisLabel: {
|
axisLabel: {
|
||||||
// textStyle: {
|
// textStyle: {
|
||||||
// color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
// color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
// show: true,
|
// show: true,
|
||||||
lineStyle: {
|
lineStyle: {
|
||||||
color: "#25528f",
|
color: "#25528f",
|
||||||
|
@ -111,9 +111,8 @@ export default {
|
|||||||
show: true, //开启显示
|
show: true, //开启显示
|
||||||
position: 'top', //在上方显示
|
position: 'top', //在上方显示
|
||||||
textStyle: { //数值样式
|
textStyle: { //数值样式
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: '#ced1d5',
|
||||||
fontSize: 12,
|
fontSize: 12
|
||||||
fontWeight: 'bolder'
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@ -145,9 +144,6 @@ export default {
|
|||||||
// }
|
// }
|
||||||
// },
|
// },
|
||||||
xAxis: {
|
xAxis: {
|
||||||
axisTick: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
type: 'category',
|
type: 'category',
|
||||||
axisLine: {
|
axisLine: {
|
||||||
lineStyle: {
|
lineStyle: {
|
||||||
@ -156,11 +152,8 @@ export default {
|
|||||||
width: '1' // 坐标线的宽度
|
width: '1' // 坐标线的宽度
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
textStyle: {
|
|
||||||
fontWeight: 'bolder'
|
|
||||||
},
|
|
||||||
axisLabel: {
|
axisLabel: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
// formatter: '{value}'
|
// formatter: '{value}'
|
||||||
},
|
},
|
||||||
@ -174,13 +167,13 @@ export default {
|
|||||||
yAxis: {
|
yAxis: {
|
||||||
name: '单位kwh',
|
name: '单位kwh',
|
||||||
nameTextStyle: {
|
nameTextStyle: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: '#fff',
|
||||||
fontSize: 10,
|
fontSize: 10,
|
||||||
align: 'right',
|
align: 'right',
|
||||||
},
|
},
|
||||||
type: 'value',
|
type: 'value',
|
||||||
axisLabel: {
|
axisLabel: {
|
||||||
color: 'rgba(255,255,255,0.5)', // 坐标值得具体的颜色
|
color: "#fff",
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
// formatter: '{value}/kwh'
|
// formatter: '{value}/kwh'
|
||||||
},
|
},
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-12-27 13:54:52
|
* @Date: 2023-12-27 13:54:52
|
||||||
* @LastEditTime: 2024-03-29 16:50:47
|
* @LastEditTime: 2024-03-28 16:30:14
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div :id="id" class="productChart" :style="{ height:'80px', width: width }" />
|
<div :id="id" class="productChart" :style="{ height: height + 'px', width: width }" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -106,6 +106,7 @@ export default {
|
|||||||
}
|
}
|
||||||
// }
|
// }
|
||||||
console.log('total', totalData)
|
console.log('total', totalData)
|
||||||
|
this.chart = echarts.init(document.getElementById(this.id))
|
||||||
const series = [
|
const series = [
|
||||||
'良品',
|
'良品',
|
||||||
'废品',
|
'废品',
|
||||||
@ -136,17 +137,6 @@ export default {
|
|||||||
// width,
|
// width,
|
||||||
// height
|
// height
|
||||||
// })
|
// })
|
||||||
this.chart = echarts.init(document.getElementById(this.id))
|
|
||||||
let isFinished = false //标记 isFinished
|
|
||||||
this.chart.on('finished', _ => {
|
|
||||||
if (!isFinished) {
|
|
||||||
console.log('我只执行一次')
|
|
||||||
isFinished = true
|
|
||||||
// this.isLoading = false //关闭loading
|
|
||||||
this.chart.resize() //重新渲染charts大小
|
|
||||||
}
|
|
||||||
console.log(113, 'finished')
|
|
||||||
})
|
|
||||||
this.chart.setOption({
|
this.chart.setOption({
|
||||||
legend: {
|
legend: {
|
||||||
formatter: function (name) {
|
formatter: function (name) {
|
||||||
@ -162,8 +152,7 @@ export default {
|
|||||||
left: '20',
|
left: '20',
|
||||||
icon: 'rect',
|
icon: 'rect',
|
||||||
textStyle: {
|
textStyle: {
|
||||||
color: 'rgba(255,255,255,.6)',
|
color: '#ffffff'
|
||||||
fontSize:12,
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
grid: {
|
grid: {
|
||||||
@ -195,9 +184,9 @@ export default {
|
|||||||
splitNumber: 50,
|
splitNumber: 50,
|
||||||
// boundaryGap: [20, 20],
|
// boundaryGap: [20, 20],
|
||||||
textStyle: {
|
textStyle: {
|
||||||
color: 'rgba(255,255,255,.6)',
|
color: '#ffffff',
|
||||||
verticalAlign: 'bottom',
|
verticalAlign: 'bottom',
|
||||||
fontSize: 16,
|
fontSize: 12,
|
||||||
align: 'left',
|
align: 'left',
|
||||||
padding: [0, 0, 10, -5]
|
padding: [0, 0, 10, -5]
|
||||||
}
|
}
|
||||||
@ -223,9 +212,9 @@ export default {
|
|||||||
splitNumber: 50,
|
splitNumber: 50,
|
||||||
// boundaryGap: [20, 20],
|
// boundaryGap: [20, 20],
|
||||||
textStyle: {
|
textStyle: {
|
||||||
color: 'rgba(255,255,255,.6)',
|
color: '#ffffff',
|
||||||
verticalAlign: 'bottom',
|
verticalAlign: 'bottom',
|
||||||
fontSize: 16,
|
fontSize: 12,
|
||||||
align: 'right',
|
align: 'right',
|
||||||
padding: [0, 0, 10, -5]
|
padding: [0, 0, 10, -5]
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2021-07-19 15:18:30
|
* @Date: 2021-07-19 15:18:30
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 16:49:09
|
* @LastEditTime: 2024-03-28 16:10:47
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -10,41 +10,40 @@
|
|||||||
<el-row class="container-title" :style="{
|
<el-row class="container-title" :style="{
|
||||||
height: 88 + 'px',
|
height: 88 + 'px',
|
||||||
lineHeight: 88 + 'px',
|
lineHeight: 88 + 'px',
|
||||||
fontSize: 31 + 'px',
|
fontSize: 31 + 'px'
|
||||||
}">
|
}">
|
||||||
<img src="../../assets/img/logo.png" style="width: 1.1em; position: relative; top: 0.22em" alt="" />
|
<img src="../../assets/img/logo.png" style="width:1.1em;position:relative;top:.22em" alt="">
|
||||||
许昌安彩深加工看板
|
许昌安彩深加工看板
|
||||||
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
<h3 class="unit">单位:河南汇融数字科技有限公司</h3>
|
||||||
<h3 class="time">{{ times }}</h3>
|
<h3 class="time">{{ times }}</h3>
|
||||||
<!-- <el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px',fontSize:'32px'}"
|
<el-button type="text" class="title-button" :style="{ right: 18 + 'px', top: 26 + 'px',fontSize:'32px'}"
|
||||||
@click="changeFullScreen">
|
@click="changeFullScreen">
|
||||||
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
<svg-icon width="32" height="32" v-if="isFullScreen" icon-class="unFullScreenView" />
|
||||||
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
<svg-icon width="32" height="32" v-else icon-class="fullScreenView" />
|
||||||
</el-button> -->
|
</el-button>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row class="container-main flex-col" type="flex">
|
<el-row class="container-main flex-col" type="flex">
|
||||||
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15" type="flex" class="flex-1" style="height: 50%">
|
<el-row :style="{ padding: '0 ' + 9 + 'px' }" :gutter="15" type="flex" class="flex-1" style="height: 50%;">
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
||||||
<base-container :title="'设备报警'" :size="'small'" :height="318" :title-icon="'eqAlarm'">
|
<base-container :title="'设备报警'" :size="'small'" :height="318" :title-icon="'eqAlarm'">
|
||||||
<dv-scroll-board class="eqTable" :config="eqConfig" style="width: 100%; height: 350px"
|
<dv-scroll-board class="eqTable" :config="eqConfig" style="width:100%;height:350px" ref='eqScrollBoard' />
|
||||||
ref="eqScrollBoard" />
|
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
||||||
<base-container :title="'各工序缺陷汇总'" :size="'small'" :title-icon="'scrap'">
|
<base-container :title="'各工序缺陷汇总'" :size="'small'" :title-icon="'scrap'">
|
||||||
<dv-scroll-board :config="processConfig" style="width: 100%; height: 350px" ref="processScrollBoard" />
|
<dv-scroll-board :config="processConfig" style="width:100%;height:350px" ref='processScrollBoard' />
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="8" height="100%">
|
||||||
<base-container :height="318" :size="'small'" :title="'工单监控'" :title-icon="'eqMonitoring'">
|
<base-container :height="318" :size="'small'" :title="'工单监控'" :title-icon="'eqMonitoring'">
|
||||||
<div class="order" style="width: 100%; overflow: hidden scroll; height: 350px">
|
<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: 1em">
|
||||||
<!-- <el-col :span="12"> -->
|
<!-- <el-col :span="12"> -->
|
||||||
|
|
||||||
<p class="now-secondary-title" style="font-size: 14px;opacity: calc(.6);">{{ op.name }}</p>
|
<p class="now-secondary-title">{{ op.name }}</p>
|
||||||
<el-progress style="width: 610px;" text-color="rgba(255, 255, 255, .6)" :stroke-width="10"
|
<el-progress :stroke-width="10" define-back-color="rgba(32, 57, 96, 1)" text-color="white"
|
||||||
define-back-color="rgba(32, 57, 96, 1)" :percentage="op.progressRate" class="custom-progress-bar" />
|
:percentage="op.progressRate" class="custom-progress-bar" />
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
<!-- </div> -->
|
<!-- </div> -->
|
||||||
@ -67,7 +66,7 @@
|
|||||||
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
<el-col :style="{ margin: 8 + 'px' + ' 0' }" :span="12">
|
||||||
<base-container :show-time="true" :no-content-padding="true" :height="318 + 338 + 16" :size="'eqStatus'"
|
<base-container :show-time="true" :no-content-padding="true" :height="318 + 338 + 16" :size="'eqStatus'"
|
||||||
:title="'产线产量及良品率'" :title-icon="'productLine'">
|
:title="'产线产量及良品率'" :title-icon="'productLine'">
|
||||||
<double-y-chart ref="productLineChart" :id="'doubleYChart'" :height="390" :show-legend="true" />
|
<double-y-chart ref="productLineChart" :id=" 'doubleYChart' " :height="390" :show-legend="true" />
|
||||||
</base-container>
|
</base-container>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -76,175 +75,105 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import baseContainer from './components/baseContainer';
|
import baseContainer from './components/baseContainer'
|
||||||
import baseTable1 from './components/baseTable';
|
import baseTable1 from './components/baseTable'
|
||||||
import screenfull from 'screenfull';
|
import screenfull from 'screenfull'
|
||||||
import doubleYChart from './components/doubleYChart ';
|
import doubleYChart from './components/doubleYChart '
|
||||||
import LinearBarChart from './components/linearBarChart';
|
import LinearBarChart from './components/linearBarChart'
|
||||||
import WebSocketHeartbeat from './ws.js';
|
import WebSocketHeartbeat from './ws.js';
|
||||||
|
|
||||||
// 创建WebSocketHeartbeat实例
|
// 创建WebSocketHeartbeat实例
|
||||||
const qualityYearList = [
|
const qualityYearList = [
|
||||||
{
|
{
|
||||||
name: '翻转机',
|
name: '翻转机', code: 'EQ20240110112358000235', status: '运行', error: '否'
|
||||||
code: 'EQ20240110112358000235',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '烘干炉',
|
name: '烘干炉', code: 'EQ20240110112537000241', status: '运行', error: '否'
|
||||||
code: 'EQ20240110112537000241',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '清洗机',
|
name: '清洗机', code: ' EQ20240110112310000232', status: '运行', error: '否'
|
||||||
code: ' EQ20240110112310000232',
|
},
|
||||||
status: '运行',
|
{ name: '钢化清洗机', code: 'EQ20240110111700000208', status: '运行', error: '否' },
|
||||||
error: '否',
|
{ name: '固化机', code: 'EQ20240110111700000201', status: '运行', error: '否' },
|
||||||
|
{
|
||||||
|
name: '磨边清洗机', code: ' EQ20240110111700000208', status: '运行', error: '否'
|
||||||
|
},
|
||||||
|
{ name: '预热机', code: 'EQ20240110111700000205', status: '故障', error: '是' },
|
||||||
|
{ name: '下片机', code: 'EQ20240115151435000279', status: '运行', error: '否' },
|
||||||
|
{
|
||||||
|
name: '冷却机', code: 'EQ20240110111700000203', status: '运行', error: '否'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '钢化清洗机',
|
name: 'A储片机106', code: 'EQ20240110111700000202', status: '运行', error: '否'
|
||||||
code: 'EQ20240110111700000208',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
},
|
||||||
|
{ name: '二次清洗机', code: 'EQ20240110111700000209', status: '运行', error: '否' },
|
||||||
{
|
{
|
||||||
name: '固化机',
|
name: '二次磨边机', code: ' EQ20240110110927000181', status: '故障', error: '是'
|
||||||
code: 'EQ20240110111700000201',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
},
|
||||||
{
|
{ name: '测试设备', code: 'EQ20240110111700000201', status: '运行', error: '否' }
|
||||||
name: '磨边清洗机',
|
]
|
||||||
code: ' EQ20240110111700000208',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '预热机',
|
|
||||||
code: 'EQ20240110111700000205',
|
|
||||||
status: '故障',
|
|
||||||
error: '是',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '下片机',
|
|
||||||
code: 'EQ20240115151435000279',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '冷却机',
|
|
||||||
code: 'EQ20240110111700000203',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'A储片机106',
|
|
||||||
code: 'EQ20240110111700000202',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '二次清洗机',
|
|
||||||
code: 'EQ20240110111700000209',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '二次磨边机',
|
|
||||||
code: ' EQ20240110110927000181',
|
|
||||||
status: '故障',
|
|
||||||
error: '是',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '测试设备',
|
|
||||||
code: 'EQ20240110111700000201',
|
|
||||||
status: '运行',
|
|
||||||
error: '否',
|
|
||||||
},
|
|
||||||
];
|
|
||||||
const qualityMonthList = [
|
const qualityMonthList = [
|
||||||
{
|
{
|
||||||
productionLineName: 'D61',
|
productionLineName: 'D61',
|
||||||
sectionName: '成型',
|
sectionName: '成型',
|
||||||
count: '3片',
|
count: '3片',
|
||||||
inspectionTypeName: '细长泡',
|
inspectionTypeName: '细长泡'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
productionLineName: 'D62',
|
productionLineName: 'D62',
|
||||||
sectionName: '组合落板',
|
sectionName: '组合落板',
|
||||||
count: '4片',
|
count: '4片',
|
||||||
inspectionTypeName: '细长泡',
|
inspectionTypeName: '细长泡'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
productionLineName: 'D61',
|
productionLineName: 'D61',
|
||||||
sectionName: '磨边',
|
sectionName: '磨边',
|
||||||
count: '6片',
|
count: '6片',
|
||||||
inspectionTypeName: '开口泡',
|
inspectionTypeName: '开口泡'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
productionLineName: 'D63',
|
productionLineName: 'D63',
|
||||||
sectionName: '清洗',
|
sectionName: '清洗',
|
||||||
count: '5片',
|
count: '5片',
|
||||||
inspectionTypeName: '结石',
|
inspectionTypeName: '结石'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
productionLineName: 'D64',
|
productionLineName: 'D64',
|
||||||
sectionName: '打孔',
|
sectionName: '打孔',
|
||||||
count: '2片',
|
count: '2片',
|
||||||
inspectionTypeName: '结石',
|
inspectionTypeName: '结石'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
productionLineName: 'D63',
|
productionLineName: 'D63',
|
||||||
sectionName: '成型',
|
sectionName: '成型',
|
||||||
count: '7片',
|
count: '7片',
|
||||||
inspectionTypeName: '开口泡',
|
inspectionTypeName: '开口泡'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
productionLineName: 'D61',
|
productionLineName: 'D61',
|
||||||
sectionName: '上片',
|
sectionName: '上片',
|
||||||
count: '8片',
|
count: '8片',
|
||||||
inspectionTypeName: '结石',
|
inspectionTypeName: '结石'
|
||||||
},
|
}
|
||||||
];
|
]
|
||||||
const orderProcessList = [
|
const orderProcessList = [
|
||||||
{
|
{
|
||||||
id: '1',
|
id: '1', outRate: '.8', name: '凯盛0322'
|
||||||
outRate: '.8',
|
}, {
|
||||||
name: '凯盛0322',
|
id: '2', outRate: '.4', name: '光伏玻璃4.0'
|
||||||
|
}, {
|
||||||
|
id: '3', outRate: '.5', name: '光伏玻璃3.0'
|
||||||
|
}, {
|
||||||
|
id: '4', outRate: '.3', name: '光伏玻璃2.0'
|
||||||
|
}, {
|
||||||
|
id: '5', outRate: '.5', name: '光伏玻璃1.0'
|
||||||
|
}, {
|
||||||
|
id: '6', outRate: '.8', name: '光伏玻璃'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: '2',
|
id: '7', outRate: '.8', name: '统计订单'
|
||||||
outRate: '.4',
|
}
|
||||||
name: '光伏玻璃4.0',
|
]
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '3',
|
|
||||||
outRate: '.5',
|
|
||||||
name: '光伏玻璃3.0',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '4',
|
|
||||||
outRate: '.3',
|
|
||||||
name: '光伏玻璃2.0',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '5',
|
|
||||||
outRate: '.5',
|
|
||||||
name: '光伏玻璃1.0',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '6',
|
|
||||||
outRate: '.8',
|
|
||||||
name: '光伏玻璃',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '7',
|
|
||||||
outRate: '.8',
|
|
||||||
name: '统计订单',
|
|
||||||
},
|
|
||||||
];
|
|
||||||
export default {
|
export default {
|
||||||
name: 'ProductionMonitoringCockpit',
|
name: 'ProductionMonitoringCockpit',
|
||||||
components: {
|
components: {
|
||||||
@ -254,7 +183,7 @@ export default {
|
|||||||
// baseTable3,
|
// baseTable3,
|
||||||
// TopRadioGroup,
|
// TopRadioGroup,
|
||||||
doubleYChart,
|
doubleYChart,
|
||||||
LinearBarChart,
|
LinearBarChart
|
||||||
// pieChart1,
|
// pieChart1,
|
||||||
// pieChart2
|
// pieChart2
|
||||||
// pieChart3
|
// pieChart3
|
||||||
@ -265,7 +194,7 @@ export default {
|
|||||||
beilv2: 1,
|
beilv2: 1,
|
||||||
beilv: 1,
|
beilv: 1,
|
||||||
value: 100,
|
value: 100,
|
||||||
orderList: [],
|
orderList:[],
|
||||||
times: '',
|
times: '',
|
||||||
EnergyMonitoringNameList: [],
|
EnergyMonitoringNameList: [],
|
||||||
// equipmentList:[],
|
// equipmentList:[],
|
||||||
@ -275,27 +204,27 @@ export default {
|
|||||||
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
||||||
columnWidth: [70, 100, 200, 90, 90],
|
columnWidth: [70, 100, 200, 90, 90,],
|
||||||
align: ['center'],
|
align: ['center'],
|
||||||
data: [],
|
data: [],
|
||||||
// index:true,
|
// index:true,
|
||||||
rowNum: 10,
|
rowNum: 10
|
||||||
},
|
},
|
||||||
processConfig: {
|
processConfig: {
|
||||||
header: ['序号', '产线名称', '工序', '损耗片数', '缺陷类型'],
|
header: ['序号', '产线名称', '工序', '损耗片数', '缺陷类型'],
|
||||||
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
headerBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
oddRowBGC: 'rgba(32, 55, 96, 0.8)',
|
||||||
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
evenRowBGC: 'rgba(14, 32, 62, 0.8)',
|
||||||
columnWidth: [70, 130, 100, 120, 110],
|
columnWidth: [70, 130, 100, 120, 110,],
|
||||||
align: ['center'],
|
align: ['center'],
|
||||||
data: [],
|
data: [],
|
||||||
// index:true,
|
// index:true,
|
||||||
rowNum: 10,
|
rowNum: 10
|
||||||
},
|
},
|
||||||
// cxDataList,
|
// cxDataList,
|
||||||
SJGws: undefined,
|
SJGws: undefined,
|
||||||
wsHeartbeat: undefined,
|
wsHeartbeat:undefined,
|
||||||
productLineList: [],
|
productLineList:[],
|
||||||
qualityYearList,
|
qualityYearList,
|
||||||
clientWidth: 0,
|
clientWidth: 0,
|
||||||
containerWidth: 111111,
|
containerWidth: 111111,
|
||||||
@ -306,136 +235,127 @@ export default {
|
|||||||
// qualityMonthTableProps,
|
// qualityMonthTableProps,
|
||||||
modelMonth: '',
|
modelMonth: '',
|
||||||
dateType: '0',
|
dateType: '0',
|
||||||
};
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
styles() {
|
styles() {
|
||||||
const v = Math.floor(this.value * this.beilv2 * 100) / 10000;
|
const v = Math.floor(this.value * this.beilv2 * 100) / 10000
|
||||||
return {
|
return {
|
||||||
transform: `scale(${v})`,
|
transform: `scale(${v})`,
|
||||||
transformOrigin: 'top left',
|
transformOrigin: 'top left'
|
||||||
};
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
isFullScreen: function (val) {
|
isFullScreen: function (val) {
|
||||||
if (val) {
|
if (val) {
|
||||||
const _this = this;
|
const _this = this;
|
||||||
_this.beilv2 = document.documentElement.clientWidth / 1920;
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
console.log(_this.beilv2);
|
console.log(_this.beilv2);
|
||||||
} else {
|
} else {
|
||||||
const _this = this;
|
const _this = this;
|
||||||
_this.beilv2 = document.documentElement.clientWidth / 1920;
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
clientWidth(val) {
|
clientWidth(val) {
|
||||||
if (!this.timer) {
|
if (!this.timer) {
|
||||||
this.clientWidth = val;
|
this.clientWidth = val
|
||||||
this.beilv2 = this.clientWidth / 1920;
|
this.beilv2 = this.clientWidth / 1920
|
||||||
this.timer = true;
|
this.timer = true
|
||||||
let _this = this;
|
let _this = this
|
||||||
setTimeout(function () {
|
setTimeout(function () {
|
||||||
_this.timer = false;
|
_this.timer = false
|
||||||
}, 500);
|
}, 500)
|
||||||
}
|
}
|
||||||
this.windowWidth(val);
|
this.windowWidth(val);
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getData();
|
this.init()
|
||||||
this.init();
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
window.location.reload();
|
window.location.reload()
|
||||||
}, 86400000);
|
}, 86400000)
|
||||||
},
|
},
|
||||||
destroyed() {
|
destroyed () {
|
||||||
this.websocketClose();
|
this.websocketClose()
|
||||||
this.SJGWebsocketClose();
|
this.SJGWebsocketClose()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
let detData = [
|
// let detData = [
|
||||||
{
|
|
||||||
id: '1',
|
|
||||||
name: '测试工单',
|
|
||||||
progressRate: 0.933333,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '2',
|
|
||||||
name: '测试工单2',
|
|
||||||
progressRate: 0.932323,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '3',
|
|
||||||
name: '测试工单3',
|
|
||||||
progressRate: 0.23232,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '4',
|
|
||||||
name: '测试工单4',
|
|
||||||
progressRate: 0.32323,
|
|
||||||
},
|
|
||||||
// {
|
// {
|
||||||
// id: '5',
|
// id:'1',
|
||||||
// name: '测试工单',
|
// name: '测试工单',
|
||||||
// progressRate: 0.5555
|
// progressRate:0.933333
|
||||||
// }, {
|
|
||||||
// id: '6',
|
|
||||||
// name: '测试工单',
|
|
||||||
// progressRate: 0.66564
|
|
||||||
// },
|
// },
|
||||||
];
|
// {
|
||||||
this.orderList = detData.map((ele, index) => {
|
// id: '2',
|
||||||
if (ele.progressRate && ele.progressRate != 1) {
|
// name: '测试工单2',
|
||||||
return {
|
// progressRate: 0.932323
|
||||||
id: ele.id,
|
// }, {
|
||||||
name: ele.name,
|
// id: '3',
|
||||||
progressRate: parseFloat((ele.progressRate * 100).toFixed(3)),
|
// name: '测试工单3',
|
||||||
};
|
// progressRate: 0.23232
|
||||||
}
|
// }, {
|
||||||
});
|
// id: '4',
|
||||||
let EnergyNameList = ['Y61', 'Y62', 'Y63', 'Y64', 'Y65'];
|
// name: '测试工单4',
|
||||||
this.EnergyMonitoringNameList = EnergyNameList;
|
// progressRate: 0.32323
|
||||||
let EnergyDataList = [1, 2, 3, 4, 5];
|
// }
|
||||||
// this.wsData.data.forEach((ele) => {
|
// // {
|
||||||
// EnergyDataList.push(ele.useQuantity)
|
// // id: '5',
|
||||||
// })
|
// // name: '测试工单',
|
||||||
this.EnergyMonitoringList = EnergyDataList;
|
// // progressRate: 0.5555
|
||||||
// console.log(EnergyDataList)
|
// // }, {
|
||||||
this.$refs.EnergyMonitoringChart.initChart(
|
// // id: '6',
|
||||||
this.EnergyMonitoringNameList,
|
// // name: '测试工单',
|
||||||
this.EnergyMonitoringList
|
// // progressRate: 0.66564
|
||||||
);
|
// // },
|
||||||
let eqArr = this.qualityYearList.map((item, index) => [
|
// ]
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
// this.orderList = detData.map((ele, index) => {
|
||||||
</span>`,
|
// if (ele.progressRate && ele.progressRate != 1) {
|
||||||
// formatDate(item.planStartTime) || '',
|
// return {
|
||||||
`
|
// id: ele.id,
|
||||||
<span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
// name: ele.name,
|
||||||
</span>`,
|
// progressRate: parseFloat((ele.progressRate * 100).toFixed(3))
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.code || ''}</span>`,
|
// }
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.status || ''}</span>`,
|
// }
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
|
// });
|
||||||
]);
|
// let EnergyNameList = ['Y61', 'Y62', 'Y63', 'Y64', 'Y65',]
|
||||||
this.eqConfig.data = eqArr;
|
// this.EnergyMonitoringNameList = EnergyNameList
|
||||||
this.$refs['eqScrollBoard'].updateRows(eqArr);
|
// let EnergyDataList = [1, 2, 3, 4, 5]
|
||||||
this.$refs.productLineChart.initChart(
|
// // this.wsData.data.forEach((ele) => {
|
||||||
['D61', 'D62', 'D63', 'D64', 'D65'],
|
// // EnergyDataList.push(ele.useQuantity)
|
||||||
[98, 97, 98.7, 98.5, 98.3],
|
// // })
|
||||||
[3134, 2323, 3232, 3233, 2321]
|
// this.EnergyMonitoringList = EnergyDataList
|
||||||
);
|
// // console.log(EnergyDataList)
|
||||||
|
// this.$refs.EnergyMonitoringChart.initChart(this.EnergyMonitoringNameList, this.EnergyMonitoringList)
|
||||||
|
// let eqArr = this.qualityYearList.map((item, index) => [
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
|
// </span>`,
|
||||||
|
// // formatDate(item.planStartTime) || '',
|
||||||
|
// `
|
||||||
|
// <span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
||||||
|
// </span>`,
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)">${item.code || ''}</span>`,
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)">${item.status || ''}</span>`,
|
||||||
|
// `<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
|
||||||
|
// ])
|
||||||
|
// this.eqConfig.data = eqArr
|
||||||
|
// this.$refs['eqScrollBoard'].updateRows(eqArr)
|
||||||
|
// this.$refs.productLineChart.initChart(['D61', 'D62', 'D63', 'D64', 'D65',], [98, 97, 98.7, 98.5, 98.3,], [3134, 2323, 3232, 3233, 2321])
|
||||||
// this.getList()
|
// this.getList()
|
||||||
this.initWebSocket();
|
this.initWebSocket()
|
||||||
this.SJGInitWebSocket();
|
this.SJGInitWebSocket()
|
||||||
this.getTimes();
|
this.getTimes()
|
||||||
// this.$refs.EnergyMonitoringChart.initChart(['Y61', 'Y62', 'Y63', 'Y64', 'Y65',], [3134, 2323, 3232, 3233, 2321])
|
// this.$refs.EnergyMonitoringChart.initChart(['Y61', 'Y62', 'Y63', 'Y64', 'Y65',], [3134, 2323, 3232, 3233, 2321])
|
||||||
const _this = this;
|
const _this = this;
|
||||||
_this.beilv2 = document.documentElement.clientWidth / 1920;
|
_this.beilv2 = document.documentElement.clientWidth / 1920
|
||||||
window.onresize = () => {
|
window.onresize = () => {
|
||||||
return (() => {
|
return (() => {
|
||||||
_this.clientWidth = `${document.documentElement.clientWidth}`;
|
_this.clientWidth = `${document.documentElement.clientWidth}`
|
||||||
this.beilv2 = _this.clientWidth / 1920;
|
this.beilv2 = _this.clientWidth / 1920
|
||||||
})();
|
})()
|
||||||
};
|
}
|
||||||
|
this.getData()
|
||||||
},
|
},
|
||||||
|
|
||||||
// beforeDestroy() {
|
// beforeDestroy() {
|
||||||
@ -451,22 +371,14 @@ export default {
|
|||||||
</span>`,
|
</span>`,
|
||||||
// formatDate(item.planStartTime) || '',
|
// formatDate(item.planStartTime) || '',
|
||||||
`
|
`
|
||||||
<span style="color:rgba(255,255,255,0.5)" >${
|
<span style="color:rgba(255,255,255,0.5)" >${item.productionLineName || ''}
|
||||||
item.productionLineName || ''
|
|
||||||
}
|
|
||||||
</span>`,
|
</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${
|
`<span style="color:rgba(255,255,255,0.5)">${item.sectionName || ''}</span>`,
|
||||||
item.sectionName || ''
|
|
||||||
}</span>`,
|
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${item.count || ''}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)">${item.count || ''}</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${
|
`<span style="color:rgba(255,255,255,0.5)">${item.inspectionTypeName || ''}</span>`,
|
||||||
item.inspectionTypeName || ''
|
])
|
||||||
}</span>`,
|
this.processConfig.data = processArr
|
||||||
]);
|
this.$refs['processScrollBoard'].updateRows(processArr)
|
||||||
this.processConfig.data = processArr;
|
|
||||||
// this.$nextTick(() => {
|
|
||||||
this.$refs['processScrollBoard'].updateRows(processArr);
|
|
||||||
// })
|
|
||||||
},
|
},
|
||||||
// getList() {
|
// getList() {
|
||||||
// // this.$axios.get(
|
// // this.$axios.get(
|
||||||
@ -527,55 +439,41 @@ export default {
|
|||||||
let seconds = new Date().getSeconds(); //获取当前时间的秒数
|
let seconds = new Date().getSeconds(); //获取当前时间的秒数
|
||||||
//当小于 10 的是时候,在前面加 0
|
//当小于 10 的是时候,在前面加 0
|
||||||
if (hours < 10) {
|
if (hours < 10) {
|
||||||
hours = '0' + hours;
|
hours = "0" + hours;
|
||||||
}
|
}
|
||||||
if (minutes < 10) {
|
if (minutes < 10) {
|
||||||
minutes = '0' + minutes;
|
minutes = "0" + minutes;
|
||||||
}
|
}
|
||||||
if (seconds < 10) {
|
if (seconds < 10) {
|
||||||
seconds = '0' + seconds;
|
seconds = "0" + seconds;
|
||||||
}
|
}
|
||||||
//拼接格式化当前时间
|
//拼接格式化当前时间
|
||||||
this.times =
|
this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
|
||||||
year +
|
|
||||||
'.' +
|
|
||||||
month +
|
|
||||||
'.' +
|
|
||||||
day +
|
|
||||||
' ' +
|
|
||||||
hours +
|
|
||||||
':' +
|
|
||||||
minutes +
|
|
||||||
':' +
|
|
||||||
seconds;
|
|
||||||
},
|
},
|
||||||
initWebSocket() {
|
initWebSocket() {
|
||||||
let date = new Date().valueOf();
|
let date = new Date().valueOf()
|
||||||
const wsUrl =
|
const wsUrl = process.env.VUE_APP_Socket_API + `/websocket/message?userId=EN${date}`
|
||||||
process.env.VUE_APP_Socket_API + `/websocket/message?userId=EN${date}`;
|
|
||||||
this.wsHeartbeat = new WebSocketHeartbeat(wsUrl);
|
this.wsHeartbeat = new WebSocketHeartbeat(wsUrl);
|
||||||
|
|
||||||
// 处理收到的消息
|
// 处理收到的消息
|
||||||
this.wsHeartbeat.ws.onmessage = (event) => {
|
this.wsHeartbeat.ws.onmessage = (event) => {
|
||||||
console.log('收到消息:', event.data);
|
console.log('收到消息:', event.data)
|
||||||
this.wsData = event?.data ? JSON.parse(event?.data) : {};
|
this.wsData = event?.data ? JSON.parse(event?.data) : {}
|
||||||
// console.log('22222', this.wsData.data)
|
// console.log('22222', this.wsData.data)
|
||||||
if (this.wsData.type === 'EnergyMonitoring') {
|
if (this.wsData.type === 'EnergyMonitoring') {
|
||||||
let EnergyNameList = [];
|
let EnergyNameList = []
|
||||||
this.wsData.data.forEach((ele) => {
|
this.wsData.data.forEach((ele) => {
|
||||||
EnergyNameList.push(ele.lineName);
|
EnergyNameList.push(ele.lineName)
|
||||||
});
|
|
||||||
this.EnergyMonitoringNameList = EnergyNameList;
|
|
||||||
let EnergyDataList = [];
|
|
||||||
this.wsData.data.forEach((ele) => {
|
|
||||||
EnergyDataList.push(ele.useQuantity);
|
|
||||||
});
|
|
||||||
this.EnergyMonitoringList = EnergyDataList;
|
|
||||||
console.log(EnergyDataList);
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.EnergyMonitoringChart.initChart(this.EnergyMonitoringNameList,this.EnergyMonitoringList);
|
|
||||||
})
|
})
|
||||||
|
this.EnergyMonitoringNameList = EnergyNameList
|
||||||
|
let EnergyDataList = []
|
||||||
|
this.wsData.data.forEach((ele) => {
|
||||||
|
EnergyDataList.push(ele.useQuantity
|
||||||
|
)
|
||||||
|
})
|
||||||
|
this.EnergyMonitoringList = EnergyDataList
|
||||||
|
console.log(EnergyDataList)
|
||||||
|
this.$refs.EnergyMonitoringChart.initChart(this.EnergyMonitoringNameList, this.EnergyMonitoringList)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
// if (typeof (WebSocket) === 'undefined') {
|
// if (typeof (WebSocket) === 'undefined') {
|
||||||
@ -597,15 +495,14 @@ export default {
|
|||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
SJGInitWebSocket() {
|
SJGInitWebSocket() {
|
||||||
let date = new Date().valueOf();
|
let date = new Date().valueOf()
|
||||||
const SJGWsUrl =
|
const SJGWsUrl = process.env.VUE_APP_Socket_API + `/websocket/message?userId=SJG${date}`
|
||||||
process.env.VUE_APP_Socket_API + `/websocket/message?userId=SJG${date}`;
|
|
||||||
this.SJGws = new WebSocketHeartbeat(SJGWsUrl);
|
this.SJGws = new WebSocketHeartbeat(SJGWsUrl);
|
||||||
|
|
||||||
// 处理收到的消息
|
// 处理收到的消息
|
||||||
this.SJGws.ws.onmessage = (event) => {
|
this.SJGws.ws.onmessage = (event) => {
|
||||||
console.log('收到消息:', event.data);
|
console.log('收到消息:', event.data)
|
||||||
this.SJGWsData = event?.data ? JSON.parse(event?.data) : {};
|
this.SJGWsData = event?.data ? JSON.parse(event?.data) : {}
|
||||||
// console.log(this.wsData.detData);
|
// console.log(this.wsData.detData);
|
||||||
// console.log('22222', this.wsData.data)
|
// console.log('22222', this.wsData.data)
|
||||||
if (this.SJGWsData.type === 'order') {
|
if (this.SJGWsData.type === 'order') {
|
||||||
@ -614,87 +511,69 @@ export default {
|
|||||||
return {
|
return {
|
||||||
id: ele.id,
|
id: ele.id,
|
||||||
name: ele.name,
|
name: ele.name,
|
||||||
progressRate: parseFloat((ele.progressRate * 100).toFixed(3)),
|
progressRate: parseFloat((ele.progressRate * 100).toFixed(3))
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
console.log(this.orderList);
|
console.log(this.orderList)
|
||||||
} else if (this.SJGWsData.type === 'equipment') {
|
} else if (this.SJGWsData.type === 'equipment') {
|
||||||
let eqArr = this.SJGWsData.detData.map((item, index) => [
|
let eqArr = this.SJGWsData.detData.map((item, index) => [
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
`<span style="color:rgba(255,255,255,0.5)" >${index + 1 || ''}
|
||||||
</span>`,
|
</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
`<span style="color:rgba(255,255,255,0.5)" >${item.name || ''}
|
||||||
</span>`,
|
</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${
|
`<span style="color:rgba(255,255,255,0.5)">${item.code || ''}</span>`,
|
||||||
item.code || ''
|
`<span style="color:rgba(255,255,255,0.5)"><span style="color:rgba(255,255,255,0.5)"></span> ${item.status || ''}</span>`,
|
||||||
}</span>`,
|
`<span style="color:rgba(255,255,255,0.5)">${item.error || ''}</span>`,
|
||||||
`<span style="color:rgba(255,255,255,0.5)"><span style="color:rgba(255,255,255,0.5)"></span> ${
|
])
|
||||||
item.status || ''
|
this.eqConfig.data = eqArr
|
||||||
}</span>`,
|
this.$refs['eqScrollBoard'].updateRows(eqArr)
|
||||||
`<span style="color:rgba(255,255,255,0.5)">${
|
|
||||||
item.error || ''
|
|
||||||
}</span>`,
|
|
||||||
]);
|
|
||||||
this.eqConfig.data = eqArr;
|
|
||||||
// this.$nextTick(() => {
|
|
||||||
this.$refs['eqScrollBoard'].updateRows(eqArr);
|
|
||||||
// })
|
|
||||||
// console.log(SJGWsData.orderList)
|
// console.log(SJGWsData.orderList)
|
||||||
} else if (this.SJGWsData.type === 'productline') {
|
} else if (this.SJGWsData.type === 'productline') {
|
||||||
console.log('aaaaaaaaaaaaaaaaaaa', this.SJGWsData);
|
console.log('aaaaaaaaaaaaaaaaaaa', this.SJGWsData);
|
||||||
let nameList = [];
|
let nameList = []
|
||||||
let passRateList = [];
|
let passRateList = []
|
||||||
let outputNumList = [];
|
let outputNumList = []
|
||||||
this.SJGWsData.detData.forEach((ele) => {
|
this.SJGWsData.detData.forEach((ele) => {
|
||||||
// if (item.id == ele.productionLineId) {
|
// if (item.id == ele.productionLineId) {
|
||||||
// if (item.name.substr(0, 1) == "D") {
|
// if (item.name.substr(0, 1) == "D") {
|
||||||
// console.log(ele)
|
// console.log(ele)
|
||||||
nameList.push(ele.lineName);
|
nameList.push(ele.lineName)
|
||||||
outputNumList.push(ele.outputNum);
|
outputNumList.push(ele.outputNum)
|
||||||
passRateList.push(ele.passRate);
|
passRateList.push(ele.passRate)
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
});
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.productLineChart.initChart(
|
|
||||||
nameList,
|
|
||||||
passRateList,
|
|
||||||
outputNumList
|
|
||||||
);
|
|
||||||
})
|
})
|
||||||
|
this.$refs.productLineChart.initChart(nameList, passRateList, outputNumList)
|
||||||
} else if (this.SJGInitWebSocket === 'inspection') {
|
} else if (this.SJGInitWebSocket === 'inspection') {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
SJGWebsocketClose(e) {
|
SJGWebsocketClose(e) {
|
||||||
this.SJGws.ws.onclose = (event) => {
|
this.SJGws.ws.onclose = (event) => { console.log(event); }
|
||||||
console.log(event);
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
websocketClose(e) {
|
websocketClose(e) {
|
||||||
this.wsHeartbeat.ws.onclose = (event) => {
|
this.wsHeartbeat.ws.onclose = (event) => { console.log(event); }
|
||||||
console.log(event);
|
|
||||||
};
|
|
||||||
},
|
},
|
||||||
windowWidth(value) {
|
windowWidth(value) {
|
||||||
this.clientWidth = value;
|
this.clientWidth = value
|
||||||
this.beilv2 = this.clientWidth / 1920;
|
this.beilv2 = this.clientWidth / 1920
|
||||||
},
|
},
|
||||||
change() {
|
change() {
|
||||||
console.log(this.isFullScreen);
|
console.log(this.isFullScreen);
|
||||||
debugger;
|
debugger;
|
||||||
this.isFullScreen = screenfull.isFullscreen;
|
this.isFullScreen = screenfull.isFullscreen
|
||||||
},
|
},
|
||||||
init() {
|
init() {
|
||||||
console.log(screenfull.isEnabled);
|
console.log(screenfull.isEnabled);
|
||||||
if (screenfull.isEnabled) {
|
if (screenfull.isEnabled) {
|
||||||
debugger;
|
debugger;
|
||||||
screenfull.on('change', this.change);
|
screenfull.on('change', this.change)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
destroy() {
|
destroy() {
|
||||||
if (screenfull.isEnabled) {
|
if (screenfull.isEnabled) {
|
||||||
screenfull.off('change', this.change);
|
screenfull.off('change', this.change)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
changeFullScreen() {
|
changeFullScreen() {
|
||||||
@ -702,17 +581,19 @@ export default {
|
|||||||
if (!screenfull.isEnabled) {
|
if (!screenfull.isEnabled) {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: 'you browser can not work',
|
message: 'you browser can not work',
|
||||||
type: 'warning',
|
type: 'warning'
|
||||||
});
|
})
|
||||||
return false;
|
return false
|
||||||
}
|
}
|
||||||
screenfull.toggle();
|
screenfull.toggle()
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|
||||||
|
|
||||||
.visual-container {
|
.visual-container {
|
||||||
width: 1920px;
|
width: 1920px;
|
||||||
height: 1080px;
|
height: 1080px;
|
||||||
@ -731,17 +612,17 @@ export default {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
left: 290px;
|
left: 290px;
|
||||||
top: 25px;
|
top: 25px;
|
||||||
color: rgba(255, 255, 255, 0.8);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: 1px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.time {
|
.time {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 1360px;
|
left: 1360px;
|
||||||
color: rgba(255, 255, 255, 0.8);
|
color: rgba(255, 255, 255, 0.80);
|
||||||
top: 25px;
|
top: 25px;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
letter-spacing: 0.72px;
|
letter-spacing: 0px;
|
||||||
}
|
}
|
||||||
.title-button {
|
.title-button {
|
||||||
color: #00fff0;
|
color: #00fff0;
|
||||||
@ -785,17 +666,11 @@ export default {
|
|||||||
background-color: unset;
|
background-color: unset;
|
||||||
background-image: linear-gradient(to right, #4573fe, #47f8dc);
|
background-image: linear-gradient(to right, #4573fe, #47f8dc);
|
||||||
}
|
}
|
||||||
::v-deep .el-progress__text {
|
.visual-select {
|
||||||
margin-top: -70px;
|
|
||||||
margin-left: 490px;
|
|
||||||
// background-color: unset;
|
|
||||||
// background-image: linear-gradient(to right, #4573fe, #47f8dc);
|
|
||||||
}
|
|
||||||
.visual-select {
|
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 1em;
|
right: 1em;
|
||||||
top: 2em;
|
top: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
// .container-main {
|
// .container-main {
|
||||||
// padding: 5px;
|
// padding: 5px;
|
||||||
@ -841,7 +716,7 @@ export default {
|
|||||||
background-color: rgba($color: #5bc4be, $alpha: 1);
|
background-color: rgba($color: #5bc4be, $alpha: 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.coldSelect {
|
.coldSelect{
|
||||||
.el-input {
|
.el-input {
|
||||||
min-height: 10px;
|
min-height: 10px;
|
||||||
}
|
}
|
||||||
@ -861,7 +736,7 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.order::-webkit-scrollbar {
|
.order::-webkit-scrollbar {
|
||||||
display: none;
|
display: none
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
@ -879,7 +754,7 @@ export default {
|
|||||||
/* .container-main {
|
/* .container-main {
|
||||||
min-height: calc(100vh - 10em);
|
min-height: calc(100vh - 10em);
|
||||||
} */
|
} */
|
||||||
.eqTable {
|
.eqTable{
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -4,8 +4,7 @@
|
|||||||
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="buttonClick" />
|
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="buttonClick" />
|
||||||
|
|
||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
|
<base-table :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize" :table-data="tableData">
|
||||||
:table-data="tableData">
|
|
||||||
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
|
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
|
||||||
@clickBtn="handleClick" />
|
@clickBtn="handleClick" />
|
||||||
</base-table>
|
</base-table>
|
||||||
@ -34,10 +33,10 @@ import {
|
|||||||
import basicPage from '../../mixins/basic-page';
|
import basicPage from '../../mixins/basic-page';
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
import addOrUpdate from './dialogForm.vue';
|
import addOrUpdate from './dialogForm.vue';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
export default {
|
export default {
|
||||||
name: 'QualityInspectionBoxBtn',
|
name: 'QualityInspectionBoxBtn',
|
||||||
mixins: [basicPage, tableHeightMixin],
|
mixins: [basicPage],
|
||||||
components: { addOrUpdate },
|
components: { addOrUpdate },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -115,7 +114,7 @@ export default {
|
|||||||
// 查询参数
|
// 查询参数
|
||||||
listQuery: {
|
listQuery: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 20,
|
pageSize: 10,
|
||||||
inspectionDetContent: null,
|
inspectionDetContent: null,
|
||||||
},
|
},
|
||||||
addOrUpdateVisible: false,
|
addOrUpdateVisible: false,
|
||||||
|
@ -4,8 +4,7 @@
|
|||||||
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="buttonClick" />
|
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="buttonClick" />
|
||||||
|
|
||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
|
<base-table :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize" :table-data="tableData">
|
||||||
:table-data="tableData">
|
|
||||||
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
|
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
|
||||||
@clickBtn="handleClick" />
|
@clickBtn="handleClick" />
|
||||||
</base-table>
|
</base-table>
|
||||||
@ -35,11 +34,10 @@ import basicPage from './basic-page';
|
|||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
import addOrUpdate from './dialogForm.vue';
|
import addOrUpdate from './dialogForm.vue';
|
||||||
import ProcessBomList from './ProcessBomList.vue';
|
import ProcessBomList from './ProcessBomList.vue';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
import row from './row.vue';
|
import row from './row.vue';
|
||||||
export default {
|
export default {
|
||||||
name: 'QualityInspectionBoxBtn',
|
name: 'QualityInspectionBoxBtn',
|
||||||
mixins: [basicPage, tableHeightMixin],
|
mixins: [basicPage],
|
||||||
components: { addOrUpdate, ProcessBomList },
|
components: { addOrUpdate, ProcessBomList },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -125,7 +123,7 @@ export default {
|
|||||||
// 查询参数
|
// 查询参数
|
||||||
listQuery: {
|
listQuery: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 20,
|
pageSize: 10,
|
||||||
userName: null,
|
userName: null,
|
||||||
nickName:null
|
nickName:null
|
||||||
},
|
},
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
|
<search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
|
||||||
<base-table :max-height="tableH" v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
|
<base-table v-loading="dataListLoading" :table-props="tableProps" :page="listQuery.pageNo"
|
||||||
:limit="listQuery.pageSize" :table-data="tableData">
|
:limit="listQuery.pageSize" :table-data="tableData">
|
||||||
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
|
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
|
||||||
@clickBtn="handleClick" />
|
@clickBtn="handleClick" />
|
||||||
@ -29,7 +29,6 @@ import {
|
|||||||
deleteQualityHotMaterial,
|
deleteQualityHotMaterial,
|
||||||
getHotMaterialAllList
|
getHotMaterialAllList
|
||||||
} from '@/api/base/qualityHotMaterial';
|
} from '@/api/base/qualityHotMaterial';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
// import { getList, } from "@/api/base/qualityScrapType";
|
// import { getList, } from "@/api/base/qualityScrapType";
|
||||||
const tableProps = [
|
const tableProps = [
|
||||||
{
|
{
|
||||||
@ -75,7 +74,7 @@ const tableProps = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
mixins: [basicPage, tableHeightMixin],
|
mixins: [basicPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
urlOptions: {
|
urlOptions: {
|
||||||
@ -208,7 +207,7 @@ export default {
|
|||||||
switch (val.btnName) {
|
switch (val.btnName) {
|
||||||
case 'search':
|
case 'search':
|
||||||
this.listQuery.pageNo = 1;
|
this.listQuery.pageNo = 1;
|
||||||
this.listQuery.pageSize = 20;
|
this.listQuery.pageSize = 10;
|
||||||
this.listQuery.materialId = val.materialId ? val.materialId : undefined;
|
this.listQuery.materialId = val.materialId ? val.materialId : undefined;
|
||||||
this.listQuery.checkTime = val.checkTime ? val.checkTime : undefined;
|
this.listQuery.checkTime = val.checkTime ? val.checkTime : undefined;
|
||||||
this.getDataList();
|
this.getDataList();
|
||||||
@ -216,7 +215,7 @@ export default {
|
|||||||
case 'reset':
|
case 'reset':
|
||||||
this.$refs.searchBarForm.resetForm();
|
this.$refs.searchBarForm.resetForm();
|
||||||
this.listQuery = {
|
this.listQuery = {
|
||||||
pageSize: 20,
|
pageSize: 10,
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
total: 1,
|
total: 1,
|
||||||
};
|
};
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="handleSearchBarBtnClick" />
|
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="handleSearchBarBtnClick" />
|
||||||
|
|
||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<base-table :max-height="tableH" :table-props="tableProps" :page="queryParams.pageNo" :limit="queryParams.pageSize" :table-data="list"
|
<base-table :table-props="tableProps" :page="queryParams.pageNo" :limit="queryParams.pageSize" :table-data="list"
|
||||||
@emitFun="handleEmitFun">
|
@emitFun="handleEmitFun">
|
||||||
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
|
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" fixed="right" :method-list="tableBtn"
|
||||||
@clickBtn="handleTableBtnClick" />
|
@clickBtn="handleTableBtnClick" />
|
||||||
@ -59,14 +59,14 @@ import {
|
|||||||
getQualityInspectionDetPage,
|
getQualityInspectionDetPage,
|
||||||
exportQualityInspectionDetExcel,
|
exportQualityInspectionDetExcel,
|
||||||
} from '@/api/base/qualityInspectionDet';
|
} from '@/api/base/qualityInspectionDet';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
|
|
||||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'QualityInspectionDet',
|
name: 'QualityInspectionDet',
|
||||||
mixins: [basicPageMixin, tableHeightMixin],
|
mixins: [basicPageMixin],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
typeList: [], // 检测类型列表
|
typeList: [], // 检测类型列表
|
||||||
@ -153,7 +153,7 @@ export default {
|
|||||||
// 查询参数
|
// 查询参数
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 20,
|
pageSize: 10,
|
||||||
content: null,
|
content: null,
|
||||||
createTime: [],
|
createTime: [],
|
||||||
},
|
},
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="handleSearchBarBtnClick" />
|
<SearchBar :formConfigs="searchBarFormConfig" ref="search-bar" @headBtnClick="handleSearchBarBtnClick" />
|
||||||
|
|
||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<base-table :max-height="tableH" :table-props="tableProps" :page="queryParams.pageNo" :limit="queryParams.pageSize"
|
<base-table :table-props="tableProps" :page="queryParams.pageNo" :limit="queryParams.pageSize" :table-data="list"
|
||||||
:table-data="list" @emitFun="handleEmitFun">
|
@emitFun="handleEmitFun">
|
||||||
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" :method-list="tableBtn"
|
<method-btn v-if="tableBtn.length" slot="handleBtn" label="操作" :width="120" :method-list="tableBtn"
|
||||||
@clickBtn="handleTableBtnClick" />
|
@clickBtn="handleTableBtnClick" />
|
||||||
</base-table>
|
</base-table>
|
||||||
@ -61,10 +61,10 @@ import {
|
|||||||
exportQualityInspectionTypeExcel,
|
exportQualityInspectionTypeExcel,
|
||||||
} from '@/api/base/qualityInspectionType';
|
} from '@/api/base/qualityInspectionType';
|
||||||
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
import basicPageMixin from '@/mixins/lb/basicPageMixin';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
export default {
|
export default {
|
||||||
name: 'QualityInspectionType',
|
name: 'QualityInspectionType',
|
||||||
mixins: [basicPageMixin, tableHeightMixin],
|
mixins: [basicPageMixin],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2023-08-01 14:55:51
|
* @Date: 2023-08-01 14:55:51
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 14:08:18
|
* @LastEditTime: 2024-03-25 16:07:07
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -24,12 +24,12 @@
|
|||||||
// import unitDict from './unitDict';
|
// import unitDict from './unitDict';
|
||||||
// import basicPage from '../mixins/basic-page';
|
// import basicPage from '../mixins/basic-page';
|
||||||
import { parseTime } from '../mixins/code-filter';
|
import { parseTime } from '../mixins/code-filter';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
import {
|
import {
|
||||||
getMaterialUseLogPage,
|
getMaterialUseLogPage,
|
||||||
getWorkOrderList,
|
getWorkOrderList,
|
||||||
exportEnergyPlcExcel
|
exportEnergyPlcExcel
|
||||||
} from '@/api/quality/materialTraceability';
|
} from '@/api/quality/materialTraceability';
|
||||||
|
|
||||||
const tableProps = [
|
const tableProps = [
|
||||||
{
|
{
|
||||||
prop: 'materialName',
|
prop: 'materialName',
|
||||||
@ -73,7 +73,6 @@ const tableProps = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
mixins: [tableHeightMixin],
|
|
||||||
// mixins: [basicPage],
|
// mixins: [basicPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -83,7 +82,7 @@ export default {
|
|||||||
// // exportURL: exportPackingExcel,
|
// // exportURL: exportPackingExcel,
|
||||||
// },
|
// },
|
||||||
tableProps,
|
tableProps,
|
||||||
// tableH: this.tableHeight(260),
|
tableH: this.tableHeight(260),
|
||||||
tableBtn: [
|
tableBtn: [
|
||||||
this.$auth.hasPermi(`base:packaging-print-log:update`)
|
this.$auth.hasPermi(`base:packaging-print-log:update`)
|
||||||
? {
|
? {
|
||||||
@ -175,9 +174,9 @@ export default {
|
|||||||
// AddOrUpdate,
|
// AddOrUpdate,
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
// window.addEventListener('resize', () => {
|
window.addEventListener('resize', () => {
|
||||||
// this.tableH = this.tableHeight(260)
|
this.tableH = this.tableHeight(260)
|
||||||
// })
|
})
|
||||||
this.getList()
|
this.getList()
|
||||||
this.getDict()
|
this.getDict()
|
||||||
},
|
},
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2023-08-01 14:55:51
|
* @Date: 2023-08-01 14:55:51
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 14:08:30
|
* @LastEditTime: 2024-03-21 15:17:05
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
@ -25,8 +25,6 @@
|
|||||||
// import basicPage from '../mixins/basic-page';
|
// import basicPage from '../mixins/basic-page';
|
||||||
import { publicFormatter } from '@/utils/dict';
|
import { publicFormatter } from '@/utils/dict';
|
||||||
import { parseTime } from '../mixins/code-filter';
|
import { parseTime } from '../mixins/code-filter';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
getOriginalGlassRetrace,
|
getOriginalGlassRetrace,
|
||||||
getWorkOrderList,
|
getWorkOrderList,
|
||||||
@ -87,7 +85,6 @@ const tableProps = [
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
// mixins: [basicPage],
|
// mixins: [basicPage],
|
||||||
mixins: [tableHeightMixin],
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// urlOptions: {
|
// urlOptions: {
|
||||||
@ -122,7 +119,7 @@ export default {
|
|||||||
startTime: undefined,
|
startTime: undefined,
|
||||||
endTime:undefined,
|
endTime:undefined,
|
||||||
},
|
},
|
||||||
// tableH: this.tableHeight(260),
|
tableH: this.tableHeight(260),
|
||||||
formConfig: [
|
formConfig: [
|
||||||
{
|
{
|
||||||
type: 'select',
|
type: 'select',
|
||||||
@ -187,9 +184,9 @@ export default {
|
|||||||
// AddOrUpdate,
|
// AddOrUpdate,
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
// window.addEventListener('resize', () => {
|
window.addEventListener('resize', () => {
|
||||||
// this.tableH = this.tableHeight(260)
|
this.tableH = this.tableHeight(260)
|
||||||
// })
|
})
|
||||||
this.getList()
|
this.getList()
|
||||||
this.getDict()
|
this.getDict()
|
||||||
},
|
},
|
||||||
|
@ -2,14 +2,13 @@
|
|||||||
* @Author: zwq
|
* @Author: zwq
|
||||||
* @Date: 2023-08-01 14:55:51
|
* @Date: 2023-08-01 14:55:51
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @LastEditTime: 2024-03-29 15:32:33
|
* @LastEditTime: 2024-03-20 09:25:40
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
|
<search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
|
||||||
<base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
|
<base-table :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize" :table-data="list">
|
||||||
:table-data="list">
|
|
||||||
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
|
<method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
|
||||||
@clickBtn="handleClick" />
|
@clickBtn="handleClick" />
|
||||||
</base-table>
|
</base-table>
|
||||||
@ -31,7 +30,6 @@ import {
|
|||||||
// exportEnergyPlcExcel
|
// exportEnergyPlcExcel
|
||||||
} from '@/api/quality/processTraceability';
|
} from '@/api/quality/processTraceability';
|
||||||
import { publicFormatter } from '@/utils/dict';
|
import { publicFormatter } from '@/utils/dict';
|
||||||
import tableHeightMixin from '@/mixins/lb/tableHeightMixin';
|
|
||||||
const tableProps = [
|
const tableProps = [
|
||||||
{
|
{
|
||||||
prop: 'name',
|
prop: 'name',
|
||||||
@ -80,7 +78,7 @@ const tableProps = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
mixins: [tableHeightMixin],
|
// mixins: [basicPage],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// urlOptions: {
|
// urlOptions: {
|
||||||
|
@ -1,7 +1,14 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-11-09 16:32:21
|
* @Date: 2023-11-09 16:32:21
|
||||||
* @LastEditTime: 2024-03-29 14:21:52
|
* @LastEditTime: 2023-11-09 16:32:21
|
||||||
|
* @LastEditors: zhp
|
||||||
|
* @Description:
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
* @Author: zhp
|
||||||
|
* @Date: 2023-11-07 19:28:13
|
||||||
|
* @LastEditTime: 2023-11-08 14:11:43
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
|
@ -1,10 +1,17 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: zhp
|
* @Author: zhp
|
||||||
* @Date: 2023-11-28 10:41:50
|
* @Date: 2023-11-28 10:41:50
|
||||||
* @LastEditTime: 2024-03-29 14:14:13
|
* @LastEditTime: 2023-11-28 10:49:43
|
||||||
* @LastEditors: zhp
|
* @LastEditors: zhp
|
||||||
* @Description:
|
* @Description:
|
||||||
-->
|
-->
|
||||||
|
<!--
|
||||||
|
filename: index.vue
|
||||||
|
author: liubin
|
||||||
|
date: 2023-10-18 12:25:46
|
||||||
|
description:
|
||||||
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container process-flow-view">
|
<div class="app-container process-flow-view">
|
||||||
<ProcessInfo />
|
<ProcessInfo />
|
||||||
|
Loading…
Reference in New Issue
Block a user